版本 1.9
ClearML 代理 1.9.2
新功能和错误修复
- 在检查
is_file
时处理OSError(ClearML GitHub issue #1337) - 为使用
agent.package_manager.pip_legacy_resolver
配置选项指定的版本添加对pip旧版解析器的支持 - 添加跳过现有包
- 修复资源监控中报告索引未前进导致多个GPU未被报告的问题
- 修复在创建任务会话时使用
req_token_expiration_sec
而不是默认值的问题 - 修复在配置对象中找到的reload方法导致周期性代理错误打印的问题
ClearML 代理 1.9.1
新功能和改进
- 为 Python 3.12 添加默认 pip 版本支持
ClearML 代理 1.9.0
新功能和改进
- 向
clearml-agent-services
入口点添加NO_DOCKER
标志 (ClearML Agent GitHub PR #206) - 如果
virtualenv
不支持,请使用venv
模块 - 在使用预安装的Python环境时找到正确的Python版本
- 在任务的
script.binary
属性中添加/bin/bash
支持 - 添加对
.ipynb
脚本入口文件的支持(在运行时安装nbconvert,将文件转换为python并执行python脚本)。包括对.ipynb
文件的CLEARML_AGENT_FORCE_TASK_INIT
修补(在python转换后) - 添加
CLEARML_MULTI_NODE_SINGLE_TASK
(值为 -1, 0, 1, 2)以便更轻松地处理多节点单任务工作负载 - 添加默认的docker
agent.default_docker.match_rules
配置选项(注意:如果在命令行中传递了--docker container
,则matching_rules
将被忽略) - 现在在脚本入口添加
-m module args
支持独立脚本。独立脚本放置在由working_dir
设置指定的文件中,格式为
(例如: :standalone.py
),如果未指定,则放置在untitled.py
中。 - 添加
K8S_GLUE_POD_USE_IMAGE_ENTRYPOINT
环境变量,以允许在不覆盖镜像入口点的情况下运行 k8s pod (适用于在 k8s 中使用预构建镜像的代理) - 为非根容器添加venv缓存挂载覆盖(使用:
agent.docker_internal_mounts.venvs_cache
) - 添加
/bin/bash -c "command"
支持。任务二进制文件应设置为/bin/bash
,并且entry_point
应设置为-c command
- 添加对仅包含bash脚本或python模块命令的任务的支持
- 在k8s中添加支持,使用
CLEARML_AGENT_SKIP_CONTAINER_APT
环境变量跳过容器apt安装
错误修复
- 修复了git fetch未更新新标签的问题(ClearML Agent GitHub issue #209)
- 修复文件模式在配置
files
部分应为可选项 - 修复
-m module $env
以支持在启动前解析$env
- 修复将刚刚标记为
aborted
的任务设置为started
的问题 - 只有在将其出队后才强制任务为started
,否则不做任何操作 - 修复 slurm 多节点排名检测
- 修复在使用
--dynamic-gpus
功能时仅传递--docker
(即没有默认容器镜像)的问题 - 修复即使使用
None
时也使用的logger对象 - 修复了一个竞争条件,在极少数情况下,从已中止的队列中弹出任务时,在监视器终止它之前未将其设置为
started
(不适用于k8s/slurm) - 修复多节点支持,仅发送
pip freeze
更新,仅将任务设置为started
,并且仅在退出时为RANK 0更新任务状态 - 修复如果设置了venv/python跳过环境变量,则不缓存venv缓存
- 修复在服务器支持的情况下在k8s中使用相同的状态转换(而不是在重新入队之前停止任务)
- 修复在服务模式下失败的任务被记录为
User aborted
而不是failed
。添加任务状态原因字符串 - 修复在应用 pod 模板失败时从待处理队列中移除任务并将其设置为
failed
的问题