SuperAPI AI 工具集

netra-decorator-instrumentation

智能体与模型

查看项目

更新于 10-15 23:45

技能介绍

用途:该技能用于在 Netra 追踪体系中创建自定义的装饰器埋点,帮助开发者在自动埋点、装饰器与手动追踪三种方式之间做出选择,并用装饰器实现边界清晰的语义化 span。

主要能力:支持 Python 与 TypeScript 两种语言。装饰器包括 @workflow(端到端用户流程)、@agent(AI 编排或决策组件)、@task(工具调用、API 调用、校验、转换等离散操作)、@span(需要显式指定 span 类型时使用,如 SpanType.GENERATION、TOOL、AGENT、EMBEDDING、SPAN)。可通过 Netra.get_current_span() 添加关键属性与事件。

使用方式:先用自动埋点快速捕获 provider/框架 span,再用装饰器暴露应用的 workflow 与编排语义,仅在需要自定义生命周期或元数据时补充手动 span。Python 中手动补充推荐使用上下文管理器 Netra.start_span(...),可自动关闭 span 并安全捕获异常;TypeScript 中手动追踪需显式调用 end(),并放在 finally 中,异步路径要保持生命周期明确,避免悬挂 span。

适用场景:需要业务级语义 span、希望跨 trace 保持一致的 workflow/agent/task 结构,或需要在 Python 与 TypeScript 代码库中使用同一套方法时。

限制与注意:类级别装饰应谨慎,容易产生噪声;应只保留高价值 span。参数捕获不得包含敏感数据。流式函数需确认 span 在流消费完成后才关闭。该技能不涉及评估数据集与评估器创建、模拟数据集与测试运行、用量分析查询。

验证要点:根业务操作应显示为 workflow span,编排显示为 agent span,任务不过度埋点,错误以带异常详情的 error span 呈现。

参考文档:https://docs.getnetra.ai/sdk-reference/sdk/overview、https://docs.getnetra.ai/Observability/Traces/decorators、https://docs.getnetra.ai/Observability/Traces/overview、https://docs.getnetra.ai/Observability/Traces/auto-instrumentation、https://docs.getnetra.ai/Observability/Traces/manual-tracing、https://docs.getnetra.ai/quick-start/QuickStart_Tracing、https://docs.getnetra.ai/FAQs/FAQs#what-tracing-methods-does-netra-support