Mit dem Parameter media_resolution wird gesteuert, wie die Gemini API Media-Eingaben wie Bilder, Videos, Audio und PDF-Dokumente verarbeitet. Dazu wird die maximale Anzahl von Tokens festgelegt, die für Media-Eingaben zugewiesen werden. So können Sie die Qualität der Antwort gegen Latenz und Kosten abwägen. Bei visuellen Eingaben und Dokumenteingaben wird die Tokenzuweisung basierend auf der Auflösungseinstellung skaliert. Bei Audioeingaben werden Tokens mit einer festen Rate pro Sekunde über alle Auflösungsstufen hinweg zugewiesen. Informationen zu den
verschiedenen Einstellungen, Standardwerten und der entsprechenden Anzahl von Tokens finden Sie im
Abschnitt Tokenanzahl.
Sie können die Media-Auflösung für einzelne Media-Objekte (Inhaltselemente) in Ihrer Anfrage konfigurieren (Gemini 4- und Gemini 3-Modelle).
Media-Auflösung pro Inhaltselement (Gemini 4- und Gemini 3-Modelle)
Mit den Gemini 4- und Gemini 3-Modellen können Sie die Media-Auflösung für einzelne Media-Objekte in Ihrer Anfrage festlegen und so die Tokennutzung detailliert optimieren. Sie können Auflösungsstufen in einer einzelnen Anfrage kombinieren. Beispielsweise können Sie eine hohe Auflösung für ein komplexes Diagramm und eine niedrige Auflösung für ein einfaches Kontextbild verwenden.
Python
from google import genai
client = genai.Client()
myfile = client.files.upload(file="path/to/image.jpg")
interaction = client.interactions.create(
model="gemini-3.8-flash",
input=[
{"type": "text", "text": "Describe this image:"},
{
"type": "image",
"uri": myfile.uri,
"mime_type": myfile.mime_type,
"resolution": "high"
}
]
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
async function main() {
const myfile = await ai.files.upload({
file: "path/to/image.jpg",
config: { mime_type: "image/jpeg" },
});
const interaction = await ai.interactions.create({
model: "gemini-3.8-flash",
input: [
{ type: "text", text: "Describe this image:" },
{
type: "image",
uri: myfile.uri,
mime_type: myfile.mimeType,
resolution: "high"
}
],
});
console.log(interaction.output_text);
}
await main();
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.Content;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.ImageContent;
import com.google.genai.gaos.models.interactions.ImageContentMimeType;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.TextContent;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
import java.util.List;
Client client = new Client();
Content textContent = TextContent.builder().text("Describe the details in this high-resolution image.").build();
Content imageContent =
ImageContent.builder()
.uri("gs://cloud-samples-data/generative-ai/image/scones.jpg")
.mimeType(ImageContentMimeType.IMAGE_JPEG)
.build();
List<Content> contents = Arrays.asList(textContent, imageContent);
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("gemini-3.8-flash"))
.input(InteractionsInput.ofContent(contents))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println(interaction.outputText().orElse(""));
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
"google.golang.org/genai/interactions/models/interactions"
"google.golang.org/genai/interactions/models/operations"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
uploadedFile, err := client.Files.UploadFromPath(ctx, "path/to/image.jpg", nil)
if err != nil {
log.Fatal(err)
}
res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
Body: operations.NewCreateInteractionRequestBody(interactions.CreateModelInteraction{
Model: interactions.Model("gemini-3.8-flash"),
Input: interactions.NewInteractionsInput([]interactions.Content{
interactions.NewContent(interactions.TextContent{
Text: "Describe the details in this high-resolution image.",
}),
interactions.NewContent(interactions.ImageContent{
URI: genai.Ptr(uploadedFile.URI),
MimeType: interactions.ImageContentMimeType(uploadedFile.MIMEType).ToPointer(),
Resolution: interactions.MediaResolutionHigh.ToPointer(),
}),
}),
}),
})
if err != nil {
log.Fatal(err)
}
if res.Interaction.OutputText != nil {
fmt.Println(*res.Interaction.OutputText)
}
}
REST
# First upload the file using the Files API, then use the URI:
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "gemini-3.8-flash",
"input": [
{"type": "text", "text": "Describe this image:"},
{
"type": "image",
"uri": "YOUR_FILE_URI",
"mime_type": "image/jpeg",
"resolution": "high"
}
]
}'
Verfügbare Auflösungswerte
Die Gemini API definiert die folgenden Stufen für die Media-Auflösung:
unspecified: Die Standardeinstellung. Die Tokenanzahl für diese Stufe variiert erheblich zwischen Gemini 4/3 und früheren Gemini-Modellen.low: Geringere Tokenanzahl, was zu einer schnelleren Verarbeitung und niedrigeren Kosten führt, aber weniger Details bietet.medium: Ein ausgewogenes Verhältnis zwischen Detailgenauigkeit, Kosten und Latenz.high: Höhere Tokenanzahl, die mehr Details für das Modell bietet, aber zu einer höheren Latenz und höheren Kosten führt.ultra_high(nur pro Inhaltselement): Höchste Tokenanzahl, die für bestimmte Anwendungsfälle wie die Computernutzung erforderlich ist.
Beachten Sie, dass high für die meisten Anwendungsfälle die optimale Leistung bietet.
Die genaue Anzahl der Tokens, die für jede dieser Stufen generiert werden, hängt sowohl vom Medientyp (Bild, Video, Audio, PDF) als auch von der Modellversion ab.
Tokenanzahl
In den folgenden Tabellen sind die ungefähren Tokenanzahlen für jeden media_resolution-Wert und Medientyp pro Modellfamilie zusammengefasst.
Gemini 4- und Gemini 3-Modelle
| MediaResolution | Bild | Video | Audio | |
|---|---|---|---|---|
unspecified (Standard) |
1.120 | 70 | 25 (pro Sekunde) | 560 |
low |
280 | 70 | 25 (pro Sekunde) | 280 + nativer Text |
medium |
560 | 70 | 25 (pro Sekunde) | 560 + nativer Text |
high |
1.120 | 280 | 25 (pro Sekunde) | 1.120 + nativer Text |
ultra_high |
2240 | – | – | – |
Die richtige Auflösung auswählen
- Standard (
unspecified): Beginnen Sie mit der Standardeinstellung. Sie ist für ein gutes Gleichgewicht zwischen Qualität, Latenz und Kosten für die meisten gängigen Anwendungsfälle optimiert. low: Verwenden Sie diese Einstellung für Szenarien, in denen Kosten und Latenz entscheidend sind und detaillierte Informationen weniger wichtig sind.medium/high: Erhöhen Sie die Auflösung, wenn die Aufgabe das Verständnis komplexer Details in den Media-Inhalten erfordert. Dies ist häufig für komplexe visuelle Analysen, das Lesen von Diagrammen oder das Verstehen umfangreicher Dokumente erforderlich.ultra_high: Nur für die Einstellung pro Inhaltselement verfügbar. Empfohlen für bestimmte Anwendungsfälle wie die Computernutzung oder wenn Tests eine deutliche Verbesserung gegenüberhighzeigen.- Steuerung pro Inhaltselement (Gemini 4 und Gemini 3): Optimiert die Tokennutzung. Verwenden Sie beispielsweise in einem Prompt mit mehreren Bildern
highfür ein komplexes Diagramm undlowodermediumfür einfachere Kontextbilder.
Empfohlene Einstellungen
In der folgenden Liste sind die empfohlenen Einstellungen für die Media-Auflösung für jeden unterstützten Medientyp aufgeführt.
| Medientyp | Empfohlene Einstellung | Maximale Tokens | Usage Guidance |
|---|---|---|---|
| Google Bilder | high |
1.120 | Für die meisten Bildanalyseaufgaben empfohlen, um maximale Qualität zu gewährleisten. |
| PDFs | medium |
560 | Optimal für das Verständnis von Dokumenten. Die Qualität erreicht in der Regel bei medium ihren Höhepunkt. Eine Erhöhung auf high verbessert die OCR-Ergebnisse für Standarddokumente selten. |
| Video (allgemein) | low (oder medium) |
70 (pro Frame) | Hinweis:Bei Videos werden die Einstellungen low und medium identisch behandelt (70 Tokens), um die Kontextnutzung zu optimieren. Das ist für die meisten Aufgaben zur Aktionserkennung und -beschreibung ausreichend. |
| Video (textlastig) | high |
280 (pro Frame) | Nur erforderlich, wenn der Anwendungsfall das Lesen von dichtem Text (OCR) oder kleinen Details in Videoframes umfasst. |
| Audio | unspecified (Standard) |
25 (pro Sekunde) | Audio wird mit einer festen Rate von 25 Tokens pro Sekunde über alle unterstützten Auflösungseinstellungen hinweg tokenisiert (unspecified, low, medium und high). |
Testen und bewerten Sie immer die Auswirkungen verschiedener Auflösungseinstellungen auf Ihre Anwendung, um den besten Kompromiss zwischen Qualität, Latenz und Kosten zu finden.
Beziehung zu Videoverarbeitungsmodi
Die Parameter media_resolution und `processing` steuern verschiedene Aspekte der Videoeingabe:
media_resolutionsteuert die Auflösung jedes Frames (Anzahl der Tokens pro Frame).processing/media_processingsteuert, welche Inhalte aus dem Video in den Kontext geladen werden.
Sie können beide für dieselbe Videoeingabe festlegen. Beispielsweise können Sie die Agentenverarbeitung mit einer niedrigen Media-Auflösung verwenden, um die Gesamtzahl der Tokens für ein langes Video zu minimieren.
Weitere Informationen zu den Videoverarbeitungsmodi finden Sie im Leitfaden Agentenbasierte Videoverarbeitung.
Zusammenfassung der Versionskompatibilität
- Das Festlegen der
resolutionfür einzelne Inhaltselemente wird in Gemini 4- und Gemini 3-Modellen unterstützt.
Nächste Schritte
- Weitere Informationen zu den multimodalen Funktionen der Gemini API finden Sie in den Leitfäden Bildverständnis, Videoverständnis, Audioverständnis, und Dokumentverständnis.