Skip to content

Langfuse 学习计划(从 0 到 1)

适合人群:刚接触 LLM 应用开发、想搞懂「模型到底干了什么」的小白
前置知识:了解什么是 API 调用即可,不要求会 OpenTelemetry
配套资料:同目录下的 ../opentelemetry/ 系列(学完 Langfuse 基础后建议继续)


一、学习目标

学完本系列,你应该能回答这些问题:

  1. Langfuse 是什么?和「打日志」有什么区别?
  2. Trace、Observation、Session、Generation 分别是什么?
  3. Langfuse 和 OpenTelemetry 是什么关系?能一起用吗?
  4. 怎么在自己的 Python 项目里接入 Langfuse?
  5. Claude Code / tRPC-Agent 是怎么把 trace 上报到 Langfuse 的?

二、学习路线总览

Langfuse 学习路线总览

阶段 1: Langfuse 是什么       (半天)
阶段 2: 核心概念              (1 天)
阶段 3: 与 OpenTelemetry 关系  (半天)
阶段 4: SDK 快速上手          (1-2 天)
阶段 5: 平台能力              (1 天)
阶段 6: 实战集成案例          (1-2 天)
阶段 7: 生产最佳实践          (1 天)

预计总时长:5-7 天(每天 1-2 小时)


三、详细学习计划

阶段 1:Langfuse 是什么(半天)

📄 阅读:1_what_is_langfuse.md

  • 用生活例子理解「LLM 应用可观测性」
  • Langfuse 解决什么问题
  • 和 Jaeger / Grafana / 普通日志的对比
  • 自托管 vs 云服务

小练习:在 langfuse.com 注册账号,浏览 Demo 项目里的 Trace 列表。


阶段 2:核心概念(1 天)

📄 阅读:2_core_concepts.md

  • Trace(一次完整请求)
  • Observation(请求里的每一步)
  • Session(多轮对话的「聊天室」)
  • Generation / Tool / Retriever 等 Observation 类型
  • 属性传播:user_id、tags、metadata

生活类比主线:把 Langfuse 想象成一家餐厅的「后厨监控 + 顾客反馈系统」。

小练习:在 Langfuse UI 里点开一条 Trace,手动标出:根节点、Generation、Tool 调用。


阶段 3:与 OpenTelemetry 的关系(半天)

📄 阅读:3_langfuse_and_opentelemetry.md

  • OpenTelemetry 是「通用快递标准」,Langfuse 是「专门收 AI 包裹的仓库」
  • OTel Span ↔ Langfuse Observation 的映射
  • 什么时候用 Langfuse SDK,什么时候走 OTel Exporter
  • ../opentelemetry/ 学习路径的衔接

前置建议:若完全不懂 Trace/Span,先读 ../opentelemetry/1_base_concept.md 的前两节。


阶段 4:SDK 快速上手(1-2 天)

📄 阅读:4_sdk_quickstart.md
💻 代码:examples/basic_trace.pyexamples/rag_agent_trace.py

  • 安装与环境变量
  • v2 有状态 API vs v3/v4 OTel API(本笔记以 v2 为主,更易上手)
  • trace()generation()span() 的嵌套写法
  • @observe 装饰器
  • flush 与异步上报

小练习:跑通 basic_trace.py,在 Langfuse UI 看到一条完整 Trace。


阶段 5:平台能力(1 天)

📄 阅读:5_platform_features.md

  • Prompt 管理(版本、A/B)
  • Evaluation / Scoring(人工打分、LLM-as-Judge)
  • Datasets 与实验
  • Dashboard 与成本分析

阶段 6:实战集成案例(1-2 天)

📄 阅读:6_integration_cases.md

  • 案例 A:Claude Code transcript → Langfuse(Hook / Watcher)
  • 案例 B:tRPC-Agent 框架通过 OpenTelemetry 接入 Langfuse
  • 选型:SDK 直写 vs OTel 桥接 vs 旁路解析

阶段 7:生产最佳实践(1 天)

📄 阅读:7_best_practices.md

  • 敏感信息脱敏
  • 采样与成本控制
  • fail-open 设计
  • 自托管部署要点

四、文档目录结构

langfuse/
├── 0_learn_plan.md                 ← 本文件(学习地图)
├── 1_what_is_langfuse.md           ← Langfuse 是什么
├── 2_core_concepts.md              ← 核心概念(Trace/Observation/Session)
├── 3_langfuse_and_opentelemetry.md ← 与 OTel 的关系
├── 4_sdk_quickstart.md             ← Python SDK 上手
├── 5_platform_features.md          ← 平台能力(Prompt/Eval/Dashboard)
├── 6_integration_cases.md          ← Claude Code / tRPC-Agent 集成
├── 7_best_practices.md             ← 生产实践
└── examples/
    ├── basic_trace.py              ← 最小可运行示例
    └── rag_agent_trace.py          ← RAG Agent 追踪示例

五、与 a_why.md 问题对照

你的问题对应章节
Langfuse 的常见概念?2_core_concepts.md
Langfuse 与 OpenTelemetry 的关系?3_langfuse_and_opentelemetry.md
tRPC-Agent 如何集成 Langfuse?6_integration_cases.md § tRPC-Agent
Claude Code 如何上报 trace?6_integration_cases.md § Claude Code

六、推荐学习资源

资源链接说明
官方文档https://langfuse.com/docs权威参考
数据模型https://langfuse.com/docs/observability/data-modelTrace/Observation 定义
Python SDKhttps://langfuse.com/docs/sdk/pythonAPI 参考
GitHubhttps://github.com/langfuse/langfuse开源仓库
本地 OTel 笔记../opentelemetry/通用追踪基础

七、学习检查清单

阶段 1 ✅

  • [ ] 能用一句话向同事解释 Langfuse 是干什么的
  • [ ] 能说出它和「只打日志」的三个区别

阶段 2 ✅

  • [ ] 能区分 Trace、Observation、Session
  • [ ] 能说出 Generation 和 Span 的区别
  • [ ] 能在 UI 里找到 token 用量和耗时

阶段 3 ✅

  • [ ] 能解释 OTel Span 和 Langfuse Observation 的对应关系
  • [ ] 知道 Langfuse 底层兼容 OTel 协议

阶段 4 ✅

  • [ ] 成功运行 examples 并在 UI 看到数据
  • [ ] 能手写一个三层嵌套 Trace(trace → generation → span)

阶段 5 ✅

  • [ ] 了解 Prompt 版本管理的基本流程
  • [ ] 知道如何给 Trace 打 Score

阶段 6 ✅

  • [ ] 理解 Claude Code Hook 与 Watcher 两种方案
  • [ ] 理解 tRPC-Agent 的 OTel → Langfuse 桥接思路

阶段 7 ✅

  • [ ] 知道哪些数据不该上报(密钥、PII)
  • [ ] 理解 fail-open:追踪挂了不能拖垮业务