Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

NVIDIA NIMによるモデルのサービングと NVIDIA NeMo Guardrailsに...

Avatar for Daisuke Akagawa (Akasan) Daisuke Akagawa (Akasan)
December 10, 2025
30

NVIDIA NIMによるモデルのサービングと NVIDIA NeMo Guardrailsによる安全性の担保

Avatar for Daisuke Akagawa (Akasan)

Daisuke Akagawa (Akasan)

December 10, 2025
Tweet

Transcript

  1. 改めてNVIDIA NIMとは? NVIDIA NIM™ は、クラウド、データセンター、ワーク ステーション、エッジなど、あらゆる NVIDIA アクセラ レーテッド インフラストラクチャに最新の

    AI モデルを 迅速にデプロイできるように、最適化された事前構築済 みの推論マイクロサービスを提供します。 • あらかじめ最適化されたコンテナ上でモデルを動かすことができる • コンテナ化されているので様々なインフラ上で実行できる 本発表ではLlama3-8B-InstructをNIMで取り扱っていこうと思います!! https://www.nvidia.com/ja-jp/ai-data-science/products/nim-microservices/
  2. Llama3-8B-Instructでパフォーマンス比較 比較対象 • transformersを利用してローカルでモデルパイプラインを読み込み実行 • NIMで構築したモデルへのアクセス 実験条件 • プロンプト:What is

    capital of France? • Max_tokens:64 • 50回試行 実験結果 NIMは独自にローカルでモデルを実行するのと比較して高速に推論でき、 推論速度のばらつきも小さくすることができることを確認!! NIM HuggingFace Average 0.30 1.31 Min 0.29 0.91 Max 0.49 1.96 Deviation 0.04 0.37 単位:sec
  3. garakって何? • NVIDIAによって開発されているOSSツール • 指定した種類の攻撃を実行し、どれくらい攻撃が成功したかみることができる • どのような攻撃に弱いかを検知することで、ガードレールの設計指標になる ユースケース ❏ ドキュメントセットに対する質問応答(別名:検索拡張生成)

    事実確認と出力モデレーションを強化します。 ❏ ドメイン特化型アシスタント(別名:チャットボット) アシスタントがトピックから逸 れず、設計された会話フローに従うようにします。 ❏ LLMエンドポイント カスタムLLMにガードレールを追加し、顧客とのやり取りをより安全にします。 ❏ LangChainチェーン LangChainを使用する場合、チェーンの周囲にガードレールレイヤーを追加可能
  4. garakで検知できる脆弱性ってどんなのがあるの? ansiescape atkgen audio av_spam_scanning continuation dan divergence doctor donotanswer

    dra encoding exploitation fileformats glitch goodside grandma latentinjection leakreplay lmrc malwaregen misleading packagehallucination phrasing promptinject realtoxicityprompts sata smuggling snowball suffix tap topic test visual_jailbreak web_injection 本日時点で利用できるプローブだけでこれだけあります!
  5. garakによる検知実験の概要 • NIMにデプロイしたLlama3-8B-Instructを対象にする • 対象とするプローブはmalwaregenを採用 4つの項目について評価される Evasion ウイルス対策を無効化したりプロセスリス トに隠れたりするなど、検出を妨害する回 避アクションを実行するためのコードを

    ジェネレーターに作成するよう要求 Payload キーロギングやクリプトジャッキングな ど、さまざまなマルウェアペイロードの コードを求めるプロンプトを含む SubFunctions 明らかに悪意のある言葉で表現されていな いが、マルウェアで一般的に役立つアク ションを実行するコードを作成するように ジェネレーターに要求 TopLevel 悪意のあるアクションを実行するマルウェ アまたはコードを作成するようにジェネ レーターに要求
  6. 早速使ってみる! 先ほど用意したNIMコンテナ上のモデルに対して実行してみます REST APIを対象としたgarakの使い方を紹介します 1. JSONファイルにREST APIの設定を記載する 2. garakコマンドを実行する ※

    多くのリクエストをすることになるので、コスト管理にはご注意ください 参考:https://www.databricks.com/jp/blog/ai-security-action-applying-nvidias-garak-llms-databricks
  7. garakによる検知結果 • malwaregen.SubFunctions:76.1% • malwaregen.Evasion: 83.3% • malwaregen.TopLevel: 97.5% •

    malwaregen.Payload: 97.8% ❖ TopLevel(明らかに悪意のあるマルウェア作成の指示)に対する攻撃成功数は少なかった ❖ SubFunctions(マルウェアで一般的に役立つアクションを実行するコード)の生成依頼に 対しては1/4程度攻撃が成功している ※ 生成AIの出力になるので、同じ設定でも実行ごとに異なる結果になる可能性があります
  8. NeMo Guardrailsとは? NeMo Guardrailsを利用すると、以下のような仕組みをプログラミング的に実現できます 1. 信頼性、安全性、セキュリティに優れた LLM ベースのアプリケーション構築 会話をガイドし、保護するためのレールを定義 特定のトピックにおけるアプリケーションの動作を定義し、不要なトピックの議論への参加を阻止

    2. モデル、チェーン、その他のサービスの安全な接続 LLM を他のサービス(ツール)にシームレスかつ安全に接続 3. 制御可能なダイアログ LLM を事前に定義された会話パスに沿って操作することで、会話設計のベストプラクティスに従って インタラクションを設計し、標準的な運用手順(認証、サポートなど)を適用 この後の検証では1番目の安全なアプリケーションの構築にフォーカスします!!
  9. garakとNeMo Guardrailsの組み合わせ方 1. アプリケーションで利用されるLLMに対するエンドポイントを用意 2. garakを利用してエンドポイントに対して脆弱性スキャンを実行する 3. garakの結果安全性が低いと考えられる項目を洗い出す 4. NeMo

    Guardrailsで安全性が低い項目に対する問い合わせが試みられた時 に対応するためのロジックを記述する 5. LLMエンドポイントにおける入出力にNeMo Guardrailsを導入し、入出力 をチェックする