こう 聞かれます
- 「LLM の API の
費用と 待ち時間を、 どう 抑えますか」 - 「答えが
返るまで 遅い、と 言われたら どうしますか」 - 「LLM の
費用が 予想より 大きくなったら、 どこから 見ますか」
面接官が 見ている点
- 費用が
何で 決まるか (モデルの 大きさ、 読ませる 量と 書かせる 量) を 分かっているか - 本当の
速さと、 利用者が 感じる 速さを 分けて 考えられるか - 品質を
落と さずに 削る 順番と、 測ってから 決める 姿勢があるか
短い答え
- 作業に
合った 小さめの モデルを 選び、 同じ 前置きの 再利用 (プロンプトの キャッシュ) や、 同じ 問いの 答えの 再利用 (結果の キャッシュ) で、 払う 量を 減らします。 - ストリーミングで
書いた 所から 順に 見せて 体感を 速くし、 待たせなくて よい 重い 処理は 裏で 非同期に 回します。 - LLM の
呼び出しを 1 つの 中継 (ゲートウェイ) に まとめ、 記録、 キャッシュ、 回数の 制限を 1 か所で見ます。
少し 詳しい答え
費用は 何で決まるか
多くの LLM の API は、
- 小さめのモデル分類、
短い 要約、 決まった 形への 変換のような 作業は、 小さめの モデルで 足りる ことが 多いです。 難しい 作業だけ 大きい モデルに 回す、という 振り分けもあります - 読ませる
量を減らす長い 前置きや 毎回同じ 説明を 削る、 RAG で 渡す文書を 絞る、 会話の 古い 部分を 要約して 短く する、などです - 書かせる
量を減らす要る 形と 長さを 指示し、 出力の 上限を決めます
キャッシュ
- プロンプトの
キャッシュ 毎回同じ 長い 前置き (指示や 資料) を、 API の 側で 使い回す仕組みです。 提供元に よって 使い方や 割引の 体系が 違うので、 使う API の 説明で 確かめます - 結果の
キャッシュ同じ 質問に 同じ 答えで よい物は、 答えを 保存して 使い回します。 よく ある 質問の 答えなどに向きます
体感の速さ
答え全体が
まとめて見る
LLM の
トレードオフ
小さい
よく ある間違い
- 測らずに削る
どの 機能が 費用の 大半を 使っているかを 記録で 見てから、 効く 所を直します - いつも
いちばん 大きい モデルを使う 作業に よっては 小さい モデルで十分です - ストリーミングで
本当の 処理時間も 短くなると思う 縮むのは、 最初の 文字が 出るまでの体感です
深掘りの問い
- 「費用の
上限を 超えないように するには」利用者ごと、 機能ごとに 回数や 量の 上限を 置き、 超えそうなら 通知する、と答えます - 「提供元が
落ちたら どうしますか」別の モデルや 提供元に 切り替える 道を 用意し、 時間切れと 再試行を 決める、と答えます - 「モデルを
替えたら 品質は どう 確かめますか」 同じ 評価データで 前と 後を 比べる、と答えます