---
source_url: pasted_text
ingested: 2026-06-06
sha256: d9e8f7a6b5c4 (simulé)
---
# 📘 Le Prompt Engineering pour Agents : Structurer pour la Stabilité

L'objectif du prompt engineering pour les agents autonomes n'est pas seulement d'obtenir une réponse correcte, mais de garantir que l'agent maintient un comportement stable, suit un protocole et ne "part pas en vrille" (hallucinations, boucles infinies, oubli des consignes).

## Frameworks de Raisonnement

### 1. ReAct (Reasoning and Acting)
Le framework ReAct combine le raisonnement et l'action. L'agent ne répond pas immédiatement, mais suit un cycle :
**Pensée $\rightarrow$ Action $\rightarrow$ Observation $\rightarrow$ Pensée**.
Cela permet à l'agent de :
- Planifier son étape suivante.
- Interagir avec des outils pour obtenir des faits.
- Ajuster son raisonnement en fonction du résultat de l'action.

### 2. Chaînes de Pensées (Chain-of-Thought / CoT)
Le CoT incite l'agent à décomposer un problème complexe en étapes logiques intermédiaires avant de donner la réponse finale. 
- **Avantage** : Réduit drastiquement les erreurs de logique dans les tâches mathématiques ou de programmation.
- **Application** : L'utilisation de phrases comme "étape par étape" ou "analysons d'abord" force l'activation de ce mode de raisonnement.

## Gestion des Fenêtres de Contexte

Le contexte est la ressource la plus critique d'un agent. S'il est saturé, l'agent perd ses instructions système (system prompt).

- **Surcharge de Contexte** : When the context window is full, the model may suffer from "lost in the middle" (difficulty retrieving info from the center of the prompt).
- **Stratégies de gestion** :
    - **Résumé glissant** : Résumer les parties anciennes de la conversation.
    - **Divulgation Progressive** : Ne charger que les informations nécessaires (ex: le système de skills de [[hermes-agent]]).
    - **Indexation externe** : Utiliser un wiki ou une base de données pour ne pas tout mettre dans le prompt.

## Principes de Stabilité
Pour éviter que l'agent ne diverge :
- **Délimiteurs clairs** : Utiliser des marqueurs comme `###` ou `---` pour séparer les instructions, les données et les exemples.
- **Few-Shot Prompting** : Fournir 2-3 exemples de "bonne" exécution (Input $\rightarrow$ Pensée $\rightarrow$ Action $\rightarrow$ Output).
- **Contraintes négatives** : Préciser explicitement ce que l'agent NE doit PAS faire.
