Ne faites pas confiance.
Vérifiez.
Exécutez lean-ctx benchmark run dans n'importe quel projet. Comptage réel des tokens. Métriques de précision réelles. Mesurées avec tiktoken (o200k_base).
Mesuré. Vérifié.
Le benchmark s’exécute localement, compte les tokens avec le tokenizer exact et rejette les compressions sous le seuil de qualité.
Comptage exact des tokens
Compte avec le même tokenizer que les LLM modernes - pas d’estimations.
tiktoken o200k_base Garde-fou qualité
Évalue la préservation de l’AST, des identifiants et de la structure des lignes. Les sorties insuffisantes sont bloquées automatiquement.
seuil : Q ≥ 95% · ρ ≥ 15% Reproductible
S’exécute sur votre repo. Mêmes entrées → mêmes chiffres. Idéal pour CI et régressions.
offline · déterministe Before & After
The same file. The same information. Dramatically fewer tokens.
88% fewer tokens
Comment ça fonctionne
Pointez vers n'importe quel fichier ou répertoire
Indiquez un fichier, un répertoire ou un motif glob. Le moteur de benchmark traite tout ce qu'il trouve.
lean-ctx benchmark run src/ Mesure exacte des tokens
Utilise tiktoken avec l'encodage o200k_base (identique à GPT-4o, Claude et les LLM modernes). Pas d'estimations - un comptage réel des tokens.
tiktoken o200k_base Économies par mode
Obtenez des scores de précision et des pourcentages d'économies pour chaque mode de compression. Choisissez le bon mode pour chaque cas d'usage.
modes: 10 Benchmark en action
Exécutez le benchmark sur n'importe quel fichier de votre projet. La sortie affiche le nombre exact de tokens pour chaque mode de compression, le pourcentage d'économies et les scores de préservation de la qualité.
Détail par fichier - tokens avant et après chaque mode
Scores de qualité - AST, identifiants et lignes de code préservés
Totaux agrégés - économies à l'échelle du répertoire avec recommandation du meilleur mode
$ lean-ctx benchmark run src/auth.ts
◆ lean-ctx Benchmark
────────────────────────────────────────
src/auth.ts (123 lines, 3,517 tokens)
────────────────────────────────────────
Mode Tokens Saved Rate
full 3,517 0 0%
map 412 3,105 88%
signatures 252 3,265 93%
diff 187 3,330 95%
aggressive 298 3,219 92%
entropy 312 3,205 91%
────────────────────────────────────────
Quality: AST 98% | Idents 97% | Lines 96%
Encoding: tiktoken o200k_base | Time: 12ms
Modes de lecture comparés
full 0% Fichiers que vous allez modifier
Tout - contenu complet mis en cache pour les relectures à ~13 tokens
map 70–88% Fichiers de contexte uniquement
Graphe de dépendances, exports, signatures clés
signatures 55–93% Exploration de la surface API
Signatures de fonctions/classes/types uniquement
diff 80–95% Après des modifications
Lignes modifiées avec un contexte environnant minimal
aggressive 75–90% Fichiers volumineux avec beaucoup de code répétitif
Structure et logique, syntaxe supprimée
entropy 70–83% Fichiers bruités (JSDoc, commentaires)
Lignes à haute entropie uniquement (filtrage Shannon + Jaccard)
task 65–85% Task-focused reads (e.g. 'fix auth bug')
Task-relevant code + dependency context via Knowledge Graph + IB filter
auto 70–99% Par défaut - lean-ctx choisit automatiquement le meilleur mode
S’adapte par fichier : type, bucket de taille, récence, pertinence de la tâche
reference 80–95% Documentation API et consultation de référence
API publique, types, signatures, docstrings
lines:N-M 90–99% Lire une plage de lignes précise - précision chirurgicale
Lignes exactes demandées, plus un contexte minimal autour
ctx_smart_read de lean-ctx sélectionne automatiquement le mode optimal grâce à une prédiction bayésienne basée sur le type de fichier, la taille et le contexte.
Advanced Compression Pipeline
Beyond mode selection, lean-ctx applies a multi-stage optimization pipeline that adapts to file type, session context, and task intent:
Learns optimal compression thresholds per file type using multi-armed bandit exploration (explore vs exploit)
Language-aware pruning via Tree-sitter - removes function bodies, comments, and boilerplate while preserving API signatures
Cross-file deduplication using inverse document frequency - eliminates content already seen in the session
Task-aware filtering using the Information Bottleneck principle - keeps only content relevant to the current task
Collapses repetitive structures (imports, log lines, boilerplate) into counted summaries
These stages are cumulative - applied in sequence, they can reduce a 1000-line file to under 50 tokens while preserving all task-relevant information. The pipeline is fully automatic and requires no configuration.
Qualité de compression
Seuil de qualité (composite)
La sortie compressée n’est utilisée que si le score composite reste à ≥ 95%.
Densité minimale
Bloque les sorties pauvres en information avec une densité minimale de signal de 15% (ρ).
Pondération
Composite = AST 50% + identifiants 30% + lignes 20% - la structure compte le plus.
Pourquoi moins de tokens = une densité de signal plus élevée
Les LLM ont un budget d'attention fixe. Chaque token dans la fenêtre de contexte se dispute les poids d'attention. Remplir la fenêtre avec du code répétitif signifie moins d'attention sur le code qui compte.
En supprimant le bruit avant qu'il n'atteigne le modèle, lean-ctx augmente la densité d'information de chaque requête. Le résultat : un rapport signal/bruit plus élevé, moins de dilution du contexte, et le modèle reste dans les limites utiles du contexte.
10K tokens de contexte ciblé surpassent 200K de code répétitif. Le modèle concentre son attention sur la logique, pas sur les commentaires JSDoc et les imports standards.
Le bruit contextuel dilue la fenêtre d'attention du modèle. Le supprimer aide le modèle à rester ancré dans la structure réelle du code et réduit les risques d'hallucination.
Moins de tokens en entrée signifie des coûts API réduits et davantage de messages dans votre limite de débit. Le même quota va plus loin - pour chaque outil IA que vous utilisez.
Measured on Real Code
Exemples représentatifs - vos chiffres varient selon les fichiers et le codebase.
450 lines - map mode
12,840 → 1,541 820 lines - signatures mode
18,290 → 1,280 1,200 lines - aggressive mode
31,500 → 2,835 680 lines - entropy mode
15,400 → 2,618 340 lines - diff mode
8,750 → 437 Benchmark
Methodology
Every number on this page is reproducible. Here's exactly how we measure.
Tokenizer
All token counts use tiktoken with the o200k_base encoding — the same
tokenizer used by GPT-4o, Claude, and modern LLMs. No estimates or approximations.
Quality Threshold
Compressed output is only used if the composite quality score stays at or above 95%. Composite = AST preservation (50%) + identifier preservation (30%) + line coverage (20%).
Reproduce Locally
Run lean-ctx benchmark run src/ on your own codebase. The output shows exact token counts
for each compression mode, savings percentage, and quality preservation scores.
Disclaimer
Results vary by file type, size, language, and read mode. The "60-99%" range reflects real-world variance: small structured files compress more, large unstructured files compress less. Cached re-reads (~13 tokens) represent the best case.
Mesurez vos économies réelles.
Installez lean-ctx et exécutez benchmark run sur votre base de code. Des chiffres réels, vos fichiers, vos économies.
lean-ctx benchmark run src/ Works on any codebase. No config needed. Results in seconds.