第4章 AMD ROCm AI アクセラレーターを使用した Podman によるサービングと推論


AMD ROCm AI アクセラレーター上で実行される Podman と Red Hat AI Inference Server を使用して、大規模言語モデルのサービングおよび推論を行います。

前提条件

注記

アクセラレーターでサポートされている vLLM 量子化スキームの詳細は、Supported hardware を参照してください。

手順

  1. サーバーホストでターミナルを開き、registry.redhat.io にログインします。

    $ podman login registry.redhat.io
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを実行して、AMD ROCm イメージをプルします。

    $ podman pull registry.redhat.io/rhaiis/vllm-rocm-rhel9:3.2.1
    Copy to Clipboard Toggle word wrap
  3. システムで SELinux が有効になっている場合は、デバイスアクセスを許可するように SELinux を設定します。

    $ sudo setsebool -P container_use_devices 1
    Copy to Clipboard Toggle word wrap
  4. ボリュームを作成してコンテナーにマウントします。コンテナーが使用できるようにコンテナーの権限を調整します。

    $ mkdir -p rhaiis-cache
    Copy to Clipboard Toggle word wrap
    $ chmod g+rwX rhaiis-cache
    Copy to Clipboard Toggle word wrap
  5. HF_TOKEN Hugging Face トークンを作成するか、private.env ファイルに追加します。source コマンドで private.env ファイルを読み込みます。

    $ echo "export HF_TOKEN=<your_HF_token>" > private.env
    Copy to Clipboard Toggle word wrap
    $ source private.env
    Copy to Clipboard Toggle word wrap
  6. AI Inference Server コンテナーイメージを起動します。

    1. AMD ROCm アクセラレーターの場合:

      1. amd-smi static -a を使用して、コンテナーがホストシステムの GPU にアクセスできることを確認します。

        $ podman run -ti --rm --pull=newer \
        --security-opt=label=disable \
        --device=/dev/kfd --device=/dev/dri \
        --group-add keep-groups \ 
        1
        
        --entrypoint="" \
        registry.redhat.io/rhaiis/vllm-rocm-rhel9:3.2.1 \
        amd-smi static -a
        Copy to Clipboard Toggle word wrap
        1
        GPU を使用するには、AMD システムのビデオグループとレンダリンググループの両方に属している必要があります。GPU にアクセスするには、--group-add=keep-groups で補助グループオプションをコンテナーに渡す必要があります。
      2. コンテナーを起動します。

        podman run --rm -it \
        --device /dev/kfd --device /dev/dri \
        --security-opt=label=disable \ 
        1
        
        --group-add keep-groups \
        --shm-size=4GB -p 8000:8000 \ 
        2
        
        --env "HUGGING_FACE_HUB_TOKEN=$HF_TOKEN" \
        --env "HF_HUB_OFFLINE=0" \
        --env=VLLM_NO_USAGE_STATS=1 \
        -v ./rhaiis-cache:/opt/app-root/src/.cache \
        registry.redhat.io/rhaiis/vllm-rocm-rhel9:3.2.1 \
        --model RedHatAI/Llama-3.2-1B-Instruct-FP8 \
        --tensor-parallel-size 2 
        3
        Copy to Clipboard Toggle word wrap
        1
        --security-opt=label=disable は、SELinux がボリュームマウント内のファイルを再ラベル付けするのを防ぎます。この引数を使用しない場合、コンテナーが正常に実行されない可能性があります。
        2
        共有メモリーに問題が発生する場合は、--shm-size8GB に増やしてください。
        3
        AI Inference Server コンテナーを複数の GPU で実行する場合は、GPU の数に合わせて --tensor-parallel-size を設定します。
  7. ターミナルの別のタブで、API を使用してモデルにリクエストを送信します。

    curl -X POST -H "Content-Type: application/json" -d '{
        "prompt": "What is the capital of France?",
        "max_tokens": 50
    }' http://<your_server_ip>:8000/v1/completions | jq
    Copy to Clipboard Toggle word wrap

    出力例

    {
        "id": "cmpl-b84aeda1d5a4485c9cb9ed4a13072fca",
        "object": "text_completion",
        "created": 1746555421,
        "model": "RedHatAI/Llama-3.2-1B-Instruct-FP8",
        "choices": [
            {
                "index": 0,
                "text": " Paris.\nThe capital of France is Paris.",
                "logprobs": null,
                "finish_reason": "stop",
                "stop_reason": null,
                "prompt_logprobs": null
            }
        ],
        "usage": {
            "prompt_tokens": 8,
            "total_tokens": 18,
            "completion_tokens": 10,
            "prompt_tokens_details": null
        }
    }
    Copy to Clipboard Toggle word wrap

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat