HN 日本語サマリー

← 一覧へ戻る
AI・機械学習

RTKはトークン削減を報告するが、当社のコストベンチマークは同意しない

RTK reports token savings, but our cost benchmarks disagree (quesma.com)

162 pointsby michalwarda80 コメント

要約

AIコーディングを安価にするツールとして注目されるRTK(Rust Token Killer)は、AIエージェントが読み取るターミナル出力をフィルタリング・圧縮することでトークン数を削減すると主張している。しかし、JetBrainsのSkillsBenchを用いたベンチマークテストでは、RTKの使用によってコストが削減されるどころか、場合によっては増加することが判明した。RTKの「トークン削減」は、実際の請求額削減とは異なり、タスクの失敗率上昇や追加のターン発生を招く可能性があり、汎用的なコスト削減ツールとしては推奨されない。

全文翻訳

RTKは大幅なトークン削減を報告するが、我々のコストベンチマークは同意しない

RTK(Rust Token Killer)は、AIエージェントが読み取る前にターミナル出力をフィルタリングおよび圧縮します。現在GitHubで79,000以上のスターを獲得しているRTKは、AIコーディングを安価にするための最も人気のあるツールの1つです。

RTKがClaude Codeのトークンを最大60%削減できるというXの投稿は313Kビューに達しました。

[画像: FuturMindsの動画「Claude Code plus RTK: Saves 90% Tokens」は31,000ビューを表示][画像: Soba Labsの記事「How we halved Claude Code token usage with RTK AI」][画像: ComputeLeapのガイド「Cut Claude Code Token Costs 60–90% With rtk」]

しかし、JetBrainsのSkillsBenchの実行では削減が見られませんでした。READMEには免責事項があります。

RTKは、エージェントが読み取るbash出力を最大90%削減します。[…]これは、請求額を90%削減することと同じではありません。

したがって、「ターミナル出力の削減」は「AIコーディングのコスト削減」と同じではありません。役立つことも、何もしないことも、逆効果になることもあります(より多くのターンや品質の低下)。この記事では、数日間と1,500ドル以上のトークン消費を経て得られた我々の調査結果を発表します。

RTKの仕組み

RTKは、エージェントがシェルツール(Claude CodeではBash、OpenCodeではbash)を通じて実行するGit、テスト、パッケージ、ファイルコマンドを書き換えることができます。各書き換えは、同じ出力のより簡潔なバージョンを返します。

例えば、RTKはファイル名、サイズ、パーミッション(644はrw-r—r—を意味します)を保持しますが、所有者と日付は削除します。

$ ls -la /app/warriors
-rw-r--r-- 1 root root  824 Sep 13  2025 g2-clear.red
-rw-r--r-- 1 root root  487 Sep 13  2025 paper.red

$ rtk ls -la warriors/
644  g2-clear.red  824B
644  paper.red  487B

Terminal-Bench 2.1でのRTKテスト

RTKはターミナル出力を圧縮するため、ターミナル操作が多いベンチマークであるTerminal-Bench 2.1でテストしました。新しい3.0や4.0ではなく2.1を使用したのは、エージェントが2.1のタスクのほとんどをパスするのに対し、3.0と4.0は依然として困難だからです。コストはパスしたタスクにのみ関係します。

Claude CodeにFable 5.0を、OpenCodeにDeepSeek V4 Pro 0813をOpenRouter経由で使用しました。各タスクは、同じモデルルート、プラットフォーム、タスク固有のタイムアウトで、RTKなしで5回、RTKありで5回実行しました。

Fableのセキュリティタスク4件(拒否されたため)を除外した後、最終的な比較は85件のFableタスクと89件のDeepSeekタスク、つまり1,740回の試行を対象としています。

最初のグラフは有望だった

RTKを使用すると、Fableではコストが5%減少し、DeepSeekでは5%増加しました。

Claude Code · Fable 5.0

baseline$731(84% pass rate)

RTK$698(83% pass rate)

OpenCode · DeepSeek V4 Pro 0813

baseline$51(71% pass rate)

RTK$54(69% pass rate)

パス率はRTK使用時の方が低くなりました。Fableで1%、DeepSeekで2%です。どちらのパス率の差も小さいです。

失敗した試行を含めた全支出をパス数で割ると、FableはRTK使用時で3%安くなり、DeepSeekは7%高くなりました。

別の方法として、1つの高額なタスクが多数の安価なタスクを上回る可能性があるため、すべてのタスクを等しく重み付けします。各タスクのベースライン試行の平均とRTK試行の平均を比較し、その変化を平均しました。

RTKコスト変化 vs baseline

Claude CodeFable 5.0−5%+1%OpenCodeDeepSeek V4 Pro 0813+5%+17%
-5%0%+5%+10%+15%+20%+25%+30%

Total bill changeAverage change per task95% confidence interval

このタスクレベルの尺度では、Fableは1%高くなり、ゼロとの明確な差はありませんでした。DeepSeekのタスクコストは平均で17%増加しました。

失敗を考慮しても、傾向は変わりません。DeepSeekの36タスクすべてで10回の試行がパスした場合でも、増加は18%でした。

1つのタスクがベンチマーク全体の違いを生んだ

FableのRTKによる節約のほとんどは、1つのタスク、winning-avg-corewarsから来ました。どちらの設定でもすべての試行がパスしましたが、RTK使用時ではターン数が約半分になりました。他のタスクでは、節約は1%未満でした。

DeepSeekでは、同じタスクで逆の結果になりました。どちらの設定でもすべての試行がパスしましたが、RTKはより多くのターンを要し、コストも増加しました。そのタスクを除いても、コストはRTK使用時の方が高くなりました。

