Grundlegendes zu Prompt Engineering

Abgeschlossen

Die Qualität der Eingabeaufforderungen, die wir an ein KI-Modell senden, wie sie in Azure OpenAI verfügbar sind, beeinflusst direkt die Qualität dessen, was wir zurückbekommen. Bei sorgfältiger Erstellung der Eingabeaufforderungen, die wir an das Modell senden, kann das Modell bessere und interessantere Antworten liefern.

Was ist Prompt Engineering?

Prompt Engineering ist der Prozess des Entwerfens und Optimierens von Eingabeaufforderungen zur besseren Nutzung von KI-Modellen. Das Entwerfen effektiver Eingabeaufforderungen ist entscheidend für den Erfolg von Prompt Engineering und kann die Leistung des KI-Modells bei bestimmten Aufgaben erheblich verbessern. Durch die Bereitstellung relevanter, spezifischer, eindeutiger und gut strukturierter Eingabeaufforderungen kann das Modell den Kontext besser verstehen und genauere Antworten generieren.

Wenn ein OpenAI-Modell beispielsweise Produktbeschreibungen generieren soll, können wir ihm eine detaillierte Beschreibung der Features und Vorteile des Produkts bereitstellen. Durch die Bereitstellung dieses Kontexts kann das Modell genauere und relevantere Produktbeschreibungen generieren.

Prompt Engineering kann auch dazu beitragen, Voreingenommenheit zu verringern und die Fairness in KI-Modellen zu verbessern. Durch das Entwerfen vielfältiger und inklusiver Eingabeaufforderungen können wir sicherstellen, dass das Modell nicht einer bestimmten Gruppe oder Perspektive gegenüber voreingenommen ist.

Wichtig

Unabhängig davon, wie gut die Eingabeaufforderung ist, die Sie entwerfen können, sollten Antworten von KI-Modellen niemals als absolute Wahrheit oder als völlig unvoreingenommen betrachtet werden. Verwenden Sie KI immer verantwortungsbewusst. Weitere Informationen finden Sie unter dem Transparenzhinweis von Microsoft zu Azure OpenAI und in den KI-Prinzipien von Microsoft.

Darüber hinaus kann uns Prompt Engineering helfen, zu verstehen, welche Verweise das Modell verwendet, um seine Antwort zu generieren. Generative KI-Modelle haben eine Vielzahl von Parametern und die Logik, der sie folgen, ist den Benutzenden weitgehend unbekannt, sodass es verwirrend sein kann, wie sie zu ihrer Antwort kommen. Durch das Entwerfen leicht zu verstehender und zu interpretierender Eingabeaufforderungen können wir Menschen helfen, besser zu verstehen, wie das Modell seine Antworten generiert. Dies kann besonders in Bereichen wie dem Gesundheitswesen wichtig sein, wo es von entscheidender Bedeutung ist, zu verstehen, wie das Modell Entscheidungen trifft.

Es gibt verschiedene Methoden, die zum Entwickeln eigener Eingabeaufforderungen verwendet werden können, von denen viele in den kommenden Einheiten dieses Moduls behandelt werden. Dazu gehören die Bereitstellung von Anweisungen, kontextbezogenen Inhalten, Hinweisen oder Few-Shot-Beispielen sowie die korrekte Reihenfolge von Inhalten in Ihrer Eingabeaufforderung. Die hier behandelten Methoden sind nicht vollständig, da dieser Bereich ein differenziertes und im ständigen Wandel begriffenes Thema ist.

Überlegungen zu API-Endpunkten

Die Beispiele im Rest dieses Moduls konzentrieren sich auf ChatCompletion. Es ist erwähnenswert, dass ChatCompletion auch für Nicht-Chatszenarien verwendet werden kann, in denen Anweisungen in der Systemmeldung enthalten sind und Benutzerinhalte in der Benutzerrollennachricht bereitgestellt werden. Die meisten dieser Beispiele können bei Bedarf geändert werden, um den Completion-Endpunkt zu verwenden.

Im Hinblick auf die Modellverfügbarkeit kann der Completion-Endpunkt mit gpt-3 und früher verwendet werden und ChatCompletion kann mit gpt-35-turbo und späteren Modellen verwendet werden.

Anpassen von Modellparametern

Zusätzlich zu den in diesem Modul erläuterten Techniken kann das Anpassen von Parametern des Modells einen erheblichen Einfluss auf die Antwort haben. Insbesondere temperature und top_p (top_probability) wirken sich am wahrscheinlichsten auf die Antwort eines Modells aus, da beide die Zufälligkeit im Modell steuern, aber auf unterschiedliche Weise.

Höhere Werte erzeugen kreativere und zufälligere Antworten, sind aber wahrscheinlich weniger konsistent oder fokussiert. Antworten, die fiktiv oder einzigartig sein sollen, profitieren von höheren Werten für diese Parameter, während für Inhalte, die konsistent und konkret sein sollen, niedrigere Werte verwendet werden sollten.

Versuchen Sie, diese Parameter mit derselben Eingabeaufforderung anzupassen, um zu sehen, wie sie sich auf die Antwort auswirken. Sie sollten jeweils nur temperature oder top_p ändern, aber nicht beide gleichzeitig.