跳到主要内容

查看追踪

记录追踪后,您可以在 MLflow UI 中的实验“Traces”(追踪)页面下查看它们。该页面用于浏览具有丰富搜索和过滤功能的追踪列表,以及检查每个追踪的详细信息。

MLflow Tracking UI

追踪表

打开“Traces”页面时首先看到的追踪表包含有关追踪的高级信息,例如追踪 ID、根 span(span)的输入/输出等。该表显示以下列。

没有看到所有列?

追踪表默认不显示所有字段。有些列默认是隐藏的,可以通过列选择器启用。

描述数据源
追踪 ID唯一标识符追踪 trace_id 字段
请求根 span 的输入源自根 span 的 mlflow.spanInputs 属性,或通过 mlflow.update_current_trace() API 的 request_preview 参数自定义。
响应根 span 的输出源自根 span 的 mlflow.spanOutputs 属性,或通过 mlflow.update_current_trace() API 的 response_preview 参数自定义。
会话对话/会话分组器mlflow.trace.session 元数据。有关如何设置此项,请参阅跟踪用户和会话
用户触发追踪的应用程序用户mlflow.trace.user 元数据。有关如何设置此项,请参阅跟踪用户和会话
追踪名称追踪的名称源自根 span 的名称,或通过 mlflow.traceName 标签自定义。
Token聚合的输入/输出/总 Token 数mlflow.trace.tokenUsage 元数据。更多详细信息,请参阅Token 使用量和成本跟踪
执行时间追踪总时长运行时计算得出。
请求时间追踪创建的时间运行时计算得出。
状态OKERRORIN_PROGRESS源自根 span 的执行状态。
运行名称关联的 MLflow 运行如果追踪是在 MLflow 运行上下文中记录的,则此处会自动显示运行名称。
提示词关联的提示词版本如果在追踪范围内加载了 MLflow 提示词注册表中的提示词,此处会显示提示词名称和版本。更多详细信息,请参阅将提示词与追踪关联
生成追踪的入口点或脚本。如果是来自 Git 存储库,该字段会链接到包含提交哈希和文件路径的存储库 URL。如果可用,在运行时从 Git 元数据派生。
标签用户定义的键值对如果设置了 追踪标签(不包括 mlflow.* 系统键)。
评估由人工或自动评估记录到追踪中的反馈分数。有关如何记录评估信息,请参阅收集用户反馈评估追踪
预期标注到追踪中的基础事实(Ground Truth)值。有关如何记录期望值,请参阅基础事实期望
通过 OTLP 摄取的追踪

通过 OTLP 端点摄取的追踪会经过自动属性转换,以从框架特定的 OpenTelemetry 属性中派生这些列。MLflow 支持 OpenTelemetry GenAI 语义约定的转换,以及包括 OpenLLMetry、OpenInference、Langfuse 等在内的各种框架。有关每个框架的属性如何映射到这些列的详细信息,请参阅属性映射参考

浏览单个追踪

通过点击追踪表中的追踪 ID tr-... 或请求链接,您可以打开详细的追踪视图。详细的追踪视图包含有关您的 AI 智能体或 LLM 应用程序执行的丰富信息,例如:

  • 表示追踪执行流程的 span 树。
  • 每个 span 的延迟和整体时间轴。
  • 每个 span 的输入和输出。
  • 工具定义和调用。
  • 如果执行失败,则显示异常详细信息。
  • Token 计数和成本明细。
  • 标注在追踪上的反馈分数和基础事实。
Browsing single trace
多模态内容和附件

MLflow 会在追踪查看器中内联渲染图像、音频和受支持的附件类型。有关受支持的格式、框架示例以及如何为二进制内容使用 Attachment 类,请参阅追踪中的多模态内容和附件

执行操作

在此页面上,您还可以执行一些操作来管理您的追踪。

搜索追踪

使用UI 中的搜索栏,您可以根据名称、标签或其他元数据轻松过滤追踪。请查看搜索追踪以获取有关查询字符串格式的详细信息。

Searching traces

过滤追踪

通过过滤下拉菜单,您可以按各种条件(如状态、名称、用户、会话、标签、反馈值等)过滤追踪表。有关详细信息,请参阅过滤追踪

Searching traces

查看追踪归档状态

当为实验启用追踪归档时,MLflow 会在以追踪为重点的实验视图上显示 Archive after: ... 徽章,以便您一目了然地查看有效的保留期。

归档的追踪仍然可访问,但依赖于 span 有效负载的搜索在这些有效负载移出跟踪存储后将停止工作。有关保留模型、调度程序行为和设置选项,请参阅归档追踪

删除追踪

UI 支持批量删除追踪。只需勾选复选框选择要删除的追踪,然后按“删除”按钮即可。有关如何以编程方式删除追踪,请参阅删除追踪

Deleting traces
提示

按住 Shift+点击可快速选择范围内的所有追踪。

编辑标签

您还可以通过 UI 编辑追踪上的键值标签。有关追踪标签的更多详细信息,请参阅追踪标签

Editing tags

将追踪导出到数据集

您可以通过点击操作下拉菜单中的“添加到评估数据集”操作,将追踪导出到评估数据集

Adding traces to evaluation dataset

Jupyter Notebook 集成

注意

MLflow 追踪 Jupyter 集成在 MLflow 2.20 及以上版本中可用。

您还可以在 Jupyter Notebook 中直接查看追踪 UI,从而无需离开开发环境即可调试应用程序。

Jupyter Trace UI

此功能需要使用 MLflow 跟踪服务器,因为 UI 资源是从这里获取的。要开始使用,只需确保将 MLflow 跟踪 URI 设置为您的跟踪服务器(例如 mlflow.set_tracking_uri("https://:5000"))。

默认情况下,追踪 UI 将自动显示在以下事件中:

  1. 当单元格代码生成追踪时(例如通过自动追踪,或通过运行手动追踪的函数)
  2. 当调用 mlflow.search_traces()
  3. 当显示 mlflow.entities.Trace() 对象时(例如通过 IPython 的 display 函数,或者当它是单元格中返回的最后一个值时)

要禁用显示,只需调用 mlflow.tracing.disable_notebook_display(),并重新运行包含 UI 的单元格。要再次启用它,请调用 mlflow.tracing.enable_notebook_display()