Benchmark

信用しない。
検証する。

任意のプロジェクトでlean-ctx benchmark runを実行します。実際のトークン数。実際の精度メトリクス。tiktoken (o200k_base) で測定。

どのように正直であるか

測定済み。 検証済み。

Benchmarkはローカルで実行され、正確なトークナイザを使用してトークン数をカウントし、品質基準を下回る圧縮を拒否します。

正確なトークン数

最新のLLMと同じトークナイザでカウント - 推定値なし、憶測なし。

tiktoken o200k_base

品質ガード

ASTの保持、識別子、行構造をスコアリングします。失敗した出力は自動的にブロックされます。

閾値: Q ≥ 95% · ρ ≥ 15%

再現性

リポジトリで実行されます。同じ入力 → 同じ数値。CIや回帰テストに最適です。

オフライン · 決定論的
違いを見る

前(Before)& 後(After)

同じファイル。同じ情報。劇的に少ないトークン数。

LeanCTXなし
// src/auth.ts · mode=full
import { jwt, verify, sign } from 'jsonwebtoken';
import { bcrypt } from 'bcryptjs';
3,517 トークン
LeanCTXあり(mapモード)
// src/auth.ts · mode=map
exports: AuthService, validateToken, …
deps: jsonwebtoken, bcryptjs, ioredis
412 トークン

88%のトークン削減

検証された節約のための3つのステップ

指定。測定。 検証。

01

任意のファイルまたはディレクトリを指定

単一ファイル、ディレクトリ、またはグロブパターンを渡します。ベンチマークエンジンは検出されたすべてを処理します。

lean-ctx benchmark run src/
02

正確なトークン測定

o200k_baseエンコーディング(GPT-4o、Claude、および最新のLLMと同じ)を使用してtiktokenを使用します。推定値ではなく、実際のトークン数を測定します。

tiktoken o200k_base
03

モードごとの節約額

すべての圧縮モードについて精度スコアと節約率を取得します。各ユースケースに最適なモードを選択してください。

modes: 10
実際の出力

Benchmark の実演

プロジェクト内の任意のファイルでベンチマークを実行します。出力には、各圧縮モードの正確なトークン数、節約率、および品質維持スコアが表示されます。

ファイルごとの内訳 - 各モードでのトークン数の前後比較

品質スコア - AST、識別子、コード行が保持される

集計合計 - ベストモード推奨によるディレクトリ全体の節約額

lean-ctx benchmark run

$ 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

タスクごとに適切なモードを選択してください

読み取りモード 比較

full 0%

編集するファイル

すべて - 再読み込み用に全コンテンツを~13トークンキャッシュ

map 70-90%

コンテキスト専用のファイル

コード: deps + exports + シグネチャ。非コード: 構造化されたアウトライン (Markdownの見出し、JSON/YAML/TOMLキー、ロックサマリー)

signatures 55–93%

APIサーフェスの探索

関数/クラス/型のシグネチャのみ

diff 80–95%

編集後

最小限の周辺コンテキストを持つ変更された行

aggressive 75–90%

大規模なボイラープレートファイル

構造とロジック、構文は除去

entropy 70–83%

ノイズの多いファイル(JSDoc、コメント)

高エントロピーの行のみ(Shannon + Jaccardフィルタリング)

task 65–85%

タスクに焦点を当てた読み取り(例:「認証バグを修正」)

タスク関連コード + Knowledge Graph経由の依存関係コンテキスト + IBフィルター

auto 70–99%

デフォルト - LeanCTXが最適なモードを自動で選択します

ファイルごとに適応: タイプ、サイズバケット、新しさ、タスク関連性

reference 80–95%

APIドキュメントおよび参照ルックアップ

パブリックAPI、型、シグネチャ、docstring

lines:N-M 90–99%

特定の行範囲の読み取り - 外科的な精度

要求された正確な行、加えて最小限の周辺コンテキスト

LeanCTXのctx_smart_readが、ファイルタイプ、サイズ、コンテキストに基づいてベイズ予測を使用して最適なモードを自動的に選択します。

ステージ

高度な圧縮パイプライン

モード選択を超え、LeanCTXはファイルタイプ、セッションコンテキスト、タスクの意図に適応するマルチステージ最適化パイプラインを適用します:

Thompson Sampling 5–15%

マルチアームバンディット探索(探索 vs 活用)を使用して、ファイルタイプごとの最適な圧縮しきい値を学習します。

AST Pruning 40–70%

Tree-sitterによる言語認識型プルーニング - APIシグネチャを保持しつつ、関数本体、コメント、定型コードを削除します。

IDF Dedup 10–30%

