NVIDIA NeMo Guardrails
NVIDIA NeMo Guardrails 是开源的可编程护栏工具包,用于给基于 LLM 的对话应用添加护栏。护栏(rails)是控制模型行为的显式规则:不谈论敏感话题、遵循预设对话路径、强制特定语言风格、掩码敏感数据,或拒绝不安全输入输出。它围绕 Colang 这一小型领域特定语言构建,是 LLM 安全与可信领域被引用最多的框架之一。
核心功能
- 五类护栏:输入护栏过滤用户输入,对话护栏引导 LLM 如何被提示,检索护栏过滤 RAG 分块,执行护栏检查工具调用,输出护栏过滤模型响应。
- Colang 流:用
*.co文件定义对话行为,写法接近伪代码,覆盖越狱检查、敏感数据掩码、事实自检与审核。 - 漏洞防护:内置针对越狱、提示注入等常见 LLM 弱点的机制,并提供 LLM 漏洞扫描评估工作流。
- 模型无关:通过可插拔引擎层支持 OpenAI 模型、Llama 2 等,并可选集成 LangChain。
- 异步优先:核心机制使用 Python 异步模型,公开 API 同时提供同步与异步版本。
- 轻量接入:用
LLMRails.generate包裹现有聊天端点,保持 OpenAI 兼容的输入输出格式。
适用场景
- RAG 问答:在检索文档之上强制事实核查与输出审核。
- 垂直领域助手:让聊天机器人保持在主题内并遵循设计的对话流程。
- 生产 LLM 端点:为自定义 LLM 端点添加护栏,让客户交互更安全。
- 智能体工具安全:用执行护栏限制智能体可调用的工具与服务。
定价方案
NeMo Guardrails 在 Apache-2.0 协议下免费开源。你只需为受护栏保护的应用消耗的底层 LLM API 付费。
快速开始
- 用
pip install nemoguardrails安装(Python 3.10-3.13)。 - 创建护栏配置目录,包含
config.yml与 Colang 的*.co文件。 - 加载配置并包裹 LLM 调用:
config = RailsConfig.from_path("PATH/TO/CONFIG"),然后rails = LLMRails(config)。 - 用 OpenAI 兼容的消息列表调用
rails.generate(messages=...)。
常见问题
什么是 Colang?
Colang 是 NeMo Guardrails 用来定义护栏的小型 DSL。类似 define flow\n user express greeting\n bot express greeting 的流读起来几乎像规格说明,官方预置示例覆盖越狱检查与审核。
支持开源模型吗?
支持。引擎层可插拔,除了 OpenAI API 模型外,还支持 Llama 2 等模型。
NeMo Guardrails 和扫描器一样吗?
不一样。NeMo Guardrails 是运行时控制层,位于应用与 LLM 之间。要主动发现漏洞,可与 Garak 之类的扫描器配合使用。
替代方案
- Garak:NVIDIA 的 LLM 漏洞扫描器,部署护栏前先找出漏洞。
- Llama Guard 3:Meta 的输入输出审核分类模型。
- Langfuse:LLM 应用可观测性与评估,补充运行时护栏。
使用技巧
- 先扫描再加护栏:用 Garak 发现弱点,再配置护栏封堵常见攻击路径。
- 从最小集开始:先定义一两个输入与输出护栏,再根据失败模式扩展对话与执行护栏。
- 与权限分层:护栏过滤模型说什么,独立的访问控制仍然限制应用可触达的工具与数据。
总结
NVIDIA NeMo Guardrails 是被引用最多的开源可编程 LLM 护栏框架,整合了干净的 Colang DSL、五类护栏与文档化的漏洞防护工作流。任何需要显式、可审计地控制模型行为的生产 LLM 或智能体应用,它都是免费且久经考验的起点。
评论
还没有评论。成为第一个评论的人!
相关工具
Garak
garak.ai
NVIDIA 开源 LLM 漏洞扫描器,数十个插件与数千条提示,探测越狱、提示注入与数据泄露,是模型与智能体安全测试的行业标准起点。
LangChain
www.langchain.com
LangChain 是一个专为语言模型驱动应用开发的高效框架,为开发者提供全面的解决方案,从组件接口,参考架构,到展示平台均一应俱全。
LlamaIndex
www.llamaindex.ai
LlamaIndex是领先的LLM应用开发框架,提供数据连接器、索引结构化、查询引擎和聊天引擎等完整工具链,支持从API、PDF、SQL等多源导入数据,简化RAG应用开发,实现知识库问答和智能助手等场景。
相关洞察
我把 Obsidian 接入 OpenClaw 后,它开始帮我做决策
当 Obsidian 不再只是记笔记,而是接入 OpenClaw 之后,它开始帮我整理信息、连接上下文、推动判断,甚至参与真实决策。

Anthropic Subagent:多智能体时代的架构革命
深入解析 Anthropic 的多智能体架构设计。了解如何通过 Subagent 突破上下文窗口限制,实现性能提升 90%,以及多智能体系统在 Claude Code 中的实际应用。
别再把 AI 助手塞进聊天框了:Clawdbot 选错了战场
Clawdbot 很方便,但将它放在 Slack 或 Discord 里操控,是从一开始就错的设计选择。聊天工具不是用来操作任务的,AI 也不是用来聊天的。