Erste Schritte mit Gemini 3

Gemini 3 ist unsere bisher intelligenteste Modellfamilie, die auf modernster Schlussfolgerung basiert. Sie wurde entwickelt, um jede Idee zum Leben zu erwecken, indem sie agentische Workflows, autonomes Programmieren und komplexe multimodale Aufgaben beherrscht.

In diesem Leitfaden finden Sie einen konsolidierten, praktischen Weg, um mit Gemini 3 auf der Gemini Enterprise Agent Platform zu beginnen. Dabei werden die wichtigsten Funktionen und Best Practices von Gemini 3 hervorgehoben.

Kurzanleitung

Bevor Sie beginnen, müssen Sie sich mit einem API-Schlüssel oder den Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) bei der Gemini Enterprise Agent Platform authentifizieren. Weitere Informationen finden Sie unter Authentifizierungsmethoden.

Google Gen AI SDK installieren

Für die Gemini 3 API-Funktionen ist das Google Gen AI SDK for Python Version 1.51.0 oder höher erforderlich.

pip install --upgrade google-genai

Umgebungsvariablen festlegen, um das Google Gen AI SDK mit der Gemini Enterprise Agent Platform zu verwenden

Ersetzen Sie den GOOGLE_CLOUD_PROJECT Wert durch Ihre Google Cloud Projekt-ID. Das Gemini 3.1 Pro-Modell gemini-3.1-pro-preview und das Gemini 3 Flash-Modell gemini-3-flash-preview sind nur an globalen Endpunkten verfügbar:

export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=global
export GOOGLE_GENAI_USE_ENTERPRISE=True

Erste Anfrage senden

Standardmäßig verwenden die Gemini 3-Modelle und Gemini 3 Flash dynamisches Denken, um Prompts zu verarbeiten. Wenn für schnellere Antworten mit geringerer Latenz keine komplexe Schlussfolgerung erforderlich ist, können Sie den thinking_level des Modells einschränken. Ein niedriger Denkaufwand ist ideal für Aufgaben mit hohem Durchsatz, bei denen Geschwindigkeit entscheidend ist.

Für schnelle Antworten mit geringer Latenz:

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
   model="gemini-3.6-flash",
   contents="How does AI work?",
   config=types.GenerateContentConfig(
       thinking_config=types.ThinkingConfig(
           thinking_level=types.ThinkingLevel.LOW # For fast and low latency response
       )
   ),
)
print(response.text)

Komplexe Schlussfolgerungsaufgaben ausprobieren

Gemini 3 zeichnet sich durch logisches Schlussfolgern aus. Für komplexe Aufgaben wie mehrstufige Planung, verifizierte Codeerstellung oder umfassende Toolnutzung sollten Sie hohe Denkaufwände verwenden. Verwenden Sie diese Konfigurationen für Aufgaben, für die zuvor spezielle Modelle für die Schlussfolgerung erforderlich waren.

Für langsamere Aufgaben mit hohem Denkaufwand:

from google import genai
from google.genai import types

client = genai.Client()

prompt = """
You are tasked with implementing the classic Thread-Safe Double-Checked Locking (DCL) Singleton pattern in modern C++. This task is non-trivial and requires specialized concurrency knowledge to prevent memory reordering issues.

Write a complete, runnable C++ program named `dcl_singleton.cpp` that defines a class `Singleton` with a private constructor and a static `getInstance()` method.

Your solution MUST adhere to the following strict constraints:
1. The Singleton instance pointer (`static Singleton*`) must be wrapped in `std::atomic` to correctly manage memory visibility across threads.
2. The `getInstance()` method must use `std::memory_order_acquire` when reading the instance pointer in the outer check.
3. The instance creation and write-back must use `std::memory_order_release` when writing to the atomic pointer.
4. A standard `std::mutex` must be used only to protect the critical section (the actual instantiation).
5. The `main` function must demonstrate safe, concurrent access by launching at least three threads, each calling `Singleton::getInstance()`, and printing the address of the returned instance to prove all threads received the same object.
"""

