云端训练#
Ultralytics Platform 云端训练支持在云端 GPU 上进行一键式训练,让模型训练无需复杂的配置即可进行。使用实时指标流式传输和自动检查点保存功能训练 YOLO 模型。
graph LR
A[Configure]:::start --> B[Start Training]:::proc
B --> C[Provision GPU]:::proc
C --> D[Download Dataset]:::proc
D --> E[Train]:::proc
E --> F[Stream Metrics]:::proc
F --> G[Save Checkpoints]:::proc
G --> H[Complete]:::out
classDef start fill:#4CAF50,color:#fff
classDef proc fill:#2196F3,color:#fff
classDef out fill:#9C27B0,color:#fff训练对话框#
点击任意项目或数据集页面上的 New Model,即可从平台界面开始训练。训练对话框包含两个标签页:Cloud Training 和 Local Training。当选定的数据集位于 On Premise 主机上时,第一个标签页将变为 On Premise,且 Local Training 标签页会被隐藏——该数据集只能在其自身的主机上进行训练,这需要 Enterprise 计划以及一个连接且在线的 Worker。

第 1 步:选择基础模型#
选择官方 Ultralytics 模型或你自己的已完成模型之一:
| 标签页 | 描述 |
|---|---|
| 官方 | YOLO26(推荐)、YOLO11、YOLOv8 和 YOLOv5 项目模型 |
| My Models | 你已完成或上传的模型,按项目分组以进行微调 |
在每个标签页中,模型按规范顺序以任务进行分组,并按大小排序。选择器会将官方模型过滤为与所选数据集兼容的任务。YOLO26 包含大小从 nano 到 xlarge 的 Detect、Segment、Semantic、Depth、Classify、Pose 和 OBB 变体。
深度数据集可以使用数据集的 depth_scale 上传,其目标值为以米为单位的浮点数 NPY 格式或 uint16 PNG 格式。参见深度数据集格式。
第 2 步:选择数据集#
选择要用于训练的数据集(请参阅 Datasets):
| 选项 | 描述 |
|---|---|
| 官方 | 来自 Ultralytics 的精选数据集 |
| 你的数据集 | 你已上传的数据集 |
数据集必须处于 ready 状态,且训练集至少有 1 张图像、验证集或测试集至少有 1 张图像、至少有 1 张带有标签的图像以及至少一个类别名称。分类数据集还要求训练集的图像必须带有标签,姿态数据集必须定义关键点形状。深度数据集则要求在 train 中有一个配对图,在 val 中有两个配对图;未配对的图像将被排除。
当所选模型无法训练该数据集任务时,会出现任务不匹配警告,并且在选择兼容的模型之前,Start Training 保持禁用状态。分割数据集接受分割或语义模型;其他数据集任务则需要匹配的模型任务。请参阅任务指南。
第 3 步:配置参数#
设置核心训练参数:
| 参数 | 描述 | 默认值 |
|---|---|---|
| Epochs | 训练迭代次数 (1-10000) | 100 |
| Batch Size | 每轮迭代的样本数(-1 会自动适配可用 VRAM,或者为 1-512) | -1 (自动) |
| Image Size | 输入分辨率滑块,32-1280,步长为 32 | 640 |
| 名称 | 训练任务的可选名称 | 自动 |
当字段失去焦点时,超出参数范围的输入值会被钳位。
滑块在 1280 处停止,但 YAML 编辑器接受最大至 4096 的尺寸。当超过 1280 时会出现警告,因为更大的分辨率会大幅增加 GPU 内存使用量、训练时间和成本。
第 4 步:高级设置(可选)#
展开 Advanced Settings 以访问完整的基于 YAML 的参数编辑器,其中包含按组组织的 50 多个训练参数(参见配置参考):
| 分组 | 参数量 |
|---|---|
| Learning Rate(学习率) | lr0, lrf, momentum, weight_decay, warmup_epochs, warmup_momentum, warmup_bias_lr |
| Optimizer | auto(默认), SGD, MuSGD, Adam, AdamW, NAdam, RAdam, RMSProp, Adamax |
| Loss Weights | box, cls, dfl, pose, kobj, label_smoothing |
| Color Augmentation | hsv_h, hsv_s, hsv_v |
| Geometric Augmentation | degrees, translate, scale, shear, perspective |
| Flip & Mix Augmentation | flipud, fliplr, mosaic, mixup, copy_paste |
| Training Control | epochs, batch, imgsz, pretrained, patience, time, seed, deterministic, amp, cos_lr, compile, close_mosaic, save_period |
| Dataset | fraction, freeze, single_cls, rect, multi_scale, val, resume |
| Device & Inference | device, cache, workers, dropout, iou, max_det |
参数具有任务感知能力(例如,copy_paste 仅对 segment 任务显示,pose/kobj 仅对 pose 任务显示,dropout 仅对 classify 显示)。当值与默认值不同时,会出现 Modified 徽标,你可以使用重置按钮将所有内容重置为默认值。只有非默认的高级值才会发送到训练作业(基本的 epochs、batch 和图像尺寸参数始终包含在内),因此生成的命令保持可读性。
示例:针对小数据集调整增强策略
对于小型数据集(<1000 张图像),请增加数据增强以减少过拟合:
mosaic: 1.0 # Keep mosaic on
mixup: 0.3 # Add mixup blending
copy_paste: 0.3 # Add copy-paste (segment only)
fliplr: 0.5 # Horizontal flip
degrees: 10.0 # Slight rotation
scale: 0.9 # Aggressive scaling保存数据集版本(可选)#
启用 Save Dataset Version 以将模型链接到平台托管数据集的不可变版本。平台会检查数据集内容是否发生更改,若未更改则重用匹配的版本,仅在必要时创建新的编号版本。训练过程随后会使用该确切的 NDJSON 快照,并在模型上记录其版本号和内容哈希。
即使你之后添加或删除了图像、编辑了标注或更改了数据集划分,这也能保留运行所使用的数据。你可以在数据集的 Models 和 Versions 选项卡中找到链接的版本。
Save Dataset Version 对于连接的云存储和本地(On Premise)数据集不可用。你还可以从版本标签页手动创建快照。
第 5 步:选择 GPU(云端选项卡)#
从 Ultralytics Cloud 中选择你的 GPU:

