トークン課金を抑える方法 ~本当に効くのはプロンプト短縮ではない~

生成AIを業務で使い始めて、最初にぶつかるのが「思ったより請求が伸びる」問題です。CoworkやCopilot Studio、そしてScoutのようなエージェントを触っていると、便利さの裏でトークン課金がじわじわ効いてきます。多くの人はここで「プロンプトを短くしよう」と考えます。でも、実際に手を動かして検証してみると、効くポイントはまったく別のところにありました。今回はトークン課金のコスト最適化について、実体験ベースで整理してみます。

トークン課金時代がやってきた

少し前まで、生成AIは「月額いくらの使い放題」というイメージでした。ところが業務利用が本格化すると、メッセージ単位や処理単位の従量課金、つまりトークン課金が当たり前になってきます。Copilot Studioの従量課金はもちろん、エージェント型のScoutやCowork、そしてAIエージェント向けの実行環境であるWindows 365 for Agentsのような仕組みも、内部では結局トークンや計算リソースを消費しています。

ここで多くの人が最初にやる対策が「プロンプトを短くする」です。気持ちはすごくわかります。自分が打ち込む文章が目に見えるので、そこを削れば安くなる気がするんですよね。でも、これがいちばん効果の薄い対策だったりします。なぜそうなるのか、まずは仕組みから見ていきます。

トークン課金の仕組みを整理する

トークン課金を語るには、まず「何にお金がかかっているのか」を分解する必要があります。ざっくり言うと、AIに渡す情報と、AIが返す情報の両方が課金対象です。

入力トークンと出力トークン

請求は大きく2つに分かれます。

  • 入力トークン: あなたがAIに「読ませた」すべての文字
  • 出力トークン: AIが「書いて返した」すべての文字

ポイントは、入力トークンには自分が打った質問文だけでなく、後ろにくっついている大量の情報が全部含まれるということです。ここを勘違いしていると、いくらプロンプトを削っても請求が下がらない、という事態になります。

コンテキストという見えない荷物

AIへの問い合わせには、毎回「コンテキスト」と呼ばれる前提情報が一緒に送られます。会話の履歴、システムプロンプト、参照ファイル、検索結果。これらは画面には出てこないのに、しっかりトークンとして課金されています。

イメージとしては、質問という小さな手紙に、分厚い資料の束をホチキス留めして毎回送っているようなものです。手紙の文面(プロンプト)を一行削っても、束ねた資料が分厚いままなら、郵送料はほとんど変わりません。

エージェント時代はツールやランタイムもコストになる

さらにややこしいのが、ScoutやCowork、Copilot StudioのようなAIエージェントの時代です。エージェントは1回の依頼に対して、裏で何度も推論を回します。

  • どのツールを使うか考える(推論1回)
  • ツールを実行して結果を受け取る
  • 結果を読んで次を考える(推論2回目)
  • まとめて返す(推論3回目)

このように、ユーザーから見れば「1回の依頼」でも、内部では複数回トークンを消費しています。ツール定義の説明文や、ツールが返してきた生データも、すべて入力トークンに乗ってきます。さらに、エージェントが動くための実行環境(ランタイム)そのものもコストです。たとえばWindows 365 for Agentsのように、エージェント専用のクラウドPC上で動かす場合、その稼働時間も積み上がっていきます。ここを理解すると、コスト最適化の主戦場が「プロンプト」ではないことが見えてきます。

実は一番効くのはコンテキスト削減

ここからが本題です。トークン課金を本気で下げたいなら、削るべきは自分のプロンプトではなく「AIに読ませている情報の量」です。とくに業務利用では、コンテキストに乗ってくる外部データが圧倒的に重いケースが多いです。

具体的に、どんな情報がコンテキストを膨らませているか見ていきます。

メールを丸ごと渡していないか

「先週のメールを要約して」という依頼はよくあります。このとき、メール本文を全文そのまま渡すと、署名、過去の引用、定型文まで全部トークンになります。実際にやってみると、本文100文字の要約に対して、入力が数千トークンということもザラです。

対策はシンプルで、要約の前に「本文の必要な部分だけ」を抜き出してから渡すこと。引用や署名を落とすだけで入力トークンが半分以下になることもあります。

Teamsの会話ログ

Teamsのチャットも要注意です。スレッド全部を投げ込むと、スタンプ反応や「了解です」だけの短文まで含めて課金されます。本当に必要なのは結論と決定事項だけ、ということが多いので、ここも事前に絞ると効きます。

会議の文字起こし

会議の議事録作成は、文字起こしがそのまま入力トークンになります。1時間の会議だと数万トークンになることもあり、ここはコストの大きな塊です。あいづちや言い直しを除いた整形済みテキストを渡すだけで、かなり軽くなります。

ファイルの全文添付

PDFや仕様書を丸ごと渡すのも、トークンを一気に食う行為です。30ページの資料を全文渡して「3行で要約して」と頼むと、出力は3行でも入力は莫大です。必要な章だけを切り出す、という一手間が効いてきます。

RAG検索結果の詰め込み

