• 沒有找到結果。

针对创建好的Notebook实例(即状态为“运行中”的实例),可以打开Notebook并 在开发环境中启动编码。

基于不同AI引擎创建的Notebook实例,打开方式不一样。

pytorch、tensorflow、mindspore、Tensorflow-mindspore、cylp-cbcpy、rlstudio-ray、mindquantum-mindspore镜像支持以下2种方式访问:

● 本地IDE使用PyCharm/VSCode/SSH工具,远程连接访问,具体参见本地IDE操作 流程。

● 在线JupyterLab访问,具体参见JupyterLab简介及常用操作。

mlstudio-pyspark镜像仅支持在线JupyterLab访问,具体参见JupyterLab简介及常用 操作

mindstudio镜像仅支持在本地使用MobaXterm通过SSH远程访问,具体参见使用

MindStudio开发Ascend算子。

modelbox镜像仅支持在本地使用VSCode插件远程访问,具体参见配置本地VSCode连 接云上开发环境Modelbox镜像。

2. 执行如下操作启动或停止Notebook。

– 启动Notebook:单击“操作”列的“启动”。只有处于“停止”状态的 Notebook可以执行启动操作。

– 停止Notebook:单击“操作”列的“停止”。只有处于“运行中”状态的 Notebook可以执行停止操作。

注意

Notebook停止后:

● /home/ma-user/work目录下的数据会保存,其余目录下内容会被清理。

例如:用户在开发环境中的其他目录下安装的外部依赖包等,在 Notebook停止后会被清理。

● Notebook实例将停止计费,但如有EVS盘挂载,存储部分仍会继续计费。

删除实例

针对不再使用的Notebook实例,可以删除以释放资源。

1. 登录ModelArts管理控制台,在左侧菜单栏中选择“开发环境>Notebook”,进入 新版Notebook管理页面。

2. 在Notebook列表中,单击操作列的“删除”,在弹出的确认对话框中,确认信息 无误,然后单击“确定”,完成删除操作。

注意

Notebook删除后不可恢复,请谨慎操作。

无论Notebook使用默认存储还是云硬盘EVS存储,实例删除后,挂载目录下的数 据也将一并删除,请谨慎操作。

3.4 开发环境中如何选择存储

不同存储的实现都不同,在性能、易用性、成本的权衡中可以有不同的选择,没有一 个存储可以覆盖所有场景,了解下云上开发环境中各种存储使用场景说明,更能提高 使用效率。

3-3 云上开发环境中各种存储使用场景说明

● 在Notebook中训练 时,可直接使用挂

-如何使用

1. 在开发环境中如何使用EFS文件存储(默认存储)?

在创建Notebook实例时选择默认存储即可。

2. 在开发环境中如何使用云硬盘EVS块存储?

在创建Notebook实例时选择云硬盘存储,Notebook运行过程中可以动态扩充云 硬盘EVS容量。

3. 在开发环境中如何使用OBS并行文件系统?

Notebook运行过程中可以动态挂载OBS并行文件系统。

3.5 动态挂载 OBS 并行文件系统

什么是动态挂载 OBS 并行文件系统

在运行态的Notebook容器中,采用动态挂载特性,将OBS对象存储模拟成本地文件系 统。其本质是通过挂载工具,将对象协议转为POSIX文件协议。挂载后应用层可以在容 器中正常操作OBS对象。

动态挂载适用于哪些使用场景

场景1:数据集预览和操作,将承载数据集的OBS挂载至Notebook中,可以像本地文 件系统一样操作数据集。

场景2:在Notebook中训练时,可直接使用挂载至Notebook容器中的数据集。

动态挂载 OBS 并行文件系统有什么限制

OBS提供两种桶,对象存储(对象桶)和并行文件系统。

ModelArts的Notebook(新版)仅支持挂载OBS的并行文件系统,挂载至Notebook容 器/data/的子目录下。

动态挂载 OBS 并行文件系统操作

方式1:通过ModelArts控制台操作

1. 登录ModelArts管理控制台,在左侧导航栏中选择“开发环境 > Notebook”,进 入“Notebook”新版管理页面。

3-6 动态挂载 OBS

3. 挂载成功后,可以在Notebook实例详情页查看到挂载结果。

3-7 挂载成功

方式2:API模式

