Skip to content

AIAgent / init_agent

源码版本v2026.7.20

Responsabilité

init_agent est l'« atelier d'assemblage » de l'agent : il injecte dans l'instance agent la configuration du provider, des toolsets, des seuils de compression, du extra_body personnalisé du provider, des composants de mémoire et d'apprentissage, afin qu'il dispose de toutes les dépendances nécessaires pour exécuter un tour de conversation. La classe AIAgent elle-même n'est qu'une coquille fine autour du produit qu'il crée.

Fichiers clés

Flux de données

  1. AIAgent.__init__ (run_agent.py:423) collecte tels quels les paramètres du constructeur.
  2. Appelle init_agent:276, qui dans l'ordre :
  3. L'agent assemblé expose la méthode run_conversation (run_agent.py:6350), transférée au run_conversation au niveau module (agent/conversation_loop.py:588).
  4. Le GatewayRunner de la passerelle (gateway/run.py:3029) détient l'agent assemblé et lui confie les messages entrants.

Résumé

init_agent est la couche de traduction configuration → runtime : toutes les décisions de démarrage (choix du provider, stratégie de compression, activation des toolsets) sont figées ici en une fois. Ensuite l'agent entre dans un rythme sans état « alimente un message → lance la boucle » et ne revient plus modifier la configuration.

Site d'apprentissage communautaire non officiel. Basé sur le code source de NousResearch/hermes-agent (licence MIT).