「トークンを削ったのにコストが増えた」 GitHubが明かすAIコーディング“効率化の落とし穴”:「GitHub Copilot」のコストを下げた4つの改善(1/2 ページ)
GitHubは、AIコーディングエージェントのコスト効率を高めるために「GitHub Copilot」に加えた4つの改善を公開した。ツール呼び出し1回分の出力を短くする定石が、かえってタスク全体の費用を押し上げる場合があるという。
GitHubは2026年9月2日(米国時間)、AIコーディングエージェントのコスト効率を高めるために「GitHub Copilot」に加えた4つの改善を、技術ブログで公開した。個々のやりとりのトークン数だけでは効率を測れず、タスクを前に進めるのに必要なだけのコンテキストを渡すことが重要だとしている。
Copilotの品質を保ちながら無駄を減らすための4つの改善
4つの改善はいずれも、オフラインのベンチマークで評価し、有望なものだけをオンライン実験で検証してから投入した。例はGitHub Copilot CLI(コマンドラインインタフェース)のものだが、効果は同じハーネスを使う「Copilotコードレビュー」などにも及ぶ。
1.ノイズだけを選んで圧縮し、ソース類はそのまま返す
エージェントのコストを抑える方法として、ツール呼び出しごとの出力を短くする手法はよく使われる。GitHubは、エージェントが読む前にシェル出力を短縮するユーティリティー「RTK」(Rust Token Killer)をベンチマークで評価した。
RTKは一部の応答を短くしたものの、省かれた部分が重要だった場合にモデルが元の出力を開き直したり、コマンドを実行し直したりした。この手順がターンを増やし、より多くのコンテキストを後続に持ち越す。個々のツール応答は短くなったが、平均するとタスクで使うトークンは増え、所要時間も延びた。ただし、この結果はGitHubが検証した統合環境とワークロードに限られ、RTKの全ての構成や出力圧縮一般に当てはまるわけではない。
ツール呼び出し当たりのトークン数は目的関数として適切ではなく、効率化はユーザーの依頼から最終結果までのタスク全体で評価する必要がある、というのがGitHubの結論だ。
そこでGitHubは、繰り返しの多い出力だけを短くする方針を採った。ベンチマークでは、インストール、ビルド、テスト、lint(リント)の出力に反復的なノイズが多く、ソースコードに類する出力や任意のコマンドの結果には必要な情報が含まれやすかった。初期の版は圧縮が強過ぎ、モデルが作業を繰り返して全体のコストが増え、成功率も下がった。こうした失敗を経て、3つの方針にまとまった。
- ソースコードに類する出力と任意のコマンドの出力は保存する:「cat」「git diff」「git show」やスクリプトの結果はそのまま返す
- 検索結果は内容を落とさずに整理する:「grep」などが返す一致箇所やファイル一覧は、全件を残したまま効率よくまとめる
- 反復的なノイズは選択的に圧縮する:インストール、ビルド、テスト、進捗(しんちょく)の出力は、削減量が大きいときだけ縮める
例えば当初はgit diffの出力も圧縮していたが、エージェントが元の出力を開き直したので対象から外した。
出力を圧縮した場合も、エージェントは直接の復旧経路から圧縮前の完全な出力を取り出せる。この経路は安全策であると同時に評価のシグナルでもあり、GitHubは保存された元の出力を開いたか、コマンドを再実行したか、探索をやり直したか、検索範囲を狭めたか、ターンを追加したかを追跡した。復旧の頻発は、圧縮で必要な情報が失われた証拠になる。
出力圧縮が働いたオフラインのタスクでは、統計的に有意な成功率の低下は検出されず、保存された元の出力を開くことも極めて“まれ”だった。オンライン実験では平均コストがわずかに下がり、品質指標に悪化は検出されなかった。
2.情報を削る前に書式を削る、viewツールの行番号を廃止
情報を削らずにトークンを減らせた例が、ファイルの内容をコンテキストに読み込むviewツールだ。従来は全ての行に行番号を付けていた。以前のファイル編集ツールはその番号で変更箇所を指定していたが、現在のツールは周辺のコードとの一致で位置を決めるので行番号を使わない。
接頭辞1つは小さくても、ファイルを読むたびに全行に付くため積み上がる。そこでGitHubはこれを削除した。オフラインのベンチマークではモデルの推論コストが約5%下がり、成功率は実行ごとのばらつきの範囲に収まり、編集の失敗も増えなかった。GitHub Copilot CLIのユーザーを対象にしたオンライン実験では、1人当たりの1日平均の推論コストが約3%下がり、品質や満足度の指標に悪化は検出されなかった。
行番号自体はdiff(差分)や短い断片では有用だが、全てのファイル読み込みに付いていた点が無駄だった。開発者は、使われない書式ではなく作業そのものにコンテキストウィンドウの多くを割けるようになる。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
「AIコーディングより人を雇う方が安い」時代が来る? 生成AIの予算超過を防ぐトークン浪費対策の全て
生成AIやAIエージェントの活用が広がる一方、トークン課金による想定外のコスト増が企業を悩ませています。なぜ浪費が起こるのか、その原因と、現場で取り組める対策を5本の記事から探ります。
AIコーディングを「より速く省トークンに」 VS Codeチームが実証、“GPT-5.5向けプロンプト”の改善効果
Microsoftは、「Visual Studio Code」における「GPT-5.5」モデル向けシステムプロンプトのチューニング効果を、本番環境で実験、検証した結果を公式ブログで報告した。
トークンコストを10分の1に 「GitHub Copilot」はどう削減したのか
Microsoftは、「Visual Studio Code」における「GitHub Copilot」のエージェントハーネスのトークン効率向上の成果を紹介した。
「Claude Codeでトークン浪費」の原因 Anthropicが明かす「サブエージェント」5つの使い所と止め所
Anthropicは、同社のCLI型AIコーディングツール「Claude Code」のサブエージェントにおけるベストプラクティスやアンチパターンなどを解説したブログ記事を公開した。
AIエージェントのトークン消費を約47%削減 Cursorの「コンテキストエンジニアリング」事例
Anysphereは、コーディングエージェントの性能向上と効率化を実現する「動的コンテキスト探索」の取り組み事例を解説した。トークン消費の抑制やコーディングエージェントの応答品質向上に寄与しているという。



