W każdym wywołaniu modelu możesz wysłać konfigurację modelu, aby określić, jak model ma generować odpowiedź. Każdy model oferuje inne opcje konfiguracji.
Możesz też eksperymentować z promptami i konfiguracjami modeli w Google AI Studio.Przejdź do Gemini opcji konfiguracji Przejdź do Imagen opcji konfiguracji (Wycofane)
Konfigurowanie modeli Gemini
W tej sekcji dowiesz się, jak skonfigurować model, i znajdziesz Gemini opis każdego parametru.
Konfigurowanie modelu (Gemini)
Konfiguracja na potrzeby ogólnych Gemini przypadków użycia
|
Kliknij swojego dostawcę Gemini API, aby wyświetlić na tej stronie treści i kod specyficzne dla dostawcy. |
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
GenerationConfig
w ramach tworzenia instancji GenerativeModel.
import FirebaseAILogic
// 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
GenerationConfig
w ramach 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
GenerationConfig
w ramach 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
GenerationConfig
w ramach 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
GenerationConfig
w ramach 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
GenerationConfig
w ramach 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 na potrzeby interfejsu Gemini Live API
|
Kliknij swojego dostawcę Gemini API, aby wyświetlić na tej stronie treści i kod specyficzne dla dostawcy. |
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 LiveModel:
// ...
// 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"),
)
// 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
Ustaw wartości parametrów w
LiveGenerationConfig
w ramach 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
}
// Specify the config as part of creating the `LiveModel` instance
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
modelName = "GEMINI_LIVE_MODEL_NAME",
generationConfig = config
)
// ...
Java
Ustaw wartości parametrów w
LiveGenerationConfig
w ramach tworzenia instancji LiveModel.
// ...
// 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));
configBuilder.setTemperature(0.9f);
configBuilder.setTopK(16);
configBuilder.setTopP(0.1f);
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
Ustaw wartości parametrów w
LiveGenerationConfig
podczas inicjowania instancji LiveGenerativeModel:
// ...
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" },
},
},
temperature: 0.9,
topP: 0.1,
topK: 16,
};
// Specify the config as part of creating the `LiveGenerativeModel` instance
const liveModel = getLiveGenerativeModel(ai, {
model: "GEMINI_LIVE_MODEL_NAME",
liveGenerationConfig,
});
// ...
Dart
Ustaw wartości parametrów w
LiveGenerationConfig
w ramach tworzenia instancji LiveGenerativeModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
final config = LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: [ResponseModalities.audio],
speechConfig: SpeechConfig(voiceName: 'Fenrir'),
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// Specify the config as part of creating the `liveGenerativeModel` instance
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_LIVE_MODEL_NAME',
liveGenerationConfig: config,
);
// ...
Unity
Ustaw wartości parametrów w
LiveGenerationConfig
w ramach tworzenia instancji LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
var config = new LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: new[] { ResponseModality.Audio },
speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir"),
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// 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
);
// ...
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 dokumentacji wybranego Gemini API dostawcy: Gemini Developer API lub Vertex AI Gemini API.
| Parametr | Opis | Wartość domyślna |
|---|---|---|
Sygnatura czasowa dźwiękuaudioTimestamp
|
Wartość logiczna, która umożliwia rozpoznawanie sygnatur czasowych w plikach wejściowych zawierających tylko dźwięk. Ma zastosowanie tylko w przypadku używania |
false |
Liczba kandydatówcandidateCount
|
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 używania |
1 |
Kara za częstotliwośćfrequencyPenalty
|
Określa prawdopodobieństwo uwzględnienia tokenów, które wielokrotnie pojawiają się w
wygenerowanej odpowiedzi. Wartości dodatnie penalizują tokeny, które wielokrotnie pojawiają się w wygenerowanych treściach, zmniejszając prawdopodobieństwo powtórzenia treści. |
--- |
Maksymalna liczba tokenówmaxOutputTokens
|
Określa maksymalną liczbę tokenów, które mogą zostać wygenerowane w odpowiedzi. | --- |
Kara za obecnośćpresencePenalty
|
Określa prawdopodobieństwo uwzględnienia tokenów, które już pojawiają się w
wygenerowanej odpowiedzi. Wartości dodatnie penalizują tokeny, które już pojawiają się w wygenerowanych treściach, zwiększając prawdopodobieństwo wygenerowania bardziej różnorodnych treści. |
--- |
Sekwencje zatrzymaniastopSequences
|
Określa listę ciągów znaków, które informują model, aby przestał generować treści, jeśli w odpowiedzi zostanie napotkany jeden z tych ciągów. Ma zastosowanie tylko w przypadku używania konfiguracji
|
--- |
Temperaturatemperature
|
Określa stopień losowości w odpowiedzi. Niższe temperatury powodują bardziej deterministyczne odpowiedzi, a wyższe temperatury – bardziej różnorodne lub kreatywne. |
Zależy od modelu |
Top-KtopK
|
Ogranicza liczbę słów o największym prawdopodobieństwie używanych w
wygenerowanych treściach. Wartość Top-K równa 1 oznacza, że następny wybrany token powinien być
najbardziej prawdopodobny spośród wszystkich tokenów w słowniku modelu,
natomiast wartość Top-K równa n oznacza, że następny token powinien
zostać wybrany spośród n najbardziej prawdopodobnych tokenów
(wszystko na podstawie ustawionej temperatury).
|
Zależy od modelu |
Top-PtopP
|
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 |
Sposoby odpowiedziresponseModalities
|
Określa typ danych wyjściowych (np. tekst, dźwięk lub obrazy). Ma zastosowanie tylko w przypadku używania modeli Live API lub modelu Gemini, który może generować dane wyjściowe w wielu formatach (np. modele „Nano Banana”). |
--- |
Mowa (głos)speechConfig
|
Określa głos używany na potrzeby przesyłanego strumieniowo wyjścia audio podczas korzystania z Live API. Ma zastosowanie tylko w przypadku używania modeli Live API. |
Puck |
Charakterystyka obrazuimageConfig
|
Określa format obrazu i rozdzielczość wygenerowanych obrazów. Obsługiwane wartości: patrz Konfigurowanie generowania obrazów Ma zastosowanie tylko w przypadku używania modelu Gemini zdolnego do generowania obrazów (np. modele „Nano Banana”). |
Format obrazu 1:1 (kwadrat) Rozdzielczość 1024 x 1024 |
Konfigurowanie modeli Imagen
|
Kliknij dostawcę Imagen API, aby wyświetlić treści specyficzne dla dostawcy i kod na tej stronie. |
W tej sekcji dowiesz się, jak skonfigurować model 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
w ramach tworzenia instancji ImagenModel.
import FirebaseAILogic
// 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
w ramach 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
w ramach 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
w ramach 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
w ramach 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
w ramach 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 |
|---|---|---|
Prompt wykluczający
negativePrompt
|
Opis tego, co chcesz pominąć w 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 jest to 1 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 jest ustawiony na JPEG). |
Znak wodny
addWatermark
|
Czy do wygenerowanych obrazów ma być dodawany niewidoczny cyfrowy znak wodny (nazywany SynthID). | Domyślnie jest to true.
|
Generowanie osób
personGeneration
|
Czy model ma mieć możliwość generowania obrazów osób. | Wartość domyślna zależy od modelu. |
Uwzględnij atrybuty bezpieczeństwa
includeSafetyAttributes
|
Czy w odpowiedziach na niefiltrowane dane wejściowe i wyjściowe mają być włączone zaokrąglone wyniki odpowiedzialnej AI dla listy atrybutów bezpieczeństwa
. Kategorie atrybutów bezpieczeństwa:
|
Domyślnie jest to false. |
Inne opcje kontrolowania generowania 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ć działaniem modelu. Ta funkcja działa jak wstęp, który dodajesz, zanim model zostanie poddany dalszym instrukcjom od użytkownika.
- Przekaż wraz z promptem schemat odpowiedzi, 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).