LLM 应用的开发和普通软件有一个很大的区别:你很难用传统的单元测试和断言来验证一个大模型的行为。提示词改了一个字,输出可能就变了;换了一个模型版本,过去表现好的场景突然出问题——这种不确定性让 LLM 应用的工程化变得复杂。Langfuse 就是为解决这个问题而生的:一个开源的 LLM 可观测性平台,帮助开发者追踪、分析、评估、改进他们的 AI 应用。
Langfuse 是什么
Langfuse(langfuse.com)是一个开源的 LLM 工程平台,核心功能包括:LLM 调用的追踪和日志记录(Tracing)、提示词版本管理(Prompt Management)、质量评估(Evaluation)、以及数据集管理。
简单说:你的 LLM 应用每次调用模型,Langfuse 帮你记录下来、分析结果、识别问题,让你能系统地改进应用质量,而不是靠感觉碰运气。
项目完全开源,代码在 GitHub 上公开,可以自部署,也有托管的云服务版本(有免费额度)。在 LLM 可观测性领域,Langfuse 是目前最受欢迎的开源方案之一。
核心功能
LLM 追踪(Tracing)
这是 Langfuse 的核心功能。在应用代码里集成 Langfuse SDK,每次 LLM 调用都会被记录:
- 输入提示词和模型参数
- 模型的输出内容
- 调用延迟(latency)
- Token 使用量和费用
- 错误信息
对于复杂的 LLM 应用(多步骤 Chain、RAG 管道、Agent 工作流),Langfuse 支持嵌套追踪——每个子步骤都有独立的记录,可以看到整个调用链条的执行情况,定位具体哪一步出了问题。
提示词管理(Prompt Management)
提示词(Prompt)是 LLM 应用的核心配置,但如果直接把提示词硬编码在代码里,管理起来很麻烦——修改一次要重新部署,多个版本难以追踪和比较。
Langfuse 提供了独立的提示词管理界面:版本控制(每次修改都有记录,可以回滚)、A/B 测试(同时运行两个版本的提示词,比较效果)、以及和追踪数据的关联(知道每个版本的提示词在实际使用中表现如何)。
评估(Evaluation)
这是 LLM 应用工程化最难的部分——怎么知道模型的输出"好不好"?Langfuse 支持多种评估方式:
- 人工标注:在 Langfuse 界面里直接对模型输出打分,建立高质量的评估数据集
- LLM 自动评估:用另一个 LLM 对原有 LLM 的输出打分,实现大规模自动化评估
- 用户反馈:将用户的点赞/点踩等反馈数据集成到 Langfuse,了解真实用户对输出质量的判断
这些评估数据可以用来追踪应用质量随时间的变化,在迭代时做出有数据支撑的决策。
数据集和测试
Langfuse 可以将追踪到的真实数据整理成测试数据集,用于回归测试——确保新版本的提示词或者模型不会在已知场景上退步。这是 LLM 应用进入生产环境后非常重要的质量保障机制。
集成方式
Langfuse 提供了多种集成方式,兼容常见的 LLM 开发栈:
- OpenAI SDK:几行代码集成,自动追踪所有 OpenAI API 调用
- LangChain:原生支持 LangChain 的 Callback,追踪 Chain 和 Agent 的完整执行过程
- LlamaIndex:支持 LlamaIndex 的 RAG 管道追踪
- 直接 HTTP API:不依赖任何 SDK,直接调用 HTTP API 记录数据
- Python 和 JavaScript/TypeScript SDK:官方维护的客户端库
集成通常只需要初始化 Langfuse 客户端并传入 API 密钥,大多数追踪可以通过装饰器或者回调自动完成,不需要修改核心业务逻辑。
和其他工具的比较
vs LangSmith(LangChain 官方):LangSmith 是 LangChain 团队推出的 LLM 可观测性平台,功能和 Langfuse 高度相似,是最直接的竞争对手;LangSmith 是商业产品,Langfuse 开源可自托管,数据隐私更有保障。
vs Helicone:Helicone 同样是 LLM 追踪工具,定位相近;Helicone 侧重于成本分析和缓存功能,Langfuse 的评估和提示词管理更完整。
vs Weights & Biases(W&B):W&B 是机器学习实验追踪的老牌工具,近年也加入了 LLM 功能;W&B 更偏向模型训练和实验管理,Langfuse 更偏向生产环境的 LLM 应用可观测性。
vs Datadog / 传统监控工具:传统应用监控工具可以追踪 API 调用,但对 LLM 的特殊需求(提示词版本、输出质量评估)没有原生支持;Langfuse 专门为 LLM 应用设计。
谁适合用 Langfuse
构建 LLM 应用的开发者:无论是 RAG 系统、AI 客服、智能助手,只要用到了 LLM API,Langfuse 都能帮你更好地了解应用的运行情况。
需要系统化改进提示词的团队:不再靠感觉改提示词,而是有数据支撑——知道哪个版本在哪类场景表现好,迭代更有方向。
对数据隐私有要求的团队:Langfuse 完全开源,可以在自己的服务器上部署,不需要将用户数据发送给第三方平台。
LLM 应用从原型到生产的团队:应用上线后需要持续监控质量,Langfuse 提供了生产环境下 LLM 应用的可观测性基础设施。
自部署和云服务
Langfuse 可以通过 Docker 在自己的服务器上部署,官方有详细的文档和 Docker Compose 配置。自部署完全免费,适合对数据隐私有要求、或者有高使用量的团队。
云服务版本(cloud.langfuse.com)有免费 Hobby 层,包含有限的事件数量,适合个人项目和小型应用评估使用;更大的使用量需要付费订阅。
局限性
Langfuse 作为可观测性工具,本身不能直接改进 LLM 的输出质量,只是帮你更好地看到和理解输出质量——真正的改进还是需要工程师和产品团队来做决策和执行。
自部署需要有一定的服务器运维能力,对于没有技术运维资源的小团队,使用云服务版本更现实,但数据外发的问题需要考虑。
Langfuse 是 LLM 应用工程化的重要基础设施。如果你在认真做一个 LLM 应用,而不只是玩个 Demo,把可观测性从一开始就建立起来会让后期的迭代和维护顺畅很多。Langfuse 开源免费、文档完善、社区活跃,是目前这个方向最值得首选的工具。