royalpinto007/awesome-llm-guardrails
GitHub: royalpinto007/awesome-llm-guardrails
一个自动更新的 LLM 应用防护机制(guardrails)精选资源列表,按输入、输出、生成约束和红队测试四个维度分类整理开源工具。
Stars: 0 | Forks: 0
# Awesome LLM Guardrails [](https://awesome.re) [](#贡献指南)
LLM 会自信地做错事:执行隐藏在文档中的指令,将客户的 PII 粘贴到摘要中,返回让你的解析器崩溃的 JSON,或者顺从“忽略你的指令”的要求。**Guardrails** 是你围绕模型放置的检查机制——针对输入、输出或生成过程本身——从而拦截糟糕的情况,而不是将其交付出去。本列表收集了用于实现此目的的开源工具。
**🔎 想要浏览和筛选? → [llm-guardrails.agentpostmortem.com](https://llm-guardrails.agentpostmortem.com)**
## 从这里开始:Guardrail 的四个位置
一旦你了解了每个工具在 pipeline 中的位置,大多数关于 guardrail 的困惑就会消失。
1. **输入 guardrails** — 筛选进入模型的内容。Prompt 注入和越狱检测,在组装 prompt 之前剥离 PII,主题/允许列表检查。在攻击生效之前将其阻止。
2. **输出 guardrails** — 筛选输出的内容。毒性/内容过滤器,PII 脱敏,幻觉/事实性检查,“它是否在应该拒绝时拒绝了”。在糟糕的响应呈现给用户之前将其阻止。
3. **生成时 guardrails** — 约束模型的生成方式。语法/JSON schema/正则表达式约束解码,从而使无效输出从根本上不可能发生(而不是事后过滤)。
4. **离线红队测试** — 在投入生产之前攻击你自己的系统。漏洞扫描器和对抗性测试套件会率先发现越狱漏洞,以便你可以为其添加一道防线。
**规则:** 输入 + 输出防线是运行时防御(它们会增加延迟,而攻击者只需要一个缺口);生成时约束是保证(无效状态不会发生);红队测试是你发现真正需要哪些防线的方法。大多数严肃的系统会同时使用这四种。
**19 款开源 guardrail 工具**,每周自动刷新。Star 数量更新于 **2026-07-30**。
### Guardrail 框架
- [Guardrails AI](https://github.com/guardrails-ai/guardrails) `★ 7.2k` — 为 LLM 添加输入/输出验证器和结构化保证,并提供包含可重用验证器的中心。
- [NeMo Guardrails](https://github.com/NVIDIA/NeMo-Guardrails) `★ 6.8k` — 用于 LLM 对话系统的可编程防线,使用专用建模语言定义(由 NVIDIA 开发)。
- [LLM Guard](https://github.com/protectai/llm-guard) `★ 3.2k` — 用于 LLM 交互的安全工具包:包含针对输入和输出的 PII、毒性、prompt 注入等扫描器。
- [LangKit](https://github.com/whylabs/langkit) `★ 994` — 用于监控 LLM 的开源工具包——从 prompt 和响应中提取安全与质量信号(由 WhyLabs 开发)。
### Prompt 注入与越狱防御
- [Llama Guard / PurpleLlama](https://github.com/meta-llama/PurpleLlama) `★ 4.3k` — Meta 的 LLM 安全套件:Llama Guard(输入/输出分类),Prompt Guard(注入检测)和 CyberSecEval 基准测试。
- [Rebuff](https://github.com/protectai/rebuff) `★ 1.5k` — 一种自我强化的 prompt 注入检测器,分层集成了启发式算法、LLM 检查、已知攻击的向量数据库和 canary token。
- [Vigil](https://github.com/deadbits/vigil-llm) `★ 492` — 在 prompt 注入、越狱和其他有风险的输入到达你的模型之前将其检测出来。
- [Injection Arena](https://github.com/royalpinto007/injection-arena) `★ 0` — 一款可自托管的夺旗游戏,用于学习针对一系列 guardrails 的 prompt 注入防御。
### 结构化与受约束输出
- [Guidance](https://github.com/guidance-ai/guidance) `★ 21.7k` — 用于约束生成的 guidance 语言——交织控制流、正则表达式和语法,使模型只能生成有效的输出。
- [Outlines](https://github.com/dottxt-ai/outlines) `★ 15.4k` — 结构化生成:强制输出匹配 JSON schema、正则表达式或语法,保证数据结构。
- [Instructor](https://github.com/jxnl/instructor) `★ 13.7k` — 通过 Pydantic 为 LLM 提供结构化输出——不断验证并重试,直到响应与你的模型匹配。
- [Jsonformer](https://github.com/1rgs/jsonformer) `★ 4.9k` — 生成结构化 JSON 的可靠方法:仅对内容 token 进行采样,结构是固定的。
### PII 与隐私
- [Presidio](https://github.com/microsoft/presidio) `★ 10.3k` — 检测、脱敏、掩码和匿名化文本及图像中的 PII——隐私 guardrails 的标准(由 Microsoft 开发)。
### 毒性与内容安全
- [Detoxify](https://github.com/unitaryai/detoxify) `★ 1.3k` — 训练用于对文本中的毒性、威胁和仇恨进行评分的模型——一种轻量级的内容安全过滤器。
### 红队测试与漏洞扫描
- [garak](https://github.com/NVIDIA/garak) `★ 8.6k` — LLM 漏洞扫描器——在发布前探测模型是否存在越狱、注入、数据泄露和毒性问题(由 NVIDIA 开发)。
- [Giskard](https://github.com/Giskard-AI/giskard) `★ 5.7k` — 针对 LLM agent 的开源扫描工具,可自动暴露安全与质量漏洞。
- [DeepTeam](https://github.com/confident-ai/deepteam) `★ 2.3k` — 用于针对 40 多种漏洞和攻击方法对 LLM 和 AI agent 进行红队测试的框架。
### 模型与供应链安全
- [ModelScan](https://github.com/protectai/modelscan) `★ 754` — 扫描模型文件以防范序列化攻击——用于你下载的权重的供应链 guardrail。
- [skill-audit](https://github.com/royalpinto007/skill-audit) `★ 0` — 针对 agent skill 的安全扫描器:在你安装 skill 之前标记 prompt 注入、危险的 shell、密钥访问和数据泄露。
## 相关资源
- [awesome-agent-evals](https://github.com/royalpinto007/awesome-agent-evals) — 评估的对应部分:了解你的 agent 是否真的有效,以及它在明天是否依然有效。
## 许可证
[](https://creativecommons.org/publicdomain/zero/1.0/)
在法律允许的范围内,贡献者已放弃与本作品相关的所有版权及邻接权利。
标签:AI安全, Chat Copilot, DLL 劫持, Naabu, PII脱敏, 内容安全, 后端开发, 大语言模型, 提示注入防御, 源代码安全, 防御加固