Repolode
NVIDIA-NeMo

NVIDIA-NeMo/Guardrails

一个开源 Python 工具包,为基于 LLM 的对话应用添加可编程的安全护栏,控制话题、对话路径与输出。

Star
7,333
Fork
876
未关闭 Issue
270
最近提交
6小时前

这是什么?

NeMo Guardrails 是 NVIDIA 推出的开源工具包,用于在应用代码与大语言模型之间添加可编程的护栏。护栏可以约束模型讨论的话题、对特定请求的回应方式、遵循的对话路径,以及输出的风格与结构,例如抽取结构化数据。

护栏通过配置目录定义:config.yml 用于选择 LLM 与启用的 rails,Colang 文件用于描述对话流程与规则。rails 可作用于用户输入、RAG 中检索到的文本片段、工具调用与返回结果,以及模型输出,并可在各环节拒绝或改写内容。库内置了越狱与注入检测、自检式内容审核与事实核查、敏感信息脱敏等护栏,并可对接多家第三方审核与安全服务。

该库以异步为核心,同时提供同步与异步接口,输入输出格式参照 OpenAI Chat Completions。它也可以作为 HTTP 服务运行并暴露聊天补全接口,还提供包含 chat、server、evaluate 等命令的 CLI,并可在启用相应集成后与 LangChain 链路配合使用。

核心功能

  • 01可编程的输入、对话、检索、执行与输出护栏。
  • 02支持 Colang 1.0 与 2.0 两种对话建模语言。
  • 03内置越狱检测、内容审核、事实核查和敏感数据脱敏等护栏。
  • 04以异步为核心的 Python API,提供 generate 与 generate_async 方法。
  • 05可作为 HTTP 服务运行,提供 CLI 与 Docker 镜像。
  • 06可选的 LangChain 集成,以及用于评估话题护栏与幻觉问题的评估工具。

适用场景

  • 让客服聊天机器人聚焦业务话题,并遵循固定的对话流程。
  • 为 RAG 问答系统增加内容审核与事实核查。
  • 在用户输入进入 LLM 之前对个人信息进行脱敏。
  • 为面向外部用户的自定义 LLM 接口增加安全防护层。

快速上手

  1. 1

    使用 pip 安装库

    pip install nemoguardrails
  2. 2

    加载 guardrails 配置并创建 LLMRails 实例(Python API)

  3. 3

    使用消息调用 rails.generate

使用前须知

  • 运行配置需要自备 LLM 后端及其 API 凭证。
  • Colang 1.0 是默认版本,Colang 2.0 是另一套语法,需要选择配置所用的版本。

标签

常见问题

Guardrails 是什么?
一个开源 Python 工具包,为基于 LLM 的对话应用添加可编程的安全护栏,控制话题、对话路径与输出。 NeMo Guardrails 是 NVIDIA 推出的开源工具包,用于在应用代码与大语言模型之间添加可编程的护栏。护栏可以约束模型讨论的话题、对特定请求的回应方式、遵循的对话路径,以及输出的风格与结构,例如抽取结构化数据。
Guardrails 可以免费使用吗?用的什么许可证?
Guardrails 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
Guardrails 还在维护吗?
活跃维护中。Guardrails 最近一次提交是在 2026年10月20日。
Guardrails 适合用来做什么?
让客服聊天机器人聚焦业务话题,并遵循固定的对话流程。 为 RAG 问答系统增加内容审核与事实核查。 在用户输入进入 LLM 之前对个人信息进行脱敏。 为面向外部用户的自定义 LLM 接口增加安全防护层。
Guardrails 怎么安装和运行?
使用 pip 安装库: pip install nemoguardrails 加载 guardrails 配置并创建 LLMRails 实例(Python API) 使用消息调用 rails.generate
在哪里获取 Guardrails?
源代码和安装说明在 GitHub 上:https://github.com/NVIDIA-NeMo/Guardrails

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目