rtk gainはコスト指標として役に立たない

RTKは、請求トークン数ではなく、生のコマンド出力からフィルタリングされたコマンド出力をバイト単位で4で割った値としてrtk gainを文書化しています。

445回のDeepSeek RTK試行全体で、RTKは3億4920万トークンを節約したと報告しており、これは89%の削減に相当します。

報告された大幅なトークン削減は、タスクのコスト削減を意味しませんでした。

rtk gainAverage task-cost change0%large-scale-text-editing57.3M−19%crack-7z-hash38.9M+28%other 87 tasks253.0M+18%

train-fasttextでは、モデルはhead -1 train.txtを2回要求しました。RTKは、これらの限定的な読み取りとファイル全体を比較して、それぞれ1億2050万トークンを節約したと評価しました。これらの2回の呼び出しは、比較の節約カウンターの69%を占めましたが、要求されたコマンドがファイル全体を返すことは決してありませんでした。

rtk gainを節約された金額として扱うことは、試行の残りの部分が同じままであると仮定しています。RTKはエージェントの次のターンを変更する可能性があります。rtk gainは、それらのターンのコストを考慮していません。

ここにソーシャルメディアの投稿の間違いがあります。rtk gainは削除された出力をカウントするもので、節約された金額ではなく、より高価な試行を最適化されているように見せかけることがあります。

RTKのバグはあなたを苦しめる可能性がある

DeepSeekのgit-multibranch試行の1つでループに陥りました。エージェントは、rtk find 0.45.0がサポートしていないフラグ付きのfindコマンドを実行しました。プラグインはそれをrtk findに書き換えましたが、「Use find directly」というエラーで失敗しました。リトライするたびに再度書き換えられました。RTKは、我々の実行後、0.46.0でこれを修正しました。

339回の連続エラー~12 min

エージェントはタイムアウトまでに339回の連続エラーを蓄積しました。タスクはパスしましたが、パスした対応するベースライン試行よりも約9倍のコストがかかりました。これは外れ値の試行ですが、それなしでも傾向は変わりません。

RTKがない場合、ツール出力はFableの入力トークンの約11%、DeepSeekの40%を占めていました。

RTK試行では、Claude Codeのターミナル呼び出しの31%、OpenCodeのターミナル呼び出しの51%でRTKが使用されました。

RTKはシェルコマンドのみを書き換えます。Claude CodeのフックはBashツールに一致し、OpenCodeのプラグインはbash呼び出しに作用します。どちらのプラットフォームも、ファイル読み取りと検索を個別のRead、Grep、Globツールとして公開しており、これらはRTKをバイパスします。Claude CodeのBash呼び出しの約半分は、すでにhead、tail、またはwcを使用して出力を制限していました。

エージェントコーディングでは、コンテキストは各ターン後にキャッシュされるため、ターミナル出力の後続の読み取りは主にキャッシュ読み取りとして表示されます。これらは、Fableでは通常の入力トークンの1/10、DeepSeekでは1/30のコストがかかります。

DeepSeekでは、RTKはターミナル出力の文字数を9%削減しましたが、プロンプトトークンは9%増加しました。キャッシュされていない入力は1%減少し、キャッシュされた入力は9%増加しました。モデル出力(推論を含む)は、RTK使用時でコストの56%、RTKなしで57%を占めました。

エージェントがより多くのターンを取ると、タスクコストは通常それに伴って増加しました。

Claude Code · Fable 5.0

Turns, log scale

2255101020205050100100RTKbaselinex = y

Cost ($), log scale

0.10.10.20.20.50.511225510102020RTKbaselinex = y

OpenCode · DeepSeek V4 Pro 0813

Turns, log scale

2255101020205050100100200200RTKbaselinex = y

Cost ($), log scale

0.010.010.020.020.050.050.10.10.20.20.50.511RTKbaselinex = y

DeepSeekのRTK試行は、58タスクでより多くのターンを要し、そのうち44タスクでコストが増加しました。28タスクでターン数が減少し、そのうち23タスクでコストが減少しました。

平均的なDeepSeekのターンはRTK使用時で7%少ない入力でしたが、全体では18%多くのターンがありました。少ないターンでも、合計入力が少なくなるわけではありませんでした。

追加の1エージェントターンは、圧縮によって節約された金額よりもコストがかかる可能性があります。これは、別の形態のトークンインフレ問題と同じです。JetBrainsはSkillsBenchで同様のパターンを確認しました。RTKは低負荷時にはターンを増やし、高負荷時にはコストを削減しませんでした。

RTKはAIコーディングを安価にしない

Terminal-Bench 2.1では、Fableの節約は1つのタスクに依存しており、タスク全体では持続しませんでした。RTKを汎用的なコスト削減ツールとして推奨しません。

個々のトランスクリプトは、現在の最先端モデルがすでにターミナルを効率的に使用していることを示しています(Fableのコンテキストの約7%にすぎません)。モデルは、それ自体でhead -nやtail -nのようなテクニックを使用しています。RTKは、おそらく古いモデルでより役立ったでしょう。今日では、一般的な節約源ではなく、ニッチな最適化です。

*RTK 0.45.0、Claude Code 2.1.220、OpenCode 1.18.25、Harbor 0.20でテストしました。追跡データは、さらなる研究のためにリクエストに応じて利用可能です。Headroomの計画されたベンチマークを含む今後の投稿については、購読してください。レビューとフィードバックを提供してくれたPiotr Migdałに感謝します。