response = client.models.generate_content(
  model="gemini-3.6-flash",
  contents=prompt,
  config=types.GenerateContentConfig(
      thinking_config=types.ThinkingConfig(
          thinking_level=types.ThinkingLevel.HIGH # Dynamic thinking for high reasoning tasks
      )
  ),
)
print(response.text)

Andere Denkaufwände

Gemini 3 Flash führt zwei neue Denkaufwände ein: MINIMAL und MEDIUM. So haben Sie noch mehr Kontrolle darüber, wie das Modell komplexe Schlussfolgerungsaufgaben verarbeitet.

MINIMAL bietet Optionen mit einem Denkbudget von nahezu null für Aufgaben, die für den Durchsatz und nicht für die Schlussfolgerung optimiert sind. MEDIUM ermöglicht ein Gleichgewicht zwischen Geschwindigkeit und Schlussfolgerung, das eine gewisse Schlussfolgerungsfähigkeit bietet, aber dennoch Vorgänge mit niedriger Latenz priorisiert.

Neue API-Funktionen

Gemini 3 führt leistungsstarke API-Verbesserungen und neue Parameter ein, mit denen Entwickler detaillierte Kontrolle über Leistung (Latenz, Kosten), Modellverhalten und multimodale Genauigkeit haben.

In dieser Tabelle sind die wichtigsten neuen Funktionen und Parameter zusammengefasst. Außerdem finden Sie hier direkte Links zur detaillierten Dokumentation:

Neue Funktion/API-Änderung Dokumentation
Modell: gemini-3.1-pro-preview Modellkarte
Model Garden
Denkaufwand Antwort wird generiert
Auflösung von Medien Bildverständnis
Videoverständnis
Verständnis von Audioinhalten
Verständnis von Dokumenten
Gedankensignatur Gedankensignaturen
Temperatur API-Referenz
Multimodale Funktionsantworten Funktionsaufrufe: Multimodale Funktionsantworten
Funktionsaufrufe im Streaming Funktionsaufrufe: Funktionsaufrufe im Streaming

Denkaufwand

Mit dem Parameter thinking_level können Sie ein Denkbudget für die Generierung von Antworten des Modells festlegen. Wenn Sie einen von zwei Zuständen auswählen, können Sie die Kompromisse zwischen Antwortqualität und Komplexität der Schlussfolgerung sowie Latenz und Kosten explizit ausgleichen.

  • MINIMAL: (Nur Gemini 3 Flash und Gemini 3.1 Flash-Lite) Beschränkt das Modell auf die Verwendung möglichst weniger Tokens für die Schlussfolgerung und eignet sich am besten für Aufgaben mit geringer Komplexität, die nicht von einer umfassenden Schlussfolgerung profitieren. MINIMAL kommt einem Denkbudget von null so nahe wie möglich, erfordert aber dennoch Gedankensignaturen.
  • LOW: Beschränkt das Modell auf die Verwendung weniger Tokens für die Schlussfolgerung und eignet sich für einfachere Aufgaben, bei denen keine umfassende Schlussfolgerung erforderlich ist. LOW ist ideal für Aufgaben mit hohem Durchsatz, bei denen Geschwindigkeit entscheidend ist.
  • MEDIUM: (Nur Gemini 3 Flash, Gemini 3.1 Pro und Gemini 3.1 Flash-Lite) Bietet einen ausgewogenen Ansatz, der für Aufgaben mit mittlerer Komplexität geeignet ist, die von Schlussfolgerungen profitieren, aber keine umfassende, mehrstufige Planung erfordern. Es bietet mehr Schlussfolgerungsfähigkeit als LOW, während die Latenz niedriger als bei HIGH bleibt.
  • HIGH: Ermöglicht dem Modell, mehr Tokens für die Schlussfolgerung zu verwenden, und eignet sich für komplexe Prompts, die eine umfassende Schlussfolgerung erfordern, z. B. mehrstufige Planung, verifizierte Codeerstellung oder erweiterte Szenarien für Funktionsaufrufe. Dies ist der Standardaufwand für Gemini 3-Modelle und Gemini 3 Flash. Verwenden Sie diese Konfiguration, wenn Sie Aufgaben ersetzen, für die Sie zuvor möglicherweise spezielle Modelle für die Schlussfolgerung verwendet haben.

