Introduction

Un agent IA n'est pas un seul chatbot qui sait tout magiquement. En coulisse, il exécute une boucle répétitive : il observe quelque chose, réfléchit à ce qu'il faut faire, choisit un outil et passe à l'action. Puis il observe le résultat de cette action et recommence. Comprendre cette boucle est la fondation de tout ce qui suit dans ce cours — connecter des bases de données, appeler des API et gérer l'authentification font tous partie des étapes « action » dans cette boucle.

La boucle Perception–Planning–Action

La boucle de l'agent comprend quatre phases qui se répètent continuellement jusqu'à ce que la tâche de l'agent soit terminée.

La perception est tout ce que l'agent peut lire ou sentir : l'invite de l'utilisateur, l'historique de la conversation, la sortie d'un appel d'outil précédent, ou des données extraites d'une base de données. La planification est l'étape de raisonnement du LLM où il décide de ce qui doit se passer ensuite. La sélection d'outils est le moment où le modèle choisit une fonction spécifique (comme query_database ou send_email) et produit les arguments pour celle-ci. L'action est lorsque cet outil s'exécute réellement et renvoie un résultat.

diagramme de flux de 4 étapes en cercle : Perception -> Planification -> Sélection d'outil -> Action -> retour à Perception

Après le retour de l'action, le résultat devient une nouvelle entrée de perception. L'agent replanifie ensuite. C'est pourquoi les agents peuvent enchaîner des appels — la sortie d'un outil informe la décision suivante.

Comment le modèle décide quel outil utiliser

Les agents modernes reçoivent une liste structurée des outils disponibles, chacun avec un nom, une description et un schéma de paramètres. Le LLM lit ces descriptions et décide lequel convient le mieux au besoin actuel. Il ne " sait pas " comment appeler une API par lui-même — il choisit l'outil que vous, le développeur, avez enregistré.

python
tools = [
{
"name": "query_database",
"description": "Run a read-only SQL query against the users database.",
"parameters": {
"type": "object",
"properties": {
"sql": {"type": "string", "description": "SELECT statement only"}
},
"required": ["sql"]
}
},
{
"name": "get_weather",
"description": "Fetch current weather for a city.",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string"}
},
"required": ["city"]
}
}
]

Lorsque l’utilisateur demande « Combien d’utilisateurs se sont inscrits la semaine dernière ? », le modèle fait correspondre la requête à query_database, génère l’argument SQL, et l’exécution s’effectue au moment de l’exécution. Remarquez que l’agent n’a pas inventé sa propre capacité — il a choisi parmi un menu que vous avez défini.

Où s’insèrent les intégrations externes

Chaque requête de base de données, appel API ou vérification d’authentification n’est qu’un outil supplémentaire dans ce menu. Du point de vue de l’agent, il n’y a aucune différence entre « rechercher une commande dans Postgres » et « appeler le point de remboursement Stripe » — les deux sont des outils avec un schéma et une fonction de gestion. Le cours construira ces gestionnaires étape par étape : d’abord les requêtes DB en lecture seule, puis les opérations d’écriture, puis les API externes, puis les flux authentifiés.

python
def handle_tool_call(tool_name, arguments):
if tool_name == "query_database":
return db.execute(arguments["sql"])
if tool_name == "get_weather":
return requests.get("https://api.weather.example/current",
params={"city": arguments["city"]}).json()
raise ValueError(f"Unknown tool: {tool_name}")

Ce gestionnaire est l’endroit où se déroule le vrai travail. Le LLM ne propose que ce qu’il faut faire — votre code décide de ce qui est sûr de faire.

Pièges courants

Traiter le LLM comme omniscient — il ne peut pas appeler des outils que vous n’avez pas enregistrés, et il ne peut pas accéder à des données pour lesquelles vous ne lui avez pas fourni d’outil. Confondre planification et exécution — le modèle ne fait que proposer ; votre runtime doit valider et exécuter. Laisser l’agent boucler indéfiniment — toujours définir une limite d’itérations maximale afin qu’un outil défectueux ne piège pas l’agent. Enfin, ne jamais faire confiance à la sortie brute du modèle comme appel direct à une base de données ou à une API sans validation; les injections SQL et les charges API erronées proviennent du contournement de cette étape.

Résumé

Un agent IA est une boucle : percevoir, planifier, choisir un outil, agir, observer le résultat, répéter. Les outils sont le pont entre le raisonnement du LLM et le monde extérieur. Bases de données, API et couches d’authentification sont toutes mises en œuvre comme des outils avec des schémas et des gestionnaires. Maîtriser ce modèle mental est la condition préalable à tout le reste de ce cours.

Point de contrôle de la leçon

1. Quels sont les quatre phases de la boucle d’agent IA introduites dans cette leçon ?

2. Où se produit l’exécution réelle d’une requête de base de données dans un système d’agent ?

3. Pourquoi un développeur enregistre-t-il des outils avec des descriptions et des schémas de paramètres ?

4. Après qu’un appel d’outil renvoie un résultat, que fait l’agent ensuite ?

5. Du point de vue de l’agent, quelle est la différence entre interroger une base de données et appeler une API externe comme Stripe ?

6. Laquelle des propositions suivantes est une sauvegarde recommandée lors de l’exécution d’une boucle d’agent ?

7. Quelle est une idée reçue courante sur les agents IA mentionnée dans la leçon ?

8. Que se passe-t-il à la phase « Action » de la boucle de l’agent ?

Fondations : Comment un agent IA perçoit, planifie et agit