ADK-Rust 2.0

Le cadre Rust pourperformant, prêt pour la productionAgents IA.

ADK-Rust rassemble des agents typés, des outils, un état durable, des médias en temps réel et des protocoles ouverts dans un seul environnement d'exécution asynchrone, afin que vous puissiez passer d'un agent ciblé à un système que vous pouvez utiliser en toute confiance.

Commencer par l'unité de travail

Qu'est-ce qu'un agent IA en termes de ADK-Rust ?

Un agent est un composant asynchrone Rust. Il reçoit un contexte d'invocation, effectue des travaux avec des modèles ou des outils et émet des événements typés au fur et à mesure de sa progression. Les agents LLM, les workflows, les agents en temps réel, les agents de codage et les agents Rust personnalisés utilisent tous ce contrat partagé.

Ce qui rend ADK-Rust convaincant, c'est que l'agent fait toujours partie d'un système logiciel que vous pouvez comprendre et contrôler. Les appels de modèle, les entrées d'outils, les changements d'état, les approbations et les événements diffusés en continu ont des contrats Rust explicites. Le même environnement d'exécution peut prendre en charge un assistant ciblé, un flux de travail multi-agent durable, une expérience vocale en temps réel ou un agent qui fonctionne sur plusieurs services, tout en préservant les performances, la simultanéité, la portabilité et la discipline opérationnelle attendues par les équipes Rust.

Si vous connaissez LangGraph, Google ADK, OpenAI Agents SDK ou CrewAI, vous reconnaîtrez les outils, les transferts, les flux de travail, la mémoire, les garde-fous et le traçage. ADK-Rust intègre ces idées dans un environnement d'exécution natif Rust et les connecte aux médias en temps réel, à l'exécution de code, à RAG, aux artefacts et aux protocoles ouverts tels que MCP, A2A, ACP et AWP. La version 2 étend cette base avec des agents graphiques, temps réel, de codage et CodeAct ; schémas d'outils adaptés aux fournisseurs ; modèles de projets composables et construction d'adk cargo; des contrôles d’état et opérationnels plus stricts ; et une piste d'événements typée cohérente depuis le premier appel de modèle jusqu'à la production.

Architecture d'exécution ADK-Rust v2Les surfaces de produits envoient des requêtes dans l'ADK Runner. Le coureur coordonne les formes d'agents, les fournisseurs de modèles, les outils, les services d'État, les protocoles ouverts et les contrôles de production via des événements typés.ADK-Rust v2 — une requête, tout le systèmeOrange fixe : exécution · Gris pointillé : événements, résultats, CV · Limite violette : protocoles ouvertsSURFACES DU PRODUITInternet et mobileClients UI / APIVoix et vidéoClients en temps réelAutres agentsA2A / ACP / AWPCLI & emploiscargo-adk / cronTEMPS D'EXÉCUTION D'ADKRunnersession · contexte d'invocation · annulation · rappels · flux d'événementsCHOISISSEZ LA FORME D'AGENT DONT LE TRAVAIL A BESOINAgent LLMraison + outilsFlux de travailséquence/parallèle/boucleGraphiquepoint de contrôle + HITLCodeActécrire + exécuter du codeTemps réelvoix + vidéoPersonnaliséImplémenter l'agentFlux d'événements typéstexte du modèle · appels d'outils · progression · deltas d'état · artefacts · transferts · erreursCAPACITÉS AUTOUR DE L'AGENTFournisseurs de modèlesGemini · OpenAI · AnthropicOllama · Bedrock · Azure AIOutils & spécialistes#[tool] · skills · browserMCP · ACP · code sandboxEtat & connaissancessessions · memory · RAGartifacts · graph checkpointsMédias et interfacesaudio · video · A2UIREST · SSE · WebSocketProtocoles d'agentA2A · AWPdiscovery · task contractsCommerce · en évolutionACP commerce · AP2 alphadurable transaction journalscourirappelerrésultatémettre un événementPROTOCOLE ET LIMITE DE DÉPLOIEMENTREST / SSEA2AACPAWPMCPWebSocketLes protocoles adaptent le temps d'exécution aux limites du système ; ils ne le remplacent pas.Auth · autorisation de l'outil · garde-corps · bac à sable · plugins · télémétrie · évaluation · nouvelle tentative / annulationPRODUITS COMPAGNONSStudio · Interface utilisateur · Aire de jeux · Plateforme d'entreprise

