5.2. モデルとのチャット
モデルをサービングしたら、モデルにチャットできるようになります。
チャットしているモデルは、サービング中のモデルと一致する必要があります。デフォルトの config.yaml ファイルでは、granite-7b-redhat-lab モデルがサービングとチャットのデフォルトになります。
前提条件
- 起動可能なコンテナーイメージを使用して RHEL AI をインストールしている。
- InstructLab を初期化している。
- 使用する Granite LLM をダウンロードしている。
- モデルをサービングしている。
- マシンの root ユーザーアクセス権がある。
手順
- 1 つのターミナルでモデルをサービングしているため、モデルとチャットするには別のターミナルウィンドウを開く必要があります。
デフォルトのモデルとチャットするには、次のコマンドを実行します。
$ ilab model chat特定のモデルとチャットするには、次のコマンドを実行します。
$ ilab model chat --model <model-path>コマンドの例
$ ilab model chat --model ~/.cache/instructlab/models/granite-8b-code-instruct
チャットボットの出力例
$ ilab model chat
╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────── system ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ Welcome to InstructLab Chat w/ GRANITE-8B-CODE-INSTRUCT (type /h for help) │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
>>> [S][default]
+ チャットボットを終了するには exit と入力します。
5.2.1. オプション: モデルとチャットするために API キーを作成する リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、ilab CLI は認証を使用しません。サーバーをインターネットに公開する場合は、次の手順に従ってサーバーに接続する API キーを作成できます。
前提条件
- Red Hat Enterprise Linux AI イメージがベアメタルにインストールされている。
- InstructLab を初期化している。
- 使用する Granite LLM をダウンロードしている。
- マシンの root ユーザーアクセス権がある。
手順
次のコマンドを実行して、
$VLLM_API_KEYパラメーターに保持される API キーを作成します。$ export VLLM_API_KEY=$(python -c 'import secrets; print(secrets.token_urlsafe())')次のコマンドを実行すると、API キーを表示できます。
$ echo $VLLM_API_KEY次のコマンドを実行して
config.yamlを更新します。$ ilab config editconfig.yamlファイルのvllm_argsセクションに次のパラメーターを追加します。serve: vllm: vllm_args: - --api-key - <api-key-string>ここでは、以下のようになります。
- <api-key-string>
- API キー文字列を指定します。
次のコマンドを実行すると、サーバーが API キー認証を使用していることを確認できます。
$ ilab model chat次に、ユーザーに権限がないことを示す以下のエラーが表示されます。
openai.AuthenticationError: Error code: 401 - {'error': 'Unauthorized'}以下のコマンドを実行して、API キーが機能していることを確認します。
$ ilab model chat -m granite-7b-redhat-lab --endpoint-url https://inference.rhelai.com/v1 --api-key $VLLM_API_KEY出力例
$ ilab model chat ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────── system ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Welcome to InstructLab Chat w/ GRANITE-7B-LAB (type /h for help) │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ >>> [S][default]