Référence tarifaire (compte de première ligne). Prix catalogue officiel de fable 5 : $10 / M de tokens d'entrée (capturé le 2026-07-24 04:37 UTC depuis la page tarifaire officielle ; la page affiche $10/MTok — aucun écart avec le chiffre $10/M utilisé ici ; même capture : hits de cache $1/MTok, entrée batch $5/MTok). Le coût d'un workflow agentique est dominé par les tokens d'entrée : sur la journée de registre 2026-07-23, les tokens d'entrée représentaient 99.0% du volume de tokens (769,249,823 en entrée vs 7,387,431 en sortie) — 95.4% du coût en dollars aux purs prix catalogue, et encore ≈75.3% après la remise sur entrée en cache (la sortie est facturée $50/M mais représente <1% du volume). Prix d'entrée effectif mesuré après les trois leviers : $10/M × [(1−94.9%) + 94.9% × remise entrée-en-cache $1/$10] = $1.46/M pondéré cache → ÷ compression mesurée 2.83× (fenêtre 07-23, n = 7,222, médiane) = $0.52/M → × 50% saver (tarif facial officiel batch/flex) ≈ $0.26 / M (2.6% du prix d'origine) de tokens d'entrée — le pourcentage est le prix d'entrée effectif mesuré ÷ le prix catalogue officiel de $10/M, calculé sur la chaîne de leviers non arrondie. Formule complète et réserves dans la table de méthodologie.

Rapport d'ingénierie

coder : efficacité de coût 5.66× sur fable 5 & qualité SWE

Facteur vedette : 5.66× = compression 2.83× (mesurée) × saver 2.00× (tarification officielle). La compression est mesurée à une médiane de 2.83× (p10–p90 2.26–3.08×) sur la dernière journée complète de registre de production (2026-07-23, n = 7,222 requêtes). Le facteur saver est un fait de la grille tarifaire officielle batch/flex — les deux voies facturées à 50% du catalogue, d'où un 2.00× constant — et non une mesure du trafic de cette fenêtre. Vue prudente à l'échelle de la flotte : compression pure 2.49× / 2.14×.

Tout ce qui figure sur cette page est une mesure réelle issue de nos propres registres de production et runs de benchmark. Chaque nombre renvoie à une source enregistrée par machine. Aucune projection, aucune extrapolation.

Construit sur le CLI/agent open source codex, coder se concentre sur le travail autonome de longue durée (fenêtre de contexte effective, §1.1b · A/B SWE-bench, §2) et l'efficacité de coût (compression, §1.1 · paliers saver, §1.2). Pour l'essayer par vous-même, coder s'installe depuis la page officielle : run.ceo/coder. Une méthode externe n'ayant pas produit de résultats stables dans notre environnement de production, nous avons conservé notre algorithme maison.

1 · Efficacité de coût : deux leviers indépendants

coder réduit le coût facturé par deux mécanismes distincts, et cette page maintient leur comptabilité séparée : la compression (mesurée) et les paliers saver (un fait tarifaire). Chaque levier a sa propre formule, ses propres preuves et sa propre ligne dans la table de méthodologie.

2.83×
compression — mesurée, médiane par requête
p10–p90: 2.26–3.08× · n = 7,222
2.00×
paliers saver — batch & flex à 50% du prix catalogue (fait tarifaire officiel)
grille tarifaire publiée, par voie ; mêmes modèles, même qualité

1.1 · Compression (mesurée)

Le pipeline fournit au modèle une représentation compacte de la même session. Par requête, le registre enregistre la base non compressée et l'entrée réellement envoyée : facteur = base ÷ envoyé. Médiane 2.83× (p10–p90 2.26–3.08×) sur la dernière fenêtre complète de registre (2026-07-23, n = 7,222 requêtes).

Preuve de qualité pour ce levier : l'A/B SWE / SWE Pro compression ON vs OFF (§2) — tâches identiques, notation Docker officielle, pipeline activé versus désactivé — constitue la preuve de qualité de cette compression : les issues de résolution suivent le bras non compressé au bruit près. La formule et la fenêtre d'échantillonnage du 2.83× lui-même figurent dans la table de méthodologie ; ce paragraphe ne concerne que le levier de compression — le saver a sa propre section ci-dessous.

Enregistrement d'écran d'un vrai run coder avec compression ON : l'indicateur d'économies (sac d'argent) en bas à gauche monte de 2.0x au départ à 5.1x en fin de run, avec un pic à 6.1x

💰 #.#x = taux d'économies — l'indicateur de la barre d'état en bas à gauche de cet enregistrement d'écran non retouché est le multiple d'économies de compression en direct : il démarre au plancher de 2.0× et monte à 5.1× en fin de run (pic à 6.1×) à mesure que le contexte mis en cache/compressé s'accumule — 92.4% de part d'entrée en cache sur l'ensemble du run, selon le registre rollout de la session (12 entrées d'usage API, 287,269 tokens d'entrée). La tâche est une vraie tâche SWE publique sur pallets/flask (fonctionnalité CLI + tests, tous au vert). La lecture est accélérée 8× (annoté en haut à droite) ; contenu intact.

1.1b · Fenêtre de contexte effective (même mesure, second dividende)

La compression a un second effet au-delà du coût : la fenêtre de contexte physique du modèle contient la représentation compressée, sa capacité effective est donc multipliée par le même facteur mesuré. À la médiane mesurée de 2.83× (p10–p90 2.26–3.08×), une fenêtre physique de 200K tokens porte environ 450K–620K tokens de contenu de session (200K × 2.26–3.08). Conséquence pratique : les sessions longues subissent rarement la pression de la fenêtre de contexte — moins de compaction, moins de contexte perdu, un travail de longue durée stable.

1.2 · Paliers saver (fait tarifaire)

Indépendamment du levier de compression mesuré ci-dessus, coder propose deux voies de livraison à moitié prix. Formule : facturé = 50% × prix de la voie standard — un fait de grille tarifaire qui n'exige aucune preuve de test. Il n'entre dans le facteur vedette que comme facteur tarifé officiel (50% du catalogue ⇒ 2.00×) et n'est jamais mélangé au chiffre de compression mesuré lui-même :

Compression pure à l'échelle de la flotte (contre-vérification prudente)

Les chiffres ci-dessus proviennent des registres d'une seule machine. En contre-vérification à l'échelle de la flotte, nous avons mesuré la compression de tokens pure uniquement sur 7 jours de trafic gateway réel :

segment de traficcompression agrégéemédiane par requêterequêtes couvertes par la basefenêtre
voie fable52.49× (15.35B → 6.17B tokens)2.45×53,5002026-07-14 → 07-21
voie sol2.14× (1.94B → 0.91B tokens)1.89×10,0242026-07-14 → 07-21
Note de périmètre honnête : le terme de compression du facteur vedette est mesuré sur les registres de session d'une seule machine ; les lignes de compression pure ci-dessus sont la vue prudente à l'échelle de la flotte du même pipeline. Les deux sont présentés pour qu'aucun ne soit pris pour l'autre. La couverture de base de la contre-vérification flotte se limite au trafic où une base non compressée a été enregistrée.

2 · SWE / SWE Pro : compression ON vs OFF

Le pipeline d'efficacité ne mérite d'être livré que s'il préserve la qualité de sortie. Nous avons exécuté les suites SWE-bench, standard du secteur, en A/B interne — tâches identiques, modèles identiques, harnais de notation Docker officiel, pipeline ON (compressé) versus OFF (direct) — les deux suites rejouées sur le même build courant du pipeline.

suiteON (compressé)OFF (direct)accordnotes
SWE-bench Lite (n = 10 paires) 10/10 10/10 10/10 rejoué 2026-07-24, pipeline 8a9175d
SWE-bench Pro (n = 18 paires) 15/18 16/18 17/18 rejoué 2026-07-23, pipeline 8a9175d · tâche divergente : navidrome-0488 (rerun d'équivalence N=5 ci-dessous)

Notes de protocole : échantillons d'instances fixes (Lite 10 / Pro 18 paires) ; les deux bras d'une paire exécutent la même instance, le même modèle, le même lot. Les verdicts proviennent des seuls harnais Docker officiels (Lite : swebench run_evaluation sur princeton-nlp/SWE-bench_Lite ; Pro : SWE-bench_Pro-os, jefzda/sweap-images) — aucun jugement par LLM. « Accord » = tâches où les deux bras ont atteint le même verdict résolu/non résolu. Pipeline verrouillé à origin/main 8a9175d pour les deux reruns.

L'unique tâche Pro divergente, navidrome-0488, a été tranchée par un rerun d'équivalence dédié à N=5 par bras : ON 3/5 vs OFF 3/5 — les deux bras sont équivalents au bruit près (test exact de Fisher p = 1.0). Tous les verdicts proviennent du harnais Docker officiel (10/10 runs notés, rc = 0), et les 10 fenêtres de run montrent collapsed_turns = 0 avec zéro réécriture, c.-à-d. que le chemin de compression a laissé les transcriptions intactes. Comptabilité de la variance : les 4 runs échoués se répartissent ON 2 + OFF 2 et partagent le même schéma d'erreur propre au modèle — le bras non compressé tombe dans les mêmes pièges. Verdict : la divergence d'origine est de la variance agentique run à run, pas un dommage de compression (rapport de verdict N=5). Note de périmètre : N = 5 par bras sur une seule instance, même protocole et même instance que le §2, pipeline 8a9175d — une lecture d'équivalence à petit N, pas une affirmation universelle.

98/98 = 98/98
sondes de fidélité de contexte (essentiel + état), les deux bras 0 raté
+ 0/16 fabrication sur les sondes sans réponse possible, les deux bras
2.00× / 2.49×
compression par requête mesurée pendant les reruns Lite / Pro (50.0% / 59.9% de tokens d'entrée en moins)
sonde count_tokens contrefactuelle, par requête · Lite 198 req · Pro 316 req
Divulgation requise. Ces résultats sont des preuves directionnelles, pas une affirmation universelle sur toutes les charges de travail. Les échantillons sont petits (Lite 10 paires, Pro 18 paires, N=5 par bras sur le rerun d'équivalence) ; nous revendiquons une cohérence directionnelle, pas une supériorité générale. Il s'agit d'un A/B interne isolant l'effet du pipeline de compression sur le taux de résolution et le coût, sous un échantillon fixe et un harnais officiel.
Liste des tâches & reçus bruts de notation

Instances Lite (rerun 2026-07-24, même échantillon fixe que le pilote du 06-10) : django-14999, sympy-16503, matplotlib-23913, scikit-learn-13497, pytest-dev-5221, astropy-6938, sphinx-doc-7975, psf-requests-2674, pylint-dev-5859, pydata-xarray-3364 — ON 10/10 vs OFF 10/10, accord 10/10, aucune instance divergente (harnais Docker officiel, swebench==4.1.0, verdicts résolus). Échantillon Pro (n=18 paires, rerun du dernier pipeline sur instances identiques) : NodeBB ×2, qutebrowser ×2, flipt ×2, openlibrary ×2, teleport ×2, tutanota ×2, element-web ×2, navidrome ×2, ansible, vuls — ON 15/18 vs OFF 16/18 ; échecs dans les deux bras : ansible et une instance element-web ; la seule divergence à bras unique est navidrome-0488 (tranchée par le rerun d'équivalence N=5 ci-dessus). JSON brut du juge : eval/swe-bench/bench-20260724/ (compare_final.txt, eval_results_{on,off}.json, preds_{on,off}.json), eval/swe-bench-pro/bench-20260723/ (même agencement) ; réponses des sondes : eval/gist-recall/work*/results.jsonl.

3 · Méthodologie : d'où vient chaque nombre

Notre règle pour cette page : un nombre n'apparaît que s'il peut être tracé jusqu'à un enregistrement écrit par machine ou un script reproductible. Formules et fenêtres d'échantillonnage ci-dessous.

nombreformule / définitionfenêtre d'échantillonnagesource de référence
compression 2.83× (2.26–3.08) savingsBreakdown.factors[compression] par requête ; base non compressée ÷ entrée réellement envoyée 2026-07-23 (dernière journée complète de registre), n=7,222 ~/.coder/sessions/2026/07/23/rollout-*.jsonl (80 fichiers)
fenêtre effective ≈ physique × 2.26–3.08 ; exemple 58.8M→18.6M (3.16×) la conversion de capacité réutilise telle quelle la distribution de compression du §1.1 ; exemple = cumul imgctxOriginalInputTokens ÷ (original − imgctxSavedInputTokens) pour une session même fenêtre ; session exemple 2026-07-23 mêmes registres · rollout-2026-07-23T09-27-46-019f8fcd….jsonl
saver 2.00× (batch/flex à 50% du catalogue) ; vedette 5.66× = 2.83× × 2.00× prix de la voie batch / flex = moitié du prix de la voie standard ⇒ facteur tarifé constant 2.00× ; définition tarifaire officielle, pas une mesure (encodage registre : part de voie saver de C2 facturée à ½ dans C3) ; produit vedette = médiane de compression mesurée × 2.00 — le terme saver est tarifé d'après la grille, pas pondéré par le trafic (cette fenêtre n'a porté aucun trafic saver) fait tarifaire (n/a) ; terme de compression : même fenêtre 2026-07-23 grille tarifaire · champ de formule du registre savingsBreakdown.formula
compte tarifaire de première ligne : catalogue $10/M → effectif ≈ $0.26/M en entrée effectif = $10/M catalogue (officiel) × [(1−c) + c × ($1/$10) ratio de prix entrée-en-cache] ÷ 2.83 (médiane de compression mesurée) × 0.50 (tarif facial officiel batch/flex), avec c = 94.9% de part d'entrée en cache mesurée (729,830,406 en cache sur 769,249,823 tokens d'entrée). Dominance de l'entrée : entrée = 99.0% du volume de tokens ; 95.4% du coût en dollars au pur catalogue, ≈75.3% après la remise entrée-en-cache (sortie à $50/M). La prime d'écriture de cache (voies d'écriture $12.50–$20/M) n'est pas déduite de ce compte — énoncée comme réserve, pas cachée. L'annotation « (2.6% du prix d'origine) » = prix d'entrée effectif non arrondi ÷ catalogue officiel $10/M ($0.2582/M ÷ $10/M = 2.58%, affiché 2.6% à une décimale). capture de prix 2026-07-24 04:37 UTC ; répartition des tokens & part en cache : journée de registre 2026-07-23, 140 fichiers rollout, 6,102 requêtes portant l'usage (notre propre re-scan de la journée complète ; la ligne de médiane de compression utilise la fenêtre d'origine à 80 fichiers) capture de la page tarifaire officielle (/tmp/perf-v10-ab/8d742ca7.html) · ~/.coder/sessions/2026/07/23/rollout-*.jsonl, sommes par requête de last_token_usage
SWE-bench Lite 10/10 vs 10/10, accord 10/10 harnais Docker officiel swebench run_evaluation (princeton-nlp/SWE-bench_Lite), verdicts résolus échantillon fixe de 10 paires · rerun 2026-07-24, pipeline 8a9175d eval/swe-bench/bench-20260724/ (compare_final.txt, eval_results_{on,off}.json)
SWE-bench Pro 15/18 vs 16/18, accord 17/18 harnais officiel SWE-bench_Pro-os, jefzda/sweap-images échantillon fixe de 18 paires · rerun sur le dernier pipeline (8a9175d) eval/swe-bench-pro/README.md + bench-20260723/ (compare_final.txt)
équivalence N=5 sur navidrome-0488 : ON 3/5 vs OFF 3/5, Fisher p = 1.0 verdicts du harnais Docker officiel uniquement (10/10 runs notés, rc = 0) ; test exact de Fisher sur 3/5 vs 3/5 ; les 10 fenêtres de run à collapsed_turns = 0, zéro réécriture ; 4 échecs = ON 2 + OFF 2, même schéma d'erreur propre au modèle dans les deux bras N = 5 par bras, instance unique (navidrome-0488), pipeline 8a9175d rapport de verdict N=5
compression par requête en benchmark 2.00× / 2.49× contrefactuel : count_tokens(qui-aurait-été-envoyé) ÷ envoyé, sommé par requête — aucun facteur de confusion lié au nombre de tours Lite 198 requêtes (rerun 2026-07-24) / Pro 316 requêtes mêmes README (Lite : 85,804,350 vs 29,942,152 tokens)
fidélité de contexte 98/98, 0/16 sondes notées de rappel/état/fabrication, bras texte vs bras imagé à densité de production, même modèle (fable5), notation déterministe par chaînes, protocole répondre-ou-UNKNOWN 114 + 16 sondes par bras, graine unique, 228 appels de modèle (2026-06-10) eval/gist-recall/README.md + work*/results.jsonl
voie imagée verbatim 0/15 ; sémantique 27–40% hex unique de 12 caractères placé uniquement dans le contenu imagé ; sondes de récupération exacte et sémantique via le proxy live ; 2×2 {verbatim, sémantique} × {compression ON, OFF}, N=15 par cellule runs opus-4-5 et opus-4-8 eval/needle-haystack/README.md + results2.tsv
falaise de densité 1/4 (+3 confab) à 5x8 → 4/4 (0 confab) à 9x12 rappel de chaîne exacte sur le moteur de rendu de production, un run par cellule ; un balayage TrueType/Levenshtein indépendant reproduit la même falaise monotone run live 2026-07-05 (n=1 par cellule, direction stable sur 3 runs) eval/opus-density/RESULTS.md + results.json

Limites connues (énoncées, pas cachées)