模型 / 数据集
langwatch/langwatch avatar
langwatch/langwatch

LangWatch 评测:一个把追踪、数据集、评测和提示词管理收进同一循环的 LLM 平台

The platform for LLM evaluations and AI agent testing

4,793 个 Star389 个 ForkTypeScriptApache-2.0

秒懂

它是什么?
LangWatch 是一个开源的 LLM 评测与 AI Agent 测试平台,核心卖点是端到端仿真、OpenTelemetry 原生集成,以及把追踪、数据集、评测和提示词优化串成单一工作流。本文基于仓库文档和发布信息,分析它的架构、本地启动方式、成本与局限。
适合谁用?
LangWatch 适合那些已经受够了在追踪、评测和提示词管理之间手动搬运数据的团队,尤其是做 Agent 级回归测试和需要生产环境可观测性的项目。它不适合只需要单一评测指标、不想引入 PostgreSQL、Redis 和 ClickHouse 三个基础组件的轻量用户,也不适合对 Langy 助手无沙箱执行有安全顾虑的团队。
能商用吗?
可以。Apache-2.0 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库在最近一天内有新的提交。
用什么语言写的?
主要是 TypeScript(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决什么问题,给谁用

LangWatch 面向的是需要系统化测试 LLM 应用的团队,尤其是那些构建 Agent、需要模拟真实用户交互并追踪每个决策的开发者。文档反复强调一个词:端到端。它不是说给你一个评测函数,而是让你对完整的技术栈运行场景,包括工具、状态、用户模拟器和评判器。这对那些在发布前做回归测试、在生产中做监控的团队有直接吸引力。仓库描述里写着“The platform for LLM evaluations and AI agent testing”,这一定位意味着它不是一个库,而是一个需要部署的平台。它试图解决的痛点很具体:团队为了评测 Agent,往往要自己拼装追踪、数据集、评测脚本和提示词版本管理,而 LangWatch 想把这些收进一个循环里。

核心机制:追踪到数据集到评测的闭环

LangWatch 的工作流在 README 里被描述为一条链:Trace 到 dataset 到 evaluate 到 optimize prompts/models 再到 re-test。这个循环是它的架构核心。你先把应用接入追踪,追踪数据可以沉淀为数据集,然后对数据集运行离线评测,评测结果反过来指导提示词或模型优化,优化后再回到追踪验证。这听起来不新奇,但关键在于它把每一步都放在同一个平台内,省去了胶水代码。文档强调“No glue code, no tool sprawl”,意思是你不必在追踪系统、评测框架和提示词仓库之间写转换脚本。另一个关键机制是 OpenTelemetry 原生支持,文档说它是 OTLP-native,框架和 LLM 提供商无关。这意味着接入方式不是厂商特定的 SDK,而是标准遥测协议,理论上你可以从任何支持 OTLP 的栈发送数据。

本地启动:一条命令与三个可选开关

LangWatch 的本地启动方式很直接。README 给出了一条命令:npx @langwatch/server。这条命令会安装 uv、postgres、redis、clickhouse、AI gateway 二进制和 Langy 助手的运行时到 ~/.langwatch/ 目录,生成带本地密钥的 .env 文件,然后并行启动所有服务,最后打开 http://localhost:5560。所有东西都装在 ~/.langwatch/ 下,删除这个目录就是完全重置。有三个环境变量由你决定是否启用。LANGWATCH_ENABLE_LANGY 默认 true,Langy 助手会增加约 45MB 运行时,文档明确警告它的 workers 以你的身份在你的机器上无沙箱运行。LANGWATCH_ENABLE_PRESIDIO 默认 false,PII 检测评测器会额外占用约 670MB 语言模型,比其余评测环境加起来还大。LANGWATCH_ENABLE_LINGUA 默认 false,语言检测评测器增加约 95MB。如果你不想用 Docker,也可以克隆仓库后进入 platform/app 目录,复制 .env.example 为 .env,然后运行 docker compose up -d --wait --build。这个双路径设计照顾了两种用户:想要快速试验的和已经容器化的。

AI Gateway:独立的 Go 二进制与治理层

LangWatch 包含一个 AI Gateway,文档描述为 OpenAI/Anthropic 兼容的代理,提供虚拟密钥、层级预算、内联护栏、跨提供商自动回退,以及 Anthropic 的 cache_control 透传。这些功能本身不罕见,但有两个细节值得注意。第一,它作为独立的 Go 二进制发布,位于 services/aigateway/,并且有独立的 Helm 子图表 charts/gateway/。这意味着它不是平台内部的一个模块,而是可以单独部署的组件。第二,README 给出了一个性能数字:热路径开销约 700 纳秒。这个数字来自项目文档,我没有独立验证,但它暗示设计者对延迟敏感。对于已经在生产环境使用 OpenAI 或 Anthropic API 的团队,这个网关可以作为统一入口,把成本控制和护栏放在请求路径上,而不是事后分析。

部署选项与混合模式

LangWatch 提供了多种部署路径。文档列出了 Docker Compose、Kubernetes(Helm)以及针对 AWS、Google Cloud 和 Azure 的 OnPrem 设置。还有一个 Hybrid 模式,README 用折叠块描述为“OnPrem data”,面向有严格数据驻留和控制要求、但不想完全本地化的公司。文档链接指向 hybrid-setup 页面。这意味着 LangWatch 承认不是所有团队都能把追踪数据发送到云端,也不是所有团队都愿意自己运维全套基础设施。混合模式可能是把数据留在你控制的存储中,而控制平面仍在云端,但 README 没有给出技术细节。对于有合规要求的团队,这个选项的存在比它的具体实现更重要,因为这意味着项目方在数据主权上做了产品层面的考量。

真正的局限与误用场景

LangWatch 的第一个明显局限是本地运行的基础设施负担。即使采用 npx 方式,它也会启动 PostgreSQL、Redis 和 ClickHouse 三个数据库服务。这不是一个轻量级评测库,而是一个需要持续运行的系统。如果你只想对几个 prompt 变体跑一次离线评测,这个重量可能不值得。第二个局限在 Langy 助手的安全模型上。README 明确说 Langy 的 workers 无沙箱运行,以你的用户身份执行。在一个开发机器上这或许可接受,但在共享环境或 CI 中,这相当于引入了不受信任代码的执行入口。文档建议通过 LANGWATCH_ENABLE_LANGY=false 关闭它,但默认是开启的,新用户可能不会意识到这个风险。第三个局限是 PII 检测评测器默认关闭,因为它的模型体积巨大,但文档又强调 LangWatch 自身的密钥和 PII 编辑不依赖这个评测器。这意味着如果你需要 PII 检测,你得自行承担那 670MB 的模型开销,而如果你不需要,平台的核心功能不受影响。

替代方案与本质差异

LangWatch 的主要替代者是 LangSmith 和 Helicone 这类商业可观测性平台,但更接近的对比是 Phoenix(来自 Arize)或 Langfuse。以 Langfuse 为例,它也提供追踪、评测和提示词管理,且同样支持自托管。关键差异在于 Langfuse 更侧重于追踪和分析,而 LangWatch 把“Agent 仿真”作为一等公民,README 里专门有一个 scenario 页面描述如何运行“现实场景”来测试完整技术栈。另一个差异是 LangWatch 自带 AI Gateway,而 Langfuse 通常需要你单独集成网关。如果你需要的是在现有应用上附加追踪和评测,Langfuse 可能更容易嵌入;如果你要的是从仿真到生产的完整闭环,LangWatch 的设计更贴合。但要注意,LangWatch 的闭环意味着你必须在它的 schema 里工作,而 Langfuse 的开放性可能让你更容易迁移。

维护成本与许可证边界

LangWatch 采用 Apache-2.0 加企业扩展的开源核心模式,README 的徽章写着“Open-core: Apache 2.0 floor + Enterprise extension”。这意味着核心平台是开源的,但某些功能可能只在企业版中提供。仓库的 recent releases 显示活跃维护,包括 Go SDK v1.0.0、TypeScript SDK v1.13.0 和 Skills v1.4.0,时间跨度从 2026 年 9 月初到 9 月 9 日,说明项目在持续迭代。自托管的维护成本不低,你需要管理三个数据库、一个 Go 网关和可能的 Langy 运行时。升级时,你需要关注 SDK 版本与平台版本的兼容性,因为 TypeScript SDK 和 skills 包独立发版,意味着 API 可能在不同节奏下变化。许可证方面,Apache-2.0 允许商业使用和修改,但企业扩展部分的具体边界需要查阅文档或源码,README 没有列出哪些功能属于企业版。如果你计划深度定制,先确认你依赖的功能是否在 Apache-2.0 覆盖范围内。

编辑结论

LangWatch 适合那些已经受够了在追踪、评测和提示词管理之间手动搬运数据的团队,尤其是做 Agent 级回归测试和需要生产环境可观测性的项目。它不适合只需要单一评测指标、不想引入 PostgreSQL、Redis 和 ClickHouse 三个基础组件的轻量用户,也不适合对 Langy 助手无沙箱执行有安全顾虑的团队。在采用之前,先确认你的技术栈能否接受 OpenTelemetry 作为唯一追踪接口,并检查自托管版本中哪些企业级功能(如 AI Gateway 的某些治理能力)被划在 Apache-2.0 之外。若你的团队已经深度使用 LangChain 或 LlamaIndex,LangWatch 的框架无关设计可能反而意味着你需要自己编写集成层。最终判断:LangWatch 的价值不在于某个单一功能,而在于它把评测循环压缩成一个平台,但这也正是它最大的锁定风险,你的数据、工作流和评测逻辑都会沉淀在它的 schema 里。

官方来源

  1. langwatch/langwatch on GitHub
  2. License: Apache-2.0
  3. Project website
  4. README
  5. Releases
社区笔记

社区笔记