动态挂载API接口已发布至华北-北京四和华东-上海一站点。必须在新版Notebook中执 行挂载脚本。

挂载脚本代码示例如下:

import os

from json import JSONEncoder

from modelarts.config.auth import auth_by_apig from modelarts.session import Session

session = Session()

request_url = "/v1/{}/notebooks/{}/storage".format(os.environ['PROJECT_ID'], os.environ["INSTANCE_ID"])

# 查询动态挂载列表

auth_by_apig(session, 'GET', request_url)

# 动态挂载,OBS路径obs://obs-bucket-train/dir/需要根据实际修改,挂载路径mount_path取值为“/data/

xxx/”,本示例以“/data/demo/”为例,“demo”可以自定义。

3.6 动态扩充云硬盘 EVS 容量

什么是动态扩容 EVS

存储配置采用云硬盘EVS的Notebook实例, 存储盘是挂载至容器/home/ma-user/

work/目录下, 可以在实例运行中的状态下,动态扩充存储盘容量,最大动态扩容 200GB。

动态扩容 EVS 适用于哪些使用场景

在Notebook开发过程中,初期存储使用量较小时, 创建Notebook可以选择小容量 EVS, 比如5G大小; 开发完成后,需要大规模数据集训练,此时再将存储容量扩容至 当前阶段所需容量,可以节约费用。

动态扩容 EVS 有什么限制

1. Notebook实例的存储配置采用的是云硬盘EVS。

3-8 创建 Notebook 实例时选择云硬盘 EVS 存储

2. 单次最大可以扩容100GB,允许扩容2次,总共扩容200GB,并且扩容后的总容量 不超过4096GB。

3. 云硬盘EVS存储容量最大支持4096GB,达到4096GB时,不允许再扩容。

4. 实例停止后,扩容后的容量仍然有效。计费也是按照扩容后的云硬盘EVS容量进行 计费。

5. 云硬盘EVS只要使用就会计费,请在停止Notebook实例后,确认不使用就及时删 除数据,释放资源,避免产生费用。

动态扩容 EVS 操作

1. 登录ModelArts管理控制台,在左侧导航栏中选择“开发环境 > Notebook”,进 入“Notebook”新版管理页面。

2. 选择运行中的Notebook实例,单击实例名称,进入Notebook实例详情页面,单 击“扩容”。

3-9 Notebook 实例详情页

3. 设置待扩充的存储容量大小,单击“确定”。系统显示“扩容中”,扩容成功 后,可以看到扩容后的存储容量。

单次最大可以扩容100GB,允许扩容2次,总共扩容200GB。

3-10 扩容

3-11 扩容中

3.7 变更 Notebook 实例运行规格

ModelArts允许用户在同一个Notebook实例中切换节点运行规格,方便用户灵活调整 规格资源。

前提条件

Notebook实例状态必须在“停止”中。

切换规格

1. 登录ModelArts管理控制台,在左侧菜单栏中选择“开发环境 > Notebook”,进 入新版Notebook管理页面。

2. 在Notebook列表,单击某个Notebook实例规格栏的 ,在下拉框中选择对应规 格资源。

3.8 修改 Notebook 远程连接 IP 地址

在创建Notebook实例时,如果设置了允许远程连接Notebook的白名单IP地址,当用 户需要更换一个IP地址远程连接Notebook实例时,则可以在Notebook的实例详情页 修改白名单IP地址。

1. 登录ModelArts管理控制台,在左侧菜单栏中选择“开发环境 > Notebook

(New)”,进入新版Notebook管理页面。

2. 在Notebook列表,单击某个具体的实例名称,进入查看实例详情页面。单击白名 单右侧的修改 ,可以修改允许远程访问Notebook的IP地址。修改后,单击 保存即可。

3-12 修改白名单 IP 地址

此处的IP地址,请填写外网IP地址。如果用户使用的访问机器和华为云ModelArts 服务的网络有隔离,则访问机器的外网地址需要在主流搜索引擎中搜索“IP地址 查询”获取,而不是使用ipconfig或ifconfigip命令在本地查询。

3-13 查询外网 IP 地址

3. 修改远程连接的可访问IP地址后, 原来已经建立的链接依然有效, 当链接关闭后 失效;新打开建立的链接只允许当前设置的IP进行访问。

4 CodeLab

