promptfoo/promptfoo

Test your prompts, agents, and RAGs. Red teaming/pentesting/vulnerability scanning for AI. Compare performance of GPT, Claude, Gemini, DeepSeek, and more. Simple declarative configs with command line and CI/CD integration. Used by OpenAI and Anthropic.

Promptfoo:LLM 评估与红队演练

是什么 – Promptfoo 是一个开源命令行工具(以及 Node.js 库),可让您 评估 大型语言模型(LLM)驱动应用的行为,并对它们进行 红队演练 以发现安全相关缺陷。它在本地运行,支持任意 LLM 提供商(OpenAI、Anthropic、Azure、Bedrock、Ollama 等),并生成结构化结果,您可在 Web UI 中查看,或输入 CI 流水线。

核心功能

  • 自动化提示测试 – 定义测试用例(输入、期望输出、评分函数),并在一个或多个模型上运行。
  • 红队 / 漏洞扫描 – 提供对抗性提示,探测越狱、隐私泄露或政策违规;Promptfoo 会报告发现结果。
  • 模型对比 – 并排矩阵可让您直观查看不同提供商对相同测试的响应差异。
  • CI/CD 集成 – 可将结果导出为 JSON,使用内置的 GitHub Actions 工作流,或从脚本中调用库。
  • 拉取请求代码扫描 – 集成 GitHub 代码扫描 API,在合并前标记高风险的 LLM 使用。
  • 仅本地执行 – 所有提示均保留在您的机器上;仅向 LLM 提供商发起 API 调用。

使用方式

  1. 全局安装(npm i -g promptfoo),通过 Homebrew,或使用 pip/npx。
  2. 设置您的提供商标记,例如 export OPENAI_API_KEY=…。
  3. 初始化示例配置(promptfoo init --example getting-started)。
  4. 运行 promptfoo eval 执行测试,然后运行 promptfoo view 打开基于浏览器的结果仪表板。

适用人群 – 开发聊天机器人、代理或任何依赖 LLM 输出的应用程序,并需要系统化测试、安全加固或合规报告的开发者。

许可证与社区 – MIT 许可证,现为 OpenAI 一部分但仍为开源。拥有活跃的 Discord 社区和贡献指南。


所有细节均直接取自仓库的 README。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目