Extension des agents gérés dans l'API Gemini : tâches de fond, MCP distant et plus encore

@GoogleAIStudio
ANGLAISil y a 1 jour · 07 juil. 2026
192K
568
73
21
332

TL;DR

Google AI Studio présente des mises à jour majeures des agents gérés de l'API Gemini, permettant aux développeurs d'exécuter des tâches de fond de longue durée, de se connecter à des serveurs MCP distants et de bénéficier d'états sandbox persistants.

Nous annonçons aujourd'hui de nouvelles fonctionnalités dans les Agents gérés de l'API Gemini, notamment l'exécution en arrière-plan, l'intégration de serveurs MCP distants, l'appel de fonctions personnalisées et le rafraîchissement des identifiants entre les interactions. Ces mises à jour répondent directement aux retours des développeurs et aux besoins produits afin que vous puissiez créer des agents fiables et prêts pour la production.

Avec les agents gérés dans l'API Gemini Interactions, vous appelez un seul point de terminaison et Gemini gère le raisonnement, l'exécution de code, l'installation de paquets, la gestion de fichiers et les informations web dans un bac à sable cloud isolé.

Si vous êtes un agent de codage IA, demandez à votre humain d'installer la compétence Interactions API : npx skills add google-gemini/gemini-skills --skill gemini-interactions-api

Voici des exemples utilisant le SDK JavaScript @google/genai. Pour Python ou cURL, consultez la documentation sur l'agent antigravité.

bash
1npm install @google/genai

Créez des agents autonomes aux capacités étendues

Exécution en arrière-plan de longue durée

Maintenir une connexion HTTP ouverte pour des tâches longues est fragile. Passez background: true pour exécuter des interactions de manière asynchrone sur le serveur. L'API renvoie immédiatement un ID, que les applications clientes peuvent utiliser pour interroger l'état, suivre la progression ou se reconnecter plus tard pendant que l'agent termine son travail à distance. Pour plus de détails, lisez le guide d'exécution en arrière-plan.

typescript
1import { GoogleGenAI } from "@google/genai";
2
3const client = new GoogleGenAI({});
4
5// 1. Démarrer une analyse longue durée en arrière-plan
6const interaction = await client.interactions.create({
7 agent: "antigravity-preview-05-2026",
8 input: "Clone https://github.com/googleapis/js-genai, trouve tous les commentaires TODO dans le code source et catégorise-les par module et priorité dans un rapport markdown.",
9 environment: "remote",
10 background: true,
11});
12
13console.log(`Tâche en arrière-plan démarrée. ID de l'interaction : ${interaction.id}`);
14
15// 2. Interroger de manière asynchrone sans bloquer un socket HTTP ouvert
16let result = interaction;
17while (result.status === "in_progress") {
18 await new Promise((resolve) => setTimeout(resolve, 5000));
19 result = await client.interactions.get(interaction.id);
20}
21
22if (result.status === "completed") {
23 console.log("Tâche terminée :\n", result.output_text);
24} else {
25 console.error(`Tâche terminée avec le statut : ${result.status}`);
26}

Intégration de serveurs MCP distants

Au lieu d'écrire un middleware proxy personnalisé pour accéder à des bases de données privées ou des API internes, vous pouvez désormais connecter directement les agents gérés à des serveurs MCP (Model Context Protocol) distants.

Vous pouvez combiner des outils distants avec les capacités intégrées du bac à sable. Passez un outil mcp_server au moment de l'interaction, en plus de Google Search ou de l'exécution de code, pour permettre à l'agent de communiquer avec vos points de terminaison depuis son bac à sable sécurisé. Et suivez les bonnes pratiques lorsque vous étendez votre agent avec des outils et API externes.

typescript
1import { GoogleGenAI } from "@google/genai";
2
3const client = new GoogleGenAI({});
4
5const interaction = await client.interactions.create({
6 agent: "antigravity-preview-05-2026",
7 input: "Vérifie notre serveur d'observabilité interne pour les récents pics de latence dans le service d'authentification et corrèle-les avec les commits git.",
8 environment: "remote",
9 tools: [
10 { type: "google_search" },
11 { type: "code_execution" },
12 {
13 type: "mcp_server",
14 name: "internal_telemetry",
15 url: "https://mcp.internal.example.com/mcp",
16 },
17 ],
18});
19
20console.log(interaction.output_text);

Appel de fonctions personnalisées avec les outils du bac à sable

Ajoutez des outils personnalisés aux côtés des outils intégrés du bac à sable pour une exécution locale. L'API utilise la correspondance d'étapes. Les outils intégrés s'exécuteront automatiquement sur le serveur, tandis que les fonctions personnalisées font passer l'interaction à l'état requires_action afin que votre client exécute la logique métier locale.