Comment lire l'architecture

Suivez le schéma de gauche à droite. Une surface de produit envoie une requête au Runner. Le Runner attache l'état de la session et le contexte d'appel, puis appelle l'agent sélectionné. Les modèles, les outils et l'état soutiennent le travail tandis que les événements typés reportent la progression et les résultats.

À l'intérieur du runtime

Runner, agents, événements saisis, boucles modèle/outil, sessions, rappels, transferts et annulations.

A la frontière

Les transports MCP, A2A, ACP, AWP, HTTP, SSE et en temps réel connectent des systèmes et des zones de confiance distincts.

Hors cadre

Studio, l'interface utilisateur, Playground et le plan de contrôle consomment ADK-Rust ; ils ne fonctionnent pas à l'intérieur du Runner.

Surface du cadre

Les capacités derrière l’architecture.

ADK-Rust rassemble le cycle de vie complet de l'agent dans un seul cadre : composez le comportement de l'agent, donnez-lui des outils, préservez le contexte, connectez-le à d'autres systèmes et exploitez-le en toute sécurité en production. Les groupes ci-dessous montrent comment ces capacités s'articulent.

Créez des agents LLM, de flux de travail, de graphiques, en temps réel et de codage ; équipez-les d'outils typés, MCP, RAG, de mémoire, de sessions et d'artefacts ; connectez-les via REST, A2A, ACP et AWP ; puis ajoutez l'autorisation, les garde-fous, la télémétrie et l'évaluation pour la production.

Composer

Composer capability

LlmAgent

The main model-driven agent. Give it instructions, an LLM, tools, callbacks, and optional sub-agents; the Runner streams its work as typed events.

Agir

Agir capability

#[tool]

Turns a typed async Rust function into a model-callable tool and derives the argument schema from Rust types.

Rappelez-vous

Rappelez-vous capability

sessions

Keep conversation events and application state together so a user can continue the same interaction over multiple turns.

Se connecter

Se connecter capability

REST

Exposes familiar HTTP endpoints for clients that send a request and receive a structured response.

Fonctionner

Fonctionner capability

auth

Establishes who is calling the system through API keys, OAuth, OIDC, SSO, and application identity.

Construire

Construire capability

12 templates

Generate working starting shapes for focused agents, tools, retrieval, APIs, workflows, realtime sessions, and custom logic.

Voyez comment ça marche

Montrez le travail pendant qu’il se produit.

Le Runner résout la session, crée le contexte d'appel, exécute l'agent, diffuse le travail du modèle et des outils, applique les changements d'état, conserve les événements durables et renvoie la progression à l'appelant au fur et à mesure.

Cette même piste peut alimenter un terminal, une interface utilisateur Web, un client API, une évaluation ou une conversation en temps réel.

Suivre une vraie demande

Un client demande : « Pourquoi mon paiement a-t-il échoué ? » Le Runner ouvre la session appropriée, diffuse la sortie du modèle et l'activité de l'outil, enregistre les changements d'état et renvoie chaque événement utile à l'interface. L'utilisateur voit les progrès tandis que l'opérateur obtient un enregistrement complet de l'exécution.

Une invocation via ADK-RustUne requête charge une session, entre dans le programme d'exécution, parcourt le travail du modèle et des outils, émet des événements typés et conserve l'état et les artefacts avant le retour de la réponse.Suivre une requête tout au long du runtimeRien ne disparaît dans une boîte noire : chaque étape produit des états ou des événements typés.DemandeContenu + identitéCharger une sessionhistoire + étatRunnercontexte + cycle de vieAgentdécider de la prochaine étapeModèleréponse du fluxOutilagir sur le systèmeÉvénementsInterface utilisateur/serveurPersister sur le sentierévénements de session · deltas d'état · mémoire · artefacts · points de contrôle de graphique · traces d'évaluation

Composer le comportement

Lorsque le travail s'agrandit, divisez le travail sans perdre le fil.

Étudier les modèles multi-agents

Un routeur identifie le travail à effectuer. Les spécialistes manipulent les pièces qu’ils comprennent le mieux. Les flux de travail séquentiels et parallèles contrôlent l'ordre d'exécution, tandis que les points de contrôle graphiques conservent les preuves, les approbations et la progression attachées au même travail.

