SuperAPI AI 工具集

langfuse-hello-world

测试与质量

查看项目

更新于 10-15 23:27

技能介绍

用途:创建第一个包含真实 SDK 调用的 Langfuse 追踪,帮助开发者在新集成 Langfuse、验证环境或学习基础追踪时快速上手。示例演示 trace/span/generation 三层结构、observe 包装器以及 OpenAI 直接替换式集成。

前提条件:已完成 langfuse-install-auth 配置;环境变量中存在有效 API 凭据;如使用 OpenAI 集成示例还需 OpenAI API key。

主要能力与用法:

  1. v4+ 模块化 SDK:使用 @langfuse/tracing 的 startActiveObservation、observe、updateActiveObservation,配合 @langfuse/otel 的 LangfuseSpanProcessor 与 @opentelemetry/sdk-node 的 NodeSDK 注册处理器,创建顶层 trace、嵌套 span 和 generation,最后调用 sdk.shutdown() 刷新数据。
  2. observe 包装器:可直接包装已有异步函数使其成为被追踪的 span,无需改动函数内部;传入 { name, asType: "generation" } 可将 LLM 调用标记为 generation,在观察上下文中调用时自动嵌套。
  3. 传统 v3 SDK:使用 langfuse 包的 Langfuse 类,通过 langfuse.trace() 创建 trace,再挂载 span 与 generation,最后调用 langfuse.flushAsync() 并可取得 trace URL。
  4. Python 示例:使用 langfuse.decorators 的 observe 装饰器与 langfuse_context,以 @observe() 和 @observe(as_type="generation") 装饰函数并更新当前观察。

适用场景:新项目首次接入 Langfuse、验证凭据与上报链路、学习 trace 层级概念,以及在正式接入生产代码前做本地验证。

限制与注意事项:需先完成安装与鉴权配置;生成追踪后需正确刷新(v4+ 用 sdk.shutdown(),v3 用 langfuse.flushAsync()),否则追踪可能不出现;凭证错误会返回 401;若未注册 LangfuseSpanProcessor 则不会自动嵌套。官方文档未提供具体价格或性能数据。