Google Gen AI SDK-Beispiel

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
   model="gemini-3.6-flash",
   contents="Find the race condition in this multi-threaded C++ snippet: [code here]",
   config=types.GenerateContentConfig(
       thinking_config=types.ThinkingConfig(
           thinking_level=types.ThinkingLevel.HIGH # Default, dynamic thinking
       )
   ),
)
print(response.text)

Beispiel für OpenAI-Kompatibilität

Für Nutzer, die die OpenAI-Kompatibilitätsebene verwenden, werden Standardparameter automatisch den entsprechenden Gemini 3-Parametern zugeordnet:

  • reasoning_effort wird thinking_level zugeordnet.
  • none wird thinking_level minimal zugeordnet (nur Gemini 3 Flash).
  • medium wird thinking_level medium für alle Gemini 3-Modelle zugeordnet.
import openai
from google.auth import default
from google.auth.transport.requests import Request

credentials, _ = default(scopes=["https://www.googleapis.com/auth/cloud-platform"])

client = openai.OpenAI(
    base_url=f"https://aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/global/endpoints/openapi",
    api_key=credentials.token,
)

prompt = """
Write a bash script that takes a matrix represented as a string with
format '[1,2],[3,4],[5,6]' and prints the transpose in the same format.
"""

response = client.chat.completions.create(
    model="gemini-3.6-flash",
    reasoning_effort="medium", # Map to thinking_level high.
    messages=[{"role": "user", "content": prompt}],
)

print(response.choices[0].message.content)

Auflösung von Medien

Gemini 3 bietet mit dem Parameter media_resolution eine granulare Steuerung der multimodalen Bildverarbeitung. Höhere Auflösungen verbessern die Fähigkeit des Modells, kleinen Text zu lesen oder kleine Details zu erkennen, erhöhen aber die Tokennutzung und die Latenz. Der Parameter media_resolution bestimmt die maximale Anzahl von Tokens, die pro Eingabebild, PDF-Seite oder Videoframe zugewiesen werden.

Sie können die Auflösung global (mit generation_config) oder für einzelne Medienteile auf low, medium oder high festlegen. Die Auflösung ultra_high kann nur für einzelne Medienteile festgelegt werden. Wenn nichts angegeben ist, verwendet das Modell optimale Standardwerte basierend auf dem Medientyp.

Tokenanzahl

In dieser Tabelle sind die ungefähren Tokenanzahlen für jeden media_resolution-Wert und Medientyp zusammengefasst.

Auflösung von Medien Bild Video PDF
UNSPECIFIED (Standard) 1120 70 560
LOW 280 70 280 + Text
MEDIUM 560 70 560 + Text
HIGH 1120 280 1120 + Text
ULTRA_HIGH 2240
Auflösung von Medien Maximale Tokens Usage Guidance
ultra_high 2240 Aufgaben, die eine Analyse feiner Details in Bildern erfordern, z. B. die Verarbeitung von Screenshots oder hochauflösenden Fotos.
high 1120 Bildanalyseaufgaben, um maximale Qualität zu gewährleisten.
medium 560
low Bild: 280 Video: 70 Für die meisten Aufgaben ausreichend. Hinweis:Bei Videos beträgt low maximal 70 Tokens pro Frame.

media_resolution für einzelne Teile festlegen

Sie können media_resolution pro einzelner Audioeinspielung festlegen:

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
  model="gemini-3.6-flash",
  contents=[
      types.Part(
          file_data=types.FileData(
              file_uri="gs://cloud-samples-data/generative-ai/image/a-man-and-a-dog.png",
              mime_type="image/jpeg",
          ),
          media_resolution=types.PartMediaResolution(
              level=types.PartMediaResolutionLevel.MEDIA_RESOLUTION_HIGH # High resolution
          ),
      ),
      Part(
          file_data=types.FileData(
             file_uri="gs://cloud-samples-data/generative-ai/video/behind_the_scenes_pixel.mp4",
            mime_type="video/mp4",
          ),
          media_resolution=types.PartMediaResolution(
              level=types.PartMediaResolutionLevel.MEDIA_RESOLUTION_LOW # Low resolution
          ),
      ),
      "When does the image appear in the video? What is the context?",
  ],
)
print(response.text)