Flux de travail avancé des opérations client multi-agents ADK-RustUn incident d’accès client est acheminé vers des agents parallèles de compte, de paiement et de plateforme. Ils utilisent les systèmes MCP et A2A, rédigent des preuves vers un état de point de contrôle partagé et convergent dans un graphique de superviseur avec des chemins de nouvelle tentative, d'approbation, d'action et d'audit.Résoudre un véritable incident client sans perdre le contrôleCas d'utilisation : « Le paiement a réussi, mais l'espace de travail de notre équipe est toujours verrouillé. »Le flux de travail doit établir les faits, choisir un remède sûr, demander l’approbation des mesures consécutives et laisser une trace des preuves.ClientWeb · voix · APIRouteur de triLlmConditionalAgentClasser · définir l'urgence · choisir des spécialistesdemandeENQUÊTE PARALLÈLE · ParallelAgentAgent de compteIdentité + droitLit le client, l’équipe et l’état d’accèsAgent de paiementFacturation + transactionRapproche les frais, la facture et le forfaitAgent de plateformeExécution + provisionnementVérifie les verrous, les tâches et l'état du servicese déployerLIMITES DU SYSTÈMECRM + identitéRessources / outils MCPERP + paiementsMCP + journal commercialService d'approvisionnementAgent distant A2AÉtat d'incident partagé + point de contrôle graphiquecustomer_id · preuve de paiement · état des droits · santé de la plateforme · confiance · action proposéeChaque spécialiste rédige des preuves dactylographiées ; les tentatives et les interruptions humaines reprennent à partir du même point de contrôle.GRAPHIQUE DU SUPERVISEURSynthétiser les preuvesGraphAgentComparer les faits · évaluer la confianceAssez de preuves ?Bord conditionnelprêt / enquêterEnquêter à nouveauLoopAgent + réflexionRéessayez uniquement la branche manquantePorte d'approbationInterruption du graphiqueLe déverrouillage/remboursement nécessite une personneAgir dans l'ordreSequentialAgentmanquantreprendre le spécialiste sélectionnéprêtFlux de résultatsespace de travail restauré · réponse du client · artefact de preuve · événement de session · enregistrement d'audit · trace de télémétrie · échantillon d'évaluationAuth · RBAC · confirmation de l'outil · garde-corps · annulation · bac à sable · télémétrie · évaluation entoure l'intégralité de l'invocation
Le graphique ne demande pas à un seul agent de tout improviser. Le routage réduit le problème, les spécialistes enquêtent simultanément, l'état partagé maintient la cohérence de leurs preuves et les actions consécutives restent derrière une limite d'approbation explicite.

LlmAgent

Raisonnement ciblé

Un modèle, des instructions, des outils, des rappels et une sortie en streaming : le petit centre utile de la plupart des systèmes.

Sequential · Parallel · Loop

Travail déterministe

Exprimez les conditions d'ordre, de concurrence, de répétition et de sortie directement dans le programme Rust.

GraphAgent

Orchestration durable

Branchez, point de contrôle, interrompez pour une personne et reprenez une fois le processus ou la conversation avancé.

CodingAgent · CodeActAgent

Le logiciel comme action

Laissez un agent inspecter, modifier et exécuter du code dans un espace de travail et une limite de sandbox que vous contrôlez.

RealtimeAgent

Conversation en direct

Transportez l'audio, les transcriptions, les images vidéo, les interruptions et les outils côté serveur au cours d'une seule session en direct.

CustomAgent

Votre propre logique d'exécution

Implémentez le contrat d'agent pour un comportement spécifique au produit écrit directement dans Rust.

Le système autour de l'agent

Le modèle est une partie du produit.

Les agents utiles ont besoin d’outils, d’états, d’interfaces, de limites et de preuves. ADK-Rust expose chaque pièce via les interfaces composables Rust que vous possédez.

Un produit, plusieurs responsabilités

Dans un produit de support client, le modèle rédige la réponse, les outils inspectent la commande, la session contient le contexte client, l'autorisation contrôle les remboursements, un artefact stocke le reçu et la télémétrie enregistre le résultat. Chaque responsabilité reste visible dans le runtime.

Une architecture complète de produit d'agent ADK-RustLes interfaces entrent dans un runtime ADK-Rust qui coordonne la logique de l'agent, un adaptateur de modèle remplaçable, des outils, des services d'état et de connaissances. Les événements typés produisent des progrès visibles, des artefacts, des actions, des enregistrements d’audit et des preuves d’évaluation sous des contrôles partagés.Un produit agent utile est un système completLe modèle peut changer. Les contrats, l'état, les outils, les contrôles et les preuves restent votre propriété.PERSONNES ET INTERFACESApplication Webchat · formulaires · artefactsVoix et vidéoséance médiatique en directAPI et événementsREST · SSE · WebSocketAutres agentsA2A · ACP · AWPEXÉCUTION ADK-RUSTRunner + flux d'événements typésession · contexte · cycle de vie · annulationLogique des agentsraison · itinéraireFlux de travailgraphique · HITLBoucle modèle/outilappeler · observer · approuver · réessayer · continuerMODÈLE · UN ADAPTATEUR REMPLAÇABLEFournisseurhébergé / localSchémaprovider-awareOUTILS & SYSTÈMES EXTERNESOutils Rust#[tool]MCPoutils · ressourcesNavigateuractions WebSpécialistesACP · A2AÉTAT, CONNAISSANCE & TRAVAIL DURABLESéanceMémoireRAGArtefactsPoints de contrôleCE QUE LE PRODUIT PEUT MONTRERProgrès en directjetons · statut de l'outil · audioArtefacts utilesfichiers · rapports · médias · interface utilisateurActions approuvéesécrit · paiements · transfertsUne continuité durableséances · mémoire · CVPreuveévénements · audit · télémétrieSignaux de qualitéévaluation · coût · latenceles événements typés reviennent à chaque interfaceAuth · identité · autorisation d'outil · approbation · garde-corps · bac à sable · annulation · télémétrie · évaluation
Le modèle fournit des renseignements à l'intérieur d'un produit complet : des interfaces que les gens peuvent utiliser, des outils qui peuvent agir, des états qui survivent, des contrôles qui limitent les risques et des preuves qui expliquent ce qui s'est passé.
Modèles

Changez le modèle sans repenser l’agent.

Les modèles de frontière hébergés, les modèles de routage rapide, l'Ollama local et l'inférence native de mistral.rs se trouvent derrière un contrat Llm commun.

Gemini · OpenAI · Anthropic · OpenRouter · DeepSeek · Groq · Ollama · Bedrock · Azure AI · points de terminaison compatibles

Outils

Les outils utilisent des contrats explicites et inspectables.

Transformez une fonction Rust typée, un serveur MCP, une compétence, une session de navigateur, un agent de codage ou un processus sandbox en une fonctionnalité que le runtime peut inspecter et appeler.

#[tool] · FunctionTool · MCP · ACP · compétences · navigateur · code

État

Poursuivez la conversation et le travail qu'elle a produit.

Les sessions contiennent l’historique des événements. La mémoire récupère des connaissances utiles. Les artefacts préservent les fichiers. Les points de contrôle graphiques permettent de reprendre un long travail.

SQLite · PostgreSQL · Redis · MongoDB · Firestore · Neo4j · sessions chiffrées

Temps réel

Un agent en direct est plus qu’un point final de parole.

ADK-Rust conserve l'audio, les transcriptions, les images vidéo, les appels d'outils, les interruptions et les changements de contexte dans une session appartenant à Rust.

OpenAI Realtime · Gemini Live · Vertex Live · LiveKit · WebRTC en option

Connaissance

Intégrez la récupération dans la même piste d’exécution.

Regroupez les documents, intégrez-les, recherchez des magasins de vecteurs, reclassez les résultats et isolez la mémoire par projet avant que le modèle ne réponde.

Pipelines RAG · mémoire sémantique · graphe de connaissances · cinq implémentations de magasins vectoriels

Contrôle

Mettez l’approbation là où l’action se produit.

L'autorisation, les rappels, les garde-fous, les profils sandbox, l'annulation, la télémétrie et l'évaluation constituent la limite de l'exécution de la production.

RBAC · OAuth/OIDC · confirmation de l'outil · Garde-corps PII · OpenTelemetry · évaluation

Choisissez la limite

Utilisez le protocole qui correspond à la distance.

Commencez par l’endroit où la capacité s’exécute.

