Nemo Guardrails

核心参数与统计

Nemo Guardrails 是一个面向 LLM 应用的可编程安全护栏工具包,由 NVIDIA 开源并维护,官方定位为"为基于 LLM 的对话应用轻松添加可编程护栏"。它不直接提供聊天界面或模型推理,而是作为中间件层嵌入应用与 LLM 之间,通过五类护栏机制对输入、输出、对话流程、检索结果和执行动作进行过滤与约束。

项目 公开信息
官方定位 面向 LLM 对话应用的可编程护栏工具包
护栏类型 Input、Output、Dialog、Retrieval、Execution
配置语言 Colang 1.0 / 2.0
部署形态 Python 库CLI、Server(Docker)
开源许可 Apache 2.0
GitHub Stars 约 6,700
GitHub Forks 769
贡献者 126
最新版本 v0.23.0(2026-07-02)
Python 版本 3.10 / 3.11 / 3.12 / 3.13
支持平台 Web(Server API)、Desktop(CLI)

部署形态:Nemo Guardrails 提供 Python 库集成、独立 Server 容器和 CLI 三种使用方式。Python 库适合嵌入现有代码,Server 模式适合微服务架构隔离,CLI 模式适合开发期快速验证。

护栏体系:五类护栏分别对应 LLM 应用的不同有节——输入层(用户请求过滤)、输出层(模型回复审核)、对话层(对话流程控制)、检索层(RAG 块级过滤)、执行层(工具调用核验),形成从请求到响应的全链路安全覆盖。

社区活跃度:6,700+ Stars、769 Forks、126 名贡献者,反映该项目已形成稳定的开源生态,社区贡献的集成包括 PolicyAI、CrowdStrike、Cisco、Trend Micro、Pangea 等第三方安全服务。

用户与市场认可

Nemo Guardrails 的市场价值体现在 NVIDIA 的品牌背书与开源社区的双重驱动,定位于 LLM 安全这一快速增长的合规刚需领域。

学术认可:该项目有 EMNLP 2023 系统展示论文(Rebedea et al., 2023),在学术界有公开引用记录,说明其架构设计经过同行评议。

社区采纳:GitHub 数据显示 6,700+ Stars 和 126 名贡献者,开发活动密集——最新提交显示 16 小时前仍有代码更新。Issues 与 Pull Requests 保持在双位数(111 Issues / 64 PRs),社区问题反馈与修复活跃。

企业生态融合:Nemo Guardrails 已与多家安全厂商完成集成对接,包括 ActiveFence、PolicyAI、CrowdStrike AIDR、Cisco AI Defense、Trend Micro Vision One、Pangea AI Guard、GuardrailsAI、Clavata 等,覆盖内容审核、威胁检测PII 脱敏等企业级安全场景。

落地前提:Nemo Guardrails 的价值取决于使用者是否已有或正在构建 LLM 应用。若团队尚未接入任何 LLM 能力,护栏工具包无法独立产生收益。它更适合"已有 LLM 推理链路、需要补充安全治理层"的团队。

成本优势

  • C 端/个人:通常提供免费版体验核心功能,高频使用需订阅付费套餐。
  • API/开发者:按调用量计费,适合灵活集成到自有系统中的开发团队。
  • 企业/私有化:需联系商务获取定制化报价和部署方案。具体价格以官方实时定价页面为准。

主要功能

Nemo Guardrails 的核心能力围绕"五类可编程护栏 + Colang 配置语言 + 第三方安全集成"展开:

  • Input Rails(输入护栏):在用户请求到达 LLM 前执行审核,可拒绝输入(如检测到越狱提示)、脱敏敏感数据(PII 替换)、改写输入内容。支持正则匹配、分类器模型API 第三方服务等多种检测方式。
  • Output Rails(输出护栏):对 LLM 生成的回复做事后审核,可拒绝输出(如检测到有害内容)、改写回复(如移除敏感数据)、事实核查。0.23.0 新增上下文膨胀检测,可拦截过长/重复/低熵/填充内容。
  • Dialog Rails(对话护栏):通过 Colang 语言定义对话流约束,控制 LLM 在预设路径内响应,防止偏离主题或进入非授权话题。支持多轮对话的状态管理。
  • Retrieval Rails(检索护栏):在 RAG 场景中,对检索到的文档块进行逐块审核,可在送入 LLM 前拒绝或改写特定块,防止敏感信息被纳入生成上下文。
  • Execution Rails(执行护栏):对工具/函数的调用参数与返回值进行校验,确保 LLM 调用的外部动作在安全边界内执行。
  • Colang 配置语言:类 Python 语法的专用领域语言,用于定义护栏规则、对话流和用户意图。同时支持 Colang 1.0(默认)与 Colang 2.0。
  • Guardrails Server:OpenAI 兼容的 HTTP API 服务,支持 /v1/chat/completions、/v1/models、/v1/checks 等端点,可作为现有应用的直接替换层。
  • 内置护栏库:预置越狱检测、内容安全、话题安全、事实核查、幻觉检测PII 脱敏等护栏,可直接启用。

