W każdym wywołaniu modelu możesz wysłać konfigurację modelu, aby określić, jak model ma generować odpowiedź. Każdy model oferuje różne opcje konfiguracji.
Możesz też eksperymentować z promptami i konfiguracjami modeli, korzystając z Google AI Studio.Przejdź do Gemini opcji konfiguracji Przejdź do Imagen opcji konfiguracji
Konfigurowanie modeli Gemini
| Kliknij Gemini API dostawcę, aby wyświetlić na tej stronie treści i kod specyficzne dla tego dostawcy. | 
W tej sekcji dowiesz się, jak skonfigurować modele Gemini i znajdziesz opis każdego parametru.
Konfigurowanie modelu (Gemini)
.Konfiguracja dla ogólnych przypadków użycia
Konfiguracja jest utrzymywana przez cały okres istnienia instancji. Jeśli chcesz użyć innej konfiguracji, utwórz nową instancję GenerativeModel z tą konfiguracją.
Swift
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
import FirebaseAI
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
let config = GenerationConfig(
  candidateCount: 1,
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
  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
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
val config = generationConfig {
    candidateCount = 1
    maxOutputTokens = 200
    stopSequences = listOf("red")
    temperature = 0.9f
    topK = 16
    topP = 0.1f
}
// 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
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.candidateCount = 1;
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
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
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
// ...
// 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.
const generationConfig = {
  candidate_count: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
};
// Specify the config as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME",  generationConfig });
// ...
Dart
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
final generationConfig = GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
);
// 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,
);
// ...
Unity
Ustaw wartości parametrów w sekcji GenerationConfig podczas tworzenia instancji GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
var generationConfig = new GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: new string[] { "red" },
  temperature: 0.9f,
  topK: 16,
  topP: 0.1f
);
// 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
);
Opis każdego parametru znajdziesz w następnej sekcji tej strony.
Konfiguracja usługi Gemini Live API
Konfiguracja jest utrzymywana przez cały okres istnienia instancji. Jeśli chcesz użyć innej konfiguracji, utwórz nową instancję LiveModel z tą konfiguracją.
Swift
Ustaw wartości parametrów w liveGenerationConfig podczas inicjowania instancji LiveGenerativeModel:
import FirebaseAI
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
let config = LiveGenerationConfig(
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
  maxOutputTokens: 200,
  responseModalities: [.audio],
  speech: SpeechConfig(voiceName: "Fenrir"),
)
// Initialize the Vertex AI Gemini API backend service
// Specify the config as part of creating the `LiveGenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
  modelName: "GEMINI_MODEL_NAME",
  generationConfig: config
)
// ...
Kotlin
Ustaw wartości parametrów w LiveGenerationConfig podczas tworzenia instancji LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
val config = liveGenerationConfig {
    maxOutputTokens = 200
    responseModality = ResponseModality.AUDIO
    speechConfig = SpeechConfig(voice = Voices.FENRIR)
    temperature = 0.9f
    topK = 16
    topP = 0.1f
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
    modelName = "GEMINI_MODEL_NAME",
    generationConfig = config
)
// ...
Java
Ustaw wartości parametrów w LiveGenerationConfig podczas tworzenia instancji LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
LiveGenerationConfig.Builder configBuilder = new LiveGenerationConfig.Builder();
configBuilder.setMaxOutputTokens(200);
configBuilder.setResponseModalities(ResponseModality.AUDIO);
configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));
configBuilder.setTemperature(0.9f);
configBuilder.setTopK(16);
configBuilder.setTopP(0.1f);
LiveGenerationConfig config = configBuilder.build();
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
LiveModelFutures model = LiveModelFutures.from(
        FirebaseAI.getInstance(GenerativeBackend.googleAI())
                .generativeModel(
                    "GEMINI_MODEL_NAME",
                    config
                );
);
// ...
Web
Ustaw wartości parametrów w LiveGenerationConfig podczas inicjowania instancji LiveGenerativeModel:
// ...
// 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 generationConfig = {
  maxOutputTokens: 200,
  responseModalities: [ResponseModality.AUDIO],
  speechConfig: {
    voiceConfig: {
      prebuiltVoiceConfig: { voiceName: "Fenrir" },
    },
  },
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
};
// Specify the config as part of creating the `LiveGenerativeModel` instance
const model = getLiveGenerativeModel(ai, {
  model: "GEMINI_MODEL_NAME",
  generationConfig,
});
// ...
Dart
Ustaw wartości parametrów w sekcji LiveGenerationConfig podczas tworzenia instancji LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
final generationConfig = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [ResponseModalities.audio],
  speechConfig: SpeechConfig(voiceName: 'Fenrir'),
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
final model = FirebaseAI.googleAI().liveGenerativeModel(
  model: 'GEMINI_MODEL_NAME',
  config: generationConfig,
);
// ...
Unity
Ustaw wartości parametrów w LiveGenerationConfig podczas tworzenia instancji LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
var liveGenerationConfig = new LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: new [] { ResponseModality.Audio },
  speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir"),
  temperature: 0.9f,
  topK: 16,
  topP: 0.1f
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetLiveModel(
  modelName: "GEMINI_MODEL_NAME",
  liveGenerationConfig: liveGenerationConfig
);
Opis każdego parametru znajdziesz w następnej sekcji tej strony.
Opis parametrów (Gemini)
Poniżej znajdziesz ogólny przegląd dostępnych parametrów. Pełną listę parametrów i ich wartości znajdziesz w Gemini Developer API dokumentacji.
| Parametr | Opis | Wartość domyślna | 
|---|---|---|
| Sygnatura czasowa dźwięku audioTimestamp | Wartość logiczna, która umożliwia rozpoznawanie sygnatur czasowych w plikach wejściowych zawierających tylko dźwięk. Dotyczy tylko połączeń  | false | 
| Liczba kandydatów candidateCount | Określa liczbę wariantów odpowiedzi do zwrócenia. W przypadku każdego żądania opłata jest naliczana za tokeny wyjściowe wszystkich kandydatów, ale tylko raz za tokeny wejściowe. Obsługiwane wartości:  Ma zastosowanie tylko w przypadku korzystania z  | 1 | 
| Kara za częstotliwość frequencyPenalty | Określa prawdopodobieństwo uwzględnienia w wygenerowanej odpowiedzi tokenów, które pojawiają się w niej wielokrotnie. Wartości dodatnie karzą tokeny, które wielokrotnie pojawiają się w wygenerowanych treściach, zmniejszając prawdopodobieństwo powtórzenia treści. | --- | 
| Maksymalna liczba tokenów wyjściowych maxOutputTokens | Określa maksymalną liczbę tokenów, które można wygenerować w odpowiedzi. | --- | 
| Kara za obecność presencePenalty | Określa prawdopodobieństwo uwzględnienia tokenów, które już występują w wygenerowanej odpowiedzi. Wartości dodatnie karzą tokeny, które już występują w wygenerowanych treściach, zwiększając prawdopodobieństwo wygenerowania bardziej zróżnicowanych treści. | --- | 
| Sekwencje zatrzymania stopSequences | Określa listę ciągów znaków, które informują model, że ma przestać generować treści, jeśli w odpowiedzi pojawi się jeden z tych ciągów. Ma zastosowanie tylko w przypadku korzystania z konfiguracji  | --- | 
| Temperatura temperature | Określa stopień losowości odpowiedzi. Niższe temperatury skutkują bardziej deterministycznymi odpowiedziami, a wyższe – bardziej różnorodnymi lub kreatywnymi. | Zależy od modelu | 
| Top-K topK | Ogranicza liczbę słów o największym prawdopodobieństwie używanych w generowanych treściach. Wartość Top-K równa 1oznacza, że następny wybrany token powinien być najbardziej prawdopodobny spośród wszystkich tokenów w słowniku modelu, natomiast wartość Top-K równanoznacza, że następny token powinien być wybrany spośród n najbardziej prawdopodobnych tokenów (wszystko na podstawie ustawionej temperatury). | Zależy od modelu | 
| Top-P topP | Określa różnorodność wygenerowanych treści. Tokeny są wybierane w kolejności od najbardziej (patrz Top-K powyżej) do najmniej prawdopodobnych, aż suma ich prawdopodobieństw będzie równa wartości Top-P. | Zależy od modelu | 
| Rodzaj odpowiedzi responseModality | Określa typ strumieniowych danych wyjściowych podczas korzystania z Live API lub natywnych danych wyjściowych multimodalnych generowanych przez model Live API, np. tekst, dźwięk lub obrazy.Gemini Ma zastosowanie tylko w przypadku korzystania z konfiguracji Live API i  | --- | 
| Mowa (głos) speechConfig | Określa głos używany do przesyłania strumieniowego dźwięku podczas korzystania z Live API. Ma zastosowanie tylko w przypadku korzystania z konfiguracji Live API i  | Puck | 
Konfigurowanie modeli Imagen
| Kliknij Imagen API dostawcę, aby wyświetlić na tej stronie treści i kod specyficzne dla tego dostawcy. | 
W tej sekcji dowiesz się, jak skonfigurować modele Imagen i znajdziesz opis każdego parametru.
Konfigurowanie modelu (Imagen)
Konfiguracja jest utrzymywana przez cały okres istnienia instancji. Jeśli chcesz użyć innej konfiguracji, utwórz nową instancję ImagenModel z tą konfiguracją.
Swift
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
import FirebaseAI
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
let config = ImagenGenerationConfig(
  negativePrompt: "frogs",
  numberOfImages: 2,
  aspectRatio: .landscape16x9,
  imageFormat: .jpeg(compressionQuality: 100),
  addWatermark: false
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).imagenModel(
  modelName: "IMAGEN_MODEL_NAME",
  generationConfig: config
)
// ...
Kotlin
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
val config = ImagenGenerationConfig {
    negativePrompt = "frogs",
    numberOfImages = 2,
    aspectRatio = ImagenAspectRatio.LANDSCAPE_16x9,
    imageFormat = ImagenImageFormat.jpeg(compressionQuality = 100),
    addWatermark = false
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
    modelName = "IMAGEN_MODEL_NAME",
    generationConfig = config
)
// ...
Java
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
ImagenGenerationConfig config = new ImagenGenerationConfig.Builder()
    .setNegativePrompt("frogs")
    .setNumberOfImages(2)
    .setAspectRatio(ImagenAspectRatio.LANDSCAPE_16x9)
    .setImageFormat(ImagenImageFormat.jpeg(100))
    .setAddWatermark(false)
    .build();
