はじめに
- LLMガードレールってなんですか?
LLMガードレールとは
- LLMアプリケーションにおけるユーザーとのインタラクションを監視・制御するための一連の安全管理である
- LLMを組織内で定義された原則に沿って動作させるために、ユーザーと基盤モデルの間に位置するプログラム可能なルールベースのシステムである
- ガードレールの目的は、LLMの出力を特定の形式やコンテキストに強制し、各レスポンスを検証することである
LLMにガードレールを実装する方法
Guardrails.ai
- LLMアプリケーション用のガードレールフレームワークを提供するオープンソースのPythonパッケージである
- LLMレスポンスのpydantic形式の検証を実装している
- RAILの仕様に基づいて構築されており、LLMの出力に特定のルールを適用し、LLM APIコールを軽量にラップする
NeMo Guardrails
- NVIDIAが開発したオープンソースのツールキットで、LLMシステムにプログラム的なガードレールを提供する
- 会話システムにレールを作成し、LLMを動力源とするアプリケーションが望ましくないトピックの特定の議論に関与することを防ぐ
- モデル、チェーン、サービスなどをアクションとシームレスかつ安全に接続する機能を提供する
- LLMガードレールのための新しいモデリング言語であるColangを導入している
Guardrails AIとNeMoの比較
- どちらのパッケージもリアルタイムでLLMアプリケーションにガードレールを提供し、オーケストレーションにLangChainをサポートしている
- XMLの構文に慣れていて、出力の単純なモデレーションとフォーマットのためにノートブック内でガードレールの概念をテストしたい場合は、Guardrails AIが適している
- LLMアプリケーションを本番環境に移行し、高度な会話ガイドラインとポリシーをフローに定義したい場合は、NeMoガードレールが適している
比較項目 | Guardrails AI | NeMo Guardrails |
---|---|---|
開発元 | オープンソースコミュニティ | NVIDIA |
主な目的 | LLMの出力の検証と修正 | 会話システムにおけるガードレールの提供 |
設定方法 | RAIL (XML方言) を使用 | Colang (独自のモデリング言語) を使用 |
主な機能 | - LLMレスポンスのpydantic形式の検証 - LLM APIコールの軽量ラッピング |
- 会話フローの定義 - モデル、チェーン、サービスとアクションの接続 |
LangChainとの統合 | 可能 | 可能 |
適したユースケース | - ノートブック内でのガードレールの概念のテスト - 出力の単純なモデレーションとフォーマット |
- LLMアプリケーションの本番環境への移行 - 高度な会話ガイドラインとポリシーの定義 |
ドキュメンテーション | 豊富な例を含む広範なドキュメント | 十分なドキュメント |
コミュニティのサポート | オープンソースコミュニティによるサポート | NVIDIAおよびオープンソースコミュニティによるサポート |
まとめ
- LLM内でのガードレールの実装は、責任あるAIガバナンスに向けた重要なステップである
- Guardrails.aiやNeMo Guardrailsのようなオープンソースのパッケージは、AIモデルが私たちの生活のあらゆる側面を支配しないようにするための良い出発点である
Appendix 用語まとめ
用語 | 説明 |
---|---|
ガードレール (Guardrails) | LLMアプリケーションにおけるユーザーとのインタラクションを監視・制御するための一連の安全管理。 |
Guardrails.ai | LLMアプリケーション用のガードレールフレームワークを提供するオープンソースのPythonパッケージ。 |
RAIL (Reliable AI Markup Language) | LLMの出力に対して特定のルールと修正アクションを指定するための、言語に依存せず人間が読める形式。XMLの方言。 |
NeMo Guardrails | NVIDIAが開発したオープンソースのツールキットで、LLMシステムにプログラム的なガードレールを提供する。 |
Colang | NeMo Guardrailsで導入された、LLMガードレールのための新しいモデリング言語。 |
LangChain | 言語モデルを使用してアプリケーションを構築するためのPythonライブラリ。ガードレールとの統合が可能。 |
pydantic | Pythonのデータバリデーションとシリアライゼーションのためのライブラリ。Guardrails.aiではLLMレスポンスの検証に使用される。 |