TuBrief
Subscribed Channels
Videos
Community

Comment diviser les grands prompts pour réduire le gaspillage de jetons des agents

TuBrief Editorial
March 14, 2026
0
Computing/Software

Written with AI assistance from the source video. The video is the authority.

Français한국어EnglishEspañol中文العربيةहिन्दीDeutschPortuguêsРусскийBahasa Indonesia日本語

Related Video

▲ Session communautaire : comment créer et publier des compétences1:03:28

▲ Session communautaire : comment créer et publier des compétences

Vercel

More from the community

사내 시스템에 llm api 붙일 때 마주하는 현실적인 한계와 대응법

September 13, 2026

레거시 백엔드에 GPT-6 Astra 붙일 때 예산 승인과 보안 통과를 먼저 끝내는 법이 있습니다

September 13, 2026

에이전트끼리 대화하다 6천만 원 청구서가 나오는 이유

September 13, 2026

사내 RAG 벡터 검색에 Okta 권한 필터를 직접 거는 방법

September 13, 2026

브라우저 에이전트에게 내 구글 계정을 통째로 넘기면 안 되는 이유

September 12, 2026

Apple Won the AI Race

September 12, 2026

Comments (0)

Log in to leave a comment

No posts yet

© 2026 . All rights reserved.

TuBrief
Subscribed Channels
Videos
Community
Log in

Comment diviser les grands prompts pour réduire le gaspillage de jetons des agents

Une structure monolithique qui entasse toutes sortes de directives et d'outils dans un seul prompt système montre rapidement ses limites. Dès que la conversation s'allonge un tant soit peu, l'agent oublie les consignes écrites au milieu du prompt. En raison de la transmission redondante de dizaines de milliers de jetons à chaque requête, les coûts d'inférence s'envolent et il faut attendre longtemps avant que le premier jeton n'apparaisse.

Dans la pratique, ce problème est résolu par une structure de chargement contextuel progressif basée sur la spécification ouverte agentskills.io. Cette approche consiste à appeler les compétences appropriées uniquement au moment opportun afin d'économiser des jetons.

Critères de séparation en fichiers de compétences Markdown indépendants

Un prompt système monolithique doit être divisé en fonction des frontières de domaine, des autorisations d'exécution d'outils et de la fréquence d'exécution. Il convient de maintenir à 3 ou moins le nombre de compétences activées simultanément dans une même session afin d'éviter les conflits entre compétences lors de la recherche de similarité par similarisation d'embeddings.

En haut du fichier de compétence séparé, on indique un front-matter YAML précisant un identifiant utilisant uniquement des tirets, des lettres minuscules anglaises et des chiffres, ainsi que l'objectif opérationnel.

`yaml

name: backend-api-generator
description: Generates Spring Boot REST API controller and service boilerplate code. Use when the user asks to create API endpoints, build REST controllers, or define DTO mappings for backend services.
when_to_use:

  • User requests new REST API endpoint creation
  • User provides database schema and asks for controller layer implementation
  • Do NOT use for: database migration SQL, frontend component generation
    allowed-tools:
  • read_file
  • write_file
  • list_directory
    effort: medium

`

Le processus de création d'une structure de chargement progressif est simple :

  • Lors de l'initialisation de l'agent, seules les métadonnées du front-matter YAML de toutes les compétences du répertoire (environ 100 jetons par compétence) sont chargées dans le prompt.
  • Lorsqu'une requête utilisateur arrive, sa similarité sémantique est comparée aux descriptions de compétences pour charger dynamiquement uniquement le corps de la compétence nécessaire.
  • Au stade de l'exécution, les scripts auxiliaires requis sont exécutés conformément aux directives du corps et seuls les résultats sont inclus dans le contexte.

En remplaçant la structure monolithique, qui occupait en permanence 15 000 à 30 000 jetons, par une structure de chargement différé SKILL.md, le surdébit de jetons initial est réduit de plus de 90 %. Selon les données de test internes d'Anthropic, cela permet de réduire la latence p95 de 12 % à 40 % et d'économiser 29,6 % de la consommation moyenne de jetons par conversation.

Contraintes internes pour prévenir la pollution du contexte

Lorsque plusieurs compétences sont chargées en chaîne, il arrive fréquemment que les directives de la compétence précédente restent dans la session et faussent la tâche suivante. Pour les inspections à haut risque ou les tâches générant beaucoup de journaux, il est nécessaire d'isoler les processus au niveau du système en insérant un paramètre de ramification de sous-contexte (context: fork) dans le front-matter YAML.

`yaml

name: security-vulnerability-auditor
description: Audits backend source code for OWASP top 10 security flaws. Use when auditing code security or checking for SQL injection vulnerabilities.
context: fork
model: claude-sonnet-4-20250514
effort: high

`

Il est également indispensable de définir clairement le contrat de données d'entrée/sortie (Data Contract).

  • Déclarer la structure des arguments et la liste des outils autorisés (allowed-tools) dans les métadonnées YAML pour empêcher l'exécution arbitraire de Bash ou les appels réseau inconsidérés.
  • Préciser les règles de schéma de sortie sous forme de JSON pur sans encapsulation Markdown dans le corps du texte.
  • Limiter les instructions afin de ne renvoyer que le résultat final dans la session de conversation.