模型与版本演进

持续迭代更新,最新版本引入了性能优化和新功能。历史版本信息可通过官方发布页查看。 暂无完整公开的版本演进时间线,建议关注官方公告了解功能更新节奏。

技术优势

Nemo Guardrails 的技术差异化来自其"分层护栏 + 可编程流程控制 + 第三方生态集成"的架构设计:

五层护栏全链路覆盖:Input → Dialog → Retrieval → Execution → Output 五层护栏依次串联,每一层均可独立配置拦截/修改/放行策略。这种分层设计避免了单一检测点的盲区——例如仅靠输出护栏无法阻止用户输入中的越狱尝试,而输入+对话+输出三层联合可形成更完整的防御面。

Colang 可编程对话控制:与其他仅提供固定类别审核的护栏方案不同,Colang 允许开发者用类似 Python 的 DSL 定义自定义对话流、用户意图和机器人行为。这使得护栏不再只是"好/坏"二元分类,而是可以设计复杂的多轮交互约束(如必须先认证、后提问)。

IRails 并行引擎:从 v0.21.0 引入的 IORails 引擎支持输入护栏与 LLM 推理并行执行(即 speculative generation),在非流式模式下将输入护栏的延迟隐藏到 LLM 响应时间内,降低了端到端感知延迟。v0.22.0 将并行能力扩展到流式输出护栏。

可选依赖架构:LangChain 从 v0.22.0 起从核心依赖降级为可选,内置基于 httpx 的 OpenAI 兼容客户端。这一变化减少了依赖冲突风险,也让完全不需要 LangChain 的场景获得更轻量的部署包。v0.23.0 进一步将 wheel 体积缩减约 10 倍。

推理模型兼容:v0.20.0+ 支持 OpenAI 推理模型(如 o-series),自动处理 temperature、stop、max_tokens 等参数的兼容性差异,使护栏层不受底层模型类型变更的影响。

如何使用

Nemo Guardrails 提供三种使用路径,适合不同成熟度的团队:

使用方式 适合场景 特点
Python 库(pip) 已有 LLM 应用代码,需要嵌入护栏 最小改动,通过 LLMRails.generate() 替代原 LLM 调用
Guardrails Server(CLI/Docker) 微服务架构,希望护栏独立部署 OpenAI 兼容 API,可作为代理层透明接入
Docker 容器 生产有境隔离、资源管控 完整 Dockerfile,可绑定配置文件与自定义动作

Python 库快速接入示例:

from nemoguardrails import LLMRails, RailsConfig

# 加载护栏配置
config = RailsConfig.from_path("PATH/TO/CONFIG")
rails = LLMRails(config)

# 通过护栏层调用 LLM
completion = rails.generate(
    messages=[{"role": "user", "content": "Hello world!"}]
)

Server 启动示例:

# 启动护栏服务器
nemoguardrails server --config PATH/TO/CONFIGS --port 8000

# 使用 OpenAI 兼容 API
curl -X POST http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "config_id": "sample",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

典型护栏配置文件结构(config.yml):

models:
  - type: main

    engine: openai
    model: gpt-4

rails:
  input:
    flows:
      - check jailbreak
      - mask sensitive data on input
  output:
    flows:
      - self check facts
      - self check hallucination

落地通常按"先局部后全面"推进:先在 1-2 个低风险 LLM 能力点(如摘要生成、内容分类)上启用输入+输出护栏,验证误报率与延迟影响,再逐步扩展到对话流程和高风险场景(如用户身份认证、支付相关交互)。首次接入时尤其需要关注护栏的假阳性率——过度拦截会显著影响用户体验。

产品定价

Nemo Guardrails 本身是开源项目,采用 Apache 2.0 许可,无软件购买费用。成本主要体现在推理层和运维层:

  • C 端/个人开发者:pip install nemoguardrails 免费使用全部核心功能和内置护栏库。额外的 LLM 推理费用(护栏调用的模型)由开发者自行承担。
  • 开发者/自托管:无许可费,基础设施成本(GPU/CPU 服务器、存储、网络)、运维人力、自定义护栏规则开发成本。建议至少准备 2-4 周用于护栏配置调优与误报率收敛。
  • 企业生产部署:若使用 NVIDIA Build 端点进行护栏推理,需以官方实时定价页面为准;完全自托管则无外部推理费用。企业需额外考虑 SSO 集成、审计日志SLA 等条款,这些需与 NVIDIA 商务团队确认。

应用场景

Nemo Guardrails 的适用场景集中在"已有或正在构建 LLM 应用且需要安全合规治理"的领域:

  • 客户支持与对话机器人:在客服 AI 中部署输入护栏(过滤恶意/越狱请求)和输出护栏(确保回复符合公司政策、不含敏感信息),减少人工审核拦截成本。核验重点:护栏误报率对首响时长的影响。
  • RAG 知识库问答:启用检索护栏对检出的文档块做逐块安全审核,防止员工在内部知识库查询中意外暴露机密信息。核验重点:块级护栏对检索召回率的影响。
  • 金融合规与法务审核:在合同审查、合规问答等高风险场景中,启用全链路护栏(输入+对话+输出),配合第三方安全 API(如 ActiveFence、PolicyAI)做多级过滤。核验重点:多层护栏串联后的端到端延迟。

适用人群

  • LLM 应用开发者:需要为自建的 AI 应用添加安全层的团队,可通过 Python 库或 Server 快速集成。Colang 学习成本约 1-3 天。
  • AI 安全与合规工程师:负责制定和落地 AI 应用安全策略的角色,可利用 Colang 将安全策略编码为可执行的护栏规则,替代人工审核 SOP。
  • 平台架构师 / SRE:需要将 LLM 安全层的治理统一化的团队,可通过 Guardrails Server 实现护栏与业务逻辑的架构解耦。

不适配人群:未使用任何 LLM 能力的团队(护栏无意义);需要"开箱即用、零配置"的安全方案的个人用户(需要一定的开发与配置投入);对端到端延迟极其敏感的场景(每次护栏推理增加 200-1000ms 不等,取决于模型与部署方式)。

总结与展望

Nemo Guardrails 通过五类可编程护栏 + Colang 配置语言 + 开源许可的组合,为 LLM 应用安全治理提供了一个可定制、可审计、可扩展的中间件方案。它不是"一键开启"的安全开关,而是一套需要投入配置与调优的护栏框架。从 v0.14.1 到 v0.23.0 的密集迭代(约 4-6 周一版)可见 NVIDIA 在该领域的持续投入,尤其是 IORails 并行引擎和 LangChain 解耦两个方向,降低了实际部署中的延迟与依赖风险。

当前限制与不确定项:护栏的误报率(假阳性)和漏报率(假阴性)无公开基准数据,团队需自行在目标场景中做压力测试;内置护栏库的适用性需结合实际业务场景评估,官方文档明确表示"内置护栏可能不适用于所有生产场景";NVIDIA Build 端点的生产授权条款与价格尚未公开稳定展示;Colang 2.0 仍在功能完善阶段,生产有境建议以 Colang 1.0 为主。

采购与采用建议:建议新团队先通过 pip install nemoguardrails + 官方示例配置在 1-2 周内完成 PoC,重点评估护栏推理延迟、误报率与 Colang 配置是否满足业务规则复杂度。企业采购前需与 NVIDIA 商务团队确认:生产有境下的 NVIDIA Build 许可条款、私有化部署的架构支持边界、以及 LangChain 集成在目标 LLM 提供商上的兼容性。

相关工具:、

Nemo Guardrails 的版本演进

从 GitHub Releases 公开信息看,Nemo Guardrails 的版本迭代节奏约为 4-6 周一版,0.14.1 到 0.23.0 的演进主线可归纳为三个阶段:

基础能力搭建期(v0.14.1 - v0.17.0)

  • v0.14.1(2025-07-09):越狱检测配置简化LLMRails 构造器修复。
  • v0.15.0(2025-08-08):并行护栏执行、流式输出护栏OpenTelemetry 追踪基础设施。
  • v0.16.0(2025-09-05):OpenTelemetry 语义约定追踪GuardrailsAI 与 Pangea 社区集成。
  • v0.17.0(2025-10-10):工具调用直通RunnableRails 重写、工具输入/输出护栏。

引擎重构与生态拓展期(v0.18.0 - v0.20.0)

  • v0.18.0(2025-11-07):BotThinking 推理痕迹护栏、多嵌入提供商Cisco AI Defense 集成LFU 缓存。
  • v0.19.0(2025-12-04):LangChain v1.x 兼容。
  • v0.20.0(2026-01-22):推理内容安全模型GLiNER PII 检测、多语言拒绝消息。

IORails 与优化期(v0.21.0 - v0.23.0)

  • v0.21.0(2026-03-12):IORails 优化引擎(并行非流式护栏)、OpenAI 兼容 Server、LangChain Agent 中间件。
  • v0.22.0(2026-05-23):IORails 流式输出护栏OTEL 追踪LangChain 解耦为可选、推理模型支持。
  • v0.23.0(2026-07-02):Hugging Face 分类器护栏、上下文膨胀检测Polygraf PII 检测NumPy 搜索替代 Annoy、wheel 包缩减 10 倍。