Gemini 3.8 Flash (gemini-3.8-flash) est notre modèle Flash le plus intelligent, conçu pour l'ingénierie logicielle à long terme, les agents autonomes et les workflows d'entreprise complexes.
Ce guide explique les nouveautés de Gemini 3.8 Flash, les modifications apportées à l'API, des exemples de code et des conseils de migration.
Nouveau modèle
| Modèle | ID du modèle | Niveau de réflexion par défaut | Tarifs | Description |
|---|---|---|---|---|
| Gemini 3.8 Flash | gemini-3.8-flash |
medium |
3.8 Flash est disponible jusqu'à la fin de l'année au prix découverte de 0,75 $/1 M de jetons d'entrée et 3,75 $/1 M de jetons de sortie. Pour en savoir plus, consultez la page Tarifs. | Notre modèle Flash le plus intelligent, conçu pour l'ingénierie logicielle à long terme, les agents autonomes et les workflows d'entreprise complexes. |
Gemini 3.8 Flash est compatible avec une fenêtre de contexte d'un million de jetons, 64 000 jetons de sortie maximum, des niveaux de réflexion réglables (low, medium, high) et la même suite complète d'outils intégrés.
Pour obtenir les spécifications complètes, consultez la page du modèle Gemini 3.8 Flash. Pour en savoir plus sur les prix découverte, consultez la section Tarifs plus loin sur cette page ou la page Tarifs.
Guide de démarrage rapide
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.8-flash",
input="Write a three.js script that renders a realistic 3D black hole."
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
model: "gemini-3.8-flash",
input: "Write a three.js script that renders a realistic 3D black hole.",
});
console.log(interaction.output_text);
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("gemini-3.8-flash"))
.input(
InteractionsInput.of(
"Write a three.js script that renders a realistic 3D black hole."))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println(interaction.outputText().orElse(""));
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
"google.golang.org/genai/interactions/models/interactions"
"google.golang.org/genai/interactions/models/operations"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
Body: operations.NewCreateInteractionRequestBody(interactions.CreateModelInteraction{
Model: interactions.Model("gemini-3.8-flash"),
Input: interactions.NewInteractionsInput("Write a three.js script that renders a realistic 3D black hole."),
}),
})
if err != nil {
log.Fatal(err)
}
if res.Interaction.OutputText != nil {
fmt.Println(*res.Interaction.OutputText)
}
}
REST
curl "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"model": "gemini-3.8-flash",
"input": "Write a three.js script that renders a realistic 3D black hole."
}'
Nouveautés de Gemini 3.8 Flash
- Ingénierie logicielle à long terme : offre d'excellents résultats sur les benchmarks de codage réels, le refactoring complexe de plusieurs fichiers et l'exécution déterministe d'outils. Pour en savoir plus, consultez la méthodologie d'évaluation.
- Agents autonomes : vous permet de créer des workflows de planification et d'orchestration d'outils en plusieurs étapes résilients, ce qui réduit considérablement les boucles et les erreurs.
- Workflows d'entreprise complexes : offre une précision supérieure, un raisonnement approfondi et une grande rigueur factuelle pour les tâches de domaine exigeantes et les pipelines de données à grande échelle.
- Modèle par défaut pour les agents gérés : l'agent par défaut pour les agents gérés, l'agent Antigravity, utilise désormais Gemini 3.8 Flash. Le SDK Antigravity utilise également Gemini 3.8 Flash par défaut.
- Prix découverte : Gemini 3.8 Flash est disponible au prix découverte de 0,75 $/1 M de jetons d'entrée et 3,75 $/1 M de jetons de sortie jusqu'au 31 décembre 2026. Les tarifs standards de 1,50 $/1 M de jetons d'entrée et 7,50 $/1 M de jetons de sortie entreront en vigueur le 1er janvier 2027.
Gemini 3.8 Flash peut utiliser plus de jetons pour les tâches plus longues et complexes, par conception. Pour fournir des résultats de meilleure qualité sur des objectifs difficiles en plusieurs étapes, le modèle effectue des étapes de raisonnement plus petites, appelle des outils de manière itérative et vérifie son travail en cours de route. Tous les workflows n'ont pas besoin de ce niveau de vérification. Pour les tâches quotidiennes, vous pouvez réduire l'effort de raisonnement afin de diminuer la consommation de jetons. Vous pouvez également continuer à utiliser Gemini 3.6 Flash.
Comprendre les niveaux de raisonnement
Gemini 3.8 Flash vous offre un contrôle flexible sur la latence et l'intelligence en ajustant le niveau de réflexion du modèle :
- Faible effort de réflexion : réduit le délai de réponse pour les tâches critiques en termes de latence, telles que les pipelines de réponse aux incidents, le chat en temps réel, la rédaction de brouillons et l'analyse de données rapide.
- Moyen (par défaut) : meilleure qualité pour la plupart des tâches. Recommandé pour le code complexe et les cas d'utilisation agentiques, offrant une plus grande précision dès la première passe.
- Effort de réflexion élevé : maximise les capacités de raisonnement et d'orchestration d'outils du modèle. Idéal pour le raisonnement approfondi, les mathématiques et les tâches complexes en plusieurs étapes.
L'exemple suivant définit thinking_level sur medium pour une requête d'analyse de code complexe :
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.8-flash",
input="Analyze this payment processing pipeline for race conditions during retry attempts and rewrite the transaction locks safely.",
generation_config={
"thinking_level": "medium" # Balanced reasoning effort for complex tasks
}
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
model: "gemini-3.8-flash",
input: "Analyze this payment processing pipeline for race conditions during retry attempts and rewrite the transaction locks safely.",
generation_config: {
thinking_level: "medium"
}
});
console.log(interaction.output_text);
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.GenerationConfig;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ThinkingLevel;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("gemini-3.8-flash"))
.input(
InteractionsInput.of(
"Analyze this payment processing pipeline for race conditions during retry attempts and rewrite the transaction locks safely."))
.generationConfig(
GenerationConfig.builder()
.thinkingLevel(ThinkingLevel.MEDIUM) // Balanced reasoning effort for complex tasks
.build())
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println(interaction.outputText().orElse(""));
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
"google.golang.org/genai/interactions/models/interactions"
"google.golang.org/genai/interactions/models/operations"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
Body: operations.NewCreateInteractionRequestBody(interactions.CreateModelInteraction{
Model: interactions.Model("gemini-3.8-flash"),
Input: interactions.NewInteractionsInput("Analyze this payment processing pipeline for race conditions during retry attempts and rewrite the transaction locks safely."),
GenerationConfig: &interactions.GenerationConfig{
ThinkingLevel: interactions.ThinkingLevelMedium.ToPointer(), // Balanced reasoning effort for complex tasks
},
}),
})
if err != nil {
log.Fatal(err)
}
if res.Interaction.OutputText != nil {
fmt.Println(*res.Interaction.OutputText)
}
}
REST
curl "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"model": "gemini-3.8-flash",
"input": "Analyze this payment processing pipeline for race conditions during retry attempts and rewrite the transaction locks safely.",
"generation_config": {
"thinking_level": "medium"
}
}'
Agent Antigravity mis à jour
En raison de ses performances et de son raisonnement améliorés, l'agent Antigravity dans Gemini Managed Agents est désormais conçu avec Gemini 3.8 Flash par défaut.
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
agent="antigravity-preview-09-2026",
input=(
"Audit https://web.dev for performance, Core Web Vitals, and SEO. "
"Query Google's PageSpeed Insights API for both Mobile and Desktop strategies. "
"Check search indexing with Google Search for site:web.dev. "
"Format the output as a side-by-side scorecard table with prioritized fixes."
),
environment="remote",
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
agent: "antigravity-preview-09-2026",
input: "Audit https://web.dev for performance, Core Web Vitals, and SEO. Query Google's PageSpeed Insights API for both Mobile and Desktop strategies. Check search indexing with Google Search for site:web.dev. Format the output as a side-by-side scorecard table with prioritized fixes.",
environment: "remote",
}, { timeout: 300000 });
console.log(interaction.output_text);
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.AgentOption;
import com.google.genai.gaos.models.interactions.CreateAgentInteraction;
import com.google.genai.gaos.models.interactions.CreateAgentInteractionEnvironment;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
Client client = new Client();
CreateAgentInteraction params =
CreateAgentInteraction.builder()
.agent(AgentOption.of("antigravity-preview-09-2026"))
.input(
InteractionsInput.of(
"Audit https://web.dev for performance, Core Web Vitals, and SEO. "
+ "Query Google's PageSpeed Insights API for both Mobile and Desktop strategies. "
+ "Check search indexing with Google Search for site:web.dev. "
+ "Format the output as a side-by-side scorecard table with prioritized fixes."))
.environment(CreateAgentInteractionEnvironment.of("remote"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println(interaction.outputText().orElse(""));
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
"google.golang.org/genai/interactions/models/interactions"
"google.golang.org/genai/interactions/models/operations"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
Body: operations.NewCreateInteractionRequestBody(interactions.CreateAgentInteraction{
Agent: interactions.AgentOption("antigravity-preview-09-2026"),
Input: interactions.NewInteractionsInput(
"Audit https://web.dev for performance, Core Web Vitals, and SEO. " +
"Query Google's PageSpeed Insights API for both Mobile and Desktop strategies. " +
"Check search indexing with Google Search for site:web.dev. " +
"Format the output as a side-by-side scorecard table with prioritized fixes.",
),
Environment: genai.Ptr(interactions.NewCreateAgentInteractionEnvironment("remote")),
}),
})
if err != nil {
log.Fatal(err)
}
if res.Interaction.OutputText != nil {
fmt.Println(*res.Interaction.OutputText)
}
}
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"agent": "antigravity-preview-09-2026",
"input": "Audit https://web.dev for performance, Core Web Vitals, and SEO. Query Google'\''s PageSpeed Insights API for both Mobile and Desktop strategies. Check search indexing with Google Search for site:web.dev. Format the output as a side-by-side scorecard table with prioritized fixes.",
"environment": "remote"
}'
Le modèle Gemini sous-jacent peut être configuré à l'aide de agent_config.
Checklist de migration
`/gemini-api-dev migrate my app to Gemini 3.8 Flash`
Migrer vers gemini-3.8-flash
- Mettre à jour l'ID du modèle : remplacez la chaîne de votre modèle cible par
gemini-3.8-flash. - Configurer le niveau de réflexion : remplacez
thinking_budgetpar l'énumération de chaînethinking_level. Notez queminimaln'est pas compatible avec Gemini 3.8 Flash. Choisissezlow,medium(par défaut) ouhigh. - Appliquer les modifications des paramètres de l'API Gemini 3 : supprimez les paramètres d'échantillonnage obsolètes (
temperature,top_p,top_k),candidate_count(non compatible avec Gemini 3 et versions ultérieures) et les tours de modèle préremplis. Consultez les modifications apportées à l'API Gemini 3.6 et les mises à jour des paramètres. - Appliquer les règles de validation des tours : standardisez les conversations en plusieurs tours sur
previous_interaction_idcôté serveur et supprimez les tours de modèle préremplis. - Auditer l'appel de fonction
- Placez les éléments multimodaux dans la charge utile de la réponse.
- Mettez en forme les instructions intégrées à l'aide de
\n\n. - Si vous voyez des erreurs
Malformed_Function_Callliées au texte pré-outil, consultez Solutions de contournement pour les exigences relatives au texte pré-outil. - Uniquement si vous utilisez l'API generateContent : assurez-vous que tous les objets
FunctionResponseincluentcall_idetname.
- Exigences de base de Gemini 3 : pour les mises à jour du SDK et la préservation de la signature de pensée, consultez Signatures de pensée.
Tarifs
Profitez des prix découverte dans Google AI Studio et Gemini Enterprise Agent Platform jusqu'au 31 décembre 2026 pour Gemini 3.8 Flash et Gemini 3.6 Flash. Les tarifs standards entreront en vigueur le 1er janvier 2027. Pour connaître les niveaux de tarification complets, consultez la page Tarifs.
Autres modèles
Étape suivante
- Consultez les spécifications de l'API dans la présentation des modèles.
- Découvrez l'orchestration multi-agent dans la présentation de l'API Interactions.
- Testez et affinez les prompts dans Google AI Studio.