nikhildesilva-squareai/square1-starter-genaiadv-05-guardrail-redteam
GitHub: nikhildesilva-squareai/square1-starter-genaiadv-05-guardrail-redteam
一个面向教学的项目,通过精确率/召回率驱动的确定性分类方法,让学习者为 LLM 应用实现输入攻击检测与输出内容审核的防护栏。
Stars: 0 | Forks: 0
# Square 1 AI — 入门:为 LLM 应用添加 Guardrail 与 Red-team
# 为 LLM 应用添加 Guardrail 与 Red-team — 入门
Square 1 AI **Advanced Generative AI · Project 5** 的入门项目。为 LLM 应用构建一个输入 guardrail 和一个输出 guardrail —— 并对其进行*衡量*。不需要实时 LLM:这是基于精确率/召回率评分的确定性文本分类。
## 设置
```
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
```
## 获取数据
从你的项目页面 (Resources → Dataset) 下载数据集到 `dataset/` 目录:
`inputs_train.csv` (已标注), `inputs_test.csv` (留出集,不含标签), `outputs.csv` (已标注的模型回复)。请查看项目页面上的数据字典。
## 你的任务
三个测试定义了契约——在你实现 `guardrails/detect.py` 和 `guardrails/metrics.py` 中的存根之前,它们都会失败:
```
pytest -q
python -m guardrails.cli dataset/inputs_test.csv # writes outputs/predictions.csv
```
Pipeline:`classify_input` (攻击 vs 正常) + `moderate_output` (不安全 vs 安全) + `precision_recall_f1`。在 `inputs_train.csv` 上进行调优,然后运行 CLI 为留出集生成 `outputs/predictions.csv`。
**陷阱:** 正常的相似文本会无辜地提到“ignore”和“instructions”。单一关键词规则会错误标记它们并拖垮你的精确率。结合多个弱信号(针对模型的覆盖*指令*、角色扮演越狱框架、系统提示词泄露请求)。目标门槛是在留出集上达到 **F1 ≥ 0.85**。
完整的简介、评分标准和参考资料在你的 Square 1 项目页面上。MIT 许可证。
标签:AI安全, Apex, Chat Copilot, DLL 劫持, Python, 人工智能, 内容审核, 大语言模型, 安全规则引擎, 文本分类, 文档结构分析, 无后门, 机器学习, 用户模式Hook绕过, 逆向工具