屏幕截图日志

UFO 还保存桌面或应用程序屏幕截图,用于调试和评估。屏幕截图日志存储在 logs/{task_name}/ 中。

UFO 生成 4 种类型的屏幕截图日志,详情如下。

干净的屏幕截图

在每个步骤中,UFO 保存桌面或应用程序的干净屏幕截图。干净的屏幕截图保存在 action_step{step_number}.png 文件中。此外,当子任务、轮次或会话完成时,也会保存干净的屏幕截图。干净的屏幕截图分别保存在 action_round_{round_id}_sub_round_{sub_task_id}_final.pngaction_round_{round_id}_final.pngaction_step_final.png 文件中。下面是一个干净屏幕截图的示例。

AppAgent Image

标注屏幕截图

UFO 还保存应用程序的标注屏幕截图,每个控件项都用数字标注,遵循 Set-of-Mark 范式。标注屏幕截图保存在 action_step{step_number}_annotated.png 文件中。下面是一个标注屏幕截图的示例。

AppAgent Image

信息

屏幕截图中只标注了选定类型的控件。它们在 config_dev.yaml 文件中的 CONTROL_LIST 字段下配置。

提示

不同类型的控件用不同的颜色标注。您可以在 config_dev.yaml 文件中的 ANNOTATION_COLORS 字段下配置颜色。

拼接屏幕截图

UFO 还保存应用程序的拼接屏幕截图,其中干净和标注屏幕截图并排拼接在一起。拼接屏幕截图保存在 action_step{step_number}_concat.png 文件中。下面是一个拼接屏幕截图的示例。

AppAgent Image

信息

您可以在 config_dev.yaml 文件中的 CONCAT_SCREENSHOT 字段下配置是向 LLM 提供拼接屏幕截图,还是提供单独的干净和标注屏幕截图。

选定控件屏幕截图

UFO 保存选定控件项的屏幕截图以进行操作。选定控件屏幕截图保存在 action_step{step_number}_selected_controls.png 文件中。下面是一个选定控件屏幕截图的示例。

AppAgent Image

信息

您可以在 config_dev.yaml 文件中的 INCLUDE_LAST_SCREENSHOT 字段下配置是否在上一步向 LLM 提供选定控件屏幕截图以增强上下文。