本地部署#
On Premise 让你的 Enterprise 工作区能够使用运行在 Linux、macOS 或 Windows 计算机上的数据集和计算资源。源图像和视频保留在你的计算机上。训练行为类似于任何其他远程训练位置:指标会实时流式传输至 Platform,完成的模型权重会上传以便进行下载、预测、导出和部署。
只需一条命令即可完成设置。Platform 会自动检测你的操作系统,填入合理的文件夹路径,并在需要时安装 Docker,同时实时显示连接进度。
工作原理#
flowchart LR
A[Your browser] <-->|Interface, labels, and progress| B[Ultralytics Platform]
A <-->|Dataset previews| C[Your On Premise computer]
B <-->|Jobs, metrics, and model weights| C
C --- D[(Dataset folder)]
C --- E[(Models folder)]数据边界#
| 数据 | 你的 On Premise 计算机 | Platform 和云服务 |
|---|---|---|
| 源数据集和衍生数据集像素 | 保持在本地进行摄取、预览和训练 | 从不存储、记录或处理 |
| 类、标签和标注 | 源标签在摄取期间被读取 | 存储为规范的数据集元数据,以便你可以在 Platform 中进行标注 |
| 训练模型 | 运行记录、最佳检查点和其他训练工件会被写入到你的 models 文件夹中 | 最佳检查点会上传以便进行下载、预测、导出和部署;其他工件保留在你的计算机上 |
模型权重、标签、标注和指标可以编码从你的图像中学到的信息。只有数据集像素具有严格的本地边界。云端预测仅处理你单独提交给该云工作流的图像;工作节点永远不会转发来自你挂载数据集的图像。
开始之前#
选择一台能够访问你的数据集并在 Platform 使用它们时保持开机状态的计算机:
| 最低配置 | 推荐配置 | |
|---|---|---|
| 操作系统 | 64 位 Linux、Apple silicon macOS 或带 WSL 2 的 x86-64 Windows | 当前操作系统和 Docker 版本 |
| CPU | 4 核 | CPU 训练建议 8 核或以上 |
| 内存 | 8 GB RAM | 16 GB 或以上 |
| 存储 | 20 GB 可用空间,外加用于存放数据集和模型的空间 | 可用 SSD 空间至少为工作数据集大小的两倍 |
| 网络 | 到 Ultralytics Platform 和 Docker 容器注册表的出站 HTTPS | 用于初始下载容器镜像的稳定宽带 |
GPU 是可选的。每台计算机都可以利用其 CPU 来摄取数据集并训练模型。兼容的 NVIDIA GPU 可以加速更大规模的训练任务。
如果你的公司限制出站流量,请在安装前允许对 Ultralytics Platform、Docker 注册表和 Python 包下载的 HTTPS 访问。worker 总是向 Platform 外拨连接,因此不需要对你的网络进行任何入站访问。
连接你的计算机#
- 在能够访问你的数据集的计算机上打开 Ultralytics Platform。
- 前往
Settings > Integrations并在集成列表中选择 On Premise。 - 检查预填的 Dataset folder on this machine 和 Models folder on this machine 路径。
- 选择 创建安装命令。
- 打开对话框中指定的终端,复制该命令,粘贴并按 Enter 键。
- 保持 Integrations 页面打开,直到进度指示器显示 Connected。

