数据实验室是 AI DLC 提供的交互式开发环境。每个实验室独享计算资源,内置 JupyterLab 与 VS Code Web,预装常用数据处理和机器学习依赖,适用于数据探索、算法调试和模型实验。
概述
数据实验室具有以下特性:
开箱即用:无需自行搭建开发环境,通过浏览器即可编写和运行代码。
环境独立:每个实验室独享计算资源,代码与依赖互不影响。
资源弹性:支持 GPU 资源和多节点分布式任务,可按需扩缩。
空闲休眠:支持配置空闲自动休眠,释放计算资源以节省成本。
数据实验室与计算集群的区别如下:
对比项 | 数据实验室 | 计算集群 |
使用方式 | 通过 WebIDE 交互式开发 | 通过提交作业或部署服务使用 |
典型运行周期 | 数小时,支持空闲自动休眠 | 数天至数月 |
节点构成 | 单个头节点与少量工作节点 | 头节点与多个工作节点组 |
集群组 | 不支持 | 支持 |
运行镜像 | 预装 WebIDE 的镜像 | 不含 WebIDE 的镜像 |
前提条件
已开通 AI DLC 服务并完成服务授权。
已购买资源包,并根据需要创建资源组。
AI DLC 目前为白名单开放,如需使用,请 提交申请 。
实例构成
数据实验室由以下节点角色构成:
头节点:每个实验室包含 1 个头节点,运行 WebIDE 进程。
工作节点组:可选配置,最多7个,用于运行分布式训练或数据处理任务。同一节点组内的节点规格相同,支持配置实例数区间实现弹性伸缩。
注意:
节点组名称需在同一实验室内全局唯一,头节点与各工作节点组之间不能重名,否则无法创建实验室。
操作步骤
创建数据实验室
1. 登录 DLC 控制台,在左侧导航栏选择数据实验室。
2. 单击新建实验室。
3. 配置基本信息。
参数 | 是否必填 | 说明 |
实验室名称 | 是 | 支持中文、英文、数字和下划线,长度不超过64字符。 |
优先级 | 是 | 取值范围为1 - 9,默认值为5。数值越大优先级越高。 |
标签 | 否 | 用于资源分类、权限控制和成本分账。 |
4. 选择资源包与资源组。实验室占用所选资源组的配额。
5. 选择实验室镜像。
镜像类型 | 说明 |
内置镜像 | 平台提供的镜像,均预装 JupyterLab 与 VS Code Web。 |
自定义镜像 | 填写您在容器镜像服务中的镜像地址,需自行确认镜像内已安装 WebIDE。 |
注意:
构建自定义镜像时,请在
ray 用户下安装依赖。若构建过程中临时切换到 root 用户安装系统依赖,请在安装完成后切回 ray 用户,确保镜像的默认运行用户为 ray,避免运行时出现文件权限问题。6. 配置计算环境:您可以选择已保存的计算环境模板自动填充配置,也可以直接配置头节点与工作节点组。计算环境的创建方法请参见 计算环境。
7. 配置存储挂载(可选):支持挂载 COS、CFS、GooseFS 和 CFS Turbo,可设置子路径、挂载路径和读写权限。挂载在实验室启动后即在容器内可见,无需在 WebIDE 中手动挂载。
8. 配置代码持久化(可选):指定 COS 或 CFS 路径后,WebIDE 工作目录中的代码将持久化保存。
9. 配置高级参数(可选):以键值对形式填写运行时参数。
10. 单击确定完成创建。
创建完成后,实验室进入启动流程。启动成功后状态显示为运行中。
注意:
未启用代码持久化时,WebIDE 工作目录使用容器临时存储。实验室休眠、重建或异常终止后,代码文件将无法恢复。建议创建实验室时启用代码持久化。
管理数据实验室
在实验室列表的操作列或详情页,您可以执行以下操作:
操作 | 说明 |
启动 | 使实验室进入运行状态。已创建、已休眠和异常状态的实验室支持启动。 |
进入 WebIDE | 实验室处于运行中状态时,跳转至 JupyterLab 或 VS Code Web。 |
编辑 | 修改实验室配置。运行中、已休眠、已创建和异常状态支持编辑。 |
克隆 | 复制现有实验室配置并创建新实验室。 |
休眠 | 释放计算资源,保留实验室配置与持久化数据。 |
删除 | 释放实验室及其数据卷,删除后无法恢复。 |
说明:
创建中、启动中和休眠中属于过渡状态,此时不支持编辑实验室配置。修改代码持久化路径仅在已创建或已休眠状态下支持,以避免数据写入冲突。
参数说明
参数 | 类型 | 是否必填 | 说明 |
实验室名称 | String | 是 | 长度不超过64字符。 |
优先级 | Integer | 是 | 取值范围为1 - 9,默认值为5。 |
资源组 | String | 是 | 从资源包下的资源组中选择。 |
实验室镜像 | String | 是 | 内置镜像或自定义镜像地址。 |
头节点规格 | Object | 是 | 包含资源类型与资源配额。单节点不低于1核 CPU 与2GB 内存。 |
工作节点组 | Array | 否 | 最多7组。节点组名称需在实验室内唯一。 |
代码持久化 | Object | 否 | 包含存储类型、存储实例与子路径。 |
使用限制
限制项 | 取值 |
头节点数量 | 固定为1个 |
工作节点组数量 | 最多7个 |
单节点 CPU 下限 | 1核 |
单节点内存下限 | 2GB |
单节点 GPU 卡数下限 | 1张 |
实验室名称长度 | 64字符 |
单节点组环境变量、节点标签与逻辑资源条目数 | 各20条 |
说明:
CPU、内存与 GPU 卡数没有固定上限,实际上限由所选资源规格的单节点上限与资源组的可分配配额决定,详情请参见 资源管理。
常见问题
如何在 WebIDE 中提交 Ray 作业?
在 WebIDE 终端中执行以下命令,无需配置访问令牌:
ray job submit --address http://127.0.0.1:8265 -- python train.py
从外部网络提交作业时需要配置访问令牌。
多个实验室可以共用同一个 COS 存储桶做代码持久化吗?
可以。系统在您指定的路径下自动创建以实验室标识命名的子目录,各实验室的代码互相隔离。建议团队共用一个存储桶并配置统一路径前缀,例如
/team-a/datalab/。休眠后重新启动,代码是否保留?
启用代码持久化时保留;未启用时,休眠后临时存储被释放,代码不再保留。
一个实验室可以多人同时使用吗?
不建议。实验室按单人独享设计,多人共用会导致代码、依赖和内核状态冲突。团队协作建议每人创建独立实验室,并共用同一存储桶作为代码持久化路径的上级目录。