Medienauflösung

Mit dem Parameter media_resolution wird festgelegt, wie die Gemini API Media-Eingaben wie Bilder, Videos und PDF-Dokumente verarbeitet. Dazu wird die maximale Anzahl von Tokens bestimmt, die für Media-Eingaben zugewiesen werden. So können Sie die Qualität der Antworten gegen Latenz und Kosten abwägen. Informationen zu den verschiedenen Einstellungen, Standardwerten und wie sie mit Tokens zusammenhängen finden Sie im Abschnitt Tokenanzahl.

Sie haben zwei Möglichkeiten, die Media-Auflösung zu konfigurieren:

  • Pro Teil (nur Gemini 3)

  • Global für eine gesamte generateContent-Anfrage (alle multimodalen Modelle)

Media-Auflösung pro Teil (nur Gemini 3)

Mit Gemini 3 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. Diese Einstellung überschreibt jede globale Konfiguration für einen bestimmten Teil. Informationen zu den Standardeinstellungen finden Sie im Abschnitt Tokenanzahl.

Python

from google import genai
from google.genai import types

# The media_resolution parameter for parts is currently only available in the v1alpha API version. (experimental)
client = genai.Client(
  http_options={
      'api_version': 'v1alpha',
  }
)

# Replace with your image data
with open('path/to/image1.jpg', 'rb') as f:
    image_bytes_1 = f.read()

# Create parts with different resolutions
image_part_high = types.Part.from_bytes(
    data=image_bytes_1,
    mime_type='image/jpeg',
    media_resolution=types.MediaResolution.MEDIA_RESOLUTION_HIGH
)

model_name = 'gemini-3.1-pro-preview'

response = client.models.generate_content(
    model=model_name,
    contents=["Describe these images:", image_part_high]
)
print(response.text)

JavaScript

// Example: Setting per-part media resolution in JavaScript
import { GoogleGenAI, MediaResolution, Part } from '@google/genai';
import * as fs from 'fs';
import { Buffer } from 'buffer'; // Node.js

const ai = new GoogleGenAI({ httpOptions: { apiVersion: 'v1alpha' } });

// Helper function to convert local file to a Part object
function fileToGenerativePart(path, mimeType, mediaResolution) {
    return {
        inlineData: { data: Buffer.from(fs.readFileSync(path)).toString('base64'), mimeType },
        mediaResolution: { 'level': mediaResolution }
    };
}

async function run() {
    // Create parts with different resolutions
    const imagePartHigh = fileToGenerativePart('img.png', 'image/png', Part.MediaResolutionLevel.MEDIA_RESOLUTION_HIGH);
    const model_name = 'gemini-3.1-pro-preview';
    const response = await ai.models.generateContent({
        model: model_name,
        contents: ['Describe these images:', imagePartHigh]
        // Global config can still be set, but per-part settings will override
        // config: {
        //   mediaResolution: MediaResolution.MEDIA_RESOLUTION_MEDIUM
        // }
    });
    console.log(response.text);
}
run();

REST

# Replace with paths to your images
IMAGE_PATH="path/to/image.jpg"

# Base64 encode the images
BASE64_IMAGE1=$(base64 -w 0 "$IMAGE_PATH")

MODEL_ID="gemini-3.1-pro-preview"

echo '{
    "contents": [{
      "parts": [
        {"text": "Describe these images:"},
        {
          "inline_data": {
            "mime_type": "image/jpeg",
            "data": "'"$BASE64_IMAGE1"'",
          },
          "media_resolution": {"level": "MEDIA_RESOLUTION_HIGH"}
        }
      ]
    }]
  }' > request.json

curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1alpha/models/${MODEL_ID}:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d @request.json

Globale Media-Auflösung

Mit GenerationConfig können Sie eine Standardauflösung für alle Media-Teile in einer Anfrage festlegen. Diese Funktion wird von allen multimodalen Modellen unterstützt. Wenn eine Anfrage sowohl globale als auch teilspezifische Einstellungen enthält, hat die teilspezifische Einstellung für dieses bestimmte Element Vorrang.

Python

from google import genai
from google.genai import types

client = genai.Client()

# Prepare standard image part
with open('image.jpg', 'rb') as f:
    image_bytes = f.read()
image_part = types.Part.from_bytes(data=image_bytes, mime_type='image/jpeg')

# Set global configuration
config = types.GenerateContentConfig(
    media_resolution=types.MediaResolution.MEDIA_RESOLUTION_HIGH
)

response = client.models.generate_content(
    model='gemini-3.5-flash',
    contents=["Describe this image:", image_part],
    config=config
)
print(response.text)

JavaScript

import { GoogleGenAI, MediaResolution } from '@google/genai';
import * as fs from 'fs';

const ai = new GoogleGenAI({ });

async function run() {
   // ... (Image loading logic) ...

   const response = await ai.models.generateContent({
      model: 'gemini-3.5-flash',
      contents: ["Describe this image:", imagePart],
      config: {
         mediaResolution: MediaResolution.MEDIA_RESOLUTION_HIGH
      }
   });
   console.log(response.text);
}
run();

REST

