Cloud TPU 推論
サービングとは、トレーニング済み ML モデルを本番環境にデプロイするプロセスであり、本番環境を使用して推論に使用できます。推論は TPU v5e 以降のバージョンでサポートされています。レイテンシ SLO はサービングの優先事項です。
このドキュメントでは、単一ホストの TPU でモデルをサービングする方法について説明します。チップ数が 8 個以下の TPU スライスには 1 つの TPU VM またはホストがあり、単一ホスト TPU と呼ばれます。マルチホスト推論については、Pathways を使用してマルチホスト推論を実行するをご覧ください。
使ってみる
Cloud TPU を使用するには、 Google Cloud アカウントとプロジェクトが必要です。詳細については、Cloud TPU 環境を設定するをご覧ください。
推論に使用する予定の TPU コア数に応じた十分な割り当てがあることを確認します。TPU v5e では、トレーニングとサービングに別々の割り当てが使用されます。TPU v5e のサービング固有の割り当ては次のとおりです。
- オンデマンド v5e リソース:
TPUv5 lite pod cores for serving per project per zone - プリエンプティブル v5e リソース:
Preemptible TPU v5 lite pod cores for serving per project per zone
他の TPU バージョンでは、トレーニング ワークロードとサービング ワークロードで同じ割り当てが使用されます。詳細については、Cloud TPU の割り当てをご覧ください。
vLLM で LLM をサービングする
vLLM は、大規模言語モデル(LLM)の高速な推論とサービング用に設計されたオープンソース ライブラリです。Cloud TPU は、JAX モデルと PyTorch モデルをサポートする tpu-inference プラグインを使用して vLLM と統合されます。詳細については、tpu-inference GitHub リポジトリをご覧ください。
vLLM を使用して TPU でモデルをサービングする例については、以下をご覧ください。
プロファイリング
推論を設定したら、プロファイラを使用してパフォーマンスと TPU の使用率を分析できます。プロファイリングの詳細については、以下をご覧ください。