| GPU | 架构 | 显存 (VRAM) | 每小时费用 | 最适用场景 |
|---|---|---|---|---|
| RTX 2000 Ada | Ada | 16 GB | $0.24 | 小规模数据集、测试 |
| RTX A4500 | Ampere | 20 GB | $0.25 | 中小型数据集 |
| RTX 4000 Ada | Ada | 20 GB | $0.26 | 中等规模数据集 |
| RTX A5000 | Ampere | 24 GB | $0.27 | 中等规模数据集 |
| L4 | Ada | 24 GB | $0.39 | 推理优化 |
| A40 | Ampere | 48 GB | $0.44 | 较大的批次大小 |
| RTX 3090 | Ampere | 24 GB | $0.46 | 通用训练 |
| RTX A6000 | Ampere | 48 GB | $0.49 | 大型模型 |
| RTX PRO 4000 | Blackwell | 24 GB | $0.57 | 预算级 Blackwell |
| RTX PRO 4500 | Blackwell | 32 GB | $0.64 | 出色的性价比 |
| RTX 4090 | Ada | 24 GB | $0.69 | 最佳性价比 |
| RTX 6000 Ada | Ada | 48 GB | $0.77 | 大批量训练 |
| L40S | Ada | 48 GB | $0.86 | 大批量训练 |
| RTX PRO 5000 | Blackwell | 48 GB | $0.96 | 大批量训练 |
| RTX 5090 | Blackwell | 32 GB | $0.99 | 最新一代消费级显卡 |
| L40 | Ada | 48 GB | $0.99 | 大型模型 |
| A100 PCIe | Ampere | 80 GB | $1.39 | 生产环境训练 |
| A100 SXM | Ampere | 80 GB | $1.49 | 生产环境训练 |
| RTX PRO 6000 | Blackwell | 96 GB | $2.09 | 推荐默认配置 |
| H100 PCIe | Hopper | 80 GB | $2.89 | 高性能训练 |
| H100 NVL | Hopper | 94 GB | $3.19 | 极致性能 |
| H100 SXM | Hopper | 80 GB | $3.29 | 最快训练 |
| H200 NVL | Hopper | 143 GB | $3.39 | 最大内存 |
| H200 SXM | Hopper | 141 GB | $4.39 | 极致性能 |
| B200 | Blackwell | 180 GB | $5.89 | 大型模型 (Pro+) |
| B300 | Blackwell | 288 GB | $7.39 | 超大型模型 (Pro+) |
- RTX PRO 6000: 96 GB Blackwell,大多数任务的推荐默认配置
- A100 SXM: 80 GB HBM2e — 对于大批量或更大模型来说是强有力的选择
- H100 PCIe / H100 SXM / H100 NVL: 80–94 GB Hopper,适合对时间敏感的训练(适用于所有计划)
- H200 NVL / H200 SXM: 141–143 GB Hopper,适合高内存负载(适用于所有计划)
- B200 / B300:用于前沿工作负载的 180–288 GB NVIDIA Blackwell —— 需要 Pro 或 Enterprise
对话框显示你当前的 balance 和一个 Top Up 按钮。成本卡会估算你的配置(模型大小、数据集图像、epochs、图像大小、批大小、优化器和 GPU 速度)的总持续时间和价格,还会报告每轮预计秒数和数据集图像数量。
GPU 选择器反映了实时的云端库存,因此容量不足的选项会被标记。如果作业仍然无法分配到你所选的 GPU 上,平台会报告短缺,并将你的选择切换为最接近的可用 GPU——首先匹配 VRAM,然后是速度,最后是价格——并告知你新的 VRAM 和每小时费率,以便你可以立即开始或重新选择。
选择比 RTX PRO 6000 便宜的 GPU 可使你的作业有资格使用 Ultralytics 管理的基础设施。当该容量空闲时,运行将在 RTX PRO 6000 上执行,但仍按你所选 GPU 的费率计费,因此运行的速度可以比在所选 GPU 上更快、成本更低——升级本身绝不会让运行变慢或更昂贵。
第 6 步:开始训练#
点击 Start Training 启动你的任务。平台将:
- 启用 Save Dataset Version 后解析不可变数据集版本
- 分配 GPU 实例
- 下载你的数据集
- 开始训练
- 实时流式传输指标
重新训练现有模型会复用相同的模型页面,并在创建新作业后清除前一次运行的图表、控制台输出、系统指标和错误状态。在配置计算资源之前失败的运行会保持早期的结果不变。
训练任务生命周期#
训练任务将经历以下状态:
| 状态 | 描述 |
|---|---|
| Pending | 任务已提交,等待 GPU 分配 |
| Starting(正在启动) | GPU 已分配,正在下载数据集和模型 |
| Running(运行中) | 训练进行中,实时指标流式传输 |
| Completed(已完成) | 训练成功完成 |
| Failed(失败) | 训练失败(请查看控制台日志了解详细信息) |
| Cancelled(已取消) | 训练已被用户取消 |
控制台流中的致命 Python 错误(回溯、CUDA 内存不足错误或失败的 CUDA 初始化)会立即结束运行,而不会等待超时,提取出的消息会显示在模型页面的错误横幅中,并带有 View full console logs 和 Retry Training 操作。停止报告活动达数小时的运行会被自动标记为失败,并释放其计算资源。
若想在不保持此页面打开的情况下接收完成和失败的结果,请连接 Slack alerts。
新账户可获得注册额度 —— 个人邮箱 5 美元,公司邮箱 25 美元。在 Settings > Billing 中检查你的余额。

