智能体#
Agents 可在可视化工作流中连接图像、模型、条件和操作。使用 YOLO 判断哪些图像需要进一步检查,让视觉语言模型为图像提供说明,或将选定图像收集到数据集中以供审核。
在侧边栏中打开 Agents,或前往 platform.ultralytics.com/agents。所有已登录用户都能在个人和团队工作区的侧边栏中看到 Agents,无需启用 Early access 设置。

运行你的第一个工作流#
- 打开 Agents,点击 Add block > Templates,然后选择 YOLO → VLM Monitor。
- 选择 Input image 块,选取一个已上传的数据集,然后选择一张包含人物的图像。共享试用版请使用不超过 4 百万像素的图像。
- 保留默认的 YOLO26 nano 模型。当 YOLO 检测到至少一个人物时,条件即通过。
- 选择 Describe the scene,选取一个视觉语言模型并输入提示词。如果你尚未添加对应服务商密钥,请在 Settings > API Keys 中添加对应的服务商密钥。在团队工作区中,请让工作区所有者添加或替换服务商密钥。
- 小规模运行时,保留选中的 Shared trial · 60 seconds,然后点击 Run。
- 观察各个块的更新,并检查 Output。如果没有检测到人物,条件会结束,不会运行描述分支。
你可以先运行草稿,再保存。使用 Save workflow 为工作流命名并保存,以便日后使用;更改后请再次保存。点击 Python 按钮可查看生成的工作流代码。
从模板开始#
| 模板 | 工作流 | 适用场景 |
|---|---|---|
| YOLO → VLM Monitor | 图像 → YOLO → 条件 → 视觉语言模型 → Output | 仅在检测到人物时描述场景 |
| Collect Uncertain Detections | 数据集 → 部署 → 置信度条件 → 数据集 | 从检测结果不确定的图像中构建审核集 |
| Capture and Alert | 图像 → YOLO → 条件 → 数据集和 Slack | 根据同一条件保存图像并通知频道 |
模板是可编辑的起点。运行之前,请为你的工作区选择图像、部署、目标数据集和集成服务。点击 Run 时才会运行这些工作流;Monitor 模板会分析选定的输入图像。

选择运行位置#
Run 旁边的执行选择器用于选择工作流运行所用的硬件。
| 选项 | 适用场景 | 限制和定价 |
|---|---|---|
| Shared trial · 60 seconds | 试用小型工作流 | 最多运行 60 秒,输入图像总数不超过 20 张且每张不超过 4 百万像素,模型/服务商调用次数不超过 20 次;使用一个本地 YOLO 模型,且该模型必须是官方 YOLO26 nano 模型 |
| Existing dedicated deployment | 更大的数据集、更长时间的运行,或其他本地模型 | 使用该部署已有的硬件和定价,包括符合条件的免费专用部署;工作流总时长或图像数量没有上限 |
| New deployment… | 通过构建器创建专用硬件 | 打开现有的部署创建和定价对话框;选择资源并等待部署就绪 |
共享试用版每分钟最多运行三次;专用部署上的运行没有速率限制。Platform 运行最多支持 20 个块。模型/服务商调用包括 YOLO、视觉语言模型、部署预测,以及 Slack 和 Webhook 操作;分支处理可能会增加每张输入图像的调用次数。
专用运行会在所选部署上通过带检查点的请求持续执行。关闭或重新加载浏览器不会停止运行。现有部署限制和服务商限制仍然适用,语言模型用量由与你的密钥关联的服务商计费。查看部署定价,了解硬件选项。
Deployment 块用于选择预测步骤所用的端点。执行选择器用于选择工作流本身的运行位置。你可以为这两者选择同一个专用部署。

