Die Gemini API kann Textausgaben generieren, wenn Text, Bilder, Video und Audio als Eingabe bereitgestellt werden.
In dieser Anleitung erfahren Sie, wie Sie mit den Methoden generateContent
und streamGenerateContent
Text generieren. Weitere Informationen zur Verwendung der Bild- und Audiofunktionen von Gemini finden Sie in den Leitfäden Vision und Audio.
Text aus reiner Texteingabe generieren
Die einfachste Möglichkeit, mit der Gemini API Text zu generieren, besteht darin, dem Modell eine einzelne Texteingabe zur Verfügung zu stellen, wie in diesem Beispiel gezeigt:
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=["How does AI work?"])
print(response.text)
In diesem Fall enthält der Prompt („Erkläre, wie KI funktioniert“) keine Ausgabebeispiele, Systemanweisungen oder Formatierungsinformationen. Es ist ein Zero-Shot-Ansatz. Bei einigen Anwendungsfällen kann ein Prompt vom Typ One-Shot oder Few-Shot zu einem Ergebnis führen, das den Erwartungen der Nutzer besser entspricht. In einigen Fällen können Sie auch Systemanweisungen angeben, damit das Modell die Aufgabe besser versteht oder bestimmte Richtlinien einhält.
Text aus Text- und Bildeingabe generieren
Die Gemini API unterstützt multimodale Eingaben, die Text- und Mediendateien kombinieren. Im folgenden Beispiel wird gezeigt, wie Text aus einer Text- und Bildeingabe generiert wird:
from PIL import Image
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
image = Image.open("/path/to/organ.png")
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=[image, "Tell me about this instrument"])
print(response.text)
Textstream generieren
Standardmäßig gibt das Modell eine Antwort zurück, nachdem der gesamte Textgenerierungsprozess abgeschlossen ist. Sie können schnellere Interaktionen erzielen, wenn Sie nicht auf das vollständige Ergebnis warten, sondern stattdessen Streaming zum Verarbeiten von Teilergebnissen verwenden.
Im folgenden Beispiel wird gezeigt, wie Sie mit der Methode streamGenerateContent
Streaming implementieren, um Text aus einem Eingabeprompt aus reiner Textform zu generieren.
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content_stream(
model="gemini-2.0-flash",
contents=["Explain how AI works"])
for chunk in response:
print(chunk.text, end="")
Chatunterhaltung erstellen
Mit dem Gemini SDK können Sie mehrere Fragen und Antworten abfragen, damit Nutzer schrittweise Antworten erhalten oder Hilfe bei mehrteiligen Problemen erhalten können. Diese SDK-Funktion bietet eine Benutzeroberfläche, mit der Sie den Unterhaltungsverlauf im Blick behalten können. Im Hintergrund wird jedoch dieselbe generateContent
-Methode verwendet, um die Antwort zu erstellen.
Das folgende Codebeispiel zeigt eine einfache Chatimplementierung:
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
chat = client.chats.create(model="gemini-2.0-flash")
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)
for message in chat._curated_history:
print(f'role - ', message.role, end=": ")
print(message.parts[0].text)
Sie können auch Streaming mit Chat verwenden, wie im folgenden Beispiel gezeigt:
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
chat = client.chats.create(model="gemini-2.0-flash")
response = chat.send_message_stream("I have 2 dogs in my house.")
for chunk in response:
print(chunk.text, end="")
response = chat.send_message_stream("How many paws are in my house?")
for chunk in response:
print(chunk.text, end="")
for message in chat._curated_history:
print(f'role - ', message.role, end=": ")
print(message.parts[0].text)
Textgenerierung konfigurieren
Jeder Prompt, den Sie an das Modell senden, enthält Parameter, die steuern, wie das Modell Antworten generiert. Mit GenerationConfig
können Sie diese Parameter konfigurieren. Wenn Sie die Parameter nicht konfigurieren, verwendet das Modell die Standardoptionen, die je nach Modell variieren können.
Im folgenden Beispiel wird gezeigt, wie mehrere der verfügbaren Optionen konfiguriert werden.
from google import genai
from google.genai import types
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=["Explain how AI works"],
config=types.GenerateContentConfig(
max_output_tokens=500,
temperature=0.1
)
)
print(response.text)
Systemanweisungen hinzufügen
Mit Systemanweisungen können Sie das Verhalten eines Modells entsprechend Ihren spezifischen Anforderungen und Anwendungsfällen steuern.
Wenn Sie dem Modell Systemanweisungen geben, erhalten Sie zusätzlichen Kontext, um die Aufgabe besser zu verstehen, individuellere Antworten zu generieren und bestimmte Richtlinien während der gesamten Nutzerinteraktion mit dem Modell einzuhalten. Sie können auch das Verhalten auf Produktebene angeben, indem Sie Systemanweisungen festlegen, die von Prompts von Endnutzern getrennt sind.
Sie können Systemanweisungen festlegen, wenn Sie Ihr Modell initialisieren:
sys_instruct="You are a cat. Your name is Neko."
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-2.0-flash",
config=types.GenerateContentConfig(
system_instruction=sys_instruct),
contents=["your prompt here"]
)
Anschließend können Sie wie gewohnt Anfragen an das Modell senden.
Ein interaktives Ende-zu-Ende-Beispiel für die Verwendung von Systemanweisungen finden Sie im Colab-Lab zu Systemanweisungen.
Nächste Schritte
Nachdem Sie sich mit den Grundlagen der Gemini API vertraut gemacht haben, können Sie Folgendes ausprobieren:
- Visuelles Verstehen: Hier erfahren Sie, wie Sie das native visuelle Verstehen von Gemini zur Verarbeitung von Bildern und Videos verwenden.
- Audioverständnis: Hier erfahren Sie, wie Sie das native Audioverständnis von Gemini zur Verarbeitung von Audiodateien verwenden.