// Specify the config as part of creating the `ImagenModel` instance
ImagenModelFutures model = ImagenModelFutures.from(
        FirebaseAI.getInstance(GenerativeBackend.googleAI())
                .imagenModel(
                    "IMAGEN_MODEL_NAME",
                    config
                );
);
// ...
Web
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
const generationConfig = {
  negativePrompt: "frogs",
  numberOfImages: 2,
  aspectRatio: ImagenAspectRatio.LANDSCAPE_16x9,
  imageFormat: ImagenImageFormat.jpeg(100),
  addWatermark: false
};
// Specify the config as part of creating the `ImagenModel` instance
const model = getImagenModel(ai, { model: "IMAGEN_MODEL_NAME", generationConfig });
// ...
Dart
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
final generationConfig = ImagenGenerationConfig(
  negativePrompt: 'frogs',
  numberOfImages: 2,
  aspectRatio: ImagenAspectRatio.landscape16x9,
  imageFormat: ImagenImageFormat.jpeg(compressionQuality: 100)
  addWatermark: false
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
final model = FirebaseAI.googleAI().imagenModel(
  model: 'IMAGEN_MODEL_NAME',
  config: generationConfig,
);
// ...
Unity
Ustaw wartości parametrów w ImagenGenerationConfig podczas tworzenia instancji ImagenModel.
using Firebase.AI;
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
var config = new ImagenGenerationConfig(
  numberOfImages: 2,
  aspectRatio: ImagenAspectRatio.Landscape16x9,
  imageFormat: ImagenImageFormat.Jpeg(100)
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
var model = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetImagenModel(
  modelName: "imagen-4.0-generate-001",
  generationConfig: config
);
// ...
Opis każdego parametru znajdziesz w następnej sekcji tej strony.
Opis parametrów (Imagen)
Poniżej znajdziesz ogólny przegląd dostępnych parametrów. Pełną listę parametrów i ich wartości znajdziesz w Google Cloud dokumentacji.
| Parametr | Opis | Wartość domyślna | 
|---|---|---|
| Negatywny prompt negativePrompt | opis tego, co chcesz pominąć na wygenerowanych obrazach; Ten parametr nie jest jeszcze obsługiwany przez  | --- | 
| Liczba wyników numberOfImages | Liczba wygenerowanych obrazów zwracanych w odpowiedzi na każde żądanie | domyślnie jeden obraz, | 
| Format obrazu aspectRatio | Stosunek szerokości do wysokości wygenerowanych obrazów | domyślnie jest to kwadrat (1:1) | 
| Format obrazu imageFormat | Opcje wyjściowe, takie jak format obrazu (typ MIME) i poziom kompresji wygenerowanych obrazów. | domyślny typ MIME to PNG domyślny poziom kompresji to 75 (jeśli typ MIME to JPEG) | 
| Znak wodny addWatermark | czy do wygenerowanych obrazów dodać niewidoczny cyfrowy znak wodny (zwany SynthID); | wartość domyślna to true | 
| Generowanie osób personGeneration | Czy model może generować obrazy przedstawiające ludzi. | wartość domyślna zależy od modelu, | 
| Dołącz atrybuty dotyczące bezpieczeństwa includeSafetyAttributes | Określa, czy w odpowiedziach na niefiltrowane dane wejściowe i wyjściowe mają być włączone zaokrąglone wyniki Responsible AI dla listy atrybutów bezpieczeństwa Kategorie atrybutów bezpieczeństwa:
           | wartość domyślna to false | 
Inne opcje sterowania generowaniem treści
- Dowiedz się więcej o projektowaniu promptów, aby wpływać na model i generować dane wyjściowe dostosowane do Twoich potrzeb.
- Użyj ustawień bezpieczeństwa, aby dostosować prawdopodobieństwo otrzymania odpowiedzi, które mogą być uznane za szkodliwe, w tym wypowiedzi szerzące nienawiść i treści o charakterze jednoznacznie seksualnym.
- Ustaw instrukcje systemowe, aby sterować zachowaniem modelu. Ta funkcja działa jak wstęp, który dodajesz, zanim model otrzyma dalsze instrukcje od użytkownika.
- Przekaż schemat odpowiedzi wraz z promptem, aby określić konkretny schemat danych wyjściowych. Ta funkcja jest najczęściej używana podczas generowania danych wyjściowych w formacie JSON, ale można jej też używać do zadań klasyfikacji (np. gdy chcesz, aby model używał określonych etykiet lub tagów).