Dans chaque appel à un modèle, vous pouvez envoyer une configuration de modèle pour contrôler la manière dont le modèle génère une réponse. Chaque modèle propose différentes options de configuration.
Vous pouvez également tester des requêtes et des configurations de modèle à l'aide de Google AI Studio.Gemini Accéder aux options de configuration de Imagen Accéder aux options de configuration de
Configurer les modèles Gemini
Cliquez sur votre fournisseur Gemini API pour afficher le contenu et le code spécifiques à ce fournisseur sur cette page. |
Cette section vous explique comment configurer les modèles Gemini et fournit une description de chaque paramètre.
Configurer une configuration de modèle (Gemini)
Configuration pour les cas d'utilisation généraux
La configuration est conservée pendant toute la durée de vie de l'instance. Si vous souhaitez utiliser une autre configuration, créez une instance GenerativeModel
avec cette configuration.
Swift
Définissez les valeurs des paramètres dans un GenerationConfig
lorsque vous créez une instance GenerativeModel
.
import FirebaseAI
// Set parameter values in a `GenerationConfig` (example values shown here)
let config = GenerationConfig(
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
Définissez les valeurs des paramètres dans un GenerationConfig
lorsque vous créez une instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
val config = generationConfig {
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
Définissez les valeurs des paramètres dans un GenerationConfig
lorsque vous créez une instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
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
Définissez les valeurs des paramètres dans un GenerationConfig
lorsque vous créez une instance GenerativeModel
.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `GenerationConfig` (example values shown here)
const generationConfig = {
max_output_tokens: 200,
stop_sequences: ["red"],
temperature: 0.9,
top_p: 0.1,
top_k: 16,
};
// Specify the config as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME", generationConfig });
// ...
Dart
Définissez les valeurs des paramètres dans un GenerationConfig
lors de la création d'une instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
final generationConfig = GenerationConfig(
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
Définissez les valeurs des paramètres dans un GenerationConfig
lorsque vous créez une instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
var generationConfig = new GenerationConfig(
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
);
Vous trouverez une description de chaque paramètre dans la section suivante de cette page.
Configuration pour Gemini Live API
Description des paramètres (Gemini)
Voici un aperçu des paramètres disponibles, le cas échéant. Vous trouverez une liste complète des paramètres et de leurs valeurs dans la documentation Gemini Developer API.
Paramètre | Description | Valeur par défaut |
---|---|---|
Code temporel audio
audioTimestamp
|
Valeur booléenne qui permet de comprendre les codes temporels pour les fichiers d'entrée audio uniquement. Ne s'applique qu'aux appels |
false |
Pénalité de fréquence
frequencyPenalty
|
Contrôle la probabilité d'inclure des jetons qui apparaissent de manière répétée dans la réponse générée. Les valeurs positives pénalisent les jetons qui apparaissent de manière répétée dans le contenu généré, ce qui réduit la probabilité de répétition du contenu. |
--- |
Nombre maximal de jetons de sortie
maxOutputTokens
|
Spécifie le nombre maximal de jetons pouvant être générés dans la réponse. | --- |
Pénalité de présence
presencePenalty
|
Contrôle la probabilité d'inclure des jetons qui apparaissent déjà dans la réponse générée. Les valeurs positives pénalisent les jetons qui apparaissent déjà dans le contenu généré, ce qui augmente la probabilité de générer un contenu plus diversifié. |
--- |
Séquences d'arrêt
stopSequences
|
Spécifie une liste de chaînes qui indiquent au modèle d'arrêter de générer du contenu si l'une des chaînes est détectée dans la réponse. Ne s'applique que lorsque vous utilisez une configuration |
--- |
Température
temperature
|
Contrôle le degré de hasard dans la réponse. Des températures basses entraînent des réponses plus déterministes, tandis que des températures plus élevées entraînent des réponses plus diversifiées ou créatives. |
Dépend du modèle |
Top-K
topK
|
Limite le nombre de mots ayant la plus forte probabilité utilisés dans le contenu généré. Une valeur top-K de 1 signifie que le prochain jeton sélectionné doit être le plus probable parmi tous les jetons du vocabulaire du modèle, tandis qu'une valeur top-K de n signifie que le jeton suivant doit être sélectionné parmi les n jetons les plus probables (le tout en fonction de la température définie).
|
Dépend du modèle |
Top-P
topP
|
Contrôle la diversité du contenu généré. Les jetons sont sélectionnés du plus probable (voir top-K ci-dessus) au moins probable, jusqu'à ce que la somme de leurs probabilités soit égale à la valeur top-P. |
Dépend du modèle |
Modalité de réponse
responseModality
|
Spécifie le type de sortie diffusée en streaming lorsque vous utilisez la sortie multimodale Live API ou native par un modèle Gemini, par exemple du texte, de l'audio ou des images. Ne s'applique que lorsque vous utilisez Live API et une configuration |
--- |
Voix
speechConfig
|
Spécifie la voix utilisée pour la sortie audio en streaming lorsque vous utilisez Live API. Ne s'applique que lorsque vous utilisez Live API et une configuration |
Puck |
Configurer les modèles Imagen
Cliquez sur votre fournisseur Imagen API pour afficher le contenu et le code spécifiques à ce fournisseur sur cette page. |
Cette section vous explique comment configurer les modèles Imagen et fournit une description de chaque paramètre.
Configurer une configuration de modèle (Imagen)
La configuration est conservée pendant toute la durée de vie de l'instance. Si vous souhaitez utiliser une autre configuration, créez une instance ImagenModel
avec cette configuration.
Swift
Définissez les valeurs des paramètres dans un ImagenGenerationConfig
lors de la création d'une instance 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
Définissez les valeurs des paramètres dans un ImagenGenerationConfig
lors de la création d'une instance 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
Définissez les valeurs des paramètres dans un ImagenGenerationConfig
lors de la création d'une instance 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
Définissez les valeurs des paramètres dans un ImagenGenerationConfig
lors de la création d'une instance 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
Définissez les valeurs des paramètres dans un ImagenGenerationConfig
lors de la création d'une instance 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
L'utilisation de Imagen n'est pas encore prise en charge pour Unity, mais revenez bientôt !
Vous trouverez une description de chaque paramètre dans la section suivante de cette page.
Description des paramètres (Imagen)
Voici un aperçu des paramètres disponibles, le cas échéant. Vous trouverez une liste complète des paramètres et de leurs valeurs dans la documentation Google Cloud.
Paramètre | Description | Valeur par défaut |
---|---|---|
Requête négative
negativePrompt
|
Description de ce que vous ne voulez pas voir apparaître dans les images générées
Ce paramètre n'est pas encore compatible avec |
--- |
Nombre de résultats
numberOfImages
|
Nombre d'images générées renvoyées pour chaque requête | La valeur par défaut est d'une image pour les modèles Imagen 3. |
Format
aspectRatio
|
Rapport entre la largeur et la hauteur des images générées | La valeur par défaut est "carré (1:1)". |
Format de l'image
imageFormat
|
Options de sortie, comme le format d'image (type MIME) et le niveau de compression des images générées | Le type MIME par défaut est PNG. La compression par défaut est de 75 % (si le type MIME est défini sur JPEG). |
Filigrane
addWatermark
|
Indique si un filigrane numérique non visible (appelé SynthID) doit être ajouté aux images générées. | La valeur par défaut est true pour les modèles Imagen 3.
|
Génération de personnes
personGeneration
|
Indique si le modèle est autorisé à générer des personnes. | La valeur par défaut dépend du modèle. |
Autres options pour contrôler la génération de contenu
- Découvrez la conception des requêtes pour influencer le modèle et générer des résultats spécifiques à vos besoins.
- Utilisez les paramètres de sécurité pour ajuster la probabilité d'obtenir des réponses qui peuvent être considérées comme nuisibles, y compris des contenus incitant à la haine et à caractère sexuel explicite.
- Définissez des instructions système pour orienter le comportement du modèle. Cette fonctionnalité est semblable à un préambule que vous ajoutez avant que le modèle ne soit exposé à d'autres instructions de l'utilisateur final.
- Transmettez un schéma de réponse avec la requête pour spécifier un schéma de sortie spécifique. Cette fonctionnalité est le plus souvent utilisée pour générer des sorties JSON, mais elle peut également être utilisée pour les tâches de classification (par exemple, lorsque vous souhaitez que le modèle utilise des libellés ou des tags spécifiques).