Aller au contenu principal

Compaction du contexte

La compaction permet de poursuivre une longue conversation dans la fenêtre de contexte du modèle. Elle résume l’ancien contexte et conserve une partie récente de la branche sélectionnée. Les entrées d’origine restent enregistrées ; le résumé modifie le contexte des requêtes suivantes sans effacer la transcription.

La compaction gère le contexte de conversation. Elle n’écrit pas de faits dans USER.md ou MEMORY.md, ne termine pas une tâche à votre place et ne garantit pas la préservation de chaque détail. Gardez les sources importantes dans des fichiers et utilisez les références de contexte lorsque le texte exact compte.

Compaction automatique​

La compaction automatique est activée par défaut. Anyy compare l’utilisation à la fenêtre de contexte du modèle sélectionné et réserve de la place pour la prochaine réponse. Par défaut, 16 384 tokens sont réservés et environ 20 000 tokens récents conservés ; la configuration de session d’un modèle peut modifier ces quantités.

Anyy peut aussi compacter après une erreur de dépassement de contexte ou une limite de longueur de réponse récupérable. Si la récupération est possible, il tente une seule compaction suivie d’une nouvelle tentative dans la même exécution. Si celle-ci dépasse encore la limite ou est tronquée, réduisez le contexte ou choisissez un modèle à fenêtre plus large. La compaction automatique n’est pas une boucle de tentatives illimitée.

Le résumé utilise la route actuelle du modèle et peut consommer des ressources du fournisseur. La conversation peut s’interrompre pendant sa création. Un échec est signalé sans appliquer de résumé incomplet ; certains échecs de résumé de modèle virtuel auxiliaire permettent de poursuivre la préparation de la réponse d’origine avec l’historique existant.

API de compaction manuelle​

Les clients RPC connectés peuvent demander :

{"method":"session.compress","params":{"session_id":"SESSION_ID","focus":"Preserve decisions and unresolved constraints"}}

focus est facultatif. Cette méthode arrête le travail actif capturé, attend sa stabilisation et crée un résumé. Elle ne reprend pas automatiquement le tour interrompu. Une session trop courte ou déjà compactée peut signaler qu’il n’y a rien à compacter.

La CLI shell n’a pas de sous-commande anyy compact. Dashboard Chat et la TUI n’ont ni bouton de compaction manuelle ni commande /compact//compress. Leurs conversations ordinaires bénéficient néanmoins de la compaction automatique.

Parcourir et changer de branche​

Utilisez /tree dans la TUI lorsque la session est inactive :

  1. Utilisez Haut/Bas pour choisir une entrée existante.
  2. Appuyez sur s pour demander un résumé de la branche quittée ; le sélecteur indique si cette option est activée.
  3. Appuyez sur Entrée pour naviguer ou Échap pour annuler.

Sélectionner un message utilisateur déplace le contexte actif avant ce message. Son texte revient dans l’éditeur uniquement si celui-ci est vide. Les branches antérieures et voisines restent disponibles. Le prochain message poursuit à partir du point choisi ; la navigation seule ne déclenche aucune réponse.

Le résumé facultatif de branche emporte le contexte utile de la branche quittée. C’est une entrée de résumé distincte, sans nouvelle conversation ni mise à jour de mémoire. La restauration du modèle et des outils suit la branche choisie. Les clients connectés peuvent utiliser session.tree et session.tree.navigate ; créer une conversation séparée relève de l’API distincte session.fork.

Réessayer et annuler​

La compaction et les résumés de branche partagent la règle de nouvelle tentative des sessions du profil, distincte des tentatives de transport fournisseur. Chaque opération conserve son budget de tentatives. Annuler un résumé attend la fin de l’appel au modèle, laisse l’historique existant intact et n’applique aucun résumé incomplet ou tronqué.

Dans la TUI, Esc pendant l’attente d’une nouvelle tentative de l’agent n’annule que cette attente. Ce n’est pas un raccourci d’annulation de résumé. Consultez Sessions et TUI pour l’arrêt et le retour à l’éditeur.

Dépannage​

SymptômeAction
Le contexte déborde encore après récupérationRéduisez les références, choisissez un modèle à contexte plus large ou démarrez une session
Échec de génération du résuméVérifiez modèle et identifiants, puis réessayez par l’API prise en charge au besoin
Un détail exact manque après compactionJoignez de nouveau le fichier d’origine ou une référence limitée
/tree est indisponible pendant le travailTerminez ou arrêtez la réponse avant de naviguer
Le texte utilisateur d’une branche n’est pas revenuL’éditeur contenait un brouillon ; préservez-le avant la navigation

La compaction de la base de données est une autre opération : elle réduit le stockage, pas le contexte du modèle.