AI News HubLIVE
サイト内リライト2 分で読了

SuperhumanとDatabricksが200K QPSの推論プラットフォームを共同構築

SuperhumanはDIY vLLMスタックからDatabricks FMAPI Provisioned Throughputに移行し、カスタムLLMを200K+ QPS、サブ秒P99レイテンシで提供しています。共同最適化により、FP8量子化、CPUボトルネック解消、Hopperアーキテクチャのアテンションカーネル最適化を通じて、GPUあたりのスループットが60%向上(H100ポッドあたり750 QPSから1,200 QPS)し、品質の低下はありません。Databricks FMAPIは、本番グレードの負荷分散、オートスケーリング、高速コンテナ起動により、250以上のGPUに確実にスケールします。

Superhumanは、Superhuman、Coda、Superhuman Mail、Superhuman Goを含む生産性プラットフォームを提供し、毎日4000万人以上のユーザーに数十言語でサービスを提供しています。AIコミュニケーションアシスタントは、ユーザーが書く際に、正確さ、明確さ、トーン、スタイルについてリアルタイムで提案を行います。これらのリアルタイム提案の背後には、高度に洗練されたカスタムAIモデルがあり、ピーク時に毎秒20万以上のクエリ(QPS)を、P99エンドツーエンドレイテンシ1秒未満、4つの9の信頼性保証で処理しています。

以前、SuperhumanはvLLMベースのDIY推論スタックと内部ツールを使用していました。しかし、モデルの反復ごとに手動パフォーマンスチューニングに数ヶ月を要し、キャパシティ計画やオートスケーリングなどの運用負担が増大していました。そこで、推論スタックにパフォーマンスとレイテンシのSLAをコミットできるプラットフォームパートナーを求め、Databricks FMAPI Provisioned Throughputへの移行を決定しました。

両チームは、P99レイテンシ1秒未満、Superhumanの内部評価での品質低下ゼロという目標を設定しました。負荷分散では、Kubernetesのラウンドロビンが高QPSでホットスポットを生じさせる問題に対処するため、「2つの選択肢の力」アルゴリズムに基づくカスタムロードバランサーを導入。エンドポイント検出サービス(EDS)が各リクエストに対して2つの候補Podをサンプリングし、アクティブリクエストが少ない方にルーティングします。オートスケーラーは、Pod全体のリクエスト並行性を追跡し、非対称なスケーリング戦略(積極的なスケールアップと保守的なスケールダウン)を採用。

コンテナ起動時間の最適化では、イメージアクセラレーション技術を採用。標準のgzipイメージをブロックデバイスベースのフォーマットに変換し、レイジーローディングを可能にしました。コンテナランタイムはメタデータのみを取得して仮想ブロックデバイスを作成し、アプリケーションはすぐに起動。ファイル読み取り時に実際のブロックコンテンツをリモートレジストリから取得し、キャッシュします。これにより、コンテナ起動時間が数分から数秒に短縮されました。

ランタイム最適化では、まずFP8量子化が最大の改善をもたらし、ポッドあたりQPSを30%向上。アテンション投影とMLP投影をチャンネルごとに量子化し、品質低下なし。次に、CPUボトルネックの排除として、マルチプロセッシングRPCサーバーを導入し、複数のCPUプロセスが並行してGPUにワークを準備・ディスパッチ。これによりさらに20%のスループット向上。さらに、Pythonオーバーヘッドの削減(C++呼び出しへの置き換え)や非同期スケジューリングにより、GPUアイドル時間を削減。これらの最適化により、H100ポッドあたりのスループットは750 QPSから1,200 QPSへと60%向上しました。

今後、Superhumanは追加のモデルをDatabricksに移行し、トレーニング、実験追跡、評価など、AIプラットフォームをより広く採用する予定です。この大規模プラットフォームの構築は双方の全社的な取り組みであり、貴重な学習経験となりました。