AIToday

巨大プロンプトは分解してルーティング

Hacker News18時間前
巨大プロンプトは分解してルーティング

要点

ほとんどの AI 製品は、すべてのルール、例、知識を含む巨大なシステムプロンプトを毎回のリクエストで高価なモデルに送信しているため、過剰に支払い、不要な遅延を経験している。ソリューションはより廉価なベンダーを見つけることではなく、ワークフローを再設計することである:リクエストを個別のステップに分解し、プロンプトにすべてを詰め込む代わりに関連するコンテキストのみを検索し、静的部分をキャッシュし、安価なモデルを分類とルーティングに使用し、高価なモデルは本当に高度な推論が必要な 1 つのステップのために予約する。Qolca の本番営業アシスタントはこのアプローチを使用している。2 つの安価な分類器が並列実行され、その後安価なオプションのサマリ、その後応答生成のための単一の高価な呼び出しであり、同じユーザー体験をコストと遅延の一部で実現している。

こういう要約が、毎朝あなたのメールに届きます。

無料で登録 →

3つのポイント

  • 何が起きたか

    Qolca が AI 製品におけるトークン効率に関するガイドを発表し、すべてのルール、例、知識を含む巨大なシステムプロンプトを毎回のリクエストで最も高価なモデルに送信する標準的な慣行が、コストと遅延の両方を無駄にしていると主張した。同社の本番 AI 営業アシスタントは代わりに 4 段階パイプラインを採用している:2 つの安価な並列分類器(言語検出、意図分類)、条件付きコンテキスト要約(会話が長い場合のみ)、および精選されたコンテキストを持つ高価なモデルでの最終応答生成。

  • なぜ重要か

    フロンティアティアのモデルへの入力トークンコストは数ドル/百万トークン程度であり、すべてのトークンがリクエストのたびに再請求される。4,000 トークンのシステムプロンプトが 10 ターンの会話で再読み込みされると、同じ指示の繰り返しだけで 40,000 トークンのコストが発生する。すべての会話と日数を通じて、この無駄は製品の成功に比例して拡大する。遅延も製品特性である。より大きなプロンプトは、モデルが最初のトークンを出力する前により多くのコンテキストを処理することを強制し、チャットボットをユーザーにとって遅く感じさせる。遅い応答や高い請求を理由に挙げるチームは、多くの場合、ベンダー問題ではなくアーキテクチャ問題を抱えている。

  • 注目点

    ガイドは既存プロンプトの具体的な改装シーケンスを推奨している:まず凍結された部分に対してプリフィックスキャッシングを有効にする(通常の入力価格の約 10 分の 1 で請求される)、次に知識ベースのような大規模な静的ブロックをレトリーバルベースのスライスに分離し、安価な分類決定を個別の小規模モデル呼び出しに分割し、分類または抽出をフロンティアモデルから廉価の代替品にダウングレードする。最終生成ステップのみ高価なモデルに留まるべきであり、その際は実際に必要な精選されたコンテキストのみを伴う。

詳細

AI コンサルティング企業の Qolca は、ほとんどの AI 製品が単一のアーキテクチャの誤りを通じてお金と遅延を流出させていると主張するガイドを発表した:毎回のリクエストで最も高価なモデルに 1 つの巨大なシステムプロンプトを送信することである。同社は具体的な数値で隠れたコストを示している。フロンティアティアのモデルは百万出力トークン当たり数ドルから 15 ドル、百万入力トークン当たり数ドルのコストであり、Haiku クラスの小規模で高速なモデルはその約 3 分の 1 から 5 分の 1 のコストである。製品カタログ、トーンガイドライン、12 個の例で詰め込まれた 4,000 トークンのシステムプロンプムは、10 ターンの会話の毎回のターンで再読み込みされ、第 1 ターンで既にモデルが吸収した指示を再度述べるだけで 40,000 トークンに達する。無駄はすべての会話とすべての日数にわたって複合し、製品の成功に比例して拡大する。コストは問題の半分に過ぎない。もう半分は遅延である。モデルはプロンプト全体を処理するまで最初のトークンを出力できないため、より大きなプロンプトは、画面に何かが現れる前にさらに読む必要があり、さらに理由を述べる必要があることを意味する。ユーザーはこれを鈍さとして経験し、チームはモデルを責める傾向があるが、真犯人は毎回のリクエストで強制されるコンテキストの壁である。

