# AIエージェント開発の意思決定ポイント
🎯 **ポイント**
全部のタスクに最強モデルを使っていませんか?「Yes/Noの分類」にフラグシップモデルを使うのは、引っ越しにジャンボジェットを飛ばすようなものです。モデル階層化は、コストと品質のバランスを「定数」から「関数」に変える実践的な戦略です。
📋 **概要**
モデル階層とは、タスクの種類や難易度に応じて小型・中型・大型のどのクラスのLLMを使うかを制御するダイヤルです。AIエージェントシステムでは、1回のセッション内に分類・抽出のような定型処理と、推論・計画のような高度な処理が混在します。すべてを大型モデルで処理すれば品質は安定しますが、月間コストが桁違いに膨張します。実運用では全リクエストの概ね60〜80%が小型・中型モデルで十分処理でき、大型モデルが本当に必要なのは残りの20〜40%です。
🔍 **意思決定のポイント**
このダイヤルは2つの駆動変数で決めます。
🔹 **コスト感度(cost_sensitivity)** — コスト感度が高いほど小型モデルへの振り分けを増やします。全リクエストを大型モデルで処理する場合と比べ、60%を小型(コスト1/10)、20%を中型(コスト1/3)、20%を大型で処理すると、コストは概ね30%程度まで削減できます。
🔹 **リクエスト価値(request_value)** — 価値の高いリクエストほどエスカレーション閾値を下げ、早めに上位モデルを使います。逆にコスト感度が高い場合は閾値を上げ、本当に必要な場合のみエスカレーションします。
まずはタスク種別による静的ルーティングから始めるのが実践的です。分類・タグ付け・抽出は小型、要約・翻訳は中型、推論・計画・コード生成は大型。そこに信頼度ベースのエスカレーション(構造化出力のパースエラー率、回答拒否率などで判定)を重ねます。
💡 **要点と詳細**
📊 モデル階層数は2〜3層が運用しやすいです。4層以上は管理コストが増大します。エスカレーション閾値は信頼度0.7〜0.85が目安で、リクエスト価値が高いほど下げます。
ルーター方式はまずルールベースで始めましょう。LLMをルーターに使うとルーティング自体にコストがかかり、小型モデル1回分に匹敵することもあります。リクエスト量が少ないうちは入力長やキーワードベースのルールで十分です。
障害時には逆方向のフォールバック(大型→中型→小型)も有効です。サーキットブレーカが開いた場合に軽量モデルに切り替えることで、品質は落ちてもサービスを継続できます。縮退レベルをレスポンスのメタデータに含め、クライアント側で品質低下の可能性を表示するのが望ましいです。
⚖️ **トレードオフ**
📉 小型モデルに偏りすぎると — 複雑な推論タスクで「もっともらしいが間違っている」回答が増えます。計画の途中で矛盾が発生し実行フェーズで失敗、コード生成では構文は正しいが論理的に誤ったコードが生成されます。失敗コストが高いタスクでは、エラー修正コストが節約額を上回ることになります。
📈 大型モデルに偏りすぎると — 単純な分類タスクに100倍のコストをかけ、応答時間が数秒に膨張します。大型モデルのレート制限に達しやすくなり、全リクエストが429エラーの影響を受けるリスクもあります。月間コストの予算超過はサービスの継続性を脅かします。
🛠️ **ユースケース**
📞 **カスタマーサポート** — 質問分類・FAQ回答・感情分析は小型モデル(全体の約70%)、技術的な問題の診断は中型〜大型、返金ポリシー判断は大型モデル。分類結果に応じて適切な層にルーティングします。
📊 **データ分析パイプライン** — フォーマット変換は小型、数値統計はコード(LLM不要)、パターン分析・異常検知の解釈とエグゼクティブサマリは大型。パイプラインの大部分は小型モデルとコードで処理できます。
🔄 **障害時フォールバック** — 通常は大型モデルで推論し、プロバイダ障害時に中型→小型と段階的にダウングレード。全プロバイダ障害なら静的フォールバック。可用性と品質のバランスを動的に調整する構成です。
信頼度の定義は測定可能な指標に落としましょう。「なんとなく自信がない」では運用できません。モデル更新時はルーティング比率の再検証もお忘れなく。
#
AIエージェント# #
ソフトウェアアーキテクチャ#