ランタイムでガードレールを適用する

コンソールでコントロールを定義する

7 minutes

アプリは制御可能なステップを 登録 しましたが、ルールを定義 するのはGalileoコンソールです。どのステップを管理するか、どの条件でトリガーするか、一致した場合にブロックするかステアリングするかを設定します。

Exercise Galileoでコントロールを定義する
1

Controls タブを開く

Galileoコンソール(https://console.multitenant.galileocloud.ioworkshop org)で、プロジェクト / default agent streamを開き、 Controls タブをクリックします。

Log Stream Controls

2

エージェントにコントロールを追加する

Add control ボタンをクリックして、agent streamにコントロールを追加します。 agent streamにクローンしてアタッチできるコントロールのリストと、新しいコントロールを作成するオプションが表示されます。

Log Stream Add Controls

3

Block Harmful SQL コントロールを追加する

次に、既存のコントロール Block-harmful-sql をagent streamに追加します。 Block-harmful-sql コントロールの横にある Clone and attach ボタンをクリックします。

Create a blocking control

コントロール名をクリックして、コントロールの詳細を確認します。

Block Control Details

このコントロールは、すべての DELETE SQL操作を検出してブロックするために使用されます。関連するツール呼び出しの 前に 実行され、エージェントが実行時に患者レコードを削除することを防ぎます。

Discard Edits をクリックして、agent streamのコントロールリストに戻ります。

4

LLMをステアリングするコントロールを作成する

次に、 Healthcare Assistant LLMステップを対象とする2つ目のコントロールを追加します。このコントロールはレスポンスを ステアリング し、例えば回答をヘルスケアの範囲内に保つか、免責事項を強制します。

Add control ボタンをクリックし、 steer-output-pii コントロールの横にある Clone and attach をクリックします。

コントロールが追加されたら、クリックして詳細を確認します。

Create a steering control

このコントロールはLLM呼び出しの 後に 実行され、LLMレスポンスに電話番号や住所が検出された場合、エージェントは最終レスポンスからこれらのフィールドを削除するように「ステアリング」されます。

コンソール内のステップ名(delete_patient_recordHealthcare Assistant)はどこから来ていますか?

ここをクリックして回答を確認
アプリケーションコードから来ています。@control(step_name=...) デコレータ(LLMステップは LLM_STEP_NAME = "Healthcare Assistant")とツールステップの登録です。アプリは起動時にこれらのステップをAgent Controlに登録するため、コンソールに表示されルールの対象として設定できます。