Glossaire et conventions pour outils agentiques (ReAct, FunctionTool, ToolRouter)
Glossaire
| Terme | Définition opérationnelle | Remarques |
|---|---|---|
Outil (Tool) |
Fonction callable exposée à l’agent, avec nom, description, schéma d’entrée, et logique métier | Peut être décorée ou encapsulée |
| FunctionTool | Représentation structurée d’un outil, incluant nom, description, paramètres typés, fonction Python, etc. | Format utilisé dans LangChain, CrewAI, ou orchestrateurs maison |
| Observation | Résultat retourné par un outil, interprété par l’agent comme une réponse à une action | Doit être lisible, typée, et sans ambiguïté |
| ReAct | Paradigme Reasoning + Acting : l’agent réfléchit, choisit un outil, observe le résultat, et recommence | Nécessite des outils bien décrits et des observations claires |
| Décorateur ReAct | Fonction qui encapsule un outil pour gérer les cas nuls, erreurs, ou formats d’observation | Ex : @react_tool_output |
| Toolkit | Collection d’outils regroupés par domaine ou usage, souvent injectée dans un agent | Peut être statique ou générée dynamiquement |
| ToolRouter | Mécanisme de filtrage intelligent qui sélectionne dynamiquement les outils pertinents à injecter dans le contexte | Peut être basé sur tags, embeddings, ou règles |
| Vectorisation | Transformation d’un texte (requête ou description) en vecteur sémantique pour calcul de similarité | Terme préféré à “encodage” |
| Matching sémantique | Comparaison de vecteurs pour identifier les outils les plus proches d’une requête | Utilise souvent la similarité cosinus |
| Tag | Étiquette sémantique associée à un outil ("math", "stat", "juridique", etc.) pour faciliter le routage |
Peut être manuel ou généré automatiquement |
| Schéma Pydantic | Définition typée des paramètres d’un outil, utilisée pour validation, documentation, ou génération automatique | Peut être dérivé des annotations Python |
Conventions de nommage et structuration
Outils (FunctionTool)
-
Nom :
snake_case, explicite (calcul_moyenne,recherche_siret) -
Description : phrase complète, actionnable, sans jargon
-
Paramètres : typés, nommés en français si l’agent est francophone
-
Retour : typé, clair, sans structure parasite
### Toolkits -
Regroupés par domaine :
math_tools,stat_tools,admin_tools -
Générés via
auto_toolkit(module, tags=...)si besoin
Décorateurs
@react_tool_output: appliqué uniquement si gestion des cas nuls ou erreurs souhaitée@as_function_tool(...): pour enregistrer automatiquement dans un registre
Routage
ToolRoutervectoriel : basé surSentenceTransformerouOpenAIEmbeddings- Tags : utilisés comme filtre rapide avant vectorisation
- Matching : top-k outils par similarité cosinus
- Fallback : si aucun outil n’est pertinent, retour explicite
"Aucun outil pertinent trouvé"