1. 为什么LLM应用需要生产级监控?LLM应用与常规软件不同,其输出具有非确定性,容易出现幻觉、偏离上下文甚至有毒内容。同时,每次推理都消耗Token,成本不可忽视。若没有完善的监控,上述问题只能被动发现,严重时可能影响用户体验或造成经济损失。因此,生产级LLM应用必须引入监控与告警,以实时掌握应用状态,及时发现异常并快速响应。2. 监控基础:借助Opik追踪PromptOpik是Comet ML推出的开源LLM监控工具,可以轻松集成到Python应用中。其核心是@track装饰器:被装饰的函数调用会自动记录输入、输出、耗时、Token数量等关键指标。fromopikimporttrack@trackdefgenerate_answer(user_input:str)-str:# 调用LLM APIresponse=llm_client.complete(prompt=user_input)returnresponse.text通过装饰器,Ops团队可以在Opik仪表盘中查看每一次调用的全貌,包括传入的Prompt、返回的答案、模型参数、延迟等。这使得排查问题变得简单直接。3. 全链路追踪示例一个典型的RAG流程通常包含多个步骤:用户输入 → 查询重写 → 上下文检索 → Prompt组装 → LLM调用 → 后处理。若只监控最终LLM调用,很难定位问题出在检索阶段还是生成阶段。Opik支持嵌套追踪:只要在每个关键步骤的函数上都加上@track,即可形成完整调用链路(Trace)。fromopikimporttrack@trackdefrewrite_query(query:str)-str:returnrewritten_query@trackdefretrieve_context(rewritte