Modelle für generative künstliche Intelligenz (KI) wie die Gemini-Familie Modelle sind in der Lage, Inhalte aus verschiedenen Arten von Dateneingaben zu erstellen, einschließlich Text, Bilder und Audio. Im Grunde funktionieren diese Modelle wie für die automatische Vervollständigung. Eingegebener Text („Du kannst ein Pferd anführen“) ein generatives Modell vorhersagt, statistisch gesehen wahrscheinlich folgen ("aber Sie dürfen nicht zu trinken"), basierend auf Mustern, die aus den Trainingsdaten erlernt wurden. Sie können diese grundlegende Eigenschaft von generative Modelle für verschiedene Anwendungen:
- Kreatives Schreiben wie Gedichte, Kurzgeschichten, Metaphern und Blogposts
- Strukturierte Daten in Freitext umwandeln
- Informationen aus Freitext extrahieren und zusammenfassen
- Code erstellen
- Zwischen Sprachen übersetzen
Die Verwendung von generativen Modellen zum Erstellen dieser Funktionen erfordert keine Maschine (ML)-Kenntnisse haben. Sie müssen kein großes Dataset sammeln oder Modell. Um mit Ihrem ersten Prototyp zu beginnen, müssen Sie nur beschreiben, was Sie in wenigen Sätzen beschreiben.
Generative Modelle, die nur Texteingaben und -ausgaben verarbeiten, werden auch als Large Language Models (LLMs). Die Gemini-Modelle können mehr verarbeiten als Textdaten. Sie können zwar die Funktionen eines LLM ausführen, sind aber bekannt als generative Modelle.
Beispielanwendungen
Die folgenden Beispiele zeigen typische Texteingaben in und Ausgaben von einem generatives Modell an.
Ein Gedicht erstellen
Nutzereingabe: Write me a four-line poem about puppies and Android phones. Make
sure it rhymes.
Modellausgabe:
Puppies are cute,
Android phones are neat,
They both bring joy,
And make life complete.
Liste erstellen
Nutzereingabe: Generate a bulleted list of items I need to pack for a three-day
camping trip.
Modellausgabe:
* Tent
* Sleeping bag
* Sleeping pad
* Camp stove
* Pots and pans
* Utensils
* Food
* Water
* First-aid kit
* Sunscreen
* Insect repellent
* ...
Mit generativen Modellen können Sie viele nützliche Verhaltensweisen erzeugen, Dazu erstellen Sie einfach den richtigen Eingabetext, auch Prompt genannt. Die Kunst und die Wissenschaft, den richtigen Wortlaut für generative Modelle zu finden, wird als Prompt-Entwurf (auch „Prompt Engineering“ genannt) oder einfach „Eingabeaufforderung“.
Prompt-Entwurf 101
Im vorherigen Abschnitt wurden einige Beispiele für Prompts gezeigt, die einen Anweisungen, wie „Schreib mir ein Gedicht“. Diese Art von Anleitung eignet sich gut für bestimmte Arten von Aufgaben. Bei anderen Anwendungen wird eine weitere Aufforderung die Methode wenige-shot-Prompting verwenden. Es gibt nur wenige Prompts, dass Large Language Models unglaublich gut in der das Erkennen und Replizieren von Mustern in Textdaten. Der Grundgedanke ist, generatives Modell ein Textmuster erstellen, das erlernt werden muss. Nehmen wir zum Beispiel an, Sie eine Anwendung erstellen, die als Eingabe einen Ländernamen annimmt und seine Hauptstadt. Hier ist ein Text-Prompt, der genau dafür entwickelt wurde:
Italy : Rome
France : Paris
Germany :
In diesem Prompt erstellen Sie ein Muster: [country] : [capital]
. Wenn Sie
zu einem Large Language Model ändern, wird das Muster automatisch vervollständigt
in etwa so aus:
Berlin
Turkey : Ankara
Greece : Athens
Diese Modellantwort sieht möglicherweise etwas seltsam aus. Das Modell hat nicht nur die Hauptstadt von Deutschland (das letzte Land in Ihrem handschriftlichen Prompt), aber auch ein vollständige Liste zusätzlicher Länder- und Kapitalpaare. Das liegt daran, generatives Modell ist die „Fortsetzung des Musters“. Wenn Sie nur versuchen, Erstellen Sie eine Funktion, die Ihnen die Hauptstadt eines Eingabelandes mitteilt ("Deutschland : Berlin“), interessieren Sie sich wahrscheinlich kaum für den Text, nach „Berlin“ generiert. Als Anwendungsdesigner möchten Sie die überflüssigen Beispiele zu kürzen. Außerdem empfiehlt es sich, Eingabe parametrisieren, sodass Deutschland kein fester String, sondern eine Variable ist die die Endanwendenden bereitstellen:
Italy : Rome
France : Paris
<user input here> :
Sie haben gerade einen Prompt zur Generierung von Landeshauptstädten geschrieben.
Sie können eine große Anzahl von Aufgaben erledigen, indem Sie dieser kurzen Aufforderung folgen. Vorlage. Hier ist ein kleiner Prompt in einem etwas anderen Format, Konvertiert Python in JavaScript:
Convert Python to JavaScript.
Python: print("hello world")
JavaScript: console.log("hello world")
Python: for x in range(0, 100):
JavaScript: for(var i = 0; i < 100; i++) {
Python: ${USER INPUT HERE}
JavaScript:
Oder nehmen Sie das „umgekehrte Wörterbuch“ . Bei einer Definition wird die Wort, das dieser Definition entspricht:
Given a definition, return the word it defines.
Definition: When you're happy that other people are also sad.
Word: schadenfreude
Definition: existing purely in the mind, but not in physical reality
Word: abstract
Definition: ${USER INPUT HERE}
Word:
Sie haben vielleicht bemerkt, dass das Muster dieser Prompts etwas ändern. Neben Beispielen zur Bereitstellung von Anleitungen in Ihrem Prompts sind eine zusätzliche Strategie, die Sie beim Schreiben Ihrer eigenen Prompts berücksichtigen sollten, hilft es, Ihre Absicht an das Modell zu kommunizieren.
Prompts und herkömmliche Softwareentwicklung im Vergleich
Im Gegensatz zu traditioneller Software, die nach einer sorgfältig geschriebenen Spezifikation entwickelt wurde, ist das Verhalten generativer Modelle selbst für die Modelltrainer weitgehend undurchsichtig. Als können Sie oft nicht im Voraus vorhersagen, für ein bestimmtes Modell am besten. Darüber hinaus ist das Verhalten einer generativen Modell wird zu einem großen Teil durch seine Trainingsdaten bestimmt. Da Modelle kontinuierlich auf neue Datasets abgestimmt ist, ändert sich das Modell manchmal so weit, dass es verändert unbeabsichtigt, welche Prompt-Strukturen am besten funktionieren. Was bedeutet das für Sie? Experimentieren Sie. Probiere verschiedene Prompt-Formate aus.
Modellparameter
Jeder Prompt, den Sie an das Modell senden, enthält Parameterwerte, mit denen generiert das Modell eine Antwort. Das Modell kann für verschiedene Parameterwerte unterschiedliche Ergebnisse generieren. Die häufigsten Modellparameter sind:
Max Output token (Max. Ausgabetokens): Gibt die maximale Anzahl von Tokens an, die die in der Antwort generiert werden. Ein Token besteht aus etwa vier Zeichen. 100 Tokens entsprechen etwa 60 bis 80 Wörtern.
Temperatur:Mit der Temperatur wird der Grad der Zufälligkeit im Token festgelegt. Auswahl. Die Temperatur wird bei der Antwortgenerierung für die Stichprobenerhebung verwendet. Sie tritt auf, wenn
topP
undtopK
angewendet werden. Niedrigere Temperaturen sind gut für Prompts, die eine deterministischere oder weniger offene Antwort erfordern, während höhere Temperaturen zu vielfältigeren oder kreativen Ergebnissen führen können. A Die Temperatur von 0 ist deterministisch, was bedeutet, dass die höchste Wahrscheinlichkeit ist immer ausgewählt.topK
: Der ParametertopK
ändert, wie das Modell Tokens für . EintopK
von 1 bedeutet, dass das ausgewählte Token das wahrscheinlichste unter den alle Tokens im Vokabular des Modells (auch als Greedy-Decodierung bezeichnet), währendtopK
von 3 bedeutet, dass das nächste Token aus den 3 der Temperatur am wahrscheinlichsten. Bei jedem Schritt der Tokenauswahl Es werdentopK
-Tokens mit den höchsten Wahrscheinlichkeiten als Stichprobe genommen. Tokens werden dann weiter gefiltert nachtopP
, wobei das letzte Token mithilfe von Temperaturprobenahme.topP
: Der ParametertopP
ändert, wie das Modell Tokens für . Tokens werden vom wahrscheinlichsten bis zum am wenigsten wahrscheinlichen Token bis zur Summe der ihre Wahrscheinlichkeiten dem WerttopP
entsprechen. Wenn beispielsweise die Tokens A, B, und C eine Wahrscheinlichkeit von 0,3, 0,2 und 0,1 haben und der WerttopP
0,5 ist. wählt das Modell entweder A oder B als nächstes Token aus. und C als Kandidat ausschließen. Der Standardwert fürtopP
ist 0,95.stop_sequences
:Stoppsequenz festlegen auf das Modell anweisen, keine Inhalte mehr zu generieren. Beliebige Stoppsequenz eine bestimmte Zeichenfolge. Vermeiden Sie die Verwendung einer Zeichenfolge, kann im generierten Inhalt erscheinen.
Arten von Prompts
Je nach Umfang der darin enthaltenen Kontextinformationen werden Aufforderungen grob in drei Typen unterteilt werden.
Zero-Shot-Prompts
Diese Prompts enthalten keine Beispiele für das zu replizierende Modell. Zero-Shot Prompts zeigen, ob das Modell die Aufgabe ausführen kann, ohne zusätzliche Beispiele oder Informationen. Es bedeutet, dass sich das Modell auf seine bereits vorhandenen Wissen, um eine plausible Antwort zu generieren.
Einige häufig verwendete Zero-Shot-Prompt-Muster sind:
- Anleitung
<Overall instruction>
<Content to operate on>
Beispiel:
Summarize the following into two sentences at the third-grade level:
Hummingbirds are the smallest birds in the world, and they are also one of the
most fascinating. They are found in North and South America, and they are known
for their long, thin beaks and their ability to fly at high speeds.
Hummingbirds are made up of three main parts: the head, the body, and the tail.
The head is small and round, and it contains the eyes, the beak, and the brain.
The body is long and slender, and it contains the wings, the legs, and the
heart. The tail is long and forked, and it helps the hummingbird to balance
while it is flying.
Hummingbirds are also known for their coloration. They come in a variety of
colors, including green, blue, red, and purple. Some hummingbirds are even able
to change their color!
Hummingbirds are very active creatures. They spend most of their time flying,
and they are also very good at hovering. Hummingbirds need to eat a lot of food
in order to maintain their energy, and they often visit flowers to drink nectar.
Hummingbirds are amazing creatures. They are small, but they are also very
powerful. They are beautiful, and they are very important to the ecosystem.
- Anleitung
<Overall instruction or context setting>
<Content to operate on>
<Final instruction>
Beispiel:
Here is some text I'd like you to summarize:
Hummingbirds are the smallest birds in the world, and they are also one of the
most fascinating. They are found in North and South America, and they are known
for their long, thin beaks and their ability to fly at high speeds. Hummingbirds
are made up of three main parts: the head, the body, and the tail. The head is
small and round, and it contains the eyes, the beak, and the brain. The body is
long and slender, and it contains the wings, the legs, and the heart. The tail
is long and forked, and it helps the hummingbird to balance while it is flying.
Hummingbirds are also known for their coloration. They come in a variety of
colors, including green, blue, red, and purple. Some hummingbirds are even able
to change their color! Hummingbirds are very active creatures. They spend most
of their time flying, and they are also very good at hovering. Hummingbirds need
to eat a lot of food in order to maintain their energy, and they often visit
flowers to drink nectar. Hummingbirds are amazing creatures. They are small, but
they are also very powerful. They are beautiful, and they are very important to
the ecosystem.
Summarize it in two sentences at the third-grade reading level.
- Fortsetzung. Manchmal kann der Modell- weiter Text ohne jegliche Anleitung. Hier ist ein Zero-Shot-Prompt, bei dem das Modell soll die eingegebene Eingabe fortsetzen:
Once upon a time, there was a little sparrow building a nest in a farmer's
barn. This sparrow
Mit Zero-Shot-Prompts lassen sich kreative Textformate wie Gedichte, Code, Skripte, Musikstücke, E-Mails oder Briefe.
One-Shot-Prompts
Diese Prompts liefern dem Modell ein einzelnes Beispiel zum Replizieren und Fortfahren Muster zu erkennen. So lassen sich vorhersehbare Antworten Modell.
Sie können beispielsweise Lebensmittelkombinationen generieren:
Food: Apple
Pairs with: Cheese
Food: Pear
Pairs with:
Kurze Prompts
Diese Prompts bieten dem Modell mehrere Beispiele zum Replizieren. Verwenden Sie komplizierte Aufgaben wie das Zusammenführen von Daten auf einem Muster.
Hier ein Beispiel für einen Prompt:
Generate a grocery shopping list for a week for one person. Use the JSON format
given below.
{"item": "eggs", "quantity": "6"}
{"item": "bread", "quantity": "one loaf"}
Die generativen Modelle
Dieser Abschnitt zielt darauf ab, die folgende Frage zu beantworten: Gibt es bei generativen Systemen eine Zufälligkeit Modelle oder sind sie deterministisch?
Die kurze Antwort lautet: Ja. Wenn Sie einen Prompt für ein generatives Modell eingeben, wird ein Text Antwort wird in zwei Phasen generiert. In der ersten Phase liefert das generative Modell verarbeitet den Eingabe-Prompt und generiert eine Wahrscheinlichkeitsverteilung über mögliche Tokens (Wörter), die wahrscheinlich als Nächstes kommen. Wenn Sie beispielsweise mit dem Eingabetext „Der Hund ist über ...“ gesprungen, wird das generative Modell ein Array mit wahrscheinlichen nächsten Wörtern erstellen:
[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...]
Dieser Prozess ist deterministisch. generiert ein generatives Modell dies jedes Mal, wenn derselbe Prompt-Text eingegeben wird, verwendet wird.
In der zweiten Phase wandelt das generative Modell diese Verteilungen in Textantworten mit einer von mehreren Decodierungsstrategien zu erstellen. Eine einfache Decodierungsstrategie wählt möglicherweise bei jedem Zeitschritt das wahrscheinlichste Token aus. Dieses immer deterministisch wäre. Sie können aber auch durch zufällige Stichproben der Verteilung, die vom Modell. Dieser Prozess wäre stochastisch (zufällig). Sie können den Grad der bei diesem Decodierungsprozess durch Festlegen der Temperatur erlaubt. A Eine Temperatur von 0 bedeutet, dass nur die wahrscheinlichsten Tokens ausgewählt werden und es keine Zufälligkeit. Umgekehrt führt eine hohe Temperatur zu einem hohen Maß an Zufälligkeit. in die Token ein, die vom Modell ausgewählt wurden, was zu unerwarteteren, überraschenden Modellantworten.
Weitere Informationen
- Jetzt, da Sie ein tieferes Verständnis von Prompts und generativen Modellen haben, Ihre eigenen Prompts mit Google AI Studio
- Weitere Informationen finden Sie in den Richtlinien für Aufforderungen. Best Practices zum Erstellen von Prompts.