`markdown

Output Schema Contract

All responses must strictly adhere to the following JSON structure without markdown wrapping:
{
"status": "SUCCESS" | "FAILED",
"generated_files": [
{
"path": "string",
"content": "string"
}
],
"error_message": "string | null"
}

`

L'isolation en sous-processus permet d'éviter que les journaux d'appel d'outils ne submergent la session principale. La session de conversation principale restant propre, la probabilité d'erreurs lors de l'échange de données entre sous-agents diminue également.

Conception d'un code de défense bloquant les boucles infinies

Si les exigences sont vagues ou si les erreurs d'appel d'outils se répètent, l'agent tombe dans une boucle de nouvelle tentative infinie. C'est le moment où des dizaines de dollars de frais d'API s'envolent en quelques minutes. L'intégration d'une liste de contrôle de vérification statique étape par étape (Verification Checklist) dans le corps du fichier de compétence permet à l'agent d'effectuer lui-même des vérifications avant de terminer sa tâche.

`markdown

Execution & Self-Testing Protocol

Before declaring the task finished, you MUST sequentially execute the following verification checklist:

  1. [Pre-check] Verify that all required input parameters are present. If mandatory arguments are missing, STOP immediately and ask the developer for input.
  2. [Generation] Write the requested implementation code.
  3. [Syntax Verification] Check the written code for missing imports, unresolved symbols, and syntax errors.
  4. [Self-Correction] If a syntax error is identified, attempt correction ONCE. Do not re-run the file write tool more than twice for the same error.

`

La méthode de création d'un coupe-circuit (Circuit Broker) pour interrompre physiquement la boucle est également simple.

  • Spécifier le nombre maximal d'appels d'outils (MAXIMUM_TOOL_CALL_LIMIT: 3) en haut de la compétence.
  • Noter la condition de contrainte qui arrête les appels d'outils supplémentaires si le même code d'erreur se produit deux fois de suite.
  • Conserver des instructions pour arrêter immédiatement l'exécution et afficher un format de notification en cas de déclenchement de la condition d'arrêt.

`markdown
[SKILL EXECUTION HALTED]
Skill Name: backend-api-generator
Failure Reason: [Brief error description]
Attempts Made: [Number of retries]
Suggested Action: [Action required by backend developer]

`

Pour les tâches dangereuses telles que la suppression de fichiers ou la réinitialisation de bases de données, il est plus sûr d'activer l'option disable-model-invocation: true. Cela empêche l'agent d'effectuer l'appel de lui-même et limite son exécution au seul cas où le développeur saisit directement la commande slash (/skill-name).

Gestion des versions et déploiement dans un dépôt partagé en équipe

Lorsque les membres de l'équipe rédigent des compétences ensemble, il est nécessaire de suivre l'architecture de répertoire standard agentskills.io pour éviter les problèmes de conflits de fichiers Markdown. Le corps, les scripts CLI, la documentation de référence et les actifs de modèles statiques doivent être clairement répartis et placés dans le dossier parent.

Chemin du répertoire et du fichier Rôle Consignes de rédaction
skills/api-generator/SKILL.md Document de point d'entrée obligatoire Contient le front-matter YAML et les consignes de procédure clés (moins de 500 lignes)
skills/api-generator/scripts/ Dossier de code exécutable Emplacement des scripts CLI Python/Bash appelés par l'agent si nécessaire
skills/api-generator/references/ Dossier de documentation de référence auxiliaire Hébergement des spécifications d'API volumineuses, schémas de BD, guides de style
skills/api-generator/assets/ Dossier de modèles de ressources statiques Stockage du code généré (boilerplate) et d'exemples de fichiers de configuration

Pour vérifier la qualité des compétences, il convient d'utiliser le framework d'évaluation promptfoo.

  • Spécifier le chemin cible de SKILL.md et le modèle LLM dans le fichier promptfooconfig.yaml.
  • Rédiger des cas de test vérifiant la correspondance des intentions et le respect du format JSON.
  • Exécuter la commande npx promptfoo@latest eval dans le terminal pour mesurer le taux de respect des consignes.

`yaml
description: "Backend Agent Skills Validation Suite"
prompts:

  • "file://skills/api-generator/SKILL.md"
    providers:
  • id: "anthropic:messages:claude-3-5-sonnet-20241022"
    tests:
  • description: "Test automatic skill activation for REST API generation query"
    vars:
    user_query: "Create a Spring Boot REST Controller for User Management."
    assert:
    • type: icontains
      value: "backend-api-generator"
    • type: javascript
      value: "output.includes('@RestController') && output.includes('ResponseEntity')"

`

Pour le déploiement, combinez une stratégie de développement basée sur le tronc (trunk-based development) utilisant des branches à courte durée de vie avec des tags Git (v1.2.0). Si l'agent se comporte de manière erronée en production, vous pouvez immédiatement revenir à la version précédente à l'aide de la commande git checkout tags/v1.1.0 -b hotfix/rollback.