bug: PythonSDK OpenAI Async Client Wrapper, Responses API: `instructions` parameter not captured in generation span

用户在 Langfuse Cloud 上使用 Python SDK 3.3.1,通过 langfuse.openai.AsyncOpenAI 包装客户端调用 responses.create() 方法,传入 instructions 参数进行 agentic workflow 调用,结果在 Lang

bug: PythonSDK OpenAI Async Client Wrapper, Responses API: `instructions` parameter not captured in generation span

bug: PythonSDK OpenAI Async Client Wrapper, Responses API: `instructions` parameter not captured in generation span

快速结论:使用 Langfuse langfuse.openai.AsyncOpenAI 包装客户端调用 OpenAI Responses API 时,instructions 参数不会被捕获到 generation span 中。优先排查 SDK 版本以及后端是否已支持该字段。

问题场景

用户在 Langfuse Cloud 上使用 Python SDK 3.3.1,通过 langfuse.openai.AsyncOpenAI 包装客户端调用 responses.create() 方法,传入 instructions 参数进行 agentic workflow 调用,结果在 Langfuse 追踪界面中看不到 instructions 内容。

报错原文

# 并非报错,而是缺失字段的表现
# Langfuse 追踪中 generation span 只显示了 model 和 input,没有 instructions 字段
# 用户重现代码:
create_res = await self._openai_client.responses.create(
    instructions="this is instructions",
    model="gpt-5",
    input="this is input",
)
import langfuse
langfuse.get_client().flush()
# 结果:追踪中找不到 "this is instructions" 字符串

原因分析

可能原因:根据 Issue 讨论,Langfuse 后端已准备好在 generation span 中接收 instructions 参数,但 Python SDK 当前并未在 span payload 中包含 instructions 字段。没有最近的合并 PR 或文档更新表明此问题已修复,changelog 和示例中只显示了 modelinput 被追踪,未包含 instructions

环境排查

  • Langfuse Python SDK 版本:确认是否为 3.3.1 或更早版本
  • Langfuse 部署方式:Cloud 或自托管(当前 Issue 发生在 Cloud 平台)
  • OpenAI 客户端用法:确认是否使用 langfuse.openai.AsyncOpenAI 包装
  • 已关联的 Issue #7435 是否已完成修复(该 Issue 提到修复但用户反馈仍无效)

解决步骤

  1. 临时替代方案(可优先尝试):instructions 内容合并到 input 参数中,以便在追踪中显示。例如:input="this is input\nInstructions: this is instructions"
  2. 或者将 instructions 作为自定义 metadata 传递,例如:metadata={"instructions": "this is instructions"}
  3. 检查 langfuse-python SDK 仓库的 open issues 或更新,确认 instructions 参数是否已添加支持。
  4. 升级到最新 SDK 版本,查看 changelog 中是否有 OpenAPI Responses API 相关更新。

验证方法

执行 langfuse.get_client().flush() 后,在 Langfuse 界面中查看对应 generation span 的详情,检查是否能看到 instructions 字段的内容。如果使用了替代方案,确认自定义字段或 input 中已包含期望文本。

参考来源

langfuse/langfuse #8763

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 9292

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注