Skip to content

Releases

Jase-CI v1.1.0

Choose a tag to compare

@7sen1ot 7sen1ot released this 13 Nov 16:46

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 接线探针和攻击手法回放。
  • 真实模型时延步骤被跳过;真实模型红队结果尚未确认。离线验证不代表真实模型已通过安全评测,项目已有的已知攻击边界仍然存在。

查看本次 CI 运行

完整变更:v1.0.0...v1.1.0

Jase-CI v1.0.0

Choose a tag to compare

@7sen1ot 7sen1ot released this 25 Oct 19:08

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_KEY secret(兼容 DEEPSEEK_API_KEY 回退)

验证

  • 发布前本地测试套件 42/42 全部通过

许可