目录

torchx.workspace

状态:测试版

工作空间用于在现有图像的基础上应用本地更改,以便您可以在远程集群上执行代码。此模块包含由工作空间实现使用的接口。

这些工作区被定义为一个 fsspec 路径,其中的目录和文件将用于生成补丁。

示例工作空间路径:

  • file://. the current working directory

  • memory://foo-bar/ an in-memory workspace for notebook/programmatic usage

class torchx.workspace.Workspace[source]

注意:(原型)此界面可能随时更改!

一个可以附加到Scheduler的混入,可以添加构建工作区的能力。工作区是代码库/项目本地检查点,用于构建成镜像。工作区调度器增加了自动重建镜像或生成应用于Role的差异补丁的能力,允许用户对应用程序进行本地代码更改,并在运行时通过新镜像或覆盖补丁反映这些更改。 工作区构建产物的确切语义取决于实现。

abstract build_workspace_and_update_role(role: torchx.specs.api.Role, workspace: str, cfg: Mapping[str, Optional[Union[str, int, float, bool, List[str]]]])None[source]

构建指定的 workspaceimg 相关,并更新 role 以反映构建的工作空间 artifacts。 在最简单的情况下,此方法构建一个新的镜像并更新角色的镜像。某些(更高效)实现构建增量差异补丁,覆盖在角色的镜像之上。

注意:此方法会修改传递的 role

torchx.workspace.walk_workspace(fs: AbstractFileSystem, path: str, ignore_name: str = '.torchxignore')Iterable[Tuple[str, Iterable[str], Mapping[str, Mapping[str, object]]]][source]

walk_workspace 遍历文件系统路径并应用由 ignore_name 指定的忽略规则。 这遵循 .dockerignore 的规则。 https://docs.docker.com/engine/reference/builder/#dockerignore-file

torchx.workspace.docker_workspace

class torchx.workspace.docker_workspace.DockerWorkspace(docker_client: Optional[DockerClient] = None)[source]

DockerWorkspace 将从工作空间构建带有补丁的 Docker 镜像。这些补丁镜像是 Docker 镜像,可以本地通过 Docker 代理使用,也可以通过助手方法推送到远程仓库以供远程作业使用。

这需要本地运行Docker守护进程,并且远程推送时需要通过docker login认证到这些仓库。

如果工作区中存在一个名为Dockerfile.torchx的文件,将用于构建容器。

为了排除文件从构建上下文,您可以使用标准 .dockerignore 文件。

查看更多:

_push_images(images_to_push: Dict[str, Tuple[str, str]])None[source]

_push_images 将指定的图像推送到远程容器仓库,使用指定的标签。必须使用 docker login 使用远程仓库进行认证。

Parameters

图片上传 – 一个字典,键为本地图像名称,值为远程仓库和标签。

_update_app_images(app: torchx.specs.api.AppDef, image_repo: Optional[str] = None)Dict[str, Tuple[str, str]][source]

_update_app_images 替换本地 Docker 图像(通过sha256:...标识)在提供的AppDef中的远程路径,该路径将被上传,并返回一个映射,表示本地到远程的名称。

_push_images 必须在启动任务之前调用返回的映射。

Returns

一个字典,键是本地图像名称,值是一个元组(远程仓库名,标签)。

build_workspace_and_update_role(role: torchx.specs.api.Role, workspace: str, cfg: Mapping[str, Optional[Union[str, int, float, bool, List[str]]]])None[source]

使用role的镜像作为基础镜像构建一个新的Docker镜像,并将此新构建的Docker镜像ID更新到role的镜像中

Parameters
  • 角色 – 用于作为基础镜像的图像(一个Docker镜像)

  • 工作区 – fsspec 路径到一个包含要覆盖内容的目录

torchx.workspace.dir_workspace

class torchx.workspace.dir_workspace.DirWorkspace[source]
build_workspace_and_update_role(role: torchx.specs.api.Role, workspace: str, cfg: Mapping[str, Optional[Union[str, int, float, bool, List[str]]]])None[source]

创建一个由job_dir指定的新目录。角色图像字段将被设置为job_dir

任何文件列表中的.torchxignore文件夹将被跳过。

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源