监控训练#
在模型页面的 Train 选项卡中查看实时训练进度:
图表子选项卡#

图表按指标系列分组,出现的组取决于运行报告的内容:
| 分组 | 内容 |
|---|---|
| Metrics(指标) | 任务指标 — 检测的 mAP50、mAP50-95、精确度和召回率;其他任务请参见模型 |
| Loss(损失) | 每个损失分量对应一个图表,其中训练系列为实线,验证系列为虚线 |
| Learning Rate(学习率) | lr/pg0, lr/pg1, lr/pg2 |
每个组都可以折叠,可以从组菜单中隐藏或显示单个图表,并且可以拖动和调整图表大小——布局会被记住以供下次使用。
控制台子选项卡#
支持 ANSI 颜色、进度条和致命错误检测的实时控制台输出。保留最后 2000 行,可以切换时间戳,并且可以将整个日志复制为纯文本。
系统子选项卡#
实时主机卡(主机名、CPU、GPU、RAM 和磁盘总计)外加针对 CPU 和 RAM 使用率、GPU 利用率和内存、GPU 温度、网络 I/O 以及磁盘 I/O 的每轮图表。
检查点#
最佳检查点(best.pt)在训练期间会定期上传到平台,并在运行结束时再次上传,因此下载、导出和部署始终使用迄今为止产生的最佳 epoch。如果运行被取消,则保留取消前上传的检查点。
取消训练#
点击模型页面上 Run Information 卡片中的 Cancel 并确认该操作。对于云端训练,平台会停止作业、释放其计算资源,并收取取消前所消耗的已过去 GPU 时间。对于本地训练,取消操作会向进程发出信号,使其在下一个 epoch 边界停止并保留部分结果——运行会在退出之前上传其拥有的内容。
远程训练#
graph LR
A[Local GPU]:::start --> B[ultralytics Package]:::proc
B --> C[Train]:::proc
C --> D[Stream Metrics]:::proc
D --> E[Platform Dashboard]:::out
classDef start fill:#4CAF50,color:#fff
classDef proc fill:#2196F3,color:#fff
classDef out fill:#9C27B0,color:#fff使用你自己的硬件进行训练,同时将指标流式传输至平台。
平台集成需要 ultralytics>=8.4.120。较低版本将无法与平台协同工作。
pip install -U ultralytics设置 API Key#
- 前往
Settings > API Keys - 创建一个新密钥(或者在你打开本地训练选项卡时,平台会自动创建一个)
- 设置环境变量:
export ULTRALYTICS_API_KEY="YOUR_API_KEY"使用流式传输进行训练#
使用 project 和 name 参数来流式传输指标:
yolo train model=yolo26n.pt data=coco.yaml epochs=100 \
project=username/my-project name=experiment-1训练对话框中的 Local Training(本地训练)选项卡会显示一个预配置的命令,其中包含了你的 API Key、所选参数和高级参数。
使用平台数据集#
使用存储在平台上的数据集进行训练,并使用 ul:// URI 格式:
yolo train model=yolo26n.pt data=ul://username/datasets/my-dataset epochs=100 \
project=username/my-project name=exp1ul:// URI 格式会自动下载并配置你的数据集。该模型会自动与平台上的数据集关联(请参阅使用平台数据集)。
账单#
训练成本基于 GPU 使用量:
成本预估#
在训练开始之前,平台会根据你的数据集大小、模型大小、图像大小、批大小、epochs 和所选 GPU 来估算总持续时间和成本。估算值是近似的;实际使用量才是计费依据。
影响成本的因素:
| 因素 | 影响 |
|---|---|
| 数据集大小 | 图像越多 = 训练时间越长(计算量与数据集大小大致呈线性缩放) |
| 模型大小 | 更大的模型 (m, l, x) 训练速度比 (n, s) 更慢 |
| Epoch 数量 | 与训练时间直接成正比 |
| Image Size | 更大的 imgsz 会大幅增加计算量 — 1280px 的成本是 640px 的数倍 |
| Batch Size | 更大的批次比小的批次训练效率更高 |
| GPU 速度 | 更快的 GPU 可以缩短训练时间,从而部分抵消其较高的每小时费率 |
| Optimizer | MuSGD 大约需要其他优化器两倍的时间 |
| 启动开销 | 最多 5 分钟用于实例初始化、数据下载和预热(随数据集大小而变) |
估算基于真实的云端训练运行,并且估算始终使用你所选的 GPU — 因此路由到更快 Ultralytics 基础设施的作业会比其估算时间提前完成。
成本示例#
成本预估均为近似值,取决于许多因素。训练对话框会在你开始训练前显示实时预估值。
| 场景 | GPU | 预估成本 |
|---|---|---|
| 500 张图像,YOLO26n,50 个 Epoch | RTX 4090 | ~$0.03 |
| 1000 张图像,YOLO26n,100 个 Epoch | RTX PRO 6000 | ~$0.23 |
| 5000 张图像,YOLO26s,100 个 Epoch | H100 SXM | ~$1.56 |
计费流程#
graph LR
A[Estimate Cost]:::start --> B[Balance Check]:::decide
B --> C[Train and Meter GPU Time]:::proc
C --> D[Settle at Terminal State]:::out
classDef start fill:#4CAF50,color:#fff
classDef proc fill:#2196F3,color:#fff
classDef decide fill:#FF9800,color:#fff
classDef out fill:#9C27B0,color:#fff云训练计费流程:
- 预估:在训练开始前计算成本
- 余额检查:启动前检查可用点数
- 训练和计量:作业在所选算力上运行,并且在运行过程中按步骤从你的余额中扣除累积的 GPU 时间
- 结算:在终止状态下,将扣除剩余的尾部时间,并为整个运行记录单笔 Training 交易
账单会跟踪实际的 GPU 时间,包括云 GPU 启动后被取消或失败的运行片段。
按任务状态计费#
| 状态 | 是否收费? |
|---|---|
| Completed(已完成) | 是 — 实际使用的 GPU 时间 |
| Cancelled(已取消) | 是 — 从开始到取消的 GPU 时间 |
| Failed(失败) | 是,当云端计算启动时 —— 使用的已耗费 GPU 时间 |
| 卡住 | 是 —— 直到自动终止所耗费的 GPU 时间 |
停止报告活动达数小时的运行会被自动标记为失败;实例会被终止,并结算已过去的 GPU 时间。你自己的硬件上的远程运行只会简单地标记为失败,无需计费。
在云 GPU 启动之前的验证或启动失败不会产生需要计费的计算使用量。一旦 GPU 运行起来,已完成、已取消、失败以及自动终止的任务将根据实际消耗的挂钟 GPU 时间进行结算。
支付方式#
云端训练费用从你的 Platform 信用余额中扣除。
训练开始需要正数的可用余额以及足够的积分来支付估计的作业成本,其中每个估计值至少预留 15 分钟的 GPU 时间。如果有多个运行同时处于活动状态,该检查还会考虑这些运行未计费的剩余部分。
查看训练成本#
在启动云端任务之前,训练对话框会显示你当前的信用余额,并根据所选的模型、数据集、轮次、图像大小和 GPU 估算任务的持续时间和成本。此估算仅供参考;实际使用量按消耗的 GPU 时间计费。之后,请在 Settings > Billing 中查看相应的信用交易记录。

