社員ブログ

2026.10.27 中の人の日常 NEW

【MiraiNet】サブエージェントでAIのコストを抑える

こんにちは、技術部のエンドリューです。

サブエージェントとは、メイン(親)のエージェントから仕事を任されるAIエージェントのことです。サブエージェントを使う主なメリットは2つあります。

  1. 並列で作業して、早く終わらせる
  2. 複数のAIモデルを使い分けて、コストを下げる

この記事では2つ目、トークンコストの削減について説明します。

なぜ安くなるのか

1) 出力は入力より高い

モデルへのリクエストは、次の式で課金されます。

コスト = 入力トークン数 × 入力単価 + 出力トークン数 × 出力単価

出力の単価は入力の数倍です。例えば、OpenAI APIの料金やClaudeの料金のページで最新の単価を確認できます。

そのため、AIコーディングの請求額の大きな部分は、入力ではなく出力(タイピング)に支払われています。コードを書くことは出力であり、推論(thinking)トークンも通常は出力として課金されます。一方、コードのレビューや読み込みは入力の単価で課金され、ほとんどのモデルにはキャッシュされた入力の割引もあります。

そこで、出力の多い仕事(例:コードを書くこと)は安いモデルに任せ、高いモデルは「たくさん読んで少し書く」仕事、つまり計画とレビューに使います。

2) コンテキストの分離

サブエージェントは自分専用のコンテキストウィンドウで動きます。読んだファイル、失敗した試行、テストログはそこに留まり、戻ってくるのは短い要約だけです。メインの会話は履歴全体が毎ターン入力として送り直されるため、これは大きな差になります。余計な情報を入れなければ以降のターンはすべて安くなり、メインのモデルも本題に集中できます。

安いモデルが書き、高いモデルが計画とレビューをする 計画・指示書 高いモデル 出力は少し コード・テスト作成 安いサブエージェント 出力が多い 専用コンテキスト、要約だけ返す レビュー・テスト 高いモデル ほぼ入力のみ 合格? 採用 はい いいえ 指示書を改善して再実行
高いモデルが書くのは最初と最後の少しだけです。出力の多い真ん中の工程は安い単価で動きます。

始め方

最新バージョンのAIエージェントツールの多くは、サブエージェントに対応しています。例えばClaude Codeなら、次のようなシンプルなプロンプトで始められます。

このタスクでは、次のルールでサブエージェントを呼び出して:Haiku 5.5 → 簡単、Sonnet 5.5 → 中程度、Opus 5.5 → 難しい。計画とレビューはメインセッションで行い、各サブエージェントの結果は確認してから採用すること。

ルールを他のセッションでも使えるようにするには、スキルとして保存します。

今のサブエージェントのルールをスキルとして保存して

新しいセッションでは、こう指示します。

/SKILL_NAME でこのタスクにサブエージェントを呼び出して

最近のモデルはこちらの意図を十分に理解し、使っているAIエージェントツールに合わせて調整してくれます。私の場合、これらのシンプルなプロンプトはCursor、Codex(ChatGPT Plusに含まれる)、Antigravity(無料プランあり、制限は厳しめ)、OpenCodeでも使えました。

ただし、小さな修正(作業を説明する方が自分でやるより高くつく)や、曖昧なタスク(サブエージェントが推測で動き、何度も修正することになる)には向きません。

まとめ

  • 出力トークンは入力トークンより高い。出力の多い仕事(コードを書くこと)は安いモデルに任せる。
  • 高いモデルは、たくさん読んで少し書く仕事(計画とレビュー)に使う。
  • サブエージェントはメインのコンテキストを小さく保ち、以降のターンも安くなる。
  • ルールはスキルとして保存し、新しいセッションでも使えるようにする。

ヒント

  1. AIのサブスクリプションは、たいていAPI料金よりずっと安く済みます。サブスクリプションの場合、役割分担で請求額は減りませんが、安いモデルは利用枠の消費が少ないため、利用上限が長持ちします。
  2. 役割ごとのモデル選びには、Artificial AnalysisのIntelligence Indexが参考になります。