Conservez les sous-agents dans un seul environnement d'exécution ADK-Rust lorsqu'ils partagent le déploiement, l'état et la confiance. Introduisez un protocole lorsque la fonctionnalité, l'agent, l'espace de travail de codage ou le site Web possède son propre déploiement, processus, propriété ou limite de confiance.

Même processus Rust

Agent, sous-agent ou outil

Outils ou ressources externes

MCP

Agent déployé de manière indépendante

A2A

Processus de codage ou IDE

ACP

Site Web lisible par l'agent

AWP

MCP

Protocole de contexte de modèle

Donnez à un agent des capacités qui vivent ailleurs.

What is MCP?

Méthode standard permettant à un serveur externe de publier les outils qu'un agent peut appeler et les ressources qu'il peut lire.

Why use this protocol?
Vous évitez d'écrire un adaptateur sur mesure pour chaque base de données, produit SaaS, système de fichiers ou source de connaissances, et le même serveur peut servir plusieurs agents.
How does ADK-Rust use MCP?
McpToolset connecte le serveur au contrat d'outil de ADK-Rust. Le runtime découvre ses schémas, les normalise pour le fournisseur de modèles sélectionné et peut lire les ressources MCP ou gérer les processus du serveur MCP local.
When should I choose MCP?
Utilisez MCP lorsque la fonctionnalité appartient à un processus distinct, dispose déjà d'un serveur MCP ou doit être partagée entre plusieurs agents et applications.
What connects through MCP?
The other side is an MCP server: for example a database gateway, business API, document store, developer tool, or internal service.
Explore MCP in ADK-Rust
A2A

Protocole d'agent à agent

Laissez les agents déployés indépendamment travailler ensemble.

What is A2A?

Un protocole réseau permettant de découvrir un agent distant, de lui envoyer du travail, de suivre sa progression et de recevoir des résultats au-delà d'une limite HTTP.

Why use this protocol?
Un spécialiste peut conserver son propre modèle, ses outils, son état, son cycle de publication, son déploiement et ses limites de sécurité.
How does ADK-Rust use A2A?
ADK-Rust peut exposer un agent via son serveur A2A v1 et ses opérations de tâches. Un coordinateur peut alors traiter ce service distant comme un spécialiste tandis que les événements diffusés en streaming préservent la progression du travail.
When should I choose A2A?
Utilisez A2A lorsque l'agent est déployé, mis à l'échelle, détenu ou sécurisé séparément. Gardez les sous-agents ordinaires en cours lorsqu'aucune de ces limites n'existe.
What connects through A2A?
The other side is another agent service—perhaps a research specialist, finance agent, partner agent, or a system owned by another team.
Explore A2A in ADK-Rust
ACP

Protocole client agent

Déléguez le travail logiciel à un véritable agent de codage.

What is ACP?

Un protocole qui standardise les sessions entre les agents de codage et les clients qui les hébergent, notamment les éditeurs, les CLI et les systèmes d'orchestration.

Why use this protocol?
Le travail de codage nécessite le contexte de l’espace de travail, la progression en continu, l’annulation et les décisions d’autorisation tout au long de la session.
How does ADK-Rust use ACP?
AcpAgentTool et AcpToolset permettent à un agent ADK-Rust de démarrer ou de se connecter à un processus ACP, d'établir une session, de diffuser son travail et de renvoyer le résultat sous forme d'appel d'outil. Le côté serveur facultatif peut exposer un agent ADK-Rust aux clients ACP.
When should I choose ACP?
Utilisez ACP pour l'exploration, la mise en œuvre, la refactorisation, les tests ou toute autre tâche déléguée qui devrait avoir lieu dans un espace de travail de développement contrôlé.
What connects through ACP?
The other side is an ACP-compatible coding agent or client, such as Codex, Claude Code, an IDE, or your own ACP implementation.
Explore ACP in ADK-Rust
AWP

Protocole Web agent

Rendre un site Web compréhensible avant qu’un agent ne le supprime.

What is AWP?

Protocole Web par lequel un site publie qui il est, ce que les agents peuvent faire, quelles politiques s'appliquent et si ses services destinés aux agents sont sains.

