Pourquoi votre agent oublie après 15 tours (et comment y remédier)

DEV - 05/01
Votre fenêtre contextuelle est un budget. À chaque tour, vous en dépensez. Finalement, vous en manquez. La plupart...

Votre fenêtre contextuelle est un budget. À chaque tour, vous en dépensez. Finalement, vous en manquez.

La plupart des développeurs n’y pensent que lorsqu’il est trop tard.

Le problème

Tour 1 : Invite système (2K) + Message utilisateur (100) = 2 100 jetons Tour 2 : + Réponse (500) + Utilisateur (100) + Réponse (400) = 3 100 jetons Tour 3 : + Appel d'outil (200) + Résultat de l'outil (2K) = 5 300 jetons Tour 4 : + Réponse (600) + Utilisateur (150) = 6 050 jetons... Tour 15 : 47 000 jetons = 💥 Limite de contexte dépassée
Entrer en mode plein écran Quitter le mode plein écran

Chaque tour s'ajoute à la pile. Il ne rétrécit jamais automatiquement.

Connaissez vos limites

ModèleFenêtre contextuelleLimite pratique*
GPT-4o128 Ko~100 000
Claude 3.5 Sonnet200K~150 000
GPT-4 Turbo128 Ko~100 000
Lama 3.1 70B128 Ko~100 000
Mixtral32K~25 000

*Laisser une marge pour la génération de réponses

Le cadre budgétaire

Considérez votre contexte comme un budget avec des catégories :

┌────────────────────────── ───────────────────────────┐ │ BUDGET CONTEXTE : 100K tokens │ ├────────────────────────── ───────────────────────────┤ │ │ │ ┌─────────────────┐ Coûts fixes (toujours présents) │ │ │ Invite système │ 5-10K │ │ │ Outil Définitions│ 2-5K │ │ └─────────────────┘ │ │ │ │ ┌─────────────────┐ Coûts variables (augmente) │ │ │ Conversation │ 10-30K │ │ │ Résultats de l'outil │ 10-50K │ │ │ Mémoire de travail │ 5-10K │ │ └─────────────────┘ │ │ │ │ ┌─────────────────┐ Réservé │ │ │ Espace de réponse │ 4-8K │ │ └─────────────────┘ │ │ │ └────────────────────────── ───────────────────────────┘
Entrer en mode plein écran Quitter le mode plein écran

Catégorie 1 : Frais fixes

Ceux-ci sont toujours dans votre contexte. Optimisez une fois, profitez toujours.

Invite système

# Avant : 3 847 jetons SYSTEM_PROMPT = """ Vous êtes un assistant IA utile conçu pour aider les utilisateurs dans leurs tâches. Vous avez accès à divers outils qui vous permettent d'interagir avec des systèmes externes. Lorsque vous répondez aux utilisateurs, vous devez être utile, inoffensif et honnête. Réfléchissez toujours étape par étape avant d'agir. Si vous n'êtes pas sûr de quelque chose, demandez des éclaircissements plutôt que de faire des hypothèses. Vous devez formater vos réponses de manière claire et lisible en utilisant Markdown le cas échéant. N'oubliez pas d'être concis. mais minutieux... [500 mots supplémentaires] """ # Après : 847 jetons SYSTEM_PROMPT = """ Vous êtes un assistant de codage ayant accès aux outils de fichiers et de bases de données : - Lire avant de modifier - Tester après les modifications - Demander si les exigences n...
[Courte citation de 8% de l'article original]
Loading...