Qolca はトークンをスカースなリソースとして扱うための 5 つのパターンを提案している。第 1 に、フローを個別のステップに分解し、各モデル呼び出しはその特定のステップが必要なコンテキストのみを保持する。単一の"このカスタマーメッセージを処理する"リクエストは実は複数の小さなジョブである:言語を把握し、意図を分類し、関連する履歴を集め、応答を書く。1 つのプロンプトにバンドルされると、すべてのサブジョブはフルコンテキストとフルモデルに対して支払われる。分割されると、言語検出はメッセージだけが必要であり、意図分類はメッセージと多分 1 行の履歴が必要であり、最終応答のみペルソナ、トーン、製品知識が必要である。第 2 に、コンテキスト詰め込みの代わりにレトリーバルを行う。トークン無駄の最も一般的な形式は、知識ベース全体をプロンプトに貼り付けることであり、その理由はモデルがそれを必要としているかもしれないという理論である。顧客が払い戻しウィンドウについて尋ねる場合、モデルは払い戻しポリシーが必要であり、配送ゾーン、保証条件、および企業履歴ではない。レトリーバルは 6,000 トークンの知識ダンプを 400 トークンのオンテーマコンテキストに変え、焦点を絞ったコンテキストはモデルが推論しやすいため精度を向上させる。第 3 に、静的プリフィックスをキャッシュする。最新のモデル API により、チームは決して変わらないプロンプトの部分(ペルソナ、固いルール、フォーマット指示)をキャッシュでき、毎回ゼロから再処理されない。キャッシュされた入力トークンは通常の入力価格の約 10 分の 1 で請求され、より高速に処理されるが、キャッシングはプリフィックスマッチであり、静的コンテンツはプロンプトの最初に来なければならず、変動するコンテンツ(ユーザーメッセージ、タイムスタンプ、リクエストごとのデータ)は最後に来なければならないか、キャッシュがすべてのリクエストで無効化される。第 4 に、小規模で高速なモデルを使用して次に何が起こるかを決定する安価な分類とルーティングを行う。第 5 に、本当にその知能を必要とする 1 つのステップのために高価なモデルを予約する。

Qolca の本番 AI 営業アシスタント(ウェブサイト用)はまさにこれらの原則に基づいて構築されている。単一の受信メッセージは 1 つの巨大な呼び出しではなく、4 つの意図的なステップを通じて実行される。第 1 に、2 つの安価な分類器が小規模で高速なモデルで並列に実行される:1 つは言語を検出し、もう 1 つは意図を固定されたカテゴリセットに分類する。これらの呼び出しは小さい。数個のトークンが入り、1~2 個のトークンが出るため、並列実行されるため単一の呼び出しの時間で完了する。第 2 に、コンテキスト要約ステップは同じ廉価なモデルで実行されるが、条件付きである。会話が実際に要約する必要があるほど十分に長い場合にのみ実行されるため、短い会話はそれを完全にスキップし、何も支払わない。第 3 に、実際の会話応答を生成する最終ステップのみが高価でより能力のあるモデルを使用し、検出された言語、分類された意図、コンパクトなコンテキスト、およびメッセージを受け取り、巨大な全て含むプロンプトではない。第 4 に、5 番目のステップがコールトゥアクション(コールをブック、WhatsApp を開く、連絡フォームを表示)を平易な決定論的コードで決定し、モデルは使用しない。結果は、圧倒的多数のトークン支出が廉価なモデルに行き、フロンティアモデルが精選されたコンテキストで 1 回呼び出され、静的部分がキャッシュされるシステムである。ユーザー体験は天真爛漫な 1 プロンプト版と同じであるが、コストと遅延の一部である。

本番で既存の巨大プロンプトを持つチームの場合、Qolca は安全な改装シーケンスを推奨している。第 1 に、システムを計測してリクエスト当たりのトークン入出力と使用されるモデルをログしため、チームは変更を行う前にお金が実際にどこに行くかを見ることができる。第 2 に、プロンプトの凍結された部分を上部に移動してプリフィックスキャッシングを有効にする。動作に変更を加えない最も廉価なウィンである。第 3 に、最も大きな静的ブロック(通常は知識ダンプ)を取り出し、それを関連するスライスのレトリーバルに置き換える。第 4 に、大きな呼び出しの中に隠れている廉価な決定(言語、意図、ルーティング)を見つけ、それを小規模で高速なモデルの個別の呼び出しに分割する。第 5 に、分類または抽出であるすべてのステップをフロンティアモデルから廉価なものにダウングレードし、品質が保持されることを確認する。最終生成ステップのみ高価なモデルに留まるべきであり、その際は必要なコンテキストのみを伴う。記事は、ユニット経済学で勝つチームはより廉価なモデルを見つけたチームではなく、ルーターが処理できた質問にフロンティア価格を支払うことを停止し、実際にそれらを稼ぐ瞬間のために最も高価なトークンを予約したチームであると結論付けている。

背景と解説

この記事は AI 製品に蔓延するアーキテクチャアンチパターン、つまり一体型プロンプトを特定している。チームは包括的なシステムプロンプトを構築してすべてのルール、例、企業の知識を詰め込み、その後そのコンテキスト全体を毎回のリクエストで最も高価なモデルに送信する。本能的には廉価なベンダーを見つけることで最適化しようとするが、記事はこれが問題を誤診していると主張している。真の問題は、トークンを無料またはほぼ無料のリソースとして扱うことであり、実際にはメータリングされた高価なリソースである。

経済的な理由は明白である:4,000 トークンのプロンプトが 10 ターンの会話を通じて再読み込みされると、静的な指示を繰り返すだけで 40,000 トークンのコストが発生する。数ドル/百万入力トークンで、リクエストあたりのコストはわずかに見えるが、すべてのユーザーとすべての日数にわたって掛け合わされると、その無駄は製品自体の成功に比例して拡大する。遅延コストも同様に実在するが、あまり明白ではない。モデルはプロンプト全体を読むまで最初のトークンを出力できないため、肥大化したプロンプトは、ユーザーが画面に何かを見る前に、モデルが数千トークンを処理することを強制する。記事はこれを同じ過ちに対して 2 回支払う:ドルで 1 回、秒で 1 回と説明している。

Qolca は、"モデルが可能性として必要とするかもしれないもの"から"このステップが実際に必要とするもの"へと心の持ち方をシフトさせる 5 つのパターンを提案している。複雑なリクエストを個別のステップ(言語検出、意図分類、コンテキスト検索、応答生成)に分解することにより、各ステップはその必要なコンテキストのみを保持することができる。レトリーバルはコンテキスト詰め込みに取って代わり、知識ベース全体ではなく 2~3 の関連する段落を引き込む。プリフィックスキャッシングは静的コンテンツを通常価格の約 10 分の 1 で請求する。廉価なモデルは分類とルーティング決定を処理する。高価なモデルは本当にフロンティアレベルの流暢性が必要な 1 つのステップのために予約されている。同社の本番アシスタントは、2 つの並列安価分類器、オプションの条件付きサマリ、応答用の単一の高価な呼び出し、およびルーティング用の決定論的コードで、コストと遅延の一部で同じユーザー体験を実現することで、これを例証している。

よくある質問

入力トークンのコストはいくらで、再請求はいくらか?
フロンティアティアのモデルのコストは数ドル/百万入力トークン程度である。プロンプト内のすべてのトークンは毎回のリクエストで支払われるため、4,000 トークンのシステムプロンプトが 10 ターンの会話を通じて再読み込みされると、第 1 ターンで既に吸収された指示を再度述べるだけで 40,000 トークンのコストが発生する。
プリフィックスキャッシングとは何か、どの程度節約できるか?
プリフィックスキャッシングはプロンプトの静的な部分(ペルソナ、固いルール、フォーマット指示)を保存し、毎回ゼロから再処理されないようにする。キャッシュされた入力トークンは通常の入力価格の約 10 分の 1 で請求され、処理がより高速だが、キャッシュは静的コンテンツがプロンプトの最初に配置され、変動するコンテンツ(ユーザーメッセージ、タイムスタンプ、リクエストごとのデータ)が最後に配置されている場合にのみ機能する。
Qolca の本番営業アシスタントはどのステップで構成されているか?
4 つのステップで実行される:第 1 に、小規模で高速なモデル上の 2 つの安価な分類器が言語を検出し意図を分類する(パラレルで実行される小さな呼び出し)。第 2 に、コンテキスト要約ステップは会話が長い場合のみ安価なモデルで条件付きで実行される。第 3 に、高価なモデルが検出された言語、意図、コンパクトなコンテキスト、およびメッセージを使用して応答を生成する。第 4 に、5 番目のステップが決定論的コードを使用してどのモデルも使用せずにコールトゥアクションを決定する。

「大規模言語モデル」の最新ニュースを、毎朝7時にお届けします

AIが要約して、あなたの選んだトピックだけを1日1通。LINE・Email・Slackで届きます。

登録無料・30秒で完了・いつでも解除できます

ディスカッション

まだコメントがありません。最初のコメントを投稿しましょう!

ログインして議論に参加

関連記事

AIニュースを毎日お届け

200以上のソースから厳選したAIニュースを毎日無料でお届けします。

無料で始める

登録無料・30秒で完了・いつでも解除できます

毎朝1分、AIの要点だけ。

200媒体以上・Email/LINE/Slack 対応

無料で受け取る →