训练提示#
选择合适的模型大小#
| 模型 | 参数量 | 最适用场景 |
|---|---|---|
| YOLO26n | 2.4M | 实时,边缘设备 |
| YOLO26s | 9.5M | 速度/精度平衡 |
| YOLO26m | 20.4M | 更高精度 |
| YOLO26l | 24.8M | 生产级精度 |
| YOLO26x | 55.7M | 最高精度 |
优化训练时间#
- 从小规模开始:在低成本 GPU 上进行 10-20 个 Epoch 的测试,以验证数据集和配置是否正常工作
- 使用合适的 GPU:RTX PRO 6000 可良好处理大多数工作负载
- 验证数据集:在投入训练资金前修复标注问题
- 早期监控:如果损失趋于平稳,取消训练——你只需为使用的计算时间付费
故障排除#
| 问题 | 解决方案 |
|---|---|
| 训练卡在 0% | 检查数据集格式,重试 |
| 内存不足 | 减小批量大小或使用更大的GPU |
| 精度较差 | 增加训练轮数,检查数据质量 |
| 训练缓慢 | 考虑使用更快的GPU |
| 任务不匹配错误 | 确保模型和数据集的任务相匹配 |
训练参数参考#
| 参数 | 类型 | 默认值 | 范围 | 描述 |
|---|---|---|---|---|
epochs | int | 100 | 1-10000 | 训练epoch数量 |
batch | int | -1 (自动) | -1至512 | 批量大小 (-1 = 自动适应可用 VRAM) |
imgsz | int | 640 | 32-4096 | 输入图像大小 |
pretrained | 布尔值 | True | - | 从预训练权重开始,而不是随机初始化 |
patience | int | 100 | 1-1000 | 提前停止的耐心值 |
time | float | null | 0.1-720 | 以小时为单位的挂钟训练限制,会覆盖 epochs |
seed | int | 0 | 0-2147483647 | 可重复性的随机种子 |
deterministic | 布尔值 | True | - | 确定性训练模式 |
amp | bool/str | True | true/false/fp16/bf16/fp32 | 训练精度 |
compile | 布尔值 | False | - | 使用 torch.compile 进行编译(第一个 epoch 较慢) |
close_mosaic | int | 10 | 0-50 | 在最后N个epoch中禁用Mosaic |
save_period | int | -1 | -1-100 | 每N个epoch保存一次检查点 |
device | 选择 | 自动 | auto/0/cpu/mps | 训练设备 |
workers | int | 8 | 0-64 | 数据加载器工作进程 |
cache | 选择 | false | ram/disk/false | 缓存图像 |
dropout | float | 0.0 | 0.0-1.0 | 分类头丢弃率(仅限 classify) |
iou | float | 0.7 | 0.1-0.9 | 验证期间 NMS 的 IoU 阈值 |
max_det | int | 300 | 1-10000 | 每张图像的最大检测数 |
部分参数仅适用于特定任务:
- 除 classify 和 depth 外的所有任务(detect、segment、semantic、pose、obb):
box、dfl、mosaic、mixup、close_mosaic、iou、max_det - 除 depth 外的所有任务(带有类别的任务):
cls、label_smoothing、single_cls - 除 classify 外的所有任务(detect、segment、semantic、depth、pose、obb):
degrees、translate、shear、perspective - 仅限分割:
copy_paste - 仅限姿态:
pose(损失权重)、kobj(关键点目标性) - 仅限 classify:
dropout
常见问题解答#
训练时间取决于:
- 数据集大小
- 模型大小
- Epoch(轮次)数量
- 已选GPU
典型时间(1000张图像,100个epoch):
模型 RTX PRO 6000 A100 SXM YOLO26n ~6 min ~5 min YOLO26m ~15 min ~12 min YOLO26x ~30 min ~25 min 预估时间训练时间均为近似值,会随数据集复杂度、数据增强设置和批量大小而变化。请使用训练对话框中的成本估算以获得更准确的预测。
是的。只要资金充足,训练就可以无人值守运行,并且平台会记录完成或失败事件。如果计量导致余额为负,活跃的付费云端运行将会停止并结算已使用的 GPU 时间。
云端使用量会随着训练的进行而进行计量。如果扣费导致你的余额低于零,处于活动状态的付费云端训练运行将会停止,并对已使用的 GPU 时间进行结算。添加额度或启用自动充值以确保长时间运行的任务资金充足。
负余额零余额或负余额会阻止新的付费云端训练任务。负的计量余额也会触发活动付费云端训练运行的关停。
成本估算仅为近似值 —— 实际训练时间可能会因数据加载速度、GPU 预热和模型收敛行为等因素而异。如果实际使用量耗尽了可用余额,平台会在余额变为负数后停止活跃的付费云端运行。
如何管理成本:
- 实时监控训练进度,必要时提前取消
- 启用自动充值以自动补充额度
- 从较短的运行(较少的epoch)开始以校准预期
是的,展开训练对话框中的 Advanced Settings 部分即可访问包含 50 多个可配置参数的 YAML 编辑器。非默认值会同时包含在云端和本地训练命令中。
YAML编辑器还支持从之前的训练运行中导入配置:
- Copy from existing model:在任何已完成模型的页面上,Training Configuration 卡片都有一个包含 Copy JSON 的 Export data 菜单。将 JSON 直接粘贴到 YAML 编辑器中 — 它会自适应检测 JSON 格式并导入所有参数。同一个菜单可将配置下载为 CSV 或 JSON。
- 粘贴YAML或JSON:将任何有效的YAML或JSON训练配置粘贴到编辑器中。参数会被自动验证,超出范围的值会被固定,并显示警告。
- 拖放文件:将
.yaml或.json文件直接拖入编辑器以导入其参数。
这使得无需手动重新输入每个参数即可轻松重现或迭代先前的训练配置。可以。失败的模型会显示带有 Retry 操作的错误横幅,该操作会使用相同的基模型、数据集和参数重新打开训练对话框,以便你调整一个值并重新开始。重试会复用相同的模型页面:前一次运行的图表、控制台输出、系统指标和错误会在创建新作业后被清除,并且当新的运行产生更好的检查点时,其权重会被替换。
是的,数据集页面上的 New Model 按钮会打开训练对话框,且数据集已被预选并锁定。然后,你选择一个项目和模型来开始训练。