Text mit der Gemini API generieren

<ph type="x-smartling-placeholder"></ph>

Die Gemini API kann aus verschiedenen Arten von Eingaben eine Textausgabe generieren, darunter: Text, Bilder, Video und Audio. Sie können die Textgenerierung für Anwendungen, einschließlich:

  • Kreatives Schreiben
  • Media-Assets beschreiben oder interpretieren
  • Textvervollständigung
  • Freitext zusammenfassen
  • Übersetzen zwischen Sprachen
  • Chatbots
  • Ihre eigenen neuartigen Anwendungsfälle

In diesem Leitfaden erfahren Sie, wie Sie mithilfe der generateContent und streamGenerateContent APIs und dem serverseitigen SDK Ihrer Wahl Der Fokus liegt auf der Textausgabe von reine Text- und Text-und-Bild-Eingabe. Weitere Informationen zu multimodalen Prompts mit Video- und Audiodateien, Prompts mit Mediendateien:

Hinweis: Projekt und API-Schlüssel einrichten

Bevor Sie die Gemini API aufrufen, müssen Sie Ihr Projekt einrichten und konfigurieren Ihren API-Schlüssel.

Text aus reiner Texteingabe generieren

Die einfachste Möglichkeit, mit der Gemini API Text zu generieren, ist die Bereitstellung des Modells mit einer einzigen reinen Texteingabe, wie in diesem Beispiel gezeigt:

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.")
print(response.text)

In diesem Fall lautet die Aufforderung „Schreib eine Geschichte über einen Zauberrucksack“ nicht Ausgabebeispiele, Systemanweisungen oder Formatierungsinformationen enthalten. Es ist ein Zero-Shot Ansatz. Für einige Anwendungsfälle one-shot oder Prompt few-shot könnte die Ausgabe besser auf die Erwartungen der Nutzenden abgestimmt sein. In einigen Fällen möchten Sie vielleicht auch Systemanweisungen für das Modell die Aufgabe zu verstehen oder bestimmte Richtlinien einzuhalten.

Text aus Text- und Bildeingaben generieren

Die Gemini API unterstützt multimodale Eingaben, bei denen Text mit Mediendateien kombiniert wird. Das folgende Beispiel zeigt, wie Text aus Text- und Bildeingaben generiert wird:

import PIL.Image

model = genai.GenerativeModel("gemini-1.5-flash")
organ = PIL.Image.open(media / "organ.jpg")
response = model.generate_content(["Tell me about this instrument", organ])
print(response.text)

Wie bei reinen Text-Prompts können auch multimodale Prompts verschiedene Ansätze umfassen. und Optimierungen. Je nach Ausgabe dieses Beispiels fügen Sie dem Prompt Schritte hinzu oder gehen Sie konkreter in Ihre Anweisungen ein. Weitere Informationen Siehe Strategien für Datei-Prompts.

Textstream generieren

Standardmäßig gibt das Modell eine Antwort zurück, nachdem der gesamte Text ausgefüllt wurde Generierungsprozess. Sie können schnellere Interaktionen erzielen, wenn Sie nicht auf die Gesamtergebnis und verwenden Sie stattdessen Streaming zur Verarbeitung von Teilergebnissen.

Das folgende Beispiel zeigt, wie Streaming mithilfe der streamGenerateContent-Methode für Text aus einem reinen Text-Prompt generieren lassen.

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.", stream=True)
for chunk in response:
    print(chunk.text)
    print("_" * 80)

Interaktive Chats erstellen

Mit der Gemini API können Sie interaktive Chatumgebungen für Ihre Nutzer erstellen. Mit der Chatfunktion der API kannst du mehrere Fragenrunden erfassen. und Antworten, sodass Nutzer schrittweise zu Antworten gelangen oder Hilfe erhalten mit mehrteiligen Aufgaben. Diese Funktion ist ideal für Anwendungen, kontinuierliche Kommunikation wie Chatbots, interaktive Tutoren oder Kundensupport Assistenten.

Das folgende Codebeispiel zeigt eine einfache Chat-Implementierung:

model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
    history=[
        {"role": "user", "parts": "Hello"},
        {"role": "model", "parts": "Great to meet you. What would you like to know?"},
    ]
)
response = chat.send_message("I have 2 dogs in my house.")
print(response.text)
response = chat.send_message("How many paws are in my house?")
print(response.text)

Textgenerierung konfigurieren

Jeder Prompt, den Sie an das Modell senden, enthält Parameter, die und steuern, wie das Modell Antworten generiert. Sie können GenerationConfig bis konfigurieren Sie diese Parameter. Wenn Sie die Parameter nicht konfigurieren, verwendet Standardoptionen, die je nach Modell variieren können.

Das folgende Beispiel zeigt, wie mehrere der verfügbaren Optionen konfiguriert werden.

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content(
    "Tell me a story about a magic backpack.",
    generation_config=genai.types.GenerationConfig(
        # Only one candidate for now.
        candidate_count=1,
        stop_sequences=["x"],
        max_output_tokens=20,
        temperature=1.0,
    ),
)

print(response.text)

candidateCount gibt die Anzahl der generierten Antworten an, die zurückgegeben werden sollen. Derzeit kann dieser Wert nur auf 1 festgelegt werden. Wenn die Richtlinie nicht konfiguriert ist, wird sie standardmäßig auf „1“ gesetzt.

stopSequences gibt bis zu fünf Zeichenfolgen an, durch die die Ausgabegenerierung beenden. Wenn angegeben, wird die API beim ersten Auftreten beendet. einer stop_sequence. Die Stoppsequenz ist nicht Teil des Antwort.

maxOutputTokens legt die maximale Anzahl von Tokens fest, die in einem Kandidaten enthalten sein sollen.

temperature steuert die Zufälligkeit der Ausgabe. Höhere Werte für mehr kreative Antworten und niedrigere Werte für deterministischere Antworten. Werte kann zwischen [0.0, 2.0] liegen.

Sie können auch einzelne generateContent-Aufrufe konfigurieren:

response = model.generate_content(
    'Write a story about a magic backpack.',
    generation_config = genai.GenerationConfig(
        max_output_tokens=1000,
        temperature=0.1,
    )
)

Alle in den einzelnen Aufrufen festgelegten Werte überschreiben die Werte des Modellkonstruktors.

Nächste Schritte

In diesem Leitfaden erfahren Sie, wie Sie generateContent und streamGenerateContent zum Generieren von Textausgaben aus reinen Text- und Text- und Bildeingaben. Weitere Informationen zum Generieren von Text mit der Gemini API finden Sie in den folgenden Ressourcen:

  • Prompts mit Mediendateien: Die Die Gemini API unterstützt Prompts mit Text-, Bild-, Audio- und Videodaten sowie als multimodale Prompts.
  • Systemanleitung: System können Sie das Verhalten des Modells auf Ihre spezifischen Anforderungen und Anwendungsfälle.
  • Sicherheitshinweise: Manchmal mit generativer KI dass Modelle unerwartete Ausgaben erzeugen, z. B. ungenaue, voreingenommen oder anstößig ist. Die Nachbearbeitung und menschliche Bewertung sind das Risiko von Schäden durch solche Ausgaben zu begrenzen.