デイリー · 記事 03 · 4 分で読む
- OpenAI
OpenAI、ChatGPTの保存層を読む待ち時間を120msから10msへ改善
10月23日の公式発表・案内・原文再確認10月24日15:52 JST
要約・概要
OpenAIは10月23日、保存基盤Habitatの改善過程を公開しました。同社が報告した読み取り遅延の中央値は約120msから10msへ減りましたが、ChatGPTの応答全体が12倍速くなったという数値ではありません。
主な事実
- 発表:OpenAIが独自の保存基盤Habitatの設計を説明しました。MicrosoftのクラウドデータベースAzure Cosmos DBなどを使う基盤です。
- 報告した変化:今年の性能改善を通じ、世界全体の保存層の読み取り遅延の中央値(p50)が約120msから約10msへ減ったという同社の数値です。新しい消費者向け機能や独立した性能試験の発表ではありません。
- 改善した場所:情報を置く地域、複製、キャッシュ、サービスコードなど複数の部分です。OpenAIの技術記事

1. 保存場所にも処理する力が必要
データベースは、情報を保存し、条件に合う項目を取り出す仕組みです。保存する空きがあるかと、多くの要求を時間内に処理できるかは別の問題です。本棚が空いていても、案内窓口が一つなら人が集中すると待つのと似ています。
Azure Cosmos DBは、CPU・入出力・メモリなどの処理負担をRUという単位で表します。RU/sは1秒あたりの処理容量です。操作ごとに負担が違うため、RUの数をそのままリクエスト件数に変えてはいけません。RUの説明
| 見る項目 | 問うこと |
|---|---|
| 保存量 | どれだけの情報を置けるか |
| 処理容量 | 一定時間にどれだけの仕事をこなせるか |
| 遅延時間 | 一つの要求が戻るまで何秒待つか |
猫と一緒に読み解く Q&A
- 猫の研究員
保存場所が余っていても遅くなる?
ポケットノート読み取りが一度に集中すれば起こるよ。空いた本棚より、窓口の処理速度が問題になる場面だね。
2. 一緒に使うか、別々に確保するか
容量を共有すると、別の仕事で余った分も使いやすくなります。一方、一つの仕事が資源を多く使ってほかまで遅くする「騒がしい隣人」の問題もあります。情報を論理的に分けても、実際の処理資源まで別とは限りません。分割の仕組み
通常の使用:A 80 + B 10 + C 10 = 100
100ずつ別々に用意
合計300のうち200が空き
150を共有
合計150のうち50が空き
使用 空き・全て同じ単位の尺度
共有上限150より30多くなります。別々でもAの100は足りませんが、B・Cの枠を直接使いません。
猫と一緒に読み解く Q&A
- 猫の研究員
容量を共有すると、何を管理する必要がある?
ポケットノートどの作業に要求が集中し、ほかの作業も遅くなるかを見る必要があるよ。図の余りは仮の例で、実際の費用は料金体系・複製・キャッシュ・運用も含めて考えるんだ。
3. 120msから10ms、何が速くなったか
120msは0.12秒、10msは0.01秒です。p50 は、要求を遅延時間の順に並べた真ん中の値、中央値です。OpenAIが今年の性能改善の前後で比べた値は保存層の読み取りについてで、全利用者の最長待ち時間やAIが答えを生成する時間ではありません。
120を10で割ると12、減少した110msを元の120msで割ると約91.7%です。変わったのは、この指標です。応答全体には認証、情報取得、モデルの計算、転送などの時間もかかります。
猫と一緒に読み解く Q&A
- 猫の研究員
私のChatGPTの返事も12倍速くなるの?
ポケットノートその数字だけでは分からないよ。保存読み取りが占める割合や、キャッシュにない遅い要求も見る必要がある。中央値が改善しても、遅い側の体験が残ることはあるんだ。
4. 近くのコピーと、古くなったコピー
キャッシュは、よく読む情報のコピーを近くに置き、元の保存先まで取りに行く回数を減らす仕組みです。ただ、元が変わってもコピーが残ると、古い値を表示することがあります。Azureの一般的なキャッシュ文書も、繰り返す読み取り、情報を残す時間と更新条件を説明しています。一般的なキャッシュの説明
その文書のAzure専用ゲートウェイのキャッシュと、HabitatのValkeyによるキャッシュは同じ実装ではありません。OpenAIは、元情報の変更通知でキャッシュを無効にし、次の読み取りで新しい値を入れる方法を説明しています。
架空の店で商品名を変えるなら、「近くのコピーを読む」とともに「変更通知で古いコピーを捨てる」ことも必要です。情報を近くに移す際は、保存地域の要件や実際の地域ごとの容量も考えます。
1・使えるコピーがないとき
- アプリから照会
- 元の保存先から読む
- キャッシュにコピーを入れる
2・同じ情報を再び読むとき
- アプリから照会
- 近くのキャッシュから読む
- 使えるコピーなら元の保存先への照会を省く
3・元の商品名が変わったとき
- 元の情報を変更
- 変更の通知で古いコピーを無効にする
- 次の照会で新しい値を入れる
猫と一緒に読み解く Q&A
- 猫の研究員
元の商品名が変わったら、キャッシュはどう直すの?
ポケットノートこの図では変更通知で古いコピーを無効にし、次の照会で新しい値を入れるよ。小さなサービスでもキャッシュを試すときは、元の値を変えてからいつ画面に出るかも調べられるね。
まとめ
AIサービスは情報を取り出す道でも待つ
平均値だけを見ていた開発者なら、頻繁な取得と、遅い側の要求を分けて見られます。モデルを変える前に、待ち時間が実際にどこで生まれているかを見るのが出発点です。
出典
- OpenAIの技術記事openai.com
- RUの説明learn.microsoft.com
- 分割の仕組みlearn.microsoft.com
- 一般的なキャッシュの説明learn.microsoft.com