SuperAPI AI 工具集

maple-agent-tracing-openai-agents

智能体与模型

查看项目

更新于 10-16 06:45

技能介绍

用途:把 OpenAI Agents SDK 的追踪数据接入 Maple,使每次对话在 Maple Agent Sessions 中呈现为一个会话、每次 Runner.run 为一个回合,包含转录、模型调用、工具调用(失败会标记)、子智能体与交接泳道以及 token(含流式回合)。

机制:SDK 自带追踪管线(非 OpenTelemetry),默认处理器上传到 OpenAI 仪表盘;openinference-instrumentation-openai-agents 在该管线上注册处理器,把每个 SDK span 转为 OTel span,再由 OTel TracerProvider 与 OTLP/HTTP 导出器发送到 Maple。

主要能力:会话与回合归并、模型与工具调用记录、交接与子智能体泳道、token 统计、流式回合支持。

使用方式(Python 为主):目标 openai-agents>=0.22、openinference-instrumentation-openai-agents>=2.5,Python 3.10–3.14。安装 openai-agents、openinference-instrumentation-openai-agents、opentelemetry-sdk、opentelemetry-exporter-otlp-proto-http。设置 OTEL_SERVICE_NAME、OTEL_RESOURCE_ATTRIBUTES、OTEL_EXPORTER_OTLP_ENDPOINT(美国 https://ingest.maple.dev,欧盟 https://ingest.eu.maple.dev)、OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer <key>"、OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf。创建 tracing.py,在入口顶部、任何 Runner.run 之前导入:构建 TracerProvider 并添加 BatchSpanProcessor(OTLPSpanExporter()),调用 set_trace_processors([MapleSpanFixes()]) 与 OpenAIAgentsInstrumentor().instrument(tracer_provider=provider, config=TraceConfig(enable_genai_semconv=True), exclusive_processor=False)。MapleSpanFixes 必须排在首位,用于补交接工具名与流式 Chat Completions 输出。非 OpenAI 模型需设 ModelSettings(include_usage=True)。TypeScript 使用 @openai/agents 与 @arizeai/openinference-instrumentation-openai-agents,通过 NodeSDK 与 manuallyInstrument(agents) 接入,会话 id 以 gen_ai.conversation.id 放入 OTel 上下文。

限制:需移除其他同类插桩以免重复记录;需移除禁用追踪的开关;密钥按区域绑定,401 时尝试另一区域端点;私有 maple_sk_ 密钥不得用于浏览器代码;TypeScript 桥接导出能力较少。其余细节资料未提供。