以下の内容はhttps://blog.generative-agents.co.jp/entry/2025/02/10/142219より取得しました。


「AIエージェントキャッチアップ #20 - NVIDIA NeMo Guardrails」を開催しました

ジェネラティブエージェンツの大嶋です。

「AIエージェントキャッチアップ #20 - NVIDIA NeMo Guardrails」という勉強会を開催しました。

generative-agents.connpass.com

アーカイブ動画はこちらです。

youtube.com

NVIDIA NeMo Guardrails

今回は、「NVIDIA NeMo Guardrails」について、公式ドキュメントを読んだり動かしたりしてみました。

NeMo GuardrailsのGitHubリポジトリはこちらです。

github.com

公式ドキュメントはこちらです。

docs.nvidia.com

今回のポイント

NeMo Guardrailsの概要

NeMo Guardrailsは、NVIDIA社が公開しているLLMのガードレールのOSSです。

論文も公開されています。

arxiv.org

LLMのガードレールのOSSはいくつかありますが、その中でも有名な印象があります。

基本的な使い方

NeMo Guardrailsの基本的な使い方としては、「nemoguardrails」というPythonパッケージをインストールして、以下のようなコードを書きます。

from nemoguardrails import LLMRails, RailsConfig

config = RailsConfig.from_path("./config")
rails = LLMRails(config)

response = rails.generate(
    messages=[
        {
            "role": "user",
            "content": "What is the capital of France?",
        },
    ],
)
print(response)

上記の例では./configディレクトリにNeMo Guardrailsの設定ファイルを配置する必要があります。

./config/config.ymlには、使用するモデルやプロンプトなどを記述します。

models:
  - type: main
    engine: openai
    model: gpt-3.5-turbo-instruct

./config/rails.coには、Colangという言語でガードレールの設定を記述します。

define user express greeting
  "Hello"
  "Hi"
  "Wassup?"

define flow greeting
  user express greeting
  bot express greeting
  bot ask how are you

define bot express greeting
  "Hello World!"

define bot ask how are you
  "How are you doing?"

上記の例は、「Hello」のような挨拶に対して「Hello World!」「How are you doing?」といった特定の応答を返すというものです。

他にもジェイルブレイクのガードレールなどを実装することもできます。

Colangでのガードレールの記述が特有で、しっかり使うにはある程度の学習コストがかかりそうでした。

LangChainとの統合

LangChainとの統合も提供されており、NeMo Guardrailsが提供する「RunnableRails」をChainに組み込むことができます。

from nemoguardrails.integrations.langchain.runnable_rails import RunnableRails

config = RailsConfig.from_path("./config")
guardrails = RunnableRails(config)

chain = prompt | (guardrails | model) | output_parser

LangSmithでトレースを確認すると、ガードレール用のプロンプトでgpt-4o-miniが何度か呼び出されていることが分かります。

このようなツールの挙動を把握したいとき、トレースの可視化はとても便利ですね。

セキュリティガイドライン

NeMo Guardrailsのドキュメント内には、セキュリティガイドラインもあります。

docs.nvidia.com

このガイドラインはNeMo Guardrailsに限った解説ではなく、一般的なLLMアプリケーションで注意すべき内容となっています。

これだけで全てを網羅しているというものではありませんが、まとまった情報源の1つとして参考になります。

次回のご案内

以上、今回は「NeMo Guardrails」をキャッチアップしました。

次回は「AIエージェントキャッチアップ #21 - HumanLayer」ということで、Human-in-the-Loopのライブラリ「HumanLayer」がテーマです!

generative-agents.connpass.com

ご興味・お時間ある方はぜひご参加ください!

また、その次の回以降のテーマも募集しているので、気になるエージェントのOSSなどあれば教えてください!




以上の内容はhttps://blog.generative-agents.co.jp/entry/2025/02/10/142219より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14