Repository navigation
Releases
Releases · 7sen1ot/Jase-CI
Jase-CI v1.1.0
Jase-CI v1.1.0 新增多模型自适应文本红队,并改进上游接入、评测门禁和 Agent 运行效率。
主要更新
- 自适应文本红队:新增
scripts/redteam_campaign.py和configs/redteam/campaign.json。攻击方、裁判和防守方独立配置,支持 16 类策略、多轮分支搜索、独立复现、跨模型迁移和已确认攻击复用,输出 promptfoo 兼容结果。 - 上游接入:支持
ANTHROPIC_*环境变量和 Bearer 认证,增加可配置超时及输出 token 上限;空响应、截断和工具轮次耗尽明确报错,上游错误中的凭证会被脱敏。 - 安全门禁:请求和评审错误单独统计,不计为攻击成功或防守成功;未完成的自适应红队结果不能用于放行。
- 时延统计:TTFT 记录从请求发出到收到首个非空文本片段的延迟,非流式响应不再虚构 TTFT;排除空响应和截断样本,落实缺失轮次和单用例预算检查。
- Agent 性能:合并重复检索词权重,输出安全扫描按需解码、命中即停止,保持既有排名和拦截行为。
- CI:定向及全量红队改用
promptfoo redteam run,实际执行攻击生成与评测;接入新增回归测试。
验证范围
- 本地 48 项单元测试及配置校验通过。
- 550 组检索结果和 14 组输出安全处理结果与优化前一致;两套离线攻击回归符合原有预期。
- 当前提交的 GitHub Actions
validate作业已通过,包含 mock 测试、Provider 接线探针和攻击手法回放。 - 真实模型时延步骤被跳过;真实模型红队结果尚未确认。离线验证不代表真实模型已通过安全评测,项目已有的已知攻击边界仍然存在。
完整变更:v1.0.0...v1.1.0
Jase-CI v1.0.0
Jase-CI 首个正式版本:面向 LLM 应用的持续红队 + 时延基准 CI 流水线,基于 promptfoo 构建。
以一个 OpenAI 兼容的客服 Agent(真实工具调用 / RAG 检索 / 会话记忆)为被测对象,红队插件生成攻击用例,security_gate.py 按策略做确定性判定,越线即拦截流水线;另附双视角时延基准,把性能预算同样变成门禁。
主要能力
- 定向红队套件:Agent 工具滥用 / RAG 泄露 / 会话记忆三条战线
- 全量扫描:46 个红队插件,含 8 个自研创意攻击插件(完形补全、是非预言机、拼图切分、排除法纠错、错误示范、音形混淆、情绪杠杆、既成事实)
- 确定性安全门禁:整体与单插件成功率上限、6 项零容忍插件、不依赖 LLM 评审的防泄密断言,越线即拦截
- 双视角时延基准:裸模型直连 vs Agent 全链路,TTFT / 总延迟 / 吞吐,各自执行 p95 预算门禁
- 模型 / 协议无关:openai / anthropic 双协议适配器 + 可选裸模型网关(
UPSTREAM_*配置,默认 DeepSeek) - 离线可验证:mock 全链路 42 用例测试套件,无密钥仓库保持 CI 绿色
- 对抗回归 harness:直接攻击 B1-B8 / 深度攻击 C1-C5 / 考场攻击 W1-W7 / 形状混淆 S1-S3 / 资源面 R1-R2
环境要求
- Node.js 24+、Python 3.12+、promptfoo 0.123.0
- 红队与时延 job 需配置
UPSTREAM_API_KEYsecret(兼容DEEPSEEK_API_KEY回退)
验证
- 发布前本地测试套件 42/42 全部通过
许可
- 本仓库以 PolyForm Noncommercial License 1.0.0 授权(非商业使用)