media_resolution global festlegen

Sie können media_resolution auch global festlegen (mit GenerateContentConfig):

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
  model="gemini-3.6-flash",
  contents=[
      types.Part(
          file_data=types.FileData(
              file_uri="gs://cloud-samples-data/generative-ai/image/a-man-and-a-dog.png",
              mime_type="image/jpeg",
          ),
      ),
      "What is in the image?",
  ],
  config=types.GenerateContentConfig(
      media_resolution=types.MediaResolution.MEDIA_RESOLUTION_LOW, # Global setting
  ),
)
print(response.text)

Gedankensignaturen

Gedankensignaturen sind verschlüsselte Tokens, die den Denkzustand des Modells bei Mehrfachdialogen beibehalten, insbesondere bei der Verwendung von Funktionsaufrufen.

Wenn ein Thinking-Modell ein externes Tool aufruft, unterbricht es den internen Denkprozess. Die Gedankensignatur fungiert als „Speicherzustand“, sodass das Modell seinen Gedankengang nahtlos fortsetzen kann, sobald Sie das Ergebnis der Funktion bereitstellen.

Weitere Informationen finden Sie unter Gedankensignaturen.

Warum sind Gedankensignaturen wichtig?

Ohne Gedankensignaturen „vergisst“ das Modell seine spezifischen Schlussfolgerungsschritte während der Toolausführungsphase. Wenn Sie die Signatur zurückgeben, wird Folgendes sichergestellt:

  • Kontextkontinuität: Das Modell behält den Grund für den Aufruf des Tools bei.
  • Komplexe Schlussfolgerung: Ermöglicht mehrstufige Aufgaben, bei denen die Ausgabe eines Tools die Schlussfolgerung für das nächste Tool beeinflusst.

Wo werden Gedankensignaturen zurückgegeben?

Gemini 3-Modelle und Gemini 3 Flash erzwingen eine strengere Validierung und aktualisierte Verarbeitung von Gedankensignaturen, die ursprünglich in Gemini 2.5 eingeführt wurden. Damit das Modell den Kontext über mehrere Runden eines Gesprächs hinweg beibehält, müssen Sie die Gedankensignaturen in Ihren nachfolgenden Anfragen zurückgeben.

  • Bei Modellantworten mit einem Funktionsaufruf wird immer eine Gedankensignatur zurückgegeben, auch wenn der Denkaufwand MINIMAL verwendet wird.
  • Bei parallelen Funktionsaufrufen enthält der erste Teil des Funktionsaufrufs, der von der Modellantwort zurückgegeben wird, eine Gedankensignatur.
  • Bei sequenziellen Funktionsaufrufen (mehrstufig) hat jeder Funktionsaufruf eine Signatur und Clients müssen die Signatur zurückgeben.
  • Bei Modellantworten ohne Funktionsaufruf wird eine Gedankensignatur im letzten Teil zurückgegeben, der vom Modell zurückgegeben wird.

Wie werden Gedankensignaturen verarbeitet?

Es gibt zwei Hauptmöglichkeiten, Gedankensignaturen zu verarbeiten: automatisch mit den Google Gen AI SDKs oder der OpenAI API oder manuell, wenn Sie direkt mit der API interagieren.

Automatisierte Verarbeitung (empfohlen)

Wenn Sie die Google Gen AI SDKs (Python, Node.js, Go, Java) oder die OpenAI Chat Completions API verwenden und die Standardfunktionen für den Chatverlauf nutzen oder die vollständige Modellantwort anhängen, werden thought_signatures automatisch verarbeitet. Sie müssen keine Änderungen an Ihrem Code vornehmen.

Beispiel für manuellen Funktionsaufruf

Wenn Sie das Google Gen AI SDK verwenden, werden Gedankensignaturen automatisch verarbeitet, indem die vollständige Modellantwort in sequenziellen Modellanfragen angehängt wird:

from google import genai
from google.genai import types

client = genai.Client()

# 1. Define your tool
get_weather_declaration = types.FunctionDeclaration(
   name="get_weather",
   description="Gets the current weather temperature for a given location.",
   parameters={
       "type": "object",
       "properties": {"location": {"type": "string"}},
       "required": ["location"],
   },
)
get_weather_tool = types.Tool(function_declarations=[get_weather_declaration])

# 2. Send a message that triggers the tool
prompt = "What's the weather like in London?"
response = client.models.generate_content(
   model="gemini-3.6-flash",
   contents=prompt,
   config=types.GenerateContentConfig(
       tools=[get_weather_tool],
       thinking_config=types.ThinkingConfig(include_thoughts=True)
   ),
)

# 4. Handle the function call
function_call = response.function_calls[0]
location = function_call.args["location"]
print(f"Model wants to call: {function_call.name}")

# Execute your tool (e.g., call an API)
# (This is a mock response for the example)
print(f"Calling external tool for: {location}")
function_response_data = {
   "location": location,
   "temperature": "30C",
}

# 5. Send the tool's result back
# Append this turn's messages to history for a final response.
# The `content` object automatically attaches the required thought_signature behind the scenes.
history = [
    types.Content(role="user", parts=[types.Part(text=prompt)]),
    response.candidates[0].content, # Signature preserved here
    types.Content(
        role="user",
        parts=[
            types.Part.from_function_response(
                name=function_call.name,
                response=function_response_data,
            )
        ],
    )
]

response_2 = client.models.generate_content(
   model="gemini-3.6-flash",
   contents=history,
   config=types.GenerateContentConfig(
        tools=[get_weather_tool],
        thinking_config=types.ThinkingConfig(include_thoughts=True)
   ),
)

# 6. Get the final, natural-language answer
print(f"\nFinal model response: {response_2.text}")
Beispiel für automatischen Funktionsaufruf

Wenn Sie das Google Gen AI SDK für automatische Funktionsaufrufe verwenden, werden Gedankensignaturen automatisch verarbeitet:


from google import genai
from google.genai import types

def get_current_temperature(location: str) -> dict:
    """Gets the current temperature for a given location.

    Args:
        location: The city and state, for example San Francisco, CA

    Returns:
        A dictionary containing the temperature and unit.
    """
    # ... (implementation) ...
    return {"temperature": 25, "unit": "Celsius"}

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.6-flash",
    contents="What's the temperature in Boston?",
    config=types.GenerateContentConfig(
            tools=[get_current_temperature],
    )
)

print(response.text) # The SDK handles the function call and thought signature, and returns the final text
Beispiel für OpenAI-Kompatibilität

Wenn Sie die OpenAI Chat Completions API verwenden, werden Gedankensignaturen automatisch verarbeitet, indem die vollständige Modellantwort in sequenziellen Modellanfragen angehängt wird:

...
# Append user prompt and assistant response including thought signatures
messages.append(response1.choices[0].message)

# Execute the tool
tool_call_1 = response1.choices[0].message.tool_calls[0]
result_1 = get_current_temperature(**json.loads(tool_call_1.function.arguments))

# Append tool response to messages
messages.append(
    {
        "role": "user",
        "tool_call_id": tool_call_1.id,
        "content": json.dumps(result_1),
    }
)

response2 = client.chat.completions.create(
    model="gemini-3.6-flash",
    messages=messages,
    tools=tools,
    extra_body={
        "extra_body": {
            "google": {
                "thinking_config": {
                    "include_thoughts": True,
                },
            },
        },
    },
)

print(response2.choices[0].message.tool_calls)

Vollständiges Codebeispiel ansehen.

Manuelle Verarbeitung

Wenn Sie direkt mit der API interagieren oder Roh-JSON-Nutzlasten verwalten, müssen Sie die thought_signature korrekt verarbeiten, die in der Runde des Modells enthalten ist.

Sie müssen diese Signatur genau in dem Teil zurückgeben, in dem sie empfangen wurde, wenn Sie den Gesprächsverlauf zurücksenden.

