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应用开发的标准基础库之一。