# ... (Base64 encoding logic) ...

curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [...],
    "generation_config": {
      "media_resolution": "MEDIA_RESOLUTION_HIGH"
    }
  }'

Verfügbare Auflösungswerte

Die Gemini API definiert die folgenden Stufen für die Media-Auflösung:

  • MEDIA_RESOLUTION_UNSPECIFIED: Die Standardeinstellung. Die Tokenanzahl für diese Stufe variiert erheblich zwischen Gemini 3 und früheren Gemini-Modellen.
  • MEDIA_RESOLUTION_LOW: Niedrigere Tokenanzahl, was zu einer schnelleren Verarbeitung und geringeren Kosten führt, aber weniger Details bietet.
  • MEDIA_RESOLUTION_MEDIUM: Ein ausgewogenes Verhältnis zwischen Detailgenauigkeit, Kosten und Latenz.
  • MEDIA_RESOLUTION_HIGH: Höhere Tokenanzahl, die mehr Details für das Modell bietet, aber zu einer höheren Latenz und höheren Kosten führt.
  • MEDIA_RESOLUTION_ULTRA_HIGH (nur pro Teil): Höchste Tokenanzahl, die für bestimmte Anwendungsfälle wie die Computernutzung erforderlich ist.

MEDIA_RESOLUTION_HIGH bietet für die meisten Anwendungsfälle die optimale Leistung.

Die genaue Anzahl der für jede dieser Stufen generierten Tokens hängt sowohl vom Medientyp (Bild, Video, 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 3-Modelle

MediaResolution Bild Video PDF
MEDIA_RESOLUTION_UNSPECIFIED (Standard) 1.120 70 560
MEDIA_RESOLUTION_LOW 280 70 280 + nativer Text
MEDIA_RESOLUTION_MEDIUM 560 70 560 + nativer Text
MEDIA_RESOLUTION_HIGH 1.120 280 1.120 + nativer Text
MEDIA_RESOLUTION_ULTRA_HIGH 2240

Gemini 2.5-Modelle

MediaResolution Bild Video PDF (gescannt) PDF (nativ)
MEDIA_RESOLUTION_UNSPECIFIED (Standard) 256 + Schwenken und Scannen (~2.048) 256 256 + OCR 256 + nativer Text
MEDIA_RESOLUTION_LOW 64 64 64 + OCR 64 + nativer Text
MEDIA_RESOLUTION_MEDIUM 256 256 256 + OCR 256 + nativer Text
MEDIA_RESOLUTION_HIGH 256 + Schwenken und Scannen 256 256 + OCR 256 + nativer Text

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 im Vordergrund stehen und detaillierte Informationen weniger wichtig sind.
  • MEDIUM / HIGH:Erhöhen Sie die Auflösung, wenn die Aufgabe erfordert, dass Sie komplizierte Details in den Media-Inhalten verstehen. Dies ist oft für komplexe visuelle Analysen, das Lesen von Diagrammen oder das Verstehen umfangreicher Dokumente erforderlich.
  • ULTRA HIGH : Nur für die Einstellung pro Teil verfügbar. Empfohlen für bestimmte Anwendungsfälle wie die Computernutzung oder wenn Tests eine deutliche Verbesserung gegenüber HIGH zeigen.
  • Steuerung pro Teil (Gemini 3) : Optimiert die Tokennutzung. Verwenden Sie beispielsweise in einem Prompt mit mehreren Bildern HIGH für ein komplexes Diagramm und LOW oder MEDIUM fü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 Anzahl von Tokens Nutzungshinweise
Google Bilder MEDIA_RESOLUTION_HIGH 1.120 Für die meisten Bildanalyseaufgaben empfohlen, um maximale Qualität zu gewährleisten.
PDFs MEDIA_RESOLUTION_MEDIUM 560 Optimal für das Verstehen 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) MEDIA_RESOLUTION_LOW oder MEDIA_RESOLUTION_MEDIUM 70 (pro Frame) Hinweis:Bei Videos werden die Einstellungen low und medium identisch behandelt (70 Tokens), um die Kontextnutzung zu optimieren. Dies ist für die meisten Aufgaben zur Aktionserkennung und -beschreibung ausreichend.
Video (textlastig) MEDIA_RESOLUTION_HIGH 280 (pro Frame) Nur erforderlich, wenn der Anwendungsfall das Lesen von dichtem Text (OCR) oder kleinen Details in Videoframes umfasst.

Testen und bewerten Sie immer die Auswirkungen verschiedener Auflösungseinstellungen auf Ihre spezifische Anwendung, um den besten Kompromiss zwischen Qualität, Latenz und Kosten zu finden.

Zusammenfassung der Versionskompatibilität

  • Das MediaResolution-Enum ist für alle Modelle verfügbar, die Media-Eingaben unterstützen.
  • Die Tokenanzahlen, die mit den einzelnen Enum-Stufen verknüpft sind, unterscheiden sich zwischen Gemini 3-Modellen und früheren Gemini-Versionen.
  • Das Festlegen von media_resolution für einzelne Part-Objekte ist nur für Gemini 3-Modelle möglich.

Nächste Schritte