Why use this protocol?
HTML explique une page à un navigateur, mais il explique rarement les capacités commerciales, le consentement, la confiance, les limites ou les événements à un agent autonome.
How does ADK-Rust use AWP?
adk-awp charge le contexte commercial, génère des manifestes de découverte et de capacités, et ajoute des routes Axum versionnées pour les limites de débit, le consentement, les abonnements aux événements et la surveillance de l'état de confiance.
When should I choose AWP?
Utilisez AWP lorsqu'un site Web ou un service doit être intentionnellement détectable et utilisable par les agents sans compter uniquement sur l'interprétation de pages fragiles.
What connects through AWP?
The other side is a visiting personal agent, enterprise agent, partner system, or agent-aware client that discovers and respects the site's published contract.
Explore AWP in ADK-Rust

Démarrage rapide pour les développeurs

D'un terminal à un agent actif, une décision à la fois.

Commencez par un petit projet Rust fonctionnel. Les étapes guidées ci-dessous expliquent ce que le générateur ajoute, comment compiler le projet localement et où l'étendre à mesure que votre produit se développe.

Ce que tu auras à la fin

Un agent Rust compilé avec un outil typé, une session Launcher interactive, une configuration de télémétrie, des points d'intégration de session et de garde-corps et une réponse de modèle réel dans le terminal. Le projet généré est une source Rust ordinaire que vous pouvez lire, modifier et étendre.

Avant de commencer

Deux choses sont requises sur votre machine

01

Rust 1.95 ou version ultérieure.
Installez avec rustup ou mettez à jour la chaîne d'outils stable.

02

Une clé modèle API.
Ce chemin utilise GOOGLE_API_KEY; un autre fournisseur peut être sélectionné ultérieurement.

01

Installer le générateur de projet ADK

cargo-adk ajoute les commandes cargo adk utilisées pour créer, inspecter, construire et déployer des projets d'agent.

cargo install cargo-adk
02

Créer un agent de démarrage utile

Commencez avec un agent capable d'appeler des outils Rust typés. Ajoutez de l'observabilité, de l'état de session et des crochets de garde-corps pendant la génération du projet.

cargo adk new support-agent --template tools \
  --addon telemetry --addon sessions --addon guardrails
03

Ajoutez vos informations d'identification de modèle

L'exemple généré utilise Gemini par défaut. Copiez le fichier d'exemple sécurisé, puis placez votre clé dans le fichier .env non suivi.

cd support-agent
cp .env.example .env
# set GOOGLE_API_KEY in .env
04

Compilez avant d'exécuter

cargo adk build vérifie les dépendances générées, la combinaison de fonctionnalités, les types Rust et la version binaire sans rien déployer.

cargo adk build
05

Courez et parlez à l'agent

Lancez la console générée, saisissez un message et regardez le même runtime saisi qui pourra ensuite alimenter un API, un workflow ou un produit en temps réel.

cargo run
agent de support — zsh

Installer une fois

$ cargo install cargo-adk

Générer le projet

$ cargo adk new support-agent \
+  --template tools \
+  --addon telemetry \
+  --addon sessions \
+  --addon guardrails
créé support-agent/
├── Cargo.toml dépendances + indicateurs de fonctionnalités
├── src/main.rs agent + outil typé
├── .env.exemple configuration requise
└── LISEZMOI.md instructions spécifiques au projet

Configurer le modèle

$ cd support-agent
  cp .env.example .env
  # Add GOOGLE_API_KEY to .env

Vérifiez, puis exécutez

$ cargo adk build
  cargo run
Exécution réelle de la v2 · appel d'outil typé
  ADK-Rust — support-agent
    Type a message to chat. Type 'exit' to quit.

  You > Greet Ada casually.

  [tool] greet({"name":"Ada","style":"casual"})
  Hey Ada! What's up?

  You > exit

  Goodbye.
✓ projet compilé · prêt à l'exécution · vérification locale terminée

Comprendre l'échafaudage

Voyez comment la commande est assemblée.

Le modèle fournit la forme de l'agent de travail. Chaque module complémentaire apporte les fonctionnalités de caisse, les importations, la configuration et un emplacement explicite pour terminer l'intégration.

Modèle

--template outils

Génère un agent LLM avec une fonction #[tool] typée et le câblage de schéma nécessaire pour les appels d'outils de modèle.

Add-on

--addon télémétrie

Permet l'intégration d'OpenTelemetry afin que le travail du modèle, des outils et de l'exécution puisse être tracé.

Add-on