配置块#
| 块 | 用途 |
|---|---|
| Image | 上传图像或视频(默认最多采样 10 帧),或者从已上传的数据集中选择一张图像 |
| Dataset(无输入连接) | 从选定的数据集和划分中读取图像,并可配置输入数量上限 |
| YOLO | 运行官方模型或工作区中的训练模型 |
| Deployment | 通过已有的就绪 Platform 部署进行预测 |
| LLM | 将图像和上游上下文发送给选定的语言模型或视觉语言模型 |
| Gate | 使用条件或执行频率控制下游执行 |
| Dataset(带输入连接) | 将输入图像添加到目标数据集 |
| Slack | 向工作区已连接的 Slack 频道发送消息 |
| Webhook | 将 JSON 请求体发送到 HTTPS 端点:POST |
| 导出 | 使用 Platform 现有的导出工作流导出模型 |
| Output | 显示上游结果 |
选择一个块可编辑其设置。将输出连接到另一个块,即可向下游传递结果。一个输出可以连接多个块:例如,将一个条件同时连接到目标数据集和 Slack。每个分支都会使用同一评估后的条件。
使用条件筛选检测结果#
检测数量和置信度筛选都使用同一个 Gate 块。选择上游结果、任意类别或特定类别,以及比较方式。例如:
- 人物数量 ≥ 1:检测到至少一个人物时继续。
- 置信度在 0.25 到 0.5 之间:至少有一个匹配的检测结果落在该闭区间内时继续。
- 指定类别且置信度在某个范围内:仅收集该类别的不确定检测结果。
置信度筛选会检查每个单独的检测结果。一张图像的检测分数为 0.3 和 0.9 时,只要有一个检测结果匹配,图像就会通过 0.25–0.5 范围筛选。没有检测结果的图像无法通过置信度条件。请将预测模型的置信度阈值设得足够低,以保留你想要评估的检测结果。
未匹配的条件会结束执行,且不会产生下游输出。该图像不会触发与条件相连的操作。

收集图像以供审核#
打开 收集不确定检测结果,选择源数据集和数据划分,选择你的预测部署,并配置置信度范围。在最后的 数据集 区块中选择一个现有目标数据集。如有需要,请先在数据集页面创建数据集。
目标数据集会在其 train 数据划分中接收未标注的原始图像。已有副本会被跳过,并且仍受常规数据集存储配额限制。源标签和模型预测不会作为标注复制过去。打开目标数据集中的现有标注编辑器,审核并标注收集到的图像。
请使用工作区有权访问的托管图像,以及你有编辑权限的目标数据集。不能将已连接的云存储数据集和本地部署数据集用作收集目标。
发送条件式 Slack 提醒#
在 设置 > 集成 中连接 Slack,然后将条件连接到 Slack 区块。输入消息,并使用 {output} 纳入上游结果。捕获并提醒也会将同一条件连接到数据集,因此匹配的图像会被收集,并向已连接的频道发送消息。
工作流 Slack 消息在区块中配置。它们与设置中的训练、导出和部署通知选项相互独立。
发送 Webhook#
Webhook 区块会针对每个结果向公共 HTTPS URL 发送一个包含 Content-Type: application/json 的 POST,因此任何接受 JSON 请求的服务都能接收条件的结果。输入目标 URL 和最多 10,000 个字符的 JSON 正文,并在字符串中加入 {output};该占位内容会被上游结果替换。此区块是终端区块,不接受任何出站连接。系统不会跟随重定向,连接会在 5 秒后超时,非 2xx 响应会导致区块失败。
跟踪进度并停止运行#
活动区块会显示绿色旋转图标。已完成的区块会显示绿色勾号和绿色轮廓;失败的区块会显示红色轮廓。计数会显示已到达各区块的输入数量;条件不匹配时,下游区块不会执行。
重新加载页面后,会恢复运行进度和所选的执行部署。匹配工作流的已完成结果仍会显示。点击 停止 可取消活动运行;取消操作会等到正在执行的区块到达可取消节点后才生效。停止或删除其执行部署也会取消工作流。

通过 API 管理智能体#
智能体 API 可通过代码列出、保存和删除智能体;Python SDK 在 ultralytics-platform>=0.1.74 中将其公开为 client.agents。保存操作会返回与画布上显示相同的区块错误。运行仍需从画布启动:在 https://platform.ultralytics.com/agents?workflow={id} 打开已保存的智能体,然后点击 运行。