Python有LangSmith追踪LLM。JVM呢?JetBrains的Tracy来了,一行注解搞定

JetBrains发布Tracy,一个面向Kotlin/Java的开源AI可观测性库。开发者只需一行@Trace注解即可追踪LLM调用、工具执行和自定义逻辑的全链路。Tracy底层基于OpenTelemetry,兼容Langfuse和W&B Weave等平台,支持OpenAI、Anthropic、Gemini等SDK。对于用Kotlin构建AI应用的团队,Tracy填补了JVM生态中AI可观测性工具的空白——此前Python生态的LangSmith等工具在JVM侧几乎无对标产品。Apache 2.0开源协议,GitHub已可获取。

JetBrains Tracy:填补JVM生态AI可观测性空白的利器

背景:AI应用的可观测性危机

当AI应用进入生产环境,开发者面临的最大挑战之一是「黑盒调试」问题:AI代理的行为是非确定性的,单次运行可能成功,下次运行却失败;LLM调用可能消耗大量Token(成本);工具调用链可能在某个节点默默超时……在传统的日志和指标体系下,这些问题几乎不可追踪。

Python生态在AI可观测性工具上相对成熟——LangSmith(LangChain的官方可观测性平台)、W&B Weave、Langfuse等工具已经为Python AI开发者提供了相对完善的追踪能力。但JVM生态(Java/Kotlin)在这个领域几乎是一片空白——没有专为JVM AI应用设计的追踪库,Kotlin开发者只能勉强使用为Python设计的方案,或从头搭建自定义追踪系统。

Tracy的出现,是JetBrains对这一空白的直接回应。

Tracy的核心设计

发布时间:2026年3月11日正式发布(开源,Apache 2.0)

兼容性:Kotlin 2.0.0+,Java 17+

最简单的使用方式——一行注解:

@Trace
suspend fun analyzeDocument(doc: String): AnalysisResult {
val summary = openAIClient.chat(/* ... */)
val entities = anthropicClient.messages(/* ... */)
return combineResults(summary, entities)
}

一个`@Trace`注解,即可自动捕获:

  • 函数的完整调用链
  • 所有LLM调用(模型、提示、Token消耗、延迟)
  • 工具调用的参数和结果
  • 自定义业务逻辑的执行时间和状态

技术架构细节

基于OpenTelemetry:

Tracy完全遵循OpenTelemetry Generative AI语义约定(Semantic Conventions),确保追踪数据与任何OpenTelemetry兼容后端无缝对接。这意味着:

  • 追踪数据可以发送到Langfuse(AI专属可观测性平台)
  • 发送到W&B Weave(机器学习实验追踪)
  • 发送到Jaeger、Zipkin等通用分布式追踪平台
  • 发送到任何支持OTLP协议的监控系统

支持的LLM SDK:

  • OpenAI SDK(Java/Kotlin)
  • Anthropic SDK
  • Google Gemini SDK
  • 兼容OkHttp和Ktor HTTP客户端(用于自定义LLM API调用)

追踪内容的粒度:

Trace: analyzeDocument
├── Span: openai.chat
│   ├── model: gpt-5.4
│   ├── prompt_tokens: 1234
│   ├── completion_tokens: 567
│   ├── latency: 2.3s
│   └── cost_estimate: $0.012
├── Span: anthropic.messages
│   ├── model: claude-opus-4-6
│   ├── input_tokens: 890
│   ├── output_tokens: 234
│   └── latency: 1.8s
└── Span: combineResults
└── latency: 12ms

Tracy的四大核心价值:

1. **调试失败**:追踪完整调用链,快速定位AI代理在哪一步失败,以及失败时的Prompt和上下文是什么

2. **成本监控**:实时追踪每次AI调用的Token消耗和估算成本,发现异常消耗点

3. **延迟分析**:识别工作流中的性能瓶颈(哪个LLM调用最慢?哪个工具调用超时?)

4. **LLM使用追踪**:多模型、多调用场景下,统一视图展示所有AI活动

JVM AI生态的战略价值

为什么JVM生态的AI可观测性重要?因为大量企业AI应用是在Java/Spring Boot/Kotlin生态中构建的——银行、保险、制造业、电信等传统行业的核心系统大量运行在JVM上。这些企业在将AI功能(如自动文档处理、智能客服、风险评估)集成到现有JVM系统时,需要同等级别的可观测性保障。

Tracy填补的不只是一个工具缺口,而是让整个JVM生态的企业能够「自信地」在生产环境部署AI功能——因为有了与Python生态同等水平的可观测性支持。

与JetBrains Koog框架的协同

JetBrains在2025年底发布了Koog——一个用于Kotlin AI代理开发的框架,内置了OpenTelemetry追踪支持,与Langfuse和W&B Weave集成。Tracy是Koog可观测性能力的单独提取版本,使得即使不使用Koog的Kotlin/Java项目也能获得AI可观测性。

JetBrains正在构建一个完整的Kotlin AI开发栈:Koog(AI代理框架)+ Tracy(可观测性)+ IntelliJ IDEA/Junie(AI辅助编码),这是JetBrains在AI时代维持开发者工具领导地位的核心战略。

未来展望

随着企业AI应用从实验转向生产,可观测性工具将成为AI基础设施的必要组成部分——类似于传统应用中Prometheus+Grafana的地位。Tracy代表了JVM生态追赶Python生态AI工具成熟度的关键一步,预计将成为Kotlin/Java AI应用开发的标准基础库之一。