Prompt Chaining
Le chaînage de prompts divise une tâche en une séquence d’appels au modèle, chaque prompt étant construit à partir de la sortie précédente, avec des vérifications de code entre les étapes.
Le chaînage d'invites divise une tâche en une séquence d'appels à un grand modèle de langage (LLM) ou à un autre modèle, où chaque invite est construite à partir de la sortie de l'appel précédent. Au lieu d'une longue invite qui doit lire un e-mail de support, trouver le numéro de commande, vérifier la commande et rédiger une réponse, une chaîne exécute une invite distincte et plus ciblée pour chaque étape, tandis que du code ordinaire transmet les résultats et les vérifie entre les étapes. Chaque sortie intermédiaire peut être inspectée, testée et corrigée de manière indépendante. Tongshuang Wu, Michael Terry et Carrie Cai ont étudié ce modèle dans AI Chains, présenté à CHI 2022, où le chaînage a amélioré la qualité des résultats ainsi que le sentiment de transparence et de contrôle des participants à une étude utilisateur menée auprès de 20 personnes.
Fonctionnement d'une chaîne d'invites#
Une chaîne est un programme fixe. Le développeur décide des étapes, de leur ordre et du modèle d'invite pour chacune, et le code transfère les données entre elles, souvent sous forme de JSON dont un schéma de sortie structurée garantit l'analyse. Le guide Building Effective Agents d'Anthropic classe le chaînage d'invites comme un flux de travail, c'est-à-dire un système dont le parcours est défini dans le code, et décrit des vérifications programmatiques, appelées barrières, entre les étapes pour confirmer que le processus suit toujours son cours. Ses exemples comprennent la rédaction d'un texte marketing puis sa traduction, ainsi que la rédaction d'un plan, sa vérification par rapport à des critères, puis seulement la rédaction du document. Le compromis consiste à échanger de la latence contre de la précision : chaque appel est plus facile à réussir, et chaque étape ajoute un aller-retour.
Les barrières sont importantes parce que les erreurs s'accumulent. Une valeur erronée extraite à la première étape devient un fait énoncé avec assurance à la troisième ; les chaînes vérifient donc généralement les formats, les plages ou les champs requis avant de transmettre quoi que ce soit. Les chaînes plus longues ajoutent des boucles comme celle ci-dessus, qui relancent une étape en incluant le message d'échec dans l'invite, ou une étape de routage où un premier appel étiquette la requête et le code sélectionne l'invite appropriée. Des frameworks comme LangChain fournissent des briques pour composer des chaînes, même si de nombreuses chaînes de production se résument à quelques appels de fonctions en Python standard.
Applications concrètes#
- Génération de code : AlphaCodium enchaîne l'analyse du problème, la génération de tests, la rédaction d'une solution et sa correction guidée par les tests ; il a fait passer le taux de réussite de GPT-4 à pass@5 sur les problèmes de validation de CodeContests de 19 % avec une seule invite directe à 44 %.
- Traitement de documents : les pipelines de factures et de contrats extraient les champs lors d'un appel, les valident dans le code, puis génèrent des résumés ou des e-mails à partir des champs validés lors d'un autre appel.
- Génération augmentée par récupération (RAG) : un premier appel reformule la question de l'utilisateur en requête de recherche, la récupération s'exécute dans le code sur une base de données vectorielle, puis un deuxième appel répond à partir des passages récupérés.
- Reconnaissance des plaques d'immatriculation : un modèle YOLO détecte les plaques d'immatriculation dans des images vidéo, et chaque plaque recadrée est transmise à GPT-4o mini, qui lit les caractères sous forme de texte, de sorte que le modèle de langage ne voit que des plaques.
Ultralytics Platform Agents crée ce type de chaîne sur une interface visuelle. Son modèle YOLO → VLM Monitor exécute YOLO26 sur une image, transmet les détections à un bloc Gate qui ne poursuit que si au moins une personne est détectée, puis envoie l'image accompagnée des résultats précédents à un modèle vision-langage dans un bloc LLM. Voici la même chaîne en Python, jusqu'à l'invite du deuxième lien :
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
# Link 1: detect objects and list their class names
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
names = [result.names[int(c)] for c in result.boxes.cls]
# Gate: call the language model only when a person is present
if "person" in names:
# Link 2: build the next prompt from link 1's output
prompt = f"Objects detected: {', '.join(names)}. In one sentence, describe what the people are doing."
print(prompt)L'invite affichée transmet les résultats de détection d'objets à l'appel suivant, et une image sans personne ne lui parvient jamais.
Chaînage d'invites et concepts connexes#
- Invites de chaîne de pensée : demandent à un seul appel du modèle d'expliciter ses étapes de raisonnement. Une chaîne d'invites répartit les étapes sur plusieurs appels, avec du code entre eux.
- Agents IA et invites ReAct : le modèle choisit sa prochaine action et décide quand il a terminé. Dans une chaîne, le développeur fixe les étapes à l'avance, ce qui facilite les tests et rend les coûts prévisibles.
- Flux de travail agentiques : la famille plus large de systèmes LLM composés de plusieurs étapes et outils, qui comprend le chaînage ainsi que le routage, les appels parallèles et les configurations orchestrateur-travailleurs.
- Ingénierie des invites : l'art de rédiger chaque invite individuellement. Le chaînage est un choix de conception portant sur le nombre d'invites à utiliser et la circulation des données entre elles.