--addon séances

Ajoute un câblage de service de session afin que l'état de conversation puisse survivre au-delà d'un seul appel modèle.

Add-on

--addon garde-corps

Ajoute la fonctionnalité et des hooks clairs pour la validation des entrées, les contrôles de sortie et le filtrage du contenu.

Choisissez une forme de départ différente

Douze points de départ pratiques pour les architectures d'agents courantes.

Choisissez la forme qui correspond au premier travail utile. Les modèles génèrent une source Rust modifiable, des dépendances, une configuration du fournisseur et un point d'entrée exécutable.

Ouvrez le guide de démarrage rapide complet
llmModèle d'agent

Commencez avec un agent de raisonnement.

Génère un LlmAgentBuilder, une configuration de modèle Gemini, des instructions, un Launcher basé sur une session et un terminal interactif.

Choisissez ceci lorsque

Choisissez-le pour les assistants, l'extraction, la classification ou une boucle de modèle et d'outils ciblée.

Point de départ généré

Un agent LLM · console diffusée · configuration du fournisseur

cargo adk new my-agent --template llm
toolsModèle d'agent

Donnez à un agent des actions type Rust.

Ajoute src/tools.rs avec une fonction #[tool] fonctionnelle, des arguments saisis, la génération de schéma JSON et l'enregistrement sur l'agent LLM.

Choisissez ceci lorsque

Choisissez-le lorsque l'agent doit calculer, récupérer des données, appeler une logique métier ou effectuer une action.

Point de départ généré

LlmAgent · Outil Greet · serde · schémas · adk-tool

cargo adk new my-agent --template tools
ragModèle d'agent

Réponse à partir de documents et de connaissances indexées.

Crée un pipeline RAG avec le regroupement de documents, les intégrations Gemini, un magasin de vecteurs en mémoire, un exemple de document et RagTool.

Choisissez ceci lorsque

Choisissez-le pour la documentation produit, les politiques, les collections de recherche ou les réponses fondées sur du matériel privé.

Point de départ généré

RagPipeline · chunker · intégrations · recherche de vecteurs · RagTool

cargo adk new my-agent --template rag
apiModèle d'agent

Exposez un agent via un service HTTP.

Génère un serveur Axum avec des points de terminaison d’intégrité, de création de session et d’exécution en streaming autour d’un agent LLM.

Choisissez ceci lorsque

Choisissez-le lorsqu'une application Web, un client mobile, un service backend ou une plateforme d'automatisation appellera l'agent.

Point de départ généré

Axum · Itinéraires REST · Réponses SSE · Sessions en mémoire

cargo adk new my-agent --template api
a2aAlias de modèle

Déployez un agent en tant que spécialiste distant.

Résout le modèle a2a-server et combine un agent LLM avec des fonctionnalités de serveur et de session pour l'accès agent à agent.

Choisissez ceci lorsque

Choisissez-le lorsqu'un autre agent doit découvrir et appeler cet agent au-delà d'une limite de déploiement ou de propriété.

Point de départ généré

Serveur A2A · identité de l'agent · gestion des tâches · sessions

cargo adk new my-agent --template a2a
graphModèle d'agent

Préparez un flux de travail durable et ramifié.

Active la fonctionnalité graphique et crée les importations et le point de départ de l'agent pour les nœuds, les tronçons, les points de contrôle, l'interruption et la reprise.

Choisissez ceci lorsque

Choisissez-le pour un travail de longue durée avec des branches, des étapes d'approbation, une récupération ou un état d'exécution durable.

Point de départ généré

Fonctionnalité graphique · Agent de workflow · Point de départ de la topologie

cargo adk new my-agent --template graph
realtimeModèle d'agent

Préparez un agent vocal ou vidéo en direct.

Permet une prise en charge en temps réel et crée un point de départ concis pour un agent vocal avec des importations en temps réel et la configuration du fournisseur.

Choisissez ceci lorsque

Choisissez-le pour une conversation naturelle, une interruption, une traduction en direct, des outils audio ou des images vidéo entrantes.

Point de départ généré

Fonctionnalité en temps réel · instructions vocales · point de départ du transport

cargo adk new my-agent --template realtime
sequentialModèle de flux de travail

Transmettez le travail aux agents dans un ordre fixe.

