可视化跟踪#
实验性功能
这是一个实验性功能,随时可能更改。了解更多。
Prompt Flow 在 promptflow-devkit
中提供了多个跟踪工具包。本页将介绍跟踪 UI,用户可以在其中更好地捕获和可视化流的内部执行细节。通过跟踪 UI,用户可以跟踪和可视化流执行,这为开发人员理解执行的内部细节提供了关键的洞察力。
概述#
安装 promptflow-devkit
后,使用 start_trace
运行 Python 脚本将生成以下示例输出
Prompt flow service has started...
You can view the traces from local: http://127.0.0.1:<port>/v1.0/ui/traces/?#collection=basic
点击 URL,用户将看到一个跟踪列表,对应于每个 LLM 调用:
点击一行记录,将显示 LLM 详细信息,带有聊天窗口体验,以及其他 LLM 调用参数:
当结合跟踪和流时,跟踪 UI 提供了流执行更全面的视图,用户可以轻松跟踪流执行细节,并调试流执行问题。
流测试#
如果您的应用程序是使用 DAG 流创建的,所有流测试和批量运行都将自动启用跟踪功能。以 chat_with_pdf 为例。
运行 pf flow test --flow .
,每个流测试都将在跟踪 UI 中生成一行记录
点击一条记录,跟踪细节将以树状视图可视化。
针对批量数据进行评估#
继续使用 chat_with_pdf 作为示例,要触发批量运行,您可以在文件夹下使用以下命令(您可以从运行和评估流了解更多关于以下命令的作用)
pf run create --flow . --data "./data/bert-paper-qna.jsonl" --column-mapping chat_history='${data.chat_history}' pdf_url='${data.pdf_url}' question='${data.question}'
然后您将获得一个与运行相关的跟踪 URL,例如 http://127.0.0.1:<port>/v1.0/ui/traces?run=chat_with_pdf_20240226_181222_219335
搜索#
跟踪 UI 支持用于搜索体验的简单 Python 表达式,如下 GIF 所示
目前它支持
运算符
布尔值:
and
和or
比较:
==
、!=
、>
、>=
、<
和<=
可搜索字段
元数据:
name
、kind
和status
时间:
start_time
令牌计数:
cumulative_token_count.total
、cumulative_token_count.prompt
和cumulative_token_count.completion
您还可以通过点击搜索编辑框右侧的按钮找到提示