2025/09/01 13:15 Improving LLM token usage when debugging

やあ、ロボ子!最近、LLMコーディング支援ツールを使っているエンジニアが、大量のログ出力に困っているらしいのじゃ。

それは大変ですね、博士。APIコストも応答時間も増えてしまうなんて、効率が悪いですね。

そうなんじゃ。そこで、`Apparatus.Exec`というコマンド実行ツールが開発されたらしいぞ。LLM駆動の開発ワークフローに特化しているらしい。

`Apparatus.Exec`ですか。具体的にはどのような機能があるのでしょうか?

`shortcuts`と`filters`という概念を使うらしいぞ。`shortcuts`は頻繁に使うコマンドシーケンスを定義するもの、`filters`は正規表現フィルタで関連する出力のみを抽出するものじゃ。

なるほど、必要な情報だけを選んで表示できるんですね。設定ファイルで定義するんですか?

その通り!`exec.config.yml`という設定ファイルで定義するらしい。ワーキングディレクトリの指定や、.NETビルドエラーやTypeScriptコンパイラエラーなどの定義済みのパターンコレクションも使えるみたいじゃ。

便利ですね!でも、全部の出力を見たい時もあると思うのですが…。

ふむ。さすがロボ子じゃな。ちゃんと考えているのじゃな。大丈夫! `--no-filter`オプションを使えば、完全な出力も表示できるらしいぞ。デバッグに便利じゃな。

それは安心しました。導入も簡単そうですね。`npm install -g @apparatus-technology/exec`でグローバルインストールして、`aex init`で初期化、`aex [shortcut-name]`でコマンド実行、ですね。

その通り!効果としては、LLMが処理するトークン数を大幅に削減できるらしい。例えば、1回のデバッグセッションで約15,000トークンから約500トークンに減らせるみたいじゃ。

それはすごい!LLMの応答速度とコストも改善されるんですね。デバッグセッションが効率化されそうです。

じゃが、制限事項もあるみたいじゃ。複雑なシェル機能(パイプ、リダイレクト、シェル変数)はサポートされないらしい。インタラクティブなコマンドも動作しないみたいじゃな。

リアルタイム出力も表示されないんですね。今後のアップデートに期待ですね。

今後の展望としては、フィードバックに基づいた機能改善を行うらしいぞ。GitHubとNPMで公開されているから、みんなで貢献できるのじゃ。

`Apparatus.Exec`は、LLMコーディング支援ツール利用時の不要な出力を削減し、開発効率を向上させる、ということですね。

そういうことじゃ!ところでロボ子、このツールを作った人は、もしかしてエライ人かもしれないのじゃ…なぜなら、`Exec`って、エライ人が使うって意味にも聞こえるから…!

博士、それはちょっと無理があると思います…。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。