Wenn keine korrekten Signaturen zurückgegeben werden, gibt Gemini 3 einen 400 Fehler "<Function Call> in the <index of contents array> content block is missing a thought_signature" zurück.

Multimodale Funktionsantworten

Multimodale Funktionsaufrufe ermöglichen es Nutzern, Funktionsantworten mit multimodalen Objekten zu erhalten, wodurch die Funktionsaufruffähigkeiten des Modells besser genutzt werden können. Standardmäßige Funktionsaufrufe unterstützen nur textbasierte Funktionsantworten:

from google import genai
from google.genai import types

client = genai.Client()

# This is a manual, two turn multimodal function calling workflow:

# 1. Define the function tool
get_image_declaration = types.FunctionDeclaration(
   name="get_image",
   description="Retrieves the image file reference for a specific order item.",
   parameters={
       "type": "object",
       "properties": {
            "item_name": {
                "type": "string",
                "description": "The name or description of the item ordered (e.g., 'green shirt')."
            }
       },
       "required": ["item_name"],
   },
)
tool_config = types.Tool(function_declarations=[get_image_declaration])

# 2. Send a message that triggers the tool
prompt = "Show me the green shirt I ordered last month."
response_1 = client.models.generate_content(
    model="gemini-3.6-flash",
    contents=[prompt],
    config=types.GenerateContentConfig(
        tools=[tool_config],
    )
)

# 3. Handle the function call
function_call = response_1.function_calls[0]
requested_item = function_call.args["item_name"]
print(f"Model wants to call: {function_call.name}")

# Execute your tool (e.g., call an API)
# (This is a mock response for the example)
print(f"Calling external tool for: {requested_item}")

function_response_data = {
  "image_ref": {"$ref": "dress.jpg"},
}

function_response_multimodal_data = types.FunctionResponsePart(
   file_data=types.FunctionResponseFileData(
      mime_type="image/png",
      display_name="dress.jpg",
      file_uri="gs://cloud-samples-data/generative-ai/image/dress.jpg",
   )
)

# 4. Send the tool's result back
# Append this turn's messages to history for a final response.
history = [
  types.Content(role="user", parts=[types.Part(text=prompt)]),
  response_1.candidates[0].content,
  types.Content(
    role="user",
    parts=[
        types.Part.from_function_response(
            name=function_call.name,
            response=function_response_data,
            parts=[function_response_multimodal_data]
        )
    ],
  )
]

response_2 = client.models.generate_content(
  model="gemini-3.6-flash",
  contents=history,
  config=types.GenerateContentConfig(
      tools=[tool_config],
      thinking_config=types.ThinkingConfig(include_thoughts=True)
  ),
)

print(f"\nFinal model response: {response_2.text}")

Funktionsaufrufe im Streaming

Sie können partielle Funktionsaufrufargumente im Streaming verwenden, um die Streaming-Erfahrung bei der Toolnutzung zu verbessern. Diese Funktion kann aktiviert werden, indem Sie stream_function_call_arguments explizit auf true setzen:

from google import genai
from google.genai import types

client = genai.Client()

get_weather_declaration = types.FunctionDeclaration(
  name="get_weather",
  description="Gets the current weather temperature for a given location.",
  parameters={
      "type": "object",
      "properties": {"location": {"type": "string"}},
      "required": ["location"],
  },
)
get_weather_tool = types.Tool(function_declarations=[get_weather_declaration])


for chunk in client.models.generate_content_stream(
   model="gemini-3.6-flash",
   contents="What's the weather in London and New York?",
   config=types.GenerateContentConfig(
       tools=[get_weather_tool],
       tool_config = types.ToolConfig(
           function_calling_config=types.FunctionCallingConfig(
               mode=types.FunctionCallingConfigMode.AUTO,
               stream_function_call_arguments=True,
           )
       ),
   ),
):
   function_call = chunk.function_calls[0]
   if function_call and function_call.name:
       print(f"{function_call.name}")
       print(f"will_continue={function_call.will_continue}")

