ClearML Agent CLI
以下页面提供了 clearml-agent
CLI 命令的参考
- build - 创建一个 worker 环境,而不执行任务。
- config - 列出您的 ClearML Agent 配置数据。
- daemon - 运行一个 worker 守护进程,监听队列以执行任务。
- execute - 执行一个任务,在本地执行,不使用队列。
- list - 列出当前 worker。
build
使用 build
命令创建 worker 环境,而不执行任务。
您可以根据特定任务的执行环境构建 Docker 容器,Agent 随后可以使用这些容器执行其他任务。参见教程。
您也可以创建一个在启动时执行特定任务的 Docker 容器。参见教程。
clearml-agent build [-h] --id TASK_ID [--target TARGET]
[--install-globally]
[--docker [DOCKER [DOCKER ...]]] [--force-docker]
[--python-version PYTHON_VERSION]
[--entry-point {reuse_task,clone_task}] [-O]
[--git-user GIT_USER] [--git-pass GIT_PASS]
[--log-level {DEBUG,INFO,WARN,WARNING,ERROR,CRITICAL}]
[--gpus GPUS] [--cpu-only]
参数
名称 | 描述 | 必填 |
---|---|---|
--id | 为此任务 ID 构建 worker 环境。 | |
--cpu-only | 禁用 Docker 容器的 GPU 访问。 | |
--docker | 在 Docker 模式下运行 Agent。指定 worker 启动时将执行的 Docker 容器。要指定镜像名称和可选参数,请使用以下任一方式
NVIDIA_VISIBLE_DEVICES 环境变量。 | |
--entry-point | 与 --docker 结合使用,指示在 Docker 启动时如何运行由 --task-id 指定的任务。--entry-point 选项有
| |
--force-docker | 强制使用 Agent 指定的 Docker 镜像(要么在 --docker 参数中显式指定,要么使用 Agent 的默认 Docker 镜像)。如果提供此参数,Agent 将不会使用任务本身中存储的任何 Docker 容器信息(默认 False ) | |
--git-pass | 用于访问仓库的 Git 密码。 | |
--git-user | 用于访问仓库的 Git 用户名。 | |
--gpus | 指定 Docker 容器要使用的活动 GPU。这些 GPU 与 NVIDIA_VISIBLE_DEVICES 环境变量中设置的 GPU 相同。例如
| |
-h , --help | 获取此命令的帮助。 | |
--install-globally | 在创建虚拟环境之前安装所需的 Python 包。使用 agent.package_manager.system_site_packages 控制系统包的安装。当使用 --docker 时,--install-globally 始终为 true。 | |
--log-level | SDK 日志级别。取值为
| |
--python-version | 要使用的虚拟环境 Python 版本。 | |
-O | 编译优化过的 pyc 代码(参见Python 文档)。重复使用可获得更多优化。 | |
--target | 用于启动时使用的虚拟环境和源代码的目标文件夹。 |
config
列出您的 ClearML Agent 配置。
clearml-agent config [-h]
daemon
使用 daemon
命令可以在任何机器上(本地和/或云实例)启动一个 Agent。启动 Agent 时,为其分配一个或多个服务队列,当任务被添加到其队列时,Agent 将拉取并执行它们。
通过 daemon
命令,您可以配置 Agent 的行为:分配资源、优先处理队列、将其设置为在 Docker 中运行等等。
clearml-agent daemon [-h] [--foreground] [--queue QUEUES [QUEUES ...]] [--order-fairness]
[--standalone-mode] [--services-mode [SERVICES_MODE]]
[--child-report-tags CHILD_REPORT_TAGS [CHILD_REPORT_TAGS ...]]
[--create-queue] [--detached] [--stop] [--dynamic-gpus]
[--uptime [UPTIME [UPTIME ...]]] [--downtime [DOWNTIME [DOWNTIME ...]]]
[--status] [--use-owner-token] [-O]
[--git-user GIT_USER] [--git-pass GIT_PASS]
[--log-level {DEBUG,INFO,WARN,WARNING,ERROR,CRITICAL}]
[--gpus GPUS] [--cpu-only]
[--docker [DOCKER [DOCKER ...]]] [--force-current-version]
参数
名称 | 描述 | 必填 |
---|---|---|
--child-report-tags | 与执行任务的 worker 的状态报告一起发送的标签列表。 | |
--cpu-only | 如果在 Docker 模式下运行(参见 --docker 选项),禁用 Docker 容器或虚拟环境的 GPU 访问。 | |
--create-queue | 如果通过 --queue 提供的队列名称在服务器中不存在,则即时创建并使用它。 | |
--detached | 在后台运行 Agent。clearml-agent 命令会立即返回。 | |
--docker | 在 Docker 模式下运行。在 Docker 容器内执行任务。要指定镜像名称和可选参数,可以
| |
--downtime | 以 <hours> <days> 格式指定 clearml-agent 的停机时间。例如,使用 09-13 TUE 将星期二的停机时间设置为 09:00 到 13:00。注意
| |
--dynamic-gpus | 允许根据队列属性动态分配 GPU,使用 --queue <queue_name>=<num_gpus> 进行配置。例如:--dynamic-gpus --queue dual_gpus=2 single_gpu=1 注意:此功能在 ClearML Enterprise 计划中可用 | |
--force-current-version | 在 Docker 模式下运行(指定了 --docker 参数)时,使用您当前版本的 ClearML Agent,而不是自动安装的最新 ClearML Agent 版本,请指定 force-current-version 。例如,如果您当前的 ClearML Agent 版本是 0.13.1 ,但最新版本的 ClearML Agent 是 0.13.3 ,使用 --force-current-version 将使您的任务在 ClearML Agent 版本 0.13.1 的 Docker 容器中执行。 | |
--foreground | 将完整日志输出到 stdout/stderr。如果在后台运行,请勿使用此选项。 | |
--git-pass | 用于访问仓库的 Git 密码。 | |
--git-user | 用于访问仓库的 Git 用户名 | |
--gpus | 如果在 Docker 模式下运行(参见 --docker 选项),指定 Docker 容器要使用的活动 GPU。这些 GPU 与 NVIDIA_VISIBLE_DEVICES 环境变量中设置的 GPU 相同。例如
| |
-h , --help | 获取此命令的帮助。 | |
--log-level | SDK 日志级别。取值为
| |
-O | 编译优化过的 pyc 代码(参见Python 文档)。重复使用可获得更多优化。 | |
--order-fairness | 以轮询顺序从每个队列拉取任务,而不是按优先级顺序。 | |
--queue | 指定 worker 监听的队列。取值可以是以下任意组合
| |
--services-mode | 启动多个长期运行的 Docker 服务。在同一台机器上同时启动多个任务,每个任务都在自己的 Docker 容器中。每个任务都将在系统中注册为一个新节点,提供跟踪和透明性功能。会验证每个 Docker 的启动和关闭。仅在 CPU 模式下使用(--cpu-only )。要限制在服务模式下同时运行的任务数量,请在 --services-mode 选项后紧跟最大数量(例如 --services-mode 5 ) | |
--standalone-mode | 不使用任何网络连接。这假设所有要求都已预装。 | |
--status | 打印 worker 的调度(运行时间属性、服务器运行时属性和监听的队列) | |
--stop | 如果其他参数相同,则终止正在运行的 ClearML Agent。如果没有提供其他参数,则按字典顺序终止 Agent。 | |
--uptime | 以 <hours> <days> 格式指定 clearml-agent 的运行时间。例如,使用 17-20 TUE 将星期二的运行时间设置为 17:00 到 20:00。注意
| |
--use-owner-token | 生成并使用任务所有者的 token 来执行任务。 |
execute
使用 execute
命令设置 Agent 直接构建和执行特定任务,而不监听队列。
clearml-agent execute [-h] --id TASK_ID [--log-file LOG_FILE] [--disable-monitoring]
[--full-monitoring] [--require-queue]
[--standalone-mode] [--docker [DOCKER [DOCKER ...]]] [--clone]
[-O] [--git-user GIT_USER] [--git-pass GIT_PASS]
[--log-level {DEBUG,INFO,WARN,WARNING,ERROR,CRITICAL}]
[--gpus GPUS] [--cpu-only]
参数
名称 | 描述 | 必填 |
---|---|---|
--id | 要构建的任务 ID | |
--clone | 克隆由 --id 指定的任务,然后执行克隆的任务。 | |
--cpu-only | 禁用 daemon 的 GPU 访问,在 docker 或虚拟环境中只使用 CPU。 | |
--docker | 在 Docker 模式下运行。在 Docker 容器内执行任务。要指定镜像名称和可选参数,请使用以下任一方式
| |
--disable-monitoring | 禁用日志记录和监控,stdout 除外。 | |
--full-monitoring | 创建完整日志,包括环境设置日志、任务日志和监控,以及 stdout。 | |
--git-pass | 用于访问仓库的 Git 密码。 | |
--git-user | 用于访问仓库的 Git 用户名。 | |
--gpus | 指定 daemon 要使用的活动 GPU(docker / 虚拟环境)。相当于设置 NVIDIA_VISIBLE_DEVICES 环境变量。例如
| |
-h , --help | 获取此命令的帮助。 | |
--log-file | 将任务执行输出(stdout / stderr)保存到文本文件的日志文件。 | |
--log-level | SDK 日志级别。取值为
| |
-O | 编译优化过的 pyc 代码(参见Python 文档)。重复使用可获得更多优化。 | |
--require-queue | 如果指定的任务未入队,执行将失败(用于第三方调度器集成,例如 K8s, SLURM 等) | |
--standalone-mode | 不使用任何网络连接,假设所有要求都已预装 |
list
列出所有活动 worker 的信息。
clearml-agent list [-h]