Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
254 lines
28 KiB
Markdown
254 lines
28 KiB
Markdown
### 核心内容概括
|
||
|
||
1. **逐任务性能列表 (Per-Task Performance List):**
|
||
- 详细列出了 Agent 在116个不同任务上的表现。
|
||
- 关键指标包括:成功率、平均任务长度(步数)、耗时等。
|
||
2. **按能力标签与难度划分的性能分析 (Performance Analysis by Capability Tag and Difficulty):**
|
||
- 将所有任务按照所需的核心能力和难度进行分类。
|
||
- 统计并展示 Agent 在每种能力/难度组合下的平均成功率。
|
||
|
||
### 第一部分:逐任务性能分析
|
||
|
||
---
|
||
|
||
### **1. 表格列释义**
|
||
|
||
我们首先明确每个数据列的含义:
|
||
|
||
- `task`: 任务的唯一名称,清晰地描述了任务目标。例如 `AudioRecorderRecordAudio` (录音机录制音频) 或 `ContactsAddContact` (联系人应用中添加联系人)。
|
||
- `task_num`: 任务的数字编号,从0到115。
|
||
- `num_complete_trials`: 已完成的尝试次数。在这里,每个任务都只尝试了1次。
|
||
- `mean_success_rate`: 平均成功率。由于每个任务只尝试1次,`1.00` 代表成功,`0.00` 代表失败。
|
||
- `mean_episode_length`: 平均回合长度。一个“回合”指 Agent 为完成一次任务所执行的**总步数**(如点击、输入、滑动等)。这个数值越高,通常意味着任务越复杂或 Agent 走了弯路。对于失败的任务,此值为 `NaN` (Not a Number),表示没有成功的记录。
|
||
- `total_runtime_s`: 完成该任务总共消耗的时间,单位是秒 (s)。
|
||
- `num_fail_trials`: 失败的尝试次数。`0.00` 表示该次尝试成功,`1.00` 表示失败。
|
||
|
||
### **2. 洞察与发现**
|
||
|
||
1. 压倒性的成功率:
|
||
|
||
从 task_num 0 到 81,以及从 93 到 101,Agent 的 mean_success_rate 均为 1.00。这表明 Agent 在处理绝大多数结构化、明确的任务时表现得非常出色且稳定。这些任务涵盖了:
|
||
|
||
- **基础应用操作**:相机、时钟、录音机、联系人。
|
||
- **文件管理**:删除文件、移动文件。
|
||
- **内容创作与编辑**:在 `Markor`(一个笔记应用)中创建/编辑笔记。
|
||
- **系统设置**:开关蓝牙、调节亮度。
|
||
2. 明确的失败群:
|
||
|
||
失败的案例非常集中,主要出现在 task_num 82 以及 102 至 115 的任务中。
|
||
|
||
- **`SimpleSmsReplyMostRecent` (task 82):** 回复最近一条短信,失败。
|
||
- **`SystemWifiTurn...` (tasks 102, 103, 104, 105):** 与开关Wi-Fi及验证状态相关的任务,有多次失败。
|
||
- **`Tasks...` (tasks 106 - 111):** 与 `Tasks`(待办事项)应用相关的一系列查询任务,全部失败。
|
||
- **`Turn...` (tasks 112, 113):** 涉及Wi-Fi和蓝牙组合操作的任务,失败。
|
||
- **`Vlc...` (tasks 114, 115):** 在VLC播放器中创建播放列表的任务,失败。
|
||
3. 任务复杂度的体现:
|
||
|
||
观察 mean_episode_length(平均步数),我们可以评估任务的复杂度。
|
||
|
||
- **简单任务**:`ClockStopWatchPausedVerify` (task 7) 仅需 3 步。
|
||
- **复杂任务**:`RecipeAddMultipleRecipesFromMarkor2` (task 48) 需要 44 步,`OsmAndTrack` (task 44) 需要 41 步。这说明 Agent 能够维持一个较长的操作序列来完成复杂的目标。
|
||
|
||
**d. 总体性能平均值 (Average):**
|
||
|
||
- `mean_success_rate`: **`0.88`**,即 88% 的总体成功率。这是一个非常高的指标,说明 Agent 具有很强的泛化能力和执行能力。
|
||
- `num_fail_trials`: **`0.12`**,即 12% 的失败率,与成功率相对应。
|
||
- `mean_episode_length`: **`13.45`** 步,所有成功任务的平均操作步数。
|
||
|
||
### 第二部分:按能力标签与难度划分的性能分析
|
||
|
||
### **1. 表格解读**
|
||
|
||
这张表格是一个诊断矩阵。它不再关注单个任务的成败,而是将任务解构成一系列所需的核心能力(`tags`),并在不同的难度等级(`easy`, `medium`, `hard`)下评估 Agent 的表现。表格中的数值是对应类别下所有任务的**平均成功率**。
|
||
|
||
- **`tags`**: 描述任务所需要的一种或多种核心能力。例如:
|
||
- `complex_ui_understanding`: 理解复杂或非标准的界面布局。
|
||
- `math_counting`: 需要进行数学计算或计数。
|
||
- `transcription`: 需要从一种形式(如图像、视频)转录信息到文本。
|
||
- `information_retrieval`: 从屏幕上寻找并提取特定信息。
|
||
- **`difficulty`**: 任务的难度级别。
|
||
- **数值**: 该 `tag` 和 `difficulty` 组合下所有任务的平均成功率。`1.0` 表示100%成功, `0.0` 表示0%成功, 或 `NaN` 表示数据集中没有该组合的任务。
|
||
|
||
### **2. Agent 的能力画像**
|
||
|
||
### **核心优势 (Core Strengths)**
|
||
|
||
Agent 在以下几个方面表现出了近乎完美或非常强的能力:
|
||
|
||
- **跨应用操作 (`multi_app`)**: 在 `easy` 级别下成功率为 `1.00`。这表明 Agent 能够可靠地在不同应用程序之间进行切换以完成任务。
|
||
- **记忆 (`memorization`)**: 在 `easy` 级别下成功率为 `1.00`。Agent 具备有效的短期记忆能力,能够记住先前步骤的信息(例如,一个文件名)并在后续步骤中使用它。
|
||
- **搜索 (`search`)**: 在 `medium` 级别下成功率为 `1.00`,在 `easy` 级别下也有 `0.60` 的表现。这说明 Agent 擅长使用应用内或系统级的搜索功能来定位信息。
|
||
|
||
### **关键短板 (Critical Weaknesses)**
|
||
|
||
- **转录 (`transcription`)**: **成功率为 `0.00`**。这是最严重的失败,表明 Agent **完全不具备**从图像或视频等非结构化源头准确提取并转录信息到文本字段的能力。这可能源于其视觉模型(Vision Model)在光学字符识别(OCR)上的缺陷。
|
||
- **数学/计数 (`math_counting`)**: 在 `easy` 级别下成功率为 **`0.00`**,在中等和困难级别下也仅有 `0.33`。这是一个重大的认知缺陷。Agent 似乎无法在手机操作的情境中执行简单的数学运算或对界面元素进行计数。
|
||
- **需要预设 (`requires_setup`)**: 在 `easy` 级别下成功率为 **`0.00`**。Agent 无法处理那些需要先进行特定环境设置(例如,确保某个文件存在或某个设置开启)才能开始的任务。它可能缺乏检查前置条件并根据情况采取修正动作的能力。
|
||
- **复杂UI理解 (`complex_ui_understanding`)**: 成功率普遍很低 (`easy` 0.17, `hard` 0.14)。这是另一个核心弱点。Agent 的操作严重依赖于**标准、规范的UI设计**。一旦遇到布局复杂、控件非主流或信息密度高的界面,它就很容易“迷路”,无法准确定位到正确的交互元素。
|
||
- **信息检索 (`information_retrieval`)**: 在 `easy` 级别下成功率仅为 `0.17`。这与 `complex_ui_understanding` 弱点高度相关。即使在简单的场景下,如果信息没有以一种简单明了的方式呈现,Agent 也很难从中找到并提取出需要的内容。
|
||
|
||
---
|
||
|
||
### 第三部分:总体结论与推断
|
||
|
||
现在,我们可以将两部分的分析联系起来,形成一个完整的结论。
|
||
|
||
**`t3a_claude4_sonnet` Agent 的总体画像是:一个在执行标准、线性流程任务方面非常高效的“操作手”,但在需要深度视觉理解、逻辑推理和适应非标准环境等高级认知能力的“思考者”角色上存在明显不足。**
|
||
|
||
**为什么那些任务会失败?**
|
||
|
||
- **`SystemWifiTurn...` (tasks 102-105) 和 `Tasks...` (tasks 106-111) 等的失败**:可以高度归因于 **`complex_ui_understanding`** 和 **`information_retrieval`** 的双重失败。系统设置界面、某些设计不佳的应用(可能是 `Tasks` 应用)的UI可能不符合Agent的“预期”,导致它无法找到正确的开关或读取到正确的状态信息。
|
||
- **`SimpleSmsReplyMostRecent` (task 82) 的失败**:可能涉及 `information_retrieval`(需要准确识别出“哪一条是最近的”)和 `complex_ui_understanding`。
|
||
- 所有涉及**数学、转录、需要预设**的任务失败,其根本原因已在第二部分中清晰揭示。
|
||
|
||
### **下一步的分析与优化建议**
|
||
|
||
基于以上分析,后续的优化路径非常清晰:
|
||
|
||
1. **根因分析 (Root Cause Analysis)**: 我们目前是基于统计摘要进行的宏观推断。下一步最关键的操作,就是深入到**具体失败任务的详细操作日志**中。通过逐帧查看 Agent 的“观察 (`Observation`) -> 思考 (`Thought`) -> 行动 (`Action`)”链条,我们可以精确地看到它是在哪一步、因为什么样的错误感知或推理而导致了任务失败。
|
||
2. **模型与算法优化 (Model & Algorithm Optimization)**:
|
||
- 针对 **`complex_ui`** 问题,需要用更多样化、更复杂的UI布局数据来训练 Agent,或者开发更鲁棒的UI解析模块(例如,将UI元素解析为图结构而非仅仅是位置和文本)。
|
||
- 针对 **`transcription`** 和 **`math_counting`** 问题,可能需要在 Agent 的工具集中集成更强大的专用工具,例如一个高精度的OCR服务或一个计算器工具,并教会 Agent 何时以及如何调用这些工具。
|
||
|
||
```shell
|
||
task_num num_complete_trials mean_success_rate mean_episode_length total_runtime_s num_fail_trials
|
||
task
|
||
AudioRecorderRecordAudio 0 1.00 0.0 10.00 101.80 0.00
|
||
AudioRecorderRecordAudioWithFileName 1 1.00 0.0 20.00 326.70 0.00
|
||
BrowserDraw 2 1.00 0.0 20.00 391.40 0.00
|
||
BrowserMaze 3 1.00 1.0 16.00 195.50 0.00
|
||
BrowserMultiply 4 1.00 1.0 15.00 177.30 0.00
|
||
CameraTakePhoto 5 1.00 1.0 4.00 41.20 0.00
|
||
CameraTakeVideo 6 1.00 1.0 7.00 83.80 0.00
|
||
ClockStopWatchPausedVerify 7 1.00 1.0 3.00 30.10 0.00
|
||
ClockStopWatchRunning 8 1.00 1.0 4.00 40.80 0.00
|
||
ClockTimerEntry 9 1.00 0.0 10.00 127.10 0.00
|
||
ContactsAddContact 10 1.00 1.0 8.00 106.60 0.00
|
||
ContactsNewContactDraft 11 1.00 1.0 8.00 108.40 0.00
|
||
ExpenseAddMultiple 12 1.00 1.0 25.00 356.10 0.00
|
||
ExpenseAddMultipleFromGallery 13 1.00 0.0 32.00 455.00 0.00
|
||
ExpenseAddMultipleFromMarkor 14 1.00 0.0 24.00 325.70 0.00
|
||
ExpenseAddSingle 15 1.00 1.0 10.00 140.40 0.00
|
||
ExpenseDeleteDuplicates 16 1.00 1.0 10.00 151.50 0.00
|
||
ExpenseDeleteDuplicates2 17 1.00 1.0 15.00 381.10 0.00
|
||
ExpenseDeleteMultiple 18 1.00 1.0 11.00 152.90 0.00
|
||
ExpenseDeleteMultiple2 19 1.00 1.0 14.00 198.30 0.00
|
||
ExpenseDeleteSingle 20 1.00 1.0 5.00 65.30 0.00
|
||
FilesDeleteFile 21 1.00 1.0 10.00 129.60 0.00
|
||
FilesMoveFile 22 1.00 1.0 13.00 164.00 0.00
|
||
MarkorAddNoteHeader 23 1.00 0.0 12.00 175.70 0.00
|
||
MarkorChangeNoteContent 24 1.00 0.0 12.00 174.10 0.00
|
||
MarkorCreateFolder 25 1.00 0.0 10.00 137.10 0.00
|
||
MarkorCreateNote 26 1.00 1.0 13.00 190.50 0.00
|
||
MarkorCreateNoteAndSms 27 1.00 0.0 18.00 264.50 0.00
|
||
MarkorCreateNoteFromClipboard 28 1.00 0.0 14.00 194.60 0.00
|
||
MarkorDeleteAllNotes 29 1.00 1.0 13.00 154.80 0.00
|
||
MarkorDeleteNewestNote 30 1.00 0.0 10.00 124.70 0.00
|
||
MarkorDeleteNote 31 1.00 0.0 10.00 120.80 0.00
|
||
MarkorEditNote 32 1.00 0.0 12.00 169.60 0.00
|
||
MarkorMergeNotes 33 1.00 0.0 31.00 452.30 0.00
|
||
MarkorMoveNote 34 1.00 0.0 14.00 185.70 0.00
|
||
MarkorTranscribeReceipt 35 1.00 0.0 18.00 232.30 0.00
|
||
MarkorTranscribeVideo 36 1.00 0.0 20.00 266.70 0.00
|
||
NotesIsTodo 37 1.00 1.0 3.00 43.30 0.00
|
||
NotesMeetingAttendeeCount 38 1.00 1.0 7.00 87.80 0.00
|
||
NotesRecipeIngredientCount 39 1.00 1.0 6.00 82.70 0.00
|
||
NotesTodoItemCount 40 1.00 1.0 7.00 102.50 0.00
|
||
OpenAppTaskEval 41 1.00 1.0 3.00 35.20 0.00
|
||
OsmAndFavorite 42 1.00 1.0 10.00 148.60 0.00
|
||
OsmAndMarker 43 1.00 0.0 20.00 275.00 0.00
|
||
OsmAndTrack 44 1.00 0.0 41.00 607.30 0.00
|
||
RecipeAddMultipleRecipes 45 1.00 1.0 36.00 540.30 0.00
|
||
RecipeAddMultipleRecipesFromImage 46 1.00 0.0 24.00 316.70 0.00
|
||
RecipeAddMultipleRecipesFromMarkor 47 1.00 0.0 25.00 363.80 0.00
|
||
RecipeAddMultipleRecipesFromMarkor2 48 1.00 0.0 44.00 719.30 0.00
|
||
RecipeAddSingleRecipe 49 1.00 1.0 13.00 190.90 0.00
|
||
RecipeDeleteDuplicateRecipes 50 1.00 0.0 10.00 153.60 0.00
|
||
RecipeDeleteDuplicateRecipes2 51 1.00 0.0 24.00 348.60 0.00
|
||
RecipeDeleteDuplicateRecipes3 52 1.00 0.0 34.00 433.90 0.00
|
||
RecipeDeleteMultipleRecipes 53 1.00 0.0 24.00 328.80 0.00
|
||
RecipeDeleteMultipleRecipesWithConstraint 54 1.00 1.0 11.00 164.00 0.00
|
||
RecipeDeleteMultipleRecipesWithNoise 55 1.00 1.0 20.00 252.80 0.00
|
||
RecipeDeleteSingleRecipe 56 1.00 1.0 6.00 68.50 0.00
|
||
RecipeDeleteSingleWithRecipeWithNoise 57 1.00 1.0 7.00 84.60 0.00
|
||
RetroCreatePlaylist 58 1.00 1.0 21.00 270.50 0.00
|
||
RetroPlayingQueue 59 1.00 1.0 17.00 235.80 0.00
|
||
RetroPlaylistDuration 60 1.00 0.0 30.00 386.10 0.00
|
||
RetroSavePlaylist 61 1.00 1.0 27.00 321.30 0.00
|
||
SaveCopyOfReceiptTaskEval 62 1.00 1.0 11.00 132.40 0.00
|
||
SimpleCalendarAddOneEvent 63 1.00 0.0 14.00 202.30 0.00
|
||
SimpleCalendarAddOneEventInTwoWeeks 64 1.00 0.0 18.00 233.70 0.00
|
||
SimpleCalendarAddOneEventRelativeDay 65 1.00 0.0 17.00 231.50 0.00
|
||
SimpleCalendarAddOneEventTomorrow 66 1.00 0.0 18.00 235.70 0.00
|
||
SimpleCalendarAddRepeatingEvent 67 1.00 0.0 16.00 224.10 0.00
|
||
SimpleCalendarAnyEventsOnDate 68 1.00 0.0 10.00 164.80 0.00
|
||
SimpleCalendarDeleteEvents 69 1.00 0.0 14.00 210.00 0.00
|
||
SimpleCalendarDeleteEventsOnRelativeDay 70 1.00 0.0 3.00 45.60 0.00
|
||
SimpleCalendarDeleteOneEvent 71 1.00 0.0 12.00 186.20 0.00
|
||
SimpleCalendarEventOnDateAtTime 72 1.00 0.0 6.00 104.20 0.00
|
||
SimpleCalendarEventsInNextWeek 73 1.00 0.0 6.00 85.80 0.00
|
||
SimpleCalendarEventsInTimeRange 74 1.00 0.0 10.00 174.50 0.00
|
||
SimpleCalendarEventsOnDate 75 1.00 1.0 6.00 198.00 0.00
|
||
SimpleCalendarFirstEventAfterStartTime 76 1.00 0.0 10.00 167.50 0.00
|
||
SimpleCalendarLocationOfEvent 77 1.00 1.0 6.00 110.80 0.00
|
||
SimpleCalendarNextEvent 78 1.00 0.0 7.00 105.50 0.00
|
||
SimpleCalendarNextMeetingWithPerson 79 1.00 0.0 4.00 60.60 0.00
|
||
SimpleDrawProCreateDrawing 80 1.00 0.0 18.00 307.90 0.00
|
||
SimpleSmsReply 81 1.00 0.0 9.00 211.30 0.00
|
||
SimpleSmsReplyMostRecent 82 0.00 NaN NaN 17.30 1.00
|
||
SimpleSmsResend 83 1.00 0.0 8.00 142.40 0.00
|
||
SimpleSmsSend 84 1.00 0.0 8.00 132.70 0.00
|
||
SimpleSmsSendClipboardContent 85 1.00 0.0 8.00 132.50 0.00
|
||
SimpleSmsSendReceivedAddress 86 1.00 0.0 18.00 276.50 0.00
|
||
SportsTrackerActivitiesCountForWeek 87 1.00 0.0 10.00 180.20 0.00
|
||
SportsTrackerActivitiesOnDate 88 1.00 0.0 5.00 83.40 0.00
|
||
SportsTrackerActivityDuration 89 1.00 0.0 10.00 156.40 0.00
|
||
SportsTrackerLongestDistanceActivity 90 1.00 0.0 10.00 191.60 0.00
|
||
SportsTrackerTotalDistanceForCategoryOverInterval 91 1.00 0.0 20.00 351.00 0.00
|
||
SportsTrackerTotalDurationForCategoryThisWeek 92 1.00 0.0 10.00 187.50 0.00
|
||
SystemBluetoothTurnOff 93 1.00 1.0 8.00 90.20 0.00
|
||
SystemBluetoothTurnOffVerify 94 1.00 1.0 7.00 82.20 0.00
|
||
SystemBluetoothTurnOn 95 1.00 1.0 5.00 68.80 0.00
|
||
SystemBluetoothTurnOnVerify 96 1.00 1.0 4.00 57.10 0.00
|
||
SystemBrightnessMax 97 1.00 0.0 10.00 120.50 0.00
|
||
SystemBrightnessMaxVerify 98 1.00 0.0 10.00 131.20 0.00
|
||
SystemBrightnessMin 99 1.00 0.0 10.00 125.60 0.00
|
||
SystemBrightnessMinVerify 100 1.00 0.0 10.00 125.80 0.00
|
||
SystemCopyToClipboard 101 1.00 0.0 5.00 79.30 0.00
|
||
SystemWifiTurnOff 102 1.00 0.0 10.00 146.10 0.00
|
||
SystemWifiTurnOffVerify 103 0.00 NaN NaN 29.10 1.00
|
||
SystemWifiTurnOn 104 0.00 NaN NaN 29.90 1.00
|
||
SystemWifiTurnOnVerify 105 0.00 NaN NaN 28.80 1.00
|
||
TasksCompletedTasksForDate 106 0.00 NaN NaN 40.30 1.00
|
||
TasksDueNextWeek 107 0.00 NaN NaN 30.60 1.00
|
||
TasksDueOnDate 108 0.00 NaN NaN 30.30 1.00
|
||
TasksHighPriorityTasks 109 0.00 NaN NaN 33.80 1.00
|
||
TasksHighPriorityTasksDueOnDate 110 0.00 NaN NaN 29.20 1.00
|
||
TasksIncompleteTasksOnDate 111 0.00 NaN NaN 30.40 1.00
|
||
TurnOffWifiAndTurnOnBluetooth 112 0.00 NaN NaN 29.30 1.00
|
||
TurnOnWifiAndOpenApp 113 0.00 NaN NaN 39.20 1.00
|
||
VlcCreatePlaylist 114 0.00 NaN NaN 9.10 1.00
|
||
VlcCreateTwoPlaylists 115 0.00 NaN NaN 9.30 1.00
|
||
========= Average ========= 0 0.88 0.4 13.45 174.96 0.12
|
||
|
||
|
||
mean_success_rate
|
||
difficulty easy medium hard
|
||
tags
|
||
complex_ui_understanding 0.17 0.5 0.14
|
||
data_edit 0.36 0.5 0.0
|
||
data_entry 0.27 0.44 0.0
|
||
game_playing 0.50 - -
|
||
information_retrieval 0.17 0.4 0.0
|
||
math_counting 0.00 0.33 0.33
|
||
memorization 1.00 0.0 0.25
|
||
multi_app 1.00 0.0 0.0
|
||
parameterized 0.37 0.44 0.22
|
||
repetition 0.50 0.5 0.4
|
||
requires_setup 0.00 0.5 0.0
|
||
screen_reading 0.40 0.5 0.33
|
||
search 0.60 1.0 0.17
|
||
transcription 0.00 0.0 0.0
|
||
untagged 0.60 1.0 -
|
||
verification 0.60 - -
|
||
``` |