Beispiel für eine Modellantwort:

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "functionCall": {
              "name": "get_weather",
              "willContinue": true
            }
          }
        ]
      }
    }
  ]
}

Temperatur

  • Range for Gemini 3: 0.0 - 2.0 (default: 1.0)

Für Gemini 3 wird dringend empfohlen, den Parameter temperature auf dem Standardwert 1.0 zu belassen.

Während frühere Modelle oft von der Anpassung der Temperatur profitierten, um die Kreativität im Vergleich zum Determinismus zu steuern, sind die Schlussfolgerungsfähigkeiten von Gemini 3 für die Standardeinstellung optimiert.

Wenn Sie die Temperatur ändern (auf einen Wert unter 1.0 setzen), kann dies zu unerwartetem Verhalten führen, z. B. zu Schleifen oder einer verminderten Leistung, insbesondere bei komplexen mathematischen oder Schlussfolgerungsaufgaben.

Unterstützte Features

Gemini 3-Modelle unterstützen auch die folgenden Funktionen:

Best Practices für Prompts

Gemini 3 ist ein Modell für die Schlussfolgerung, was sich auf die Art und Weise auswirkt, wie Sie Prompts erstellen sollten.

  • Genaue Anweisungen:Formulieren Sie Ihre Eingabe-Prompts präzise. Gemini 3 reagiert am besten auf direkte, klare Anweisungen. Es kann ausführliche oder zu komplexe Prompt-Engineering-Techniken, die für ältere Modelle verwendet wurden, überanalysieren.
  • Ausführlichkeit der Ausgabe:Standardmäßig ist Gemini 3 weniger ausführlich und bevorzugt direkte, effiziente Antworten. Wenn Ihr Anwendungsfall eine gesprächigere oder „geschwätzige“ Persona erfordert, müssen Sie das Modell im Prompt explizit darauf hinweisen (z. B. „Erkläre das als freundlicher, gesprächiger Assistent“).
  • Fundierung:Für Anwendungsfälle zur Fundierung empfehlen wir die folgenden Entwickleranweisungen: You are a strictly grounded assistant limited to the information provided in the User Context. In your answers, rely **only** on the facts that are directly mentioned in that context. You must **not** access or utilize your own knowledge or common sense to answer. Do not assume or infer from the provided facts; simply report them exactly as they appear. Your answer must be factual and fully truthful to the provided text, leaving absolutely no room for speculation or interpretation. Treat the provided context as the absolute limit of truth; any facts or details that are not directly mentioned in the context must be considered **completely untruthful** and **completely unsupported**. If the exact answer is not explicitly written in the context, you must state that the information is not available.
  • Google Suche-Tool verwenden:Wenn Sie das Google Suche-Tool verwenden, kann es vorkommen, dass Gemini 3 Flash das aktuelle Datum / die aktuelle Uhrzeit mit Ereignissen im Jahr 2024 verwechselt. Dies kann dazu führen, dass das Modell Suchanfragen für das falsche Jahr formuliert. Damit das Modell den richtigen Zeitraum verwendet, müssen Sie das aktuelle Datum in den system instructions explizit angeben: For time-sensitive user queries that require up-to-date information, you MUST follow the provided current time (date and year) when formulating search queries in tool calls. Remember it is 2025 this year.
  • Wissensstand: Bei bestimmten Abfragen ist es hilfreich, Gemini 3 Flash explizit über seinen Wissensstand zu informieren. Das ist der Fall, wenn das Google Suche-Tool deaktiviert ist und die Abfrage explizit erfordert, dass das Modell die Daten zum Wissensstand in parametrischem Wissen identifizieren kann. Empfehlung: Fügen Sie den folgenden Satz zu system instructions hinzu: Your knowledge cutoff date is January 2025.
  • media_resolution verwenden: Mit dem Parameter media_resolution können Sie die maximale Anzahl von Tokens steuern, die das Modell zur Darstellung eines Bildes oder von Frames in Videos verwendet. Bei einer hohen Auflösung kann das Modell Details in einem Bild erfassen und verwendet möglicherweise mehr Tokens pro Frame. Bei einer niedrigeren Auflösung können Sie Kosten und Latenz für Bilder mit weniger visuellen Details optimieren.
  • Videoanalyse verbessern: Verwenden Sie eine höhere Abtastrate für Bilder pro Sekunde (FPS) für Videos, die eine detaillierte zeitliche Analyse erfordern, z. B. das Verständnis von schnellen Aktionen oder die Bewegungserkennung.

