第8章 TrustyAI で Llama Stack を使用する
このセクションには、TrustyAI で Llama Stack を操作するためのチュートリアルが含まれています。チュートリアルでは、さまざまな Llama Stack コンポーネントとプロバイダーを使用して言語モデルを評価および操作する方法を説明します。
次のセクションでは、Llama Stack の操作方法について説明し、ユースケースを示します。
- TrustyAI の lm-evaluation-harness で Llama Stack 外部評価プロバイダーを使用する
- LM-Eval Llama Stack 外部評価プロバイダーでカスタム評価を実行する
- Llama Stack で trustyai-fms Guardrails Orchestrator を使用する
include::upstream-modules/ using-llama-stack-external-evaluation-provider-with-lm-evaluation-harness-in-TrustyAI.adoc[leveloffset=+1]
include::upstream-modules/ running-custom-evaluations-with-LMEval-and-llama-stack.adoc[leveloffset=+1]
8.1. Llama Stack で Guardrails Orchestrator を使用する リンクのコピーリンクがクリップボードにコピーされました!
trustyai_fms オーケストレーターサーバーは、Llama Stack の外部プロバイダーです。これを使用して、Llama Stack API 経由で Guardrails Orchestrator と互換性のある検出モデルを設定して使用できます。この Llama Stack 実装は、Guardrails Orchestrator とコミュニティーが開発した一連のディテクターを組み合わせて、強力なコンテンツフィルタリングと安全性の監視を提供します。
この例では、LlamaStack Operator を使用して Red Hat OpenShift AI namespace にディストリビューションをデプロイし、Llama Stack 安全ガードレールとして Guardrails Orchestrator と組み込みの Guardrails Regex Detector を使用する方法を示します。
前提条件
- OpenShift クラスターのクラスター管理者権限を持っている。
- OpenShift コマンドラインインターフェイス (CLI) をダウンロードしてインストールした。詳細は、OpenShift CLI のインストール を参照してください。
- チャット生成またはテキスト分類、あるいはその両方を行う大規模言語モデル (LLM) が namespace にデプロイされている。
クラスター管理者が OpenShift に次の Operator をインストールした。
- Red Hat OpenShift Service Mesh、バージョン 2.6.7-0 以降。
- Red Hat OpenShift Serverless、バージョン 1.35.1 以降。
- Red Hat Authorino Operator、バージョン 1.2.1 以降。
手順
DataScienceClusterで、次の設定を使用して OpenShift AI 環境を設定します。spec.llamastack.managementStateフィールドをManagedに手動で更新する必要があることに注意してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift AI namespace にプロジェクトを作成します。
PROJECT_NAME="lls-minimal-example" oc new-project $PROJECT_NAME
PROJECT_NAME="lls-minimal-example" oc new-project $PROJECT_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 正規表現ベースの PII 検出用のオーケストレーター設定を適用して、正規表現ディテクターを備えた Guardrails Orchestrator をデプロイします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 同じ namespace に、Llama Stack ディストリビューションを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
— LlamaStackDistribution CR をデプロイすると、同じ namespace に新しい Pod が作成されます。この Pod は、ディストリビューション用の LlamaStack サーバーを実行します。—
-
Llama Stack サーバーが実行中になったら、
/v1/shieldsエンドポイントを使用してシールドを動的に登録します。たとえば、正規表現パターンを使用して個人識別情報 (PII) を検出するシールドを登録します。 ローカルでアクセスするために、ポート転送を開きます。
oc -n $PROJECT_NAME port-forward svc/llama-stack 8321:8321
oc -n $PROJECT_NAME port-forward svc/llama-stack 8321:8321Copy to Clipboard Copied! Toggle word wrap Toggle overflow /v1/shieldsエンドポイントを使用して、シールドを動的に登録します。たとえば、正規表現パターンを使用して個人識別情報 (PII) を検出するシールドを登録します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow シールドが登録されたか検証します。
curl -s http://localhost:8321/v1/shields | jq '.'
curl -s http://localhost:8321/v1/shields | jq '.'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の出力は、シールドが正常に登録されたことを示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow シールドが登録されたら、PII が含まれるメッセージを
/v1/safety/run-shieldエンドポイントに送信して、シールドが機能していることを確認します。メール検出の例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow メールが検出されたことを示すレスポンスが返されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 社会保障番号 (SSN) 検出の例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SSN が検出されたことを示すレスポンスが返されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クレジットカード検出の例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クレジットカード番号が検出されたことを示すレスポンスが返されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow