どのAIプロバイダーにも調子の悪い時間があります。モデルが混み合い、リージョンがつまずき、エンドポイントが九十秒ほどエラーを返す。珍しいことではありません。大事なのは、その九十秒のあいだにアプリが何をするかです。
今週まで、私たちのアプリはたいてい諦めていました。画像、音声、文字起こしは数か月前から兄弟モデルへ移れていました。テキストはどこでも移れず、プロバイダーの不調はワークフローを終わらせるのと同じように、対話中の回答も終わらせていました。
同じ問いを、別のモデルに
テキストの呼び出しはすべて、別の場所に尋ね直せる一つの経路を通るようになりました。チャットの本体とその背後のツール実行、続きの生成、ディープリサーチ、画像理解の橋渡し、プロンプトの改善、ワークフロー内のテキスト処理、そして音楽の生成です。代わりに使うのは適当に選んだ安いモデルではなく、その要求に必要な能力を実際に備えた兄弟モデルです。
一つの場合だけは意図的に外してあります。回答が画面に出はじめたら、そのままにします。別のモデルでやり直すことは、すでに読まれた文を書き換えたり否定したりすることを意味し、正直なエラーより悪いからです。
答えたモデルに支払う
面白いのは請求のほうです。呼び出しの切り替えは簡単ですが、それを正直に記録するのは簡単ではありません。切り替えのたびに最初のモデルの価格が残っていたため、切り替わった呼び出しは、たった今落ちたモデルの単価で請求されていました。今は、実際に動いたモデルの全体像、価格、コンテキスト長、上乗せ分がそのまま呼び出し元に渡ります。だから請求履歴の一行は、仕事をしたモデルを、その単価で示します。
そして何も動かないとき
切り替えがいつでもできるとは限りません。実行が本当に失敗したときは、何も生み出さなかったステップの代金が、引かれた場所へ戻るようになりました。それが今週のもう半分で、別の記事にしてあります。