promptfoo

一条命令测试你的提示词和模型,防漏洞防降级。

开源 🏷️基础免费,高级付费 ✅ 目前可打开 基础设施 🍴 复刻 2678 🐛 待处理 931 👀 关注 75
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 26936
维护状态 活跃
是否开源 开源
定价模式 🏷️基础免费,高级付费 支持限时试用 · 开源核心免费,提供云端托管服务,有免费额度,付费解锁更多功能。

项目预览

promptfoo 项目界面预览图
图片来源:项目官网

项目数据

分类基础设施
开发团队promptfoo
定价模式🏷️基础免费,高级付费
价格说明开源核心免费,提供云端托管服务,有免费额度,付费解锁更多功能。
访问状态✅ 目前可打开
是否开源是
开源协议MIT
主要语言TypeScript
技术栈/模型ci,ci-cd,cicd,evaluation,evaluation-framework,llm,llm-eval,llm-evaluation,llm-evaluation-framework,llmops,pentesting,prompt-engineering,prompt-testing,prompts,rag,red-teaming,testing,vulnerability-scanners
GitHub 星标★ 26936
上线时间2023-04-28 00:00:00
代码更新2026-11-07
仓库体积794.4 MB
本站数据更新2026-11-08
维护状态活跃
收录时间2026-08-09
浏览次数6

项目介绍

promptfoo 是一个开源的 LLM 评估与红队测试框架,用于系统化测试提示词、智能体(agents)和 RAG 应用。它解决了 AI 应用开发中缺乏标准化评估手段的问题,帮助开发者量化比较不同模型(GPT、Claude、Gemini、DeepSeek 等)和提示词变体的性能差异。核心能力包括:声明式 YAML 配置定义测试用例和断言,支持自动化运行与 CI/CD 集成;内置红队测试和漏洞扫描功能,可探测提示注入、越狱等安全风险;提供命令行工具和 Web 界面,便于查看测试结果和性能对比。被 OpenAI 和 Anthropic 等公司采用,适合在开发、测试和生产部署前对 LLM 应用进行持续回归验证。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 26936

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 6 步

环境要求

  • Node.js >= 22.22.0(推荐 Node.js 24 LTS)
  • 可用的 LLM 提供商 API Key(如 OpenAI)
  • 终端可执行 npm / npx 命令

安装与启动步骤

  1. 1安装 promptfoo

    全局安装 CLI,安装后即可在任意目录使用 promptfoo 命令。

    npm install -g promptfoo
  2. 2初始化示例

    用内置的 getting-started 示例生成配置文件和目录,便于快速上手。

    promptfoo init --example getting-started
  3. 3设置 API Key

    大多数 LLM 提供商需要 API Key,通过环境变量传入,注意换成你自己的真实 Key。

    export OPENAI_API_KEY=sk-abc123
  4. 4进入示例目录

    切换到 init 生成的 getting-started 目录,后续命令都在此目录执行。

    cd getting-started
  5. 5运行评估

    按 YAML 配置执行测试用例与断言,命令行会输出各提示词/模型的结果对比。

    promptfoo eval
  6. 6查看结果

    启动 Web 界面浏览评估结果与性能对比,按终端提示的本地地址在浏览器打开。

    promptfoo view

关键配置

配置项必填说明示例
OPENAI_API_KEY是LLM 提供商的 API 密钥,供 eval 调用模型时鉴权使用sk-abc123

如何确认成功

promptfoo eval 正常输出评估结果表格,promptfoo view 能打开 Web 界面查看对比结果。

常见问题

Q:没有安装 Node.js 怎么办?

A:promptfoo 也支持 brew install promptfoo 或 pip install promptfoo;此外可用 npx promptfoo@latest 在免安装的情况下运行任意命令。

Q:Node.js 版本有要求吗?

A:README 要求 Node.js >= 22.22.0,推荐使用 Node.js 24 LTS,版本过低可能导致安装或运行失败。

Q:不想全局安装可以吗?

A:可以,使用 npx promptfoo@latest 直接运行命令,无需 npm install -g。

Q:必须配置 API Key 吗?

A:大多数 LLM 提供商需要 API Key,README 建议将其设置为环境变量后再执行 eval。

注意事项

  • promptfoo 已加入 OpenAI,但仍保持开源并采用 MIT 许可证。
  • 除评估(eval)外,还提供红队测试/漏洞扫描能力,可参考官方 Red Teaming 文档。

核心亮点

  • 声明式配置,几分钟内创建测试集,支持批量对比模型和提示词
  • 内置红队测试和漏洞扫描,主动发现提示注入和越狱风险
  • 深度集成 CI/CD,可自动拦截模型性能回退

不足之处

  • 高级红队功能依赖外部 API,可能产生额外成本
  • 文档/社区待观察

适用场景

  • LLM 应用开发中对比提示词和模型选型
  • CI/CD 中自动回归测试,防止性能下降
  • 安全团队对 AI 应用进行红队安全审计

替代项目

DeepEval、LangSmith、Ragas

上一篇:awesome-MLSecOps

下一篇:opik

同类项目推荐

Video-MME-v2 开源

评测视频大模型,从看懂片段到理解长视频全场景。

Video-MME-v2: Towards the Next Stage in Benchmarks for Comprehensive Video Understan···

★ 368 2026-08-09
sample-agent-cost-bench 开源

横向评测编程代理的成本、质量与耗时

Benchmark framework that measures cost, quality, and duration of coding agents acros···

★ 109 2026-10-27
Rules.txt 开源

用指令集撬开AI黑盒,审计推理与偏见

LLM alignment jailbreak; a set of instructions for auditing their internal reasoning···

★ 110 2026-08-09
context-bombs 开源

用现成的攻击字符串,测出你的 AI 系统抗不抗揍。

Context bomb strings

★ 163 2026-08-10
NOIR 开源

用 adb 给手机做隐私体检,看清 App 上报了什么

手机隐私审计:用 adb 扫出 Android 应用的权限、上报端点与数据流向,并给出可回滚的处置···

★ 2932 2026-11-04
ClawProBench 开源

在真实 OpenClaw 里反复跑 Agent,用确定性打分比出谁更稳

ClawProBench is a live-first benchmark harness for evaluating LLM agents in the Op···

★ 829 2026-09-16
Jailbreak-Foundry 开源

把越狱论文变成可跑的攻击测试,实时更新基准

A system that turns jailbreak papers into runnable attacks and benchmarks — live, a···

★ 174 2026-08-10
ablation 开源

用 LLM 智能体自动读汇编、追调用链,加速二进制逆向

Ablation is an AI-assisted reverse engineering (AIARE) framework

★ 3 2026-10-27