面向众多开发者,ModelArts提供了CodeLab功能,一方面,一键进入开发环境,同时 预置了免费的算力规格,可直接免费体验Notebook功能;另一方面,针对AIGallery社 区发布的Notebook样例(.ipynb格式文件),可直接在CodeLab中打开,查看他人分 享的样例代码。

功能亮点

● 免费算力

CodeLab内置了免费算力,包含CPU和GPU两种。您可以使用免费规格,端到端 体验ModelArts Notebook能力。也可使用此免费算力,在线完成您的算法开发。

● 即开即用

无需创建Notebook实例,打开即可编码。

● 高效分享

ModelArts在AI Gallery中提供的Notebook样例,可以直接通过Run in

ModelArts,一键打开运行和学习,并且可将样例修改后分享到AI Gallery中直接 另存用于个人开发。

同时,您开发的代码,也可通过CodeLab快速分享到AI Gallery中给他人使用学 习。

使用限制

● CodeLab默认打开,使用的是CPU计算资源。如需切换为GPU,请在右侧窗口,

更换GPU规格。

● 自启动后,免费规格默认可使用1小时,请注意右上角的剩余时长。超过1小时 后,可执行续期操作,且系统每隔一段时间,将提醒确认下续期。

● 免费的CodeLab主要用于体验,72小时内未使用,将释放资源。保存在其中的代 码文档将丢失,请注意备份文件以及使用时长。

4-1 支持的框架及版本

CodeLab 入口

● ModelArts管理控制台的“总览”页

在“开发工具”区域下方,展示“CodeLab”简介卡片,单击“立即体验”,即 可进入。

4-2 CodeLab 入口

● AI Gallery页面提供的Notebook样例

a. 在AI Gallery页面,单击“资产集市 > 开发 > Notebook”栏目中的任意 Notebook样例,进入详情页。

说明

● 首次进入CodeLab时,会提醒先登录ModelArts控制台,由于需要进行环境准备,需要等待 1~2分钟才可顺利进入开发页面,请耐心等待。

● CodeLab的内部环境依托Notebook功能,因此其工作环境,与JupyterLab界面相似。

体验 CodeLab

1. 进入CodeLab主页。

从管理控制台总览页进入,展示CodeLab首页。

4-4 CodeLab 首页

2. 常用功能。

CodeLab的界面依托于JupyterLab,其相关的常见功能,与JupyterLab相同。

常用操作指导可参见JupyterLab操作指导:JupyterLab简介及常用操作。

说明

由于CodeLab的存储为系统默认路径,在使用“上传文件”或“下载文件至本地”时,只 能使用JupyterLab页面提供的功能(存在文件大小限制,目前建议为小于100MB的文 件),无法使用JupyterLab中提供的大文件上传下载功能。

如需使用大文件上传和下载的功能,建议您前往Notebook,创建一个收费的实例进行使 用。

3. 切换规格。

CodeLab支持CPU和GPU两种规格在右侧区域,单击切换规格,修改规格类型。

4-5 切换规格

4. 资源监控。

在使用过程中,如果想了解资源使用情况,可在右侧区域选择“Resource Monitor”,展示“CPU使用率”和“内存使用率”。

4-6 资源监控

5. 分享副本到AI Gallery。单击右上角的 ,将修改后的Notebook样例保存分享到 AI Gallery中,供自己或他人学习使用。

4-7 分享到 AI Gallery

分享成功后,通过分享链接可以打开分享的副本,也可以在AI Gallery中找到分享 的Notebook。

4-8 发布成功

5 JupyterLab

5.1 JupyterLab 操作流程

ModelArts支持通过JupyterLab工具在线打开Notebook,开发基于PyTorch、

TensorFlow和MindSpore引擎的AI模型。具体操作流程如下图所示。

5-1 使用 JupyterLab 在线开发调试代码

1. 创建Notebook实例

在ModelArts控制台中创建一个Notebook开发环境实例,选择要使用的AI框架。

具体参见创建Notebook实例。

2. 使用JupyterLab打开Notebook实例。具体参见打开JupyterLab。

3. 准备训练数据和代码文件,上传到JupyterLab中。具体参见上传本地文件至

JupyterLab。

4. 在JupyterLab中编写代码文件,并运行调试。具体参见JupyterLab简介及常用操

4. 在JupyterLab中编写代码文件,并运行调试。具体参见JupyterLab简介及常用操