Génère des agents de recherche et d'écriture à l'intérieur d'un SequentialAgent afin que chaque étape reçoive le travail produit par l'étape précédente.

Choisissez ceci lorsque

Choisissez-le lorsque le processus comporte des phases claires telles que la collecte, l'analyse, la rédaction, la révision et la publication.

Point de départ généré

Deux agents LLM · exécution ordonnée · piste d'appel partagée

cargo adk new my-agent --template sequential
parallelModèle de flux de travail

Exécutez simultanément des spécialistes indépendants.

Génère deux agents spécialisés dans un ParallelAgent et rassemble leur travail via un flux de travail parent.

Choisissez ceci lorsque

Choisissez-le lorsque plusieurs enquêtes peuvent commencer à partir de la même entrée et se terminer indépendamment.

Point de départ généré

Deux agents LLM · exécution simultanée · résultats agrégés

cargo adk new my-agent --template parallel
loopModèle de flux de travail

Répétez un cycle de raffinement limité.

Crée un travailleur à l'intérieur de LoopAgent avec un signal d'achèvement explicite et une limite de sécurité de cinq itérations.

Choisissez ceci lorsque

Choisissez-le pour les processus de rédaction, de critique, de réparation, de validation ou de recherche qui s’améliorent grâce à des passages répétés.

Point de départ généré

Constructeur LoopAgent · agent ouvrier · instruction d'achèvement · itérations maximales

cargo adk new my-agent --template loop
conditionalModèle de flux de travail

Acheminez chaque demande vers le bon spécialiste.

Génère des agents techniques et généraux à l'intérieur d'un ConditionalAgent qui sélectionne un chemin à partir de la demande entrante.

Choisissez ceci lorsque

Choisissez-le lorsque les catégories de travail nécessitent des instructions, des outils, des modèles ou des spécialistes de domaine différents.

Point de départ généré

ConditionalAgent · deux itinéraires · Sélection basée sur LLM

cargo adk new my-agent --template conditional
customModèle d'agent

Implémentez directement le contrat d’agent.

Crée un type MyAgent avec les méthodes de trait Agent et une fonction d'exécution prête pour votre propre logique d'exécution et flux d'événements Rust.

Choisissez ceci lorsque

Choisissez-le pour une orchestration déterministe, des machines d'état existantes, des environnements d'exécution de domaine ou un comportement nécessitant un contrôle total de Rust.

Point de départ généré

Squelette de trait d'agent · InvocationContext · Point d'entrée EventStream

cargo adk new my-agent --template custom

Le registre CLI inclut également les informations spécifiques au fournisseur. openai modèle, cinq modèles d'entreprise, le basic et a2a alias et modules complémentaires de fonctionnalités composables.

cargo adk templatescargo adk addons

Compilez ce dont vous avez besoin

Commencez petit. Ajoutez le système lorsque le produit le demande.

Choisissez d’abord un modèle pour la forme d’exécution du projet. Sélectionnez ensuite un niveau de fonctionnalités pour les capacités compilées dans le binaire.

Les niveaux de fonctionnalités contrôlent les dépendances, le temps de compilation, la surface binaire et le framework API disponible. Les bases de données persistantes, MCP, les gestionnaires de secrets cloud et les transports spécifiques en temps réel restent des choix explicites.

01 · Commencez ici

minime

Agents · Gemini · Runner · séances

Un agent ciblé avec la plus petite surface par défaut.

02 · Construire un produit

norme

Outils · mémoire · graphique · serveur · authentification · évaluation · télémétrie

La plupart des API, des systèmes de flux de travail et des produits d'agent interne.

03 · Élargir le système

entreprise

Base en temps réel · navigateur · RAG · paiements · AWP

Des produits qui nécessitent une interaction et une interopérabilité plus riches.

04 · Surface spécialisée

plein

Audio · exécution de code · bac à sable

Optez pour les capacités locales et d’exécution les plus avancées.

adk-rust = { version = "2.0.0", features = ["standard"] }

Construire avec ADK-Rust

Créez un agent fonctionnel, comprenez son environnement d'exécution et développez-le en toute confiance.

Votre première étape utile est une demande, un appel d'outil visible et une session que vous comprenez. Le démarrage rapide guidé construit ce chemin. À partir de là, ajoutez les flux de travail, l'état, les protocoles et les contrôles de fonctionnement dont votre produit a besoin.