Hinweise zur Migration

Beachten Sie bei der Migration die folgenden Funktionen und Einschränkungen:

  • Denkaufwand: Gemini 3-Modelle verwenden den thinking_level Parameter, um den Umfang der internen Schlussfolgerung des Modells (low oder high) zu steuern und die Antwortqualität, die Komplexität der Schlussfolgerung, die Latenz und die Kosten auszugleichen.
  • Temperatureinstellungen:Wenn in Ihrem vorhandenen Code temperature explizit festgelegt ist (insbesondere auf niedrige Werte für deterministische Ausgaben), empfiehlt es sich, diesen Parameter zu entfernen und den Standardwert von 1.0 für Gemini 3 zu verwenden, um potenzielle Schleifenprobleme oder Leistungseinbußen bei komplexen Aufgaben zu vermeiden.
  • Gedankensignaturen: Wenn bei Gemini 3-Modellen in einer Runde eine Gedankensignatur erwartet wird, aber nicht angegeben wird, gibt das Modell einen Fehler anstelle einer Warnung zurück.
  • Auflösung von Medien und Tokenisierung: Gemini 3-Modelle verwenden eine variable Sequenzlänge für die Tokenisierung von Medien anstelle von Pan und Scan und haben neue Standardauflösungen und Tokenkosten für Bilder, PDFs und Videos.
  • Tokenanzahl für multimodale Eingaben:Die Tokenanzahlen für multimodale Eingaben (Bilder, Videos, Audio) sind Schätzungen, die auf der ausgewählten media_resolution basieren. Daher stimmt das Ergebnis des count_tokens-API-Aufrufs möglicherweise nicht mit der endgültigen Anzahl der verwendeten Tokens überein. Die genaue Nutzung für die Abrechnung ist erst nach der Ausführung in den usage_metadata der Antwort verfügbar.
  • Tokenverbrauch:Durch die Migration zu den Standardeinstellungen von Gemini 3 kann die Tokennutzung für Bilder und PDFs steigen , für Videos jedoch sinken. Wenn Anfragen aufgrund höherer Standardauflösungen jetzt das Kontextfenster überschreiten, empfiehlt es sich, die Auflösung von Medien explizit zu verringern.
  • PDF- und Dokumentverständnis:Die Standardauflösung für die OCR für PDFs wurde geändert. Wenn Sie sich auf ein bestimmtes Verhalten für die Analyse von Dokumenten mit vielen Inhalten verlassen haben, testen Sie die neue media_resolution: "high" Einstellung, um die Genauigkeit beizubehalten. Bei Gemini 3-Modellen werden die Tokenanzahlen für PDFs in usage_metadata unter der Modalität IMAGE anstelle von DOCUMENT gemeldet.
  • Bildsegmentierung:Die Bildsegmentierung wird von Gemini 3-Modellen nicht unterstützt. Für Arbeitslasten, die eine integrierte Bildsegmentierung erfordern, empfiehlt es sich, weiterhin Gemini 2.5 Flash mit deaktiviertem Thinking zu verwenden.
  • Multimodale Funktionsantworten: Bei Gemini 3-Modellen können Sie Bild- und PDF-Daten in Funktionsantworten einbeziehen.

FAQ

  1. In welcher Region ist gemini-3.1-pro-preview in Google Cloud verfügbar? Weltweit.

  2. Was sind die Grenzwerte für das Kontextfenster? Gemini 3-Modelle unterstützen ein Kontextfenster für Eingaben mit 1 Million Tokens und bis zu 64.000 Tokens für die Ausgabe.

  3. Unterstützt gemini-3.1-pro-preview die Bildausgabe? Nein.

  4. Unterstützt gemini-3.1-pro-preview die Gemini Live API? Nein.

Nächste Schritte