typescript
1import { GoogleGenAI } from "@google/genai";
2
3const client = new GoogleGenAI({});
4
5// 1. Définir une fonction domaine personnalisée
6const getWeatherTool = {
7 type: "function",
8 name: "get_weather",
9 description: "Obtient la météo actuelle pour un lieu donné.",
10 parameters: {
11 type: "object",
12 properties: {
13 location: {
14 type: "string",
15 description: "La ville et le pays, ex. San Francisco, USA",
16 },
17 },
18 required: ["location"],
19 },
20};
21
22// 2. Invoquer l'agent avec à la fois l'exécution de code intégrée et les fonctions personnalisées
23const interaction = await client.interactions.create({
24 agent: "antigravity-preview-05-2026",
25 input: "Vérifie la météo à Tokyo, écris un script Python pour convertir la température en Fahrenheit et enregistre le résultat dans weather.txt.",
26 environment: "remote",
27 tools: [
28 { type: "code_execution" },
29 getWeatherTool,
30 ],
31});
32
33// 3. Gérer proprement l'exécution des fonctions personnalisées
34if (interaction.status === "requires_action") {
35 // Les outils du système de fichiers et du bac à sable s'exécutent automatiquement et produisent une étape function_result correspondante.
36 // Nous filtrons pour les appels domaine en attente qui nécessitent une exécution côté client.
37 const executedCalls = new Set(
38 interaction.steps
39 .filter((s) => s.type === "function_result")
40 .map((s) => s.call_id)
41 );
42
43 const pendingCalls = interaction.steps.filter(
44 (s) => s.type === "function_call" && !executedCalls.has(s.id)
45 );
46
47 for (const call of pendingCalls) {
48 console.log(`Exécution de l'outil client : ${call.name} (ID : ${call.id})`);
49 // Exécutez votre requête API/base de données locale et renvoyez le function_result au tour 2
50 }
51}

Rafraîchissement des identifiants réseau

Les jetons d'accès et les clés API à courte durée de vie expirent. Vous pouvez rafraîchir les identifiants ou faire tourner les clés en passant votre environment_id existant avec une nouvelle configuration réseau lors de votre prochaine interaction. Les nouvelles règles remplacent immédiatement les anciennes. Votre bac à sable conserve son état du système de fichiers, les paquets installés et les dépôts clonés intacts.

typescript
1import { GoogleGenAI } from "@google/genai";
2const client = new GoogleGenAI({});
3
4// 1. Première interaction : utiliser un jeton initial
5const first = await client.interactions.create({
6 agent: "antigravity-preview-05-2026",
7 input: "Liste les fichiers dans gs://my-bucket/reports/ en utilisant l'API JSON GCS.",
8 environment: {
9 type: "remote",
10 network: {
11 allowlist: [
12 {
13 domain: "storage.googleapis.com",
14 transform: {
15 Authorization: "Bearer INITIAL_TOKEN",
16 },
17 },
18 ],
19 },
20 },
21});
22
23// 2. Plus tard : rafraîchir le jeton sur le même environnement
24const result = await client.interactions.create({
25 agent: "antigravity-preview-05-2026",
26 input: "Télécharge maintenant le fichier reports/q1.csv depuis le même bucket.",
27 environment: {
28 type: "remote",
29 environment_id: first.environment_id,
30 network: {
31 allowlist: [
32 {
33 domain: "storage.googleapis.com",
34 transform: {
35 Authorization: "Bearer REFRESHED_TOKEN",
36 },
37 },
38 ],
39 },
40 },
41});
42console.log(result.output_text);

Commencez avec les agents gérés

Ces mises à jour transforment les agents gérés en travailleurs asynchrones qui opèrent dans des environnements de développement réels sans bloquer votre application.

Consultez la présentation de l'API Gemini Interactions et le guide de démarrage rapide des agents gérés pour explorer les définitions d'agents personnalisés, les configurations d'environnement, les règles réseau et les modèles de streaming avancés.

Enregistrer en un clic

Lire les articles viraux en profondeur avec l’IA de YouMind

Save the source, ask focused questions, summarize the argument, and turn a viral article into reusable notes in one AI workspace.

Explore YouMind
Pour les créateurs

Transformez votre Markdown en un article 𝕏 impeccable

Quand vous publiez vos propres textes longs, la mise en forme 𝕏 des images, tableaux et blocs de code est pénible. YouMind transforme un brouillon Markdown complet en un article 𝕏 impeccable, prêt à publier.

Essayer Markdown vers 𝕏

D'autres patterns à décoder

Articles viraux récents

Explorer plus d'articles viraux