そして地味に重いのがRAGの検索結果です。RAGは関連文書を検索してコンテキストに差し込む仕組みですが、ヒットした文書を10件も20件も詰め込むと、その全部が入力トークンになります。RAGについては落とし穴が多いので、後で章を分けて掘り下げます。

ここまでをひとことでまとめると、「AIに読ませる情報を減らす」ことこそが、トークン課金を下げる最大のレバーだということです。プロンプトの数文字より、添付した資料の数千文字を疑うべきなんですね。

出力トークンを減らす

入力の次は出力です。AIが長文で返すほど、出力トークンが積み上がります。ここは依頼の仕方でコントロールできるので、コスパが良い対策です。

具体的には、こんな指示が効きます。

  • 「5行以内でまとめて」と上限を切る
  • 「箇条書きで」と形式を指定する
  • 「表形式で項目だけ」と構造を絞る
  • 「結論だけ先に、説明は不要」とムダな前置きを削る

たとえば設計レビューで「問題点を表で3行」と頼めば、AIは長い解説を省いて要点だけ返します。出力が短くなるだけでなく、人間が読む時間も減るので、二重においしい対策です。逆に「詳しく丁寧に説明して」は、便利な反面トークンを大量に消費するので、使いどころを選びたいところです。

モデルを使い分ける

意外と見落とされがちなのが、モデル選択によるコスト最適化です。高性能モデルは賢いぶん、トークン単価も高いです。何でもかんでも最上位モデルに投げるのは、軽自動車で十分な買い物に大型トラックを出すようなものです。

用途別に整理すると、こんな住み分けが現実的です。

  • 要約: 軽量モデルで十分。速くて安い
  • 議事録の整形: 軽量〜中位モデル。定型処理なので背伸び不要
  • ブログや提案文の作成: 中〜上位モデル。表現力が欲しい場面
  • 設計レビューや複雑な推論: 上位モデル。ここはケチらず賢いモデルを

Scoutならタスクに応じてモデルを切り替えられますし、Copilot Studioでも生成に使うモデルを選べます。「全部いちばん賢いやつ」をやめるだけで、月の請求がはっきり変わってきます。

RAGの落とし穴

RAGはコスト最適化の話で必ず出てくるテーマなので、章を分けて触れておきます。RAGは便利なのですが、設計を間違えるとコストを押し上げる原因になります。

検索結果を詰め込み過ぎる問題

精度を上げたい一心で、検索でヒットした文書を片っ端からコンテキストに突っ込む。これがいちばんやりがちな失敗です。文書を多く渡せば渡すほど入力トークンは増え、しかも関係の薄い文書がノイズになって、かえって回答精度が落ちることすらあります。

精度とコストのバランス

大事なのは「上位何件まで渡すか」の設計です。検索の上位3〜5件に絞り、各文書も関連する段落だけを切り出す。こうすると入力トークンが減り、ノイズも減って、精度とコストの両方が改善します。RAGはたくさん渡すほど賢くなる、というのは誤解で、ちょうどいい量を渡すのがコツなんですね。

ScoutやCoworkで注意すべきこと

最後に、エージェント型のScoutやCoworkを使うときの注意点です。これらをWindows 365 for Agentのような専用環境で動かす場合はなおさら、エージェントは便利な反面、コストの読みづらさがあります。

1回の依頼で複数回推論する

前に触れたとおり、エージェントは1つのゴールに向けて、裏で何度も推論を回します。「ファイルを探して、中身を読んで、まとめて、メールで送る」という依頼なら、各ステップで推論が走ります。チャット1往復に見えても、内部では何往復もしている、というのを頭に入れておきたいところです。

ツール呼び出しもコストになる

エージェントが使えるツールには、それぞれ説明文(定義)がついています。この定義もコンテキストに含まれるため、ツールが多いほど入力トークンが増えます。さらに、ツールが返してきた生データ(検索結果やファイル内容)も入力トークンに乗ります。

読ませる情報量の設計が重要

結局のところ、エージェント時代のコスト最適化は「読ませる情報量をどう設計するか」に集約されます。

  • 必要なツールだけを有効にする
  • ツールが返すデータを絞る(全件ではなく上位だけ)
  • 1回の依頼を欲張りすぎない

このあたりを意識するだけで、エージェントの便利さを保ったまま、トークン課金を現実的な範囲に収められます。

まとめ

トークン課金を下げるコツは、「プロンプトを短くする」ことではありませんでした。本当に効くのは、AIに読ませる情報そのものを減らすことです。

  • 入力トークンの主役は、プロンプトではなくコンテキスト(メール/Teams/会議/ファイル/RAG)
  • 出力は「5行で」「表で」と上限と形式を指定して削る
  • モデルは用途で使い分け、何でも最上位に投げない
  • RAGは詰め込み過ぎず、上位数件に絞る
  • ScoutやCoworkなどのAIエージェントは複数回推論する前提で情報量を設計し、Windows 365 for Agentsのような実行環境の稼働時間も意識する

CoworkもCopilot StudioもScoutも、根っこは同じ「計算リソース消費モデル」で動いています。「手紙の文面より、ホチキス留めした資料の束を疑う」。この視点を持つだけで、コストの効きどころがガラッと変わります。便利さとコストのバランスを取りながら、賢くAIと付き合っていきたいですね。