Antworten mithilfe der Modellkonfiguration steuern

Bei jedem Aufruf eines Modells können Sie eine Modellkonfiguration senden, um zu steuern, wie das Modell eine Antwort generiert. Jedes Modell unterstützt verschiedene Konfigurationsoptionen, z. B. das Festlegen von maxOutputTokens oder speziellen Konfigurationen für das Denken, Antwortmodalitäten, Bilder oder Sprache.

In den meisten Anwendungsfällen, in denen auf ein Gemini-Modell zugegriffen wird, konfigurieren Sie das Modell mit GenerationConfig. Wenn Sie jedoch ein Gemini Live API-Modell konfigurieren, verwenden Sie LiveGenerationConfig.

Auf dieser Seite wird beschrieben, wie Sie die Konfiguration für Gemini-Modelle einrichten. Außerdem finden Sie eine Beschreibung der einzelnen Parameter.

 Zur Gemini-Konfiguration springen  Zur Gemini Live API-Konfiguration springen

GenerationConfig für Gemini-Modelle

Klicken Sie auf Ihren Gemini API-Anbieter, um anbieterspezifische Inhalte und Code auf dieser Seite aufzurufen.

Legen Sie für die meisten Gemini-Modelle, einschließlich Modelle für den allgemeinen Gebrauch, Modelle zur Bildgenerierung („Nano Banana“-Modelle) und TTS-Modelle (Text-to-Speech), eine GenerationConfig fest.

Die Konfiguration wird für die gesamte Lebensdauer der GenerativeModel-Instanz beibehalten. Wenn Sie eine andere Konfiguration verwenden möchten, erstellen Sie eine neue Instanz mit einer anderen Konfiguration und verwenden Sie diese.

Swift

Legen Sie die Werte der Parameter in einem GenerationConfig fest, wenn Sie eine GenerativeModel-Instanz erstellen.


import FirebaseAILogic

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
let config = GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"]
)

// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
  modelName: "GEMINI_MODEL_NAME",
  generationConfig: config
)

// ...

Kotlin

Legen Sie die Werte der Parameter in einem GenerationConfig fest, wenn Sie eine GenerativeModel-Instanz erstellen.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
val config = generationConfig {
    candidateCount = 1
    maxOutputTokens = 200
    stopSequences = listOf("red")
}

// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
    modelName = "GEMINI_MODEL_NAME",
    generationConfig = config
)

// ...

Java

Legen Sie die Werte der Parameter in einem GenerationConfig fest, wenn Sie eine GenerativeModel-Instanz erstellen.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.candidateCount = 1;
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");

GenerationConfig config = configBuilder.build();

// Specify the config as part of creating the `GenerativeModel` instance.
GenerativeModelFutures model = GenerativeModelFutures.from(
        FirebaseAI.getInstance(GenerativeBackend.googleAI())
                .generativeModel(
                    "GEMINI_MODEL_NAME",
                    config
                );
);

// ...

Web

Legen Sie die Werte der Parameter in einem GenerationConfig fest, wenn Sie eine GenerativeModel-Instanz erstellen.


// ...

// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
const generationConfig = {
  candidate_count: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
};

// Specify the config as part of creating the `GenerativeModel` instance.
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME",  generationConfig });

// ...

Dart

GenerationConfig opposum. GenerativeModel


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
final generationConfig = GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
);

// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
final model = FirebaseAI.googleAI().generativeModel(
  model: 'GEMINI_MODEL_NAME',
  config: generationConfig,
);

// ...

Einheit

Legen Sie die Werte der Parameter in einem GenerationConfig fest, wenn Sie eine GenerativeModel-Instanz erstellen.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
var generationConfig = new GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: new string[] { "red" }
);

// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetGenerativeModel(
  modelName: "GEMINI_MODEL_NAME",
  generationConfig: generationConfig
);

Eine Beschreibung der einzelnen Parameter finden Sie im nächsten Abschnitt dieser Seite.

Mit Google AI Studio können Sie mit Prompts und Modellkonfigurationen experimentieren.

LiveGenerationConfig für Gemini Live API-Modelle

Klicken Sie auf Ihren Gemini API-Anbieter, um anbieterspezifische Inhalte und Code auf dieser Seite aufzurufen.

Legen Sie eine LiveGenerationConfig nur fest, wenn Sie Gemini Live API-Modelle verwenden.

Die Konfiguration wird für die gesamte Lebensdauer der LiveModel-Instanz beibehalten. Wenn Sie eine andere Konfiguration verwenden möchten, erstellen Sie eine neue Instanz mit einer anderen Konfiguration und verwenden Sie diese.

Swift

Legen Sie die Werte der Parameter in liveGenerationConfig bei der Initialisierung der LiveModel-Instanz fest:


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
let config = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [.audio],
  speech: SpeechConfig(voiceName: "Fenrir"),
)

// Specify the config as part of creating the `liveModel` instance.
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
  modelName: "GEMINI_LIVE_MODEL_NAME",
  generationConfig: config
)

// ...

Kotlin

Legen Sie die Werte von Parametern in einem LiveGenerationConfig fest, wenn Sie eine LiveModel-Instanz erstellen.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
val config = liveGenerationConfig {
    maxOutputTokens = 200
    responseModality = ResponseModality.AUDIO
    speechConfig = SpeechConfig(voice = Voices.FENRIR)
}

// Specify the config as part of creating the `LiveModel` instance.
val liveModel = Firebase.ai(backend = GenerativeBackend.agentPlatform()).liveModel(
    modelName = "GEMINI_LIVE_MODEL_NAME",
    generationConfig = config
)

// ...

Java

Legen Sie die Werte von Parametern in einem LiveGenerationConfig fest, wenn Sie eine LiveModel-Instanz erstellen.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
LiveGenerationConfig.Builder configBuilder = new LiveGenerationConfig.Builder();
configBuilder.setMaxOutputTokens(200);
configBuilder.setResponseModality(ResponseModality.AUDIO);

configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));

LiveGenerationConfig config = configBuilder.build();

// Specify the config as part of creating the `LiveModel` instance.
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
          "GEMINI_LIVE_MODEL_NAME",
          config
);

// ...

Web

Legen Sie die Werte der Parameter in LiveGenerationConfig bei der Initialisierung der LiveGenerativeModel-Instanz fest:


// ...

// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
const liveGenerationConfig = {
  maxOutputTokens: 200,
  responseModalities: [ResponseModality.AUDIO],
  speechConfig: {
    voiceConfig: {
      prebuiltVoiceConfig: { voiceName: "Fenrir" },
    },
  },
};

// Specify the config as part of creating the `LiveGenerativeModel` instance.
const liveModel = getLiveGenerativeModel(ai, {
  model: "GEMINI_LIVE_MODEL_NAME",
  liveGenerationConfig,
});

// ...

Dart

Legen Sie die Werte von Parametern in einem LiveGenerationConfig beim Erstellen einer LiveGenerativeModel-Instanz fest.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
final config = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [ResponseModalities.audio],
  speechConfig: SpeechConfig(voiceName: 'Fenrir'),
);

// Specify the config as part of creating the `liveGenerativeModel` instance.
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
  model: 'GEMINI_LIVE_MODEL_NAME',
  liveGenerationConfig: config,
);

// ...

Einheit

Legen Sie die Werte von Parametern in einem LiveGenerationConfig fest, wenn Sie eine LiveModel-Instanz erstellen.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
var config = new LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: new[] { ResponseModality.Audio },
  speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir")
);

// Specify the config as part of creating the `LiveModel` instance.
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
  modelName: "GEMINI_LIVE_MODEL_NAME",
  liveGenerationConfig: config
);

// ...

Eine Beschreibung der einzelnen Parameter finden Sie im nächsten Abschnitt dieser Seite.

Mit Google AI Studio können Sie mit Prompts und Modellkonfigurationen experimentieren.



Beschreibung der Parameter

Die folgende Tabelle bietet eine allgemeine Übersicht über die verfügbaren Parameter. Einige Parameter sind nur für bestimmte Modelle anwendbar.

Temperatur, Top-K und Top-P sind veraltet und werden von den neuesten Gemini-Modellen ignoriert.

Parameter Beschreibung Beschränkungen Standardwert
Audio-Zeitstempel
audioTimestamp
Ermöglicht das Erkennen von Zeitstempeln für reine Audio-Eingabedateien.

Boolesch

Gilt nur, wenn eine GenerativeModel-Konfiguration verwendet wird und der Eingabetyp eine reine Audiodatei ist.

false
Anzahl der Kandidaten
candidateCount
Gibt die Anzahl der zurückzugebenden Antwortvarianten an. Für jede Anfrage werden Ihnen die Ausgabetokens aller Kandidaten in Rechnung gestellt, aber nur einmal für die Eingabetokens.

Unterstützte Werte: 18 (einschließlich)

Gilt nur bei Verwendung von generateContent.

Gilt nicht für generateContentStream-, TTS- oder Live API-Modelle.

1
Maximale Ausgabetokens
maxOutputTokens
Gibt die maximale Anzahl von Tokens an, die in der Antwort generiert werden können. --- ---
Strafe für Häufigkeit
frequencyPenalty

Steuert die Wahrscheinlichkeit, Tokens einzubeziehen, die wiederholt in der generierten Antwort erscheinen.

Positive Werte nehmen Abzüge bei Tokens vor, die wiederholt im generierten Text angezeigt werden, wodurch die Wahrscheinlichkeit wiederholter Inhalte verringert wird.

Gilt nicht für TTS-Modelle. ---
Strafe für fehlende Präsenz
presencePenalty

Steuert die Wahrscheinlichkeit, Tokens einzubeziehen, die bereits in der generierten Antwort enthalten sind.

Positive Werte nehmen Abzüge bei Tokens vor, die bereits im generierten Inhalt angezeigt werden, wodurch die Wahrscheinlichkeit vielfältigerer Inhalte erhöht wird.

Gilt nicht für TTS-Modelle. ---
Stoppsequenzen
stopSequences
Gibt eine Liste an Strings an, die das Modell anweist, keine Inhalte mehr zu generieren, wenn einer der Strings in der Antwort gefunden wird.

Gilt nur, wenn eine GenerativeModel-Konfiguration verwendet wird.

Gilt nicht für TTS-Modelle.

---
Spezialisierte Konfigurationen
Denkprozess
thinkingConfig

Steuert den „Denkprozess“ der Modelle beim Generieren einer Antwort.

  • Mit einer Denkstufe (Gemini 3.x und höher) können Sie festlegen, wie viel das Modell überlegen soll.
  • Festlegen, ob Zusammenfassungen der Gedanken enthalten sein sollen.

Unterstützte Werte: Siehe Dokumentation zu „Thinking“.

Gilt nicht für TTS-Modelle.

Firebase AI Logic unterstützt noch nicht das Festlegen eines thinkingConfig für Live API-Modelle.

Je nach Modell
Antwortmodalitäten
responseModalities
Gibt den Ausgabetyp an, z. B. Text, Audio oder Bilder. Gilt nur für die Verwendung von Gemini-Bildmodellen („Nano Banana“-Modelle), TTS-Modellen und Live API-Modellen und ist erforderlich. ---
Bildmerkmale
imageConfig
Gibt das Seitenverhältnis und die Auflösung der generierten Bilder an.

Unterstützte Werte: Siehe Bildgenerierung konfigurieren

Gilt nur bei Verwendung von Gemini-Bildmodellen („Nano Banana“-Modelle).

Seitenverhältnis 1:1 (quadratisch)
Auflösung 1024 × 1024
Sprache (Stimme)
speechConfig
Gibt die Stimme an, die für die Audioausgabe verwendet wird. Gilt nur, wenn TTS-Modelle und Live API-Modelle verwendet werden.

Erforderlich für TTS-Modelle.
Puck





Weitere Optionen zum Steuern der Inhaltserstellung

  • Weitere Informationen zum Erstellen von Prompts, damit Sie das Modell so beeinflussen können, dass es Ausgaben generiert, die Ihren Anforderungen entsprechen.
  • Mit Sicherheitseinstellungen können Sie die Wahrscheinlichkeit anpassen, dass Sie Antworten erhalten, die als schädlich eingestuft werden könnten, z. B. Hassrede und sexuell explizite Inhalte.
  • Legen Sie Systemanweisungen fest, um das Verhalten des Modells zu steuern. Diese Funktion ist wie eine Präambel, die Sie hinzufügen, bevor das Modell für weitere Anweisungen des Endnutzers freigegeben wird.
  • Übergeben Sie ein Antwortschema zusammen mit dem Prompt, um ein bestimmtes Ausgabeschema anzugeben. Diese Funktion wird am häufigsten verwendet, wenn JSON-Ausgabe generiert wird, kann aber auch für Klassifizierungsaufgaben verwendet werden (z. B. wenn das Modell bestimmte Labels oder Tags verwenden soll).