逆文書頻度を使用したクロスファイル重複排除 - セッションですでに確認されたコンテンツを排除します。

IB Filter 15–25%

情報ボトルネックの原理を使用したタスク認識フィルタリング - 現在のタスクに関連するコンテンツのみを保持します。

Verbatim Compaction 5–20%

反復的な構造(インポート、ログ行、定型コード)をカウント付きサマリーに集約します。

これらのステージは累積的です - 順次適用されるため、1000行のファイルをすべてのタスク関連情報を保持したまま50トークン未満に削減できます。パイプラインは完全に自動であり、設定は必要ありません。

検証済み保持

圧縮 品質

品質しきい値(複合)

95%

圧縮された出力は、複合品質スコアが95%以上の場合のみ使用されます。

最小密度

15%

最小シグナル密度15% (ρ) の場合、低情報量の出力をブロックします。

重み付け

50/30/20

複合スコア = AST 50% + 識別子 30% + 行数 20% - 構造が最も重要。

情報密度の原則

なぜトークンが少ないと= より高いシグナル密度

LLMには固定のアテンションバジェットがあります。コンテキストウィンドウ内のすべてのトークンはアテンション重みに競合します。定型文でウィンドウを埋めると、重要なコードへの注意が低下します。

ノイズをモデルに届く前に除去することで、LeanCTXはリクエストごとの情報密度を高めます。その結果:高い信号対雑音比、コンテキストの希薄化の軽減、そしてモデルが有用なコンテキスト制限内に留まります。

より高い信号対ノイズ比

10Kトークンの集中したコンテキストは、200Kの定型文よりも優れています。モデルはJSDocコメントやインポートの定型文ではなく、ロジックに注意を向けます。

削減されたコンテキストノイズ

コンテキストノイズはモデルの注意ウィンドウを希釈します。これを削除することで、モデルが実際のコード構造にグラウンディングされたままであり、ハルシネーションのリスクを減らすのに役立ちます。

回答あたりの低コスト

入力トークンが少ないほど、APIコストが下がり、レート制限内でより多くのメッセージを処理できます。使用するAIツールごとに、同じクォータがより長く使えます。

実世界の例

測定対象 実際のコード

代表的なスナップショット - ファイルやコードベースによって数値は異なります。

React コンポーネント 88%

450行 - mapモード

12,840 → 1,541
Rust モジュール 93%

820行 - signaturesモード

18,290 → 1,280
Express API 91%

1,200行 - aggressiveモード

31,500 → 2,835
Python ML Pipeline 83%

680行 - entropyモード

15,400 → 2,618
TypeScript Config 95%

340行 - diffモード

8,750 → 437
透明性

ベンチマーク
手法

このページ上のすべての数値は再現可能です。測定方法を正確に説明します。

Tokenizer

すべてのトークン数は、GPT-4o、Claude、および最新のLLMが使用するトクナイザーと同じ、tiktokeno200k_baseエンコーディングを使用しています。推定や近似値は一切ありません。

品質閾値

圧縮出力は、複合品質スコアが95%以上を維持する場合にのみ使用されます。複合 = AST保持 (50%) + 識別子保持 (30%) + 行カバレッジ (20%)。

ローカルで再現

独自のコードベースでlean-ctx benchmark run src/を実行します。出力には、各圧縮モードの正確なトークン数、節約率、および品質保持スコアが表示されます。

免責事項

結果はファイルタイプ、サイズ、言語、読み取りモードによって異なります。「60-99%」の範囲は実世界のばらつきを反映しています:小さな構造化ファイルの方が圧縮率が高く、大きな非構造化ファイルの方が圧縮率は低くなります。キャッシュされた再読み込み(約13トークン)が最良ケースを示します。

Our Own Overhead, Measured

Savings claims must be net of what LeanCTX itself injects. The fixed per-session footprint (advertised tool schemas + MCP instructions) is ~2.1K tokens, measured in an isolated environment with lean-ctx doctor overhead and enforced in CI via --gate — it can only shrink. lean-ctx gain reports savings net of this overhead.

Deterministic Self-Verify

lean-ctx benchmark dual-arm --json replays a pinned 15-turn agent session through a stateless arm and the long-lived proxy rail, prices both with real tokenizer counts and published per-model rates, and fingerprints the run with a BLAKE3 digest — anyone can reproduce the exact figures, no live model needed.

測定する 実際の節約額。

LeanCTXをインストールし、コードベースでbenchmark runを実行してください。実際の数値、あなたのファイル、あなたの節約額です。

lean-ctx benchmark run src/

あらゆるコードベースに対応。設定不要。数秒で結果が出ます。