第5章 Google TPU AI アクセラレーターを使用した Podman による言語モデルのサービングと推論
Google TPU AI アクセラレーターが利用可能な Google クラウド仮想マシンで、Podman または Docker と Red Hat AI Inference Server を使用して大規模言語モデルのサービングおよび推論を行います。
前提条件
Google TPU AI アクセラレーターが設定された Google Cloud TPU 仮想マシンにアクセスできる。詳細は以下を参照してください。
- Podman または Docker がインストールされている。
- sudo アクセス権を持つユーザーとしてログインしている。
-
registry.redhat.io
イメージレジストリーにアクセスでき、ログインしている。 - Hugging Face アカウントがあり、Hugging Face アクセストークンが生成されている。
アクセラレーターでサポートされている vLLM 量子化スキームの詳細は、Supported hardware を参照してください。
手順
TPU サーバーホストでターミナルを開き、
registry.redhat.io
にログインします。podman login registry.redhat.io
$ podman login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、Red Hat AI Inference Server イメージをプルします。
podman pull registry.redhat.io/rhaiis/vllm-tpu-rhel9:3.2.2
$ podman pull registry.redhat.io/rhaiis/vllm-tpu-rhel9:3.2.2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: ホストで TPU が使用可能であることを確認します。
Red Hat AI Inference Server コンテナーでシェルプロンプトを開きます。以下のコマンドを実行します。
podman run -it --net=host --privileged -e PJRT_DEVICE=TPU --rm --entrypoint /bin/bash registry.redhat.io/rhaiis/vllm-tpu-rhel9:3.2.2
$ podman run -it --net=host --privileged -e PJRT_DEVICE=TPU --rm --entrypoint /bin/bash registry.redhat.io/rhaiis/vllm-tpu-rhel9:3.2.2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテナーシェルプロンプトで次の Python コードを実行して、システム TPU アクセスと基本操作を確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow シェルプロンプトを終了します。
exit
$ exit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ボリュームを作成してコンテナーにマウントします。コンテナーが使用できるようにコンテナーの権限を調整します。
mkdir ./.cache/rhaiis
$ mkdir ./.cache/rhaiis
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod g+rwX ./.cache/rhaiis
$ chmod g+rwX ./.cache/rhaiis
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HF_TOKEN
Hugging Face トークンをprivate.env
ファイルに追加します。echo "export HF_TOKEN=<huggingface_token>" > private.env
$ echo "export HF_TOKEN=<huggingface_token>" > private.env
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HF_HOME
変数をprivate.env
ファイルに追加します。echo "export HF_HOME=./.cache/rhaiis" >> private.env
$ echo "export HF_HOME=./.cache/rhaiis" >> private.env
Copy to Clipboard Copied! Toggle word wrap Toggle overflow source コマンドで
private.env
ファイルを読み込みます。source private.env
$ source private.env
Copy to Clipboard Copied! Toggle word wrap Toggle overflow AI Inference Server コンテナーイメージを起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
AI Inference Server サーバーが起動していることを確認します。ターミナルで別のタブを開き、API を使用してモデルリクエストを作成します。
出力例