该页面实时追踪六个安装步骤——运行命令、下载 worker 文件、下载 Docker 镜像、构建 worker、启动它以及确认连接——因此你可以直接观察进度而无需查看终端。连接主机需要工作区编辑角色和一个有效的 Enterprise 计划;采用其他计划的工作区会显示一个继续按钮,该按钮会请求引导式的 On Premise 演练而不是安装命令。
在你复制命令之前,Platform 会自动填入文件夹路径和一次性连接令牌。生成的命令遵循以下格式:
打开 终端 (Terminal) 并粘贴:
curl -fsSL 'https://platform.ultralytics.com/api/workers/install?os=linux' \
| sudo sh -s -- \
"/datasets" \
"/models" \
"YOUR_CONNECTION_TOKEN"Platform 会自动包含连接令牌。它用于证明这台计算机被允许连接到你的工作空间,有效期为 10 分钟,且仅能使用一次。你无需单独输入它。请勿在令牌有效期间分享生成的命令。
默认设置无需修改即可使用:
| Linux | macOS 和 Windows | |
|---|---|---|
| 数据集文件夹 | /datasets | ~/Ultralytics/datasets |
| 模型文件夹 | /models | ~/Ultralytics/models |
安装命令会创建这些文件夹,在需要时安装并启动 Docker,并配置连接以随计算机启动。你的操作系统可能会要求你批准安装或重启,以便完成设置。
Docker 基础镜像#
安装程序会运行一个容器,并为主机选择官方 Ultralytics 基础镜像:
| 宿主机 | 基础镜像模式 |
|---|---|
| Apple silicon 或 ARM64 Linux | ultralytics/ultralytics:<version>-arm64 |
| x86-64 CPU | ultralytics/ultralytics:<version>-cpu |
| 带有受支持 NVIDIA GPU 的 x86-64 | ultralytics/ultralytics:<version> |
安装程序会为主机选择一个版本锁定的官方镜像。工作线程在不重新安装 Ultralytics 的情况下添加其连接依赖项。它会在设置过程中检测 CUDA,因此 NVIDIA 主机仍运行单个容器,而不是分离的 CPU 和 GPU 工作线程。在上传最佳检查点后,Platform 的云服务将处理模型预测和导出。
CPU 设置除了引导式安装外不需要任何其他操作。在 Linux 上,NVIDIA GPU 加速需要 Docker >= 28.2 和 NVIDIA Container Toolkit >= 1.18。Platform 会在 Linux、macOS 和 Windows 上自动检测受支持的 GPU 路径;有关设置详情,请参阅Docker 快速入门指南。
添加数据集#
- 将你的数据集放入已配置的数据集文件夹中。
- 在平台中,选择 New Dataset > On Premise。
- 选择已连接的计算机。
- 浏览至数据集文件夹,选择任务类型,然后选择 创建 (Create)。
Platform 会在本地索引该数据集,并将其显示在与上传或云端存储数据集相同的图库中。你可以预览图像、检查标签、筛选数据集并进行标注,而无需上传原始像素数据。
支持的数据#
On Premise 支持与上传数据相同的摄取格式和计算机视觉任务:
- 图像和视频
- ZIP、TAR、 TAR.GZ 和 TGZ 压缩包
- Ultralytics NDJSON 和 COCO JSON
- YOLO 数据集和分类文件夹
- 检测、分割、语义、分类、姿态和定向边界框 (OBB) 任务
Platform 会自动识别常见的数据集布局、类别、标签以及训练/验证/测试拆分。数据集文件夹以只读方式挂载,因此 Platform 绝不会调整大小、重新编码、编辑或删除你的源文件。在数据导入期间衍生的任何内容——提取的归档文件、下载的 NDJSON 资产和视频帧——都将写入同一台计算机上的私有 Docker 卷中。
预览和标注#
当你打开图像时,你的浏览器会直接从已连接的计算机加载它。无需证书、主机名、VPN 或预览配置。
标注和数据集组织结构保存在你的 Platform 工作空间中,但在 Platform 中的编辑操作永远不会更改你的源图像或标签文件。
训练模型#
通过常规的 Platform 训练对话框开始训练:
- 打开一个项目并选择 New Model。
- 选择 On Premise 数据集。
- 选择模型和训练设置。
- 开始训练。
Platform 会在已连接的计算机上运行任务。它会自动使用可用的 NVIDIA GPU 或回退到 CPU,因此即使没有专用 GPU 硬件,Mac 也能在 COCO8 上训练小型模型(如 YOLO26n)。
训练文件在运行期间被写入配置好的 models 文件夹中。Ultralytics 包使用与任何客户托管机器相同的远程训练回调:进度和指标流向 Platform,最佳检查点上传到 Platform 存储,并且已完成的模型可使用现有的下载、预测、导出和部署路径。其他训练工件保留在你的 models 文件夹中。On Premise 训练不使用 Platform 计算额度,并且 Platform 永远不会将训练作业发送到云端计算。
管理连接#
打开 Settings > Integrations 以查看每个连接的计算机、其主机名和硬件,以及其 CPU 和 GPU 当前是否在线。主机持续进行状态上报,因此关机或失去连接的计算机将显示为离线状态,其数据集将暂时不可用,而不是回退到云端计算。
重新连接会为先前断开连接的主机签发一条新的安装命令。它会重复使用相同的主机记录,因此其现有的数据集无需重新导入即可恢复工作。
断开连接会立即撤销该主机的访问权限。绑定到该主机的已排队、正在启动和正在运行的作业将被取消(包括正在进行的训练),并且仍在导入的数据集将因 On Premise host disconnected during ingest. 而失败。导入完成的数据集将保留其类别、标签和注释,但在你重新连接之前无法进行预览或训练。计算机上的任何内容都不会被删除,并且已上传到 Platform 的模型仍然可用。
当前限制#
- 不进行重新扫描。 数据集在创建时会被索引一次。如果此后源文件发生更改,Platform 将不会察觉——请创建一个新数据集以获取更改。
- Platform 复制功能不可用。 On Premise 数据集不包含需要 Platform 拥有你的图像副本的功能:自动标注、聚类分析、数据集克隆以及不可变的版本快照。
- 训练不会转移。 如果 worker 进程在运行中途停止,运行将直接失败,而不会在其他地方重新启动。
- 模型文件保留在主机上。 在 Platform 中删除或丢弃模型只会将其从 Platform 中移除,而不会从你的模型文件夹中移除——当不再需要某个运行时,请自行清理该文件夹。
删除 On Premise 数据集或其中的单个图像,只会移除 Platform 的引用和注释。你的文件绝不会被触及。
如果设置未完成#
- Docker 请求权限: 批准该提示并等待 Docker 启动。设置会自动继续。
- Windows 提示重启: 重启计算机,返回
Settings > Integrations,并创建一个新的安装命令。 - 安装命令已过期: 创建新的安装命令。每个命令都是临时的,且仅能使用一次。
- 连接保持离线: 打开 Docker Desktop,重新运行新生成的命令,并保持终端窗口开启,直到它报告 On Premise 正在运行。
- 预览无法加载: 在已连接的计算机上的浏览器中打开 Platform。数据集预览直接来自该计算机。
- 你需要 worker 日志: 安装程序在 Linux 上写入
/opt/ultralytics-worker,在 macOS 和 Windows 上写入~/.ultralytics/worker。在该文件夹中运行docker compose logs -f以跟踪 worker 的运行情况。
另请参阅Datasets、Annotation 和 Training。