一句话定义:LLM 可观测性(LLM Observability)是指用日志、指标、链路追踪等手段,让大模型应用内部"到底发生了什么"变得看得见;链路追踪(Tracing)是其中最关键的一块——它把用户的一次请求,拆成一条有先后顺序、有耗时、有归属的步骤链。
一次对话背后,可能不止一次模型调用
你问:"帮我查下上周那笔订单为什么退款。"界面上两秒出了答案。但真实过程可能是:先调一次模型理解意图 → 去向量库检索(Retrieval)退款政策 → 调订单系统 API 拿记录 → 再调一次模型总结成话术 → 因为格式不合规,重试了一次。也就是一次对话 = 3 次模型调用 + 1 次检索 + 2 次工具调用。这些数字,用户看不见,很多团队自己也不清楚。
打个比方:这就像医院的流程单。病人(请求)进门,挂号、抽血、拍片、医生会诊,每一步都记录了谁做的、花了多久、结论是什么。没有这张单子,你只知道"病人进来了、病人走了",出了问题无从复盘。
三个核心名词
- Trace:一次完整请求的全过程,用一个 trace id 串起来。
- Span:其中一步,可以嵌套(检索 span 下面挂着向量库查询 span)。
- 属性(Attributes):挂在 span 上的细节——模型名、token 数、输入输出、耗时、是否报错。
它和相邻概念的区别
| 手段 | 回答的问题 | 粒度 |
|---|---|---|
| 指标(Metrics) | 整体健康吗?延迟、错误率、花费在涨还是跌 | 聚合数字 |
| 日志(Logs) | 那一刻代码打印了什么 | 单点文本 |
| 链路追踪(Tracing) | 这一次请求走了哪几步,哪步慢、哪步贵、哪步错 | 一次请求的完整步骤树 |
传统 APM 追踪的是函数和服务调用;LLM 追踪多了几个"非确定性"维度:token 消耗、提示词版本、温度参数">温度参数、工具调用入参、检索命中的文档。所以它不只是运维工具,也是评估(Evaluation)的地基——没有 trace,你没法回答"改了这段提示词之后,到底是哪一步变好了"。
对从业者的实际意义
工程师排查"为什么这个回答胡说八道",第一现场就是 trace:是检索没召回,还是工具返回了脏数据,还是模型自己编的?产品和管理者则能借此看清"哪个环节最烧钱、最慢"。建议从项目第一天就埋 trace id,别等出事再补——补的时候,通常已经晚了。具体用什么 SDK 或平台,各家差异较大,选型时以官方页面为准。
