DSW常见问题

更新时间:
复制 MD 格式

使用DSW时遇到问题,可在此查找原因和解决方法,涵盖实例启停、计费、镜像制作、挂载配置、网络访问、第三方库安装及模型部署等常见场景。

有问题先问小PAI

PAI智能助手(小PAI)提供PAI全链路产品的使用说明和操作指引,支持对DSW实例、DLC任务、EAS服务进行运维诊断,自动识别失败原因并给出处理建议。

image

实例启动

Q:DSW实例启动失败

排查方法:单击DSW实例名称,在事件页签下查看报错信息。

常见报错及解决方案如下:

  • Your requested resource type [ecs.******] is not enough currently, please try other regions or other resource types

    • 错误原因:该地域下您所选取的资源规格库存紧张,导致无法创建实例。

    • 解决方案:稍后再尝试创建,或者更换其他资源规格和地域。

  • Your resource usage has exceeded the default limitation. Please contact us via ticket system to raise the limitation.

    • 错误原因:每个阿里云主账号在每个地域最多一次创建2*GPU规格的实例,超过此限制会导致创建失败。

    • 解决方案:如果您需要提升限额,请提交工单联系我们。

  • the available zone with vSwitch is out of stockInternalError-ResourceAllocateFailed

    • 错误原因:创建DSW实例时配置了VPC专有网络,vSwitch交换机限定了可用区,导致资源查找范围受限,可能出现资源短缺。

    • 解决方案

      1. 尝试在其他可用区创建vSwitchDSW实例。

      2. 尝试选择其他规格的DSW实例。

  • Sales of this resource are temporarily suspended in the specified zone. We recommend that you use the multi-zone creation function to avoid the risk of insufficient resource.

    当前指定可用区的资源销售已暂停,您可以尝试以下操作来规避资源不足的风险:

    • 切换至其他地域。

    • 调整实例的资源规格。

    • 尝试在非高峰时段启动实例。

  • CommodityInstanceNotAvailableError:Commodity instance has been released due to prolonged arrears at past. Please create a new instance for use

    • 错误原因:因长时间欠费,系统自动回收资源并释放了实例。

    • 解决方案:需要重新创建新的实例。

  • The charge of current ECI instance has been stopped, but the related resources are still being cleaned.

    • 错误原因:试用资源为公共资源,高峰期实例启动可能耗时半小时以上。若一小时内仍无法获取资源,系统会提示当前地域无可用规格。

    • 解决方案:尝试以下操作:

      • 切换地域。

      • 变配实例的资源规格(等待中的实例不支持修改规格,您可手动停止实例,然后进行规格切换)。

      • 在非高峰期(如非工作时间)时使用。

      • 如果上述方法均无法解决问题,请联系您的商务经理进行处理。

  • The cluster resources are fully utilized. Please try later or other regions.

    • 错误原因:当前计算资源已完全被占用。

    • 解决方案:尝试以下操作:

      • 切换地域。

      • 变配实例的资源规格(等待中的实例不支持修改规格,您可手动停止实例,然后进行规格切换)。

      • 在非高峰期(如非工作时间)时使用。

      • 如果上述方法均无法解决问题,请联系您的商务经理进行处理。

  • Create ECI failed because the specified instance is out of stock. It is recommended to use the multi-zone creation function to avoid the risk of stockout.

    • 错误原因:指定的计算资源已经售罄。

    • 解决方案:尝试以下操作:

      • 切换地域。

      • 变配实例的资源规格(等待中的实例不支持修改规格,您可手动停止实例,然后进行规格切换)。

      • 在非高峰期(如非工作时间)时使用。

      • 如果上述方法均无法解决问题,请联系您的商务经理进行处理。

  • back-off 10s restarting failed container=dsw-notebook pod

    • 错误原因:系统盘已满,需要扩容。

      查看系统盘使用情况:单击实例名称,在详情页环境信息区域查看系统盘用量。

    • 解决方案:在实例列表页,单击变更配置扩容系统盘。

      重要

      扩容过系统盘后,无论实例是否处于运行状态,系统盘都会持续计费。如果您想停止DSW实例相关的一切计费,请删除DSW实例。删除前请务必确保必要数据已备份。

  • Pod was active on the node longer than the specified deadline

    • 错误原因:该报错通常由 ACK 底层抛出,可能原因包括容器内部参数设置问题或系统空间占用过大。

    • 解决方案:建议按以下步骤排查:

      1. 检查自定义镜像是否包含异常配置。

      2. 执行命令 find / -type f -print0 | xargs -0 du -h | sort -rh | head -n 10 查看占用系统空间最大的文件,核实是否为正常业务文件。

      3. 确认 CPFS 与 PAI-DSW 实例的网络连通性及 VPC 配置是否一致。

  • 启动失败,提示Workspace member not found

    此错误表示您当前登录的账号不是目标工作空间的成员。请联系您的工作空间管理员,将您的账号添加为该工作空间的成员。

  • failed to create containerd container: failed to prepare layer from archive: failed to validate archive quota ...

    • 错误原因:创建实例使用的镜像太大,导致系统盘空间不足。

    • 解决方法:单击实例名称,在详情页环境信息区域查看系统盘用量,单击扩容扩容系统盘(扩容后将按容量额外计费)。

  • Resource Error: create order error(状态码 400)

    错误原因:该错误通常由以下原因之一导致:

    1. 账号欠费:账号存在未结清的欠费,系统拦截了新的资源创建请求。即使您选择的是免费试用规格,欠费状态下也无法创建任何实例。

    2. 账号风控:账号触发了阿里云安全风控策略(如新注册账号、异常操作等),创建请求被拒绝。

    排查步骤

    1. 登录费用与成本控制台,检查账户是否有欠费。如有欠费,请先结清后重试。

    2. 如果账户无欠费,可能是风控限制。请提交工单,附上报错中的请求ID(Request ID),由技术支持协助排查和解除限制。

  • InternalError-Failed to perform action, error: OperationDenied.NoStock: The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.

    指定可用区的资源暂时缺货,请尝试选择其他类型或更换到其他地域和可用区。

  • RISK.RISK_CONTROL_REJECTION

    错误原因:您的账号触发了阿里云安全风控策略,创建实例或下单的请求被拒绝。常见触发原因包括:新注册账号未完成认证、账号存在安全风险、异常操作行为等。

    解决方案

    1. 确认账号已完成实名认证。

    2. 登录阿里云控制台,检查是否收到安全中心的通知或告警。

    3. 如果还无法创建实例,请提交工单。

其他启动失败原因:

  • 欠费导致创建失败

    如果您的账号欠费,将导致创建DSW实例创建失败,并且代金券不能抵扣欠费,您可登录费用与成本控制台,查看账户是否欠费。

Q:提示资源规格库存不足或计算资源配额不足怎么办?

常见报错:

  • "Your requested resource type [ecs.******] is not enough currently"(资源库存不足)。

  • "Your resource usage has exceeded the default limitation"(超出每个Region2GPU)。

  • "The cluster resources are fully utilized"(计算资源已完全被占用)。

原因分析:

  • 公共资源库存不足

    • 公共资源由多个用户共享,在高峰期可能出现库存紧张。

    • 特定GPU规格(如高端GPU)更容易售罄。

    • 每个账号在每个Region2GPU的限制。

  • 专有资源配额不足

    • 购买了专有资源配额,但配额已用尽。

    • 配额分配不合理,某个工作空间配额不足。

解决方案

  • 更换规格:如果当前选择的GPU规格缺货,尝试其他GPU规格。

  • 切换地域:在PAI控制台左上角切换到其他地域,尝试在不同地域创建实例。

  • 提升GPU限额:需要使用超过2GPU的公共资源,请提交工单。

  • 购买专有资源:如果需要稳定的资源保障,建议购买专有资源配额,详情请参见购买通用计算资管理资源配额

Q:DSW 实例处于挂起状态且提示 GPU 资源缓存是什么意思?

GPU 资源缓存是指当 GPU 资源被其他任务占用时,当前实例需排队等待资源释放;在此期间系统会暂存实例状态(显示为挂起),待资源空闲后自动恢复运行。这属于平台正常的资源调度机制,并非用户操作问题或故障。

Q:如何查询 DSW 特定规格的库存或恢复时间?

  • PAI-DSW 控制台暂不支持直接查询各地域特定规格(如 ecs.gn7i、A100 等)的实时库存或具体恢复时间。

  • 公共资源由多用户共享,库存动态变化,无法给出确切到货时间。

  • 当创建实例提示“out of stock”或资源不足时,建议尝试切换地域、更换其他可用规格或在非高峰时段重试。

  • 如需稳定资源保障,建议购买专有资源配额。

Q:DSW 实例启动失败还有哪些常见场景?

  • 报错“found multiple security groups with the same name”:通常为后端异常,若重启实例无效,需记录请求ID(Request ID)并提交工单处理。

  • 节点 CPU 资源碎片化导致启动失败:建议调整任务启动顺序,先停止部分占用资源的 DSW 实例,优先启动目标实例,待成功后再重启其他任务。

  • 自定义镜像未安装 IDE 能否使用网页版:可以正常使用,DSW 网页内的VS Code等 IDE 为平台内置环境,不依赖自定义镜像中的 IDE 包。

Q:DSW启动时可以开机执行Python文件吗?

创建实例或变更实例配置时,可找到自定义启动脚本参数进行设置。

该功能可用于在实例启动过程中定制环境或执行初始化任务。自定义脚本的执行时间在镜像和资源准备完成后,JupyterLab、Code Server等开发应用启动前。

说明
  • 超时时间为3分钟:自定义脚本会增加实例的启动时间,脚本超时时间为3分钟,请勿在自定义脚本中执行镜像下载等长耗时任务。

  • 可查看脚本运行日志:实例启动后可在/var/log/user-command/路径下找到自定义脚本运行产生的日志。

Q:DSW 页面异常或无法操作怎么办?

如果遇到页面白屏、Notebook 一直转圈加载、Terminal 无法输入命令或无法加载、浏览器提示"504 Gateway Timeout"或"504 Timeout"等问题,通常与本地环境或实例状态有关。请尝试以下步骤:

  1. 清理浏览器缓存后重试。

  2. 使用浏览器的 无痕/隐私模式 访问。

  3. 更换网络环境,例如从公司内网切换至手机热点,以排查防火墙限制。

  4. 尝试使用 其他浏览器(如 Chrome、Firefox)。

  5. 如果提示 504 Timeout 错误,请在 PAI 控制台停止并重启 DSW 实例,等待状态变为"运行中"后再访问。

Q:包含云盘系统盘的DSW实例停止、重启、变更规格、更换镜像是否会丢失系统盘中数据?

包含云盘系统盘的DSW实例类型有:公共资源组创建的实例,以及选择云盘作为系统盘的通用资源实例,其系统盘中的数据丢失情况如下:

  • 停止实例:可能会丢失。如果云盘未扩容且实例停止超过15天,数据会被清空且无法恢复。如果云盘扩容过或者实例停止未超过15天,则数据不会丢失。

  • 重启实例:不会丢失。在实例停止或重启后,所有通过pip安装的包、代码文件以及其他存储在实例系统盘中的数据都会被保留,不会丢失。

  • 变更实例规格:不会丢失。调整实例规格(如CPU、内存、GPU等资源配置)不会影响实例的系统盘中数据。

  • 更换实例镜像:可能会丢失部分数据。变更镜像不会影响挂载的数据集或OSS存储中的数据,但系统盘内的内容可能会被重置。因此,您在变更实例镜像时,注意保存实例数据。比如可以将数据复制或移动到数据集或OSS中。详情请参见挂载数据集/OSS/NAS/CPFS

对于选择临时存储作为系统盘的通用资源实例,不论其所在AI资源组是否配有预付费云盘,其停止、重启、变更规格或镜像都会丢失系统盘中的数据。

Q:使用公共资源创建的 DSW 实例,超过15 天未登录被释放,可以找回吗?

使用公共资源创建的DSW实例,如果云盘系统盘未付费扩容,且关机后连续15天以上未启动,其系统盘将被自动清空且无法恢复。

Q:启动DSW实例时间越来越长

每次启动时间逐渐变长可能是由于您的保存镜像体积较大所致。

Q:为什么 DSW 实例首次启动比后续启动慢?

首次启动 DSW 实例时,系统需要完整拉取所选镜像,这一过程可能耗时 10 分钟以上(取决于镜像大小和网络状况)。后续启动由于镜像已缓存,速度会显著加快。

如果发现启动时间逐渐变长,可能是由于保存的自定义镜像体积过大导致。建议清理不必要的文件后重新保存镜像,或更换为官方提供的轻量镜像。

Q:DSW 实例创建后能否修改资源类型?

不支持修改资源类型(如从专属资源改为公共资源,或反之)。若需使用 SSH 配置等功能但当前为专属资源,可改用 proxyclient 方式访问,或重新创建符合要求的公共资源实例。

实例停止/删除/释放

Q:如何释放DSW实例?

DSW实例列表页操作列,单击停止或删除实例。

注意:扩容过系统盘的实例,无论是否运行,系统盘持续计费。彻底停止计费需删除实例。

Q:怎么找不到DSW实例?

如果找不到实例,您可以尝试切换不同地域和工作空间。

Q:如何释放免费试用抵扣包?

免费试用抵扣包无需释放或停止。

Q:如何完全停止DSW实例的计费?“停止”和“删除”操作有什么不同?

  • 停止实例:释放实例的计算资源(CPU/GPU),暂停计算费用。注意:扩容的系统盘会继续计费

  • 删除实例:永久删除实例及其所有资源(包括系统盘),所有相关计费完全停止。

如何选择

  • 停止:临时不用,但想保留数据和环境供未来重启。

  • 删除:不再需要,希望停止所有计费。操作前请备份数据。

Q:为什么我的DSW实例长时间处于“停止中”或“删除中”状态,无法完成操作?

停止DSW实例时,系统会自动构建镜像缓存,保存容器读写层数据以加速下次启动。容器读写层数据量越大,构建时间越长,可能持续数十分钟甚至数小时。

重要

公共资源组创建的DSW实例,处于“停止中”、“保存中”、“删除中”状态时不会产生计算费用。

如果实例长时间无法完成停止,常见原因如下:

  • 容器读写层数据量过大:这是最常见的原因。如果您在实例中安装了大量软件包、下载了模型文件或数据集到系统盘,都会增大读写层体积,延长停止时间。

  • 实例中有未正常结束的进程。

  • 内存占用过高,导致实例无法响应关机指令。

加速停止的建议

  • 在停止实例之前,通过"制作镜像"功能设置排除路径,将不需要保存的大文件或目录排除在外(如模型文件、数据集等),可以显著减少停止耗时。详情请参见《制作DSW实例镜像》。

  • 将大体积数据存放在挂载的OSSNAS路径下,而非系统盘中,从根本上减小容器读写层的体积。

  • 如果实例确实不再需要且不关心数据保留,可以选择"删除"实例来立即释放资源。

遇到停止时间过长的情况,建议先耐心等待。如果等待超过2小时仍未完成,请提交工单联系技术支持协助处理。

Q:停止或删除DSW实例后,我的数据和代码会丢失吗?

数据是否保留取决于您的操作以及实例的资源组类型。

  • 停止实例

    数据保留策略因资源组类型而异。

    • 包含云盘系统盘的实例(大多数按量付费规格,选择了云盘作为系统盘的通用资源实例):如果云盘未扩容且实例停止超过15天,数据会被清空且无法恢复。如果云盘扩容过或者实例停止未超过15天,则数据不会丢失。

    • 使用临时存储作系统盘的实例:数据存储在临时存储中。停止实例会删除数据,且无法恢复。

  • 删除实例

    其系统盘中的所有数据都将被永久擦除,且无法恢复。因此,在删除前务必备份所有重要数据。

Q:为什么我正在运行的DSW实例会自动停止?

实例配置了闲置自动关机策略,默认对免费试用实例启用。

  • 触发条件:实例的 CPU 和 GPU 使用率连续 3 小时低于设定阈值。

  • 操作建议:

    • 手动停止:为确保节省资源,请在不使用时手动停止实例。自动关机策略不保证每次都触发。

    • 修改策略:如需运行长时任务,请修改或禁用此策略。具体操作步骤如下:

      1. 进入工作空间详情页,单击工作空间配置 > 调度配置

      2. 找到DSW的配置区域,在此处即可修改DSW的关机策略以及排除策略。如:如果不想自动关机可在排除策略中通过实例名称排除。

Q:我已经将所有DSW实例停止或删除了,为什么还显示“运行中”或收到计费通知?

检查以下常见原因:

  • 混淆了资源包与实例。您看到的“运行中”状态可能指资源包(如“每月250计算时”),而非实例。资源包在有效期内始终有效,其状态与实例无关。

  • 扩容的系统盘仍在计费。停止实例仅暂停计算费用。扩容后的系统盘会继续产生存储费用。

  • 账单存在延迟。计费并非实时,账单可能在您使用资源几小时后才生成。例如,上午产生的费用,可能在下午才显示在账单中。

Q:是否支持通过 API、Python 代码或任务完成后自动停止 DSW 实例?

目前不支持以下方式自动控制 DSW 实例的启停:

  • 不支持从 ECS 等外部环境通过 API 调用 DSW 启动训练进程或控制实例启停。

  • 不支持在实例内通过 Python 代码(如 os.system)执行停机命令。

  • 不支持设置"任务完成后自动停机"。

DSW 仅支持配置"闲置自动关机策略"(最低闲置时长为 1 小时),该策略基于 CPU/GPU 使用率判断实例是否闲置,但无法保证 100% 触发。建议在任务完成后手动停止实例,以避免额外计费。

免费试用

Q:为什么正在使用免费试用,但账户还是被扣费了?

免费试用期间产生费用通常有以下几种原因:

  • 免费额度用尽:您当月的免费额度(例如250个“计算时”)已经用完,超出的部分会按量计费。

  • 实例规格不符:您创建的DSW实例规格不在免费试用所支持的机型范围内。

  • 试用产品到期未释放:后付费的试用产品到期后,如果您没有手动释放实例,服务会转为正式的按量计费模式,并从您的账户余额中扣费。

  • 系统盘扩容计费:如果您在创建DSW实例时扩容了系统盘,这部分存储容量会持续计费,即便是实例处于停止状态。

Q:收到了DSW免费试用即将到期的通知,如何操作才能避免被收费?

您收到的“DSW免费试用资源抵扣包”到期后会自动失效,无需您手动操作。但为了避免产生费用,您必须手动停止或删除您创建的DSW实例。详情请参见四. 释放实例或服务。如果您试用时还使用了对象存储OSS,可参考删除存储空间,清理OSS中的文件。

Q:我已经删除了DSW实例,为什么在“我的试用”页面,它还显示“运行中”?

这个运行中状态是指您的“免费试用资源抵扣包”本身仍在有效期内,而不是指您有正在运行的DSW实例。资源包在到期前会一直处于生效状态。如果所有DSW都已经删除,就不会产生计算资源的费用。如果DSW实例都是停止中状态,并且没有扩容过系统盘,则也不会产生计算和存储费用。

Q:找不到DSW/EAS/DLC实例?

您可以在概览页面查看创建地不同类型的实例,并尝试切换不同地域。

实例类型包括分布式训练(DLC)交互式建模(DSW)模型在线服务(EAS)可视化建模(Designer),可通过对应页签切换查看。

Q:什么是“计算时”?我应该如何查看剩余的免费额度?

“计算时”是用于计量DSW资源消耗的单位,它不等于时钟上的一小时。不同规格的实例(特别是GPU实例)每小时消耗的“计算时”数量是不同的。您可以在阿里云费用中心的我的试用页面,集中查看所有试用实例的试用额度、已用进度、到期时间等详细信息 。

以每月250计算时为例,不同规格的实际可用时长如下:

规格

每小时消耗计算时

250计算时可用时长

ecs.g6.xlarge(纯CPU)

0.573

约 436 小时

ecs.gn7i-c8g1.2xlarge(1×A10 GPU)

6.991

约 35.8 小时

ecs.gn6v-c8g1.2xlarge(1×V100 GPU)

14.553

约 17.2 小时

Q:免费试用实例为什么会自动关机,怎么关闭闲置关机策略?

免费试用实例默认配置了闲置自动关机策略。如果实例的 CPU、GPU 等资源在一段时间内持续低于某个阈值,可能会被系统判定为闲置并自动停止。您可以参考如下内容修改自动关机策略。

  1. 进入工作空间详情页,单击工作空间配置 > 调度配置

  2. 找到DSW的配置区域,在此处即可修改DSW的关机策略以及排除策略。如:如果不想自动关机可在排除策略中通过实例名称排除。

    单击排除策略页签,添加筛选条件,将条件设置为实例名称 包含目标值(如 test_ui),然后单击保存完成配置。

Q:使用免费试用的DSW实例调用模型会产生费用吗?

如果您在免费试用的DSW实例内调用百炼或者PAI-EAS的模型,这部分费用会额外计费。DSW免费试用会覆盖DSW实例计算资源费用,在DSW内调用其他服务都会单独计费。

Q:我已经删除了 DSW 实例,为什么在”我的试用”页面还显示”运行中”?DSW 实例列表中也看不到实例了,但账单存在试用记录怎么办?

这个状态通常是指”免费试用资源抵扣包”本身仍在有效期内,而不是指有正在运行的 DSW 实例。资源包在到期前会一直处于生效状态。

请注意以下几点:

  • ”免费试用资源包”记录本身不计费,无需担心扣费。只要已在 PAI 控制台确认没有任何正在运行的 DSW 实例,即便资源包记录显示生效,也不会产生计算费用。

  • 如果 DSW 实例列表中已无实例显示,说明实例已成功释放,不会继续产生费用。

  • PAI-DSW 免费试用无需挂靠账号即可使用。

Q:免费额度(如“250计算时”)是如何计算的?为什么感觉很快就用完了?

“计算时”是DSW资源消耗的计量单位,不直接等同于时钟时间的小时。不同规格的实例每小时消耗的“计算时”数量不同。例如,使用高性能的GPU实例(如V100)每小时消耗的计算时会远多于基础的CPU实例。您可以在创建实例的页面查看到不同规格每小时消耗的计算时数量。

Q:我的免费额度或资源包用完后会怎么样?会自动停止服务吗?

  • 免费额度或资源包用尽后,DSW实例不会自动停止,系统将自动转为按量付费模式 。

  • 如果您继续保持实例运行,将开始从您的账户余额中扣除费用。为避免产生预期外的费用,建议您密切关注资源包的使用情况,并在不需要时及时手动停止或删除实例。

Q:免费试用实例为什么会自动关机,怎么关闭闲置关机策略?

免费试用实例默认配置了闲置自动关机策略。如果实例的 CPU、GPU 等资源在一段时间内持续低于某个阈值,可能会被系统判定为闲置并自动停止。您可以参考如下内容修改自动关机策略。

  1. 进入工作空间详情页,单击工作空间配置 > 调度配置

  2. 找到DSW的配置区域,在此处即可修改DSW的关机策略以及排除策略。如:如果不想自动关机可在排除策略中通过实例名称排除。

计费和账单

Q:为什么停止 DSW 实例后仍然产生费用?

停止 DSW 实例后仍产生费用,通常由以下原因引起:

  • 系统盘扩容费用:若创建实例时扩容了系统盘,即使实例停止,超出免费额度的存储容量仍会持续计费。如需彻底停止该部分费用,请备份数据后删除实例。

  • OSS 存储费用:若实例挂载了 OSS 标准存储(同城冗余)等资源,即使 DSW 实例停止,未释放或清空的 OSS 存储仍会产生费用。请检查并清理关联存储资源。

  • 账单延迟:DSW 按量付费账单存在 2~3 小时延迟,停止实例后短时间内出账属于正常现象,并非持续扣费。

排查建议:切换不同工作空间和地域,确认所有运行中实例及关联存储资源均已停止或释放。

Q:DSW 公网访问产生的 NAT 网关和 EIP 如何计费?

DSW 公网访问所需的 NAT 网关和 EIP 为独立计费产品,不包含在 DSW 实例费用中。NAT 网关费用因地域不同存在差异,建议参考所在地域的 NAT 网关计费说明文档,选择合适的低价套餐。更多公网访问配置请参见通过公网访问实例中的服务

Q:直接购买 GPU ECS 替代 PAI-DSW 是否可行?

直接购买 GPU ECS 替代 PAI-DSW 进行 AI 业务部署是可行的。

  • 核心差异:ECS 需自行搭建 AI 开发环境(安装驱动、框架等);PAI-DSW 提供预置镜像和开箱即用的开发环境,降低环境配置成本。

  • 计费构成提醒:选择 ECS 方案时,需关注实例规格、公网带宽、云盘存储及 NAT 网关等附加服务的独立计费,与 DSW 的一体化计费模式不同,总体费用需综合评估。

Q:PAI节省计划到期后需要手动释放吗?

不需要。PAI节省计划属于预付费消费金额产品,到期后自动失效,无需手动释放或删除操作,也不会产生额外费用。收到到期提醒短信后,如不需要继续使用,无需进行任何操作。如果您在PAI控制台有仍在运行的DSW实例,且不再使用,建议停止或删除该服务实例以避免按量计费。

Q:如何确认节省计划或免费试用额度是否已用完?

登录费用与成本控制台,进入"我的订阅"页面,可查看节省计划的剩余额度和有效期。如果额度已用完或已过期,后续使用DSW公共资源组资源将按正常按量付费价格计算。

Q:DSW如何收费?为什么我的实例开着但没有运行代码,也会产生费用?

  • DSW支持预付费和后付费,您可以根据自己的实际需要选择付费方式,计费详情请参见DSW计费说明

  • 按量计费基于实例的实际运行时长收费。由于运行中的实例会持续占用计算资源,DSW 按量付费实例自创建成功并进入“运行中”状态起开始计费,与您是否打开浏览器、是否登录控制台或是否执行代码无关。请注意,关闭浏览器或退出登录并不会停止实例运行,因此计费也不会中止。若需停止计费,您必须前往 PAI 控制台,手动停止或删除实例。

Q:如何查看DSW账单?

对于后付费用户,可以进入费用与成本页面查看账单明细,详情请参见查看账单明细

Q:如何才能彻底停止DSW实例的所有相关计费?

  • 要想完全停止DSW实例的一切计费,最彻底的方法是删除实例。请务必在删除前备份好所有需要的数据,实例删除后数据将无法恢复。

  • 您可以切换不同的工作空间和地域,确保所有实例都被删除。

Q:按量付费的DSW实例使用未满一小时怎么计算费用?

按量付费实例费用根据实际使用的分钟数进行计费,具体公式为:账单金额 = (单价 / 60)× 实际服务时长(分钟)

Q:创建DSW实例时提示余额不足无法创建?

开通按量计费时,需要账户预留100元现金余额,但实际上产生的费用会从托管主账号的额度中扣除。

模型拉取

Q:拉取模型时报错:Failed to pull image "crpi-****-vpc.cn-hangzhou.personal.cr.aliyuncs.com/apo/cat:full"

创建DSW实例时,如果配置的是镜像地址,且镜像仓库为私有,则在输入镜像地址时需输入镜像仓库用户名和密码。

Q:拉取模型时报1005错误

当前由于国内网络受限,如果从Huggingface上拉取模型或插件时可能会报“1005”链接错误,您可以通过以下方式解决:

  • 通过国内镜像源进行拉取。

  • 为本地网络设置代理。

  • 切换地域,在非中国内地地域使用DSW。

  • 上传本地模型,详情请参见上传与下载文件

镜像使用

Q:制作镜像时报错:insufficient capacity of ephemeral storage

出错原因:制作镜像的大小校验逻辑是检查系统盘的剩余可用空间是否大于写入层的大小,如果可用空间不足,就会报这个错。

解决方案:DSW Terminal中通过df -h查看文件系统的磁盘空间占用情况,并确保overlay已使用的空间不超过/dev/vda4的可用空间,如果超过,您可以通过在制作镜像时设置自定义排除路径解决。

/mnt/workspace> df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay          98G   82G   17G  84% /
tmpfs            64M     0   64M   0% /dev
tmpfs            16G     0   16G   0% /sys/fs/cgroup
/dev/vda4        99G   31G   68G  32% /tmp
/dev/vdb         98G   82G   17G  84% /mnt/workspace
overlay          99G   31G   68G  32% /etc/dsw
tmpfs            16G     0   16G   0% /dev/shm
/dev/vda3       8.8G  4.4G  4.0G  53% /usr/bin/nvidia-smi
tmpfs            16G   12K   16G   1% /proc/driver/nvidia
overlay          98G   82G   17G  84% /usr/lib/x86_64-linux-gnu/libcuda.so.465.19.01
devtmpfs         16G     0   16G   0% /dev/nvidia0
tmpfs            16G     0   16G   0% /proc/acpi
tmpfs            16G     0   16G   0% /sys/firmware

在此示例中,overlay 已使用 82G,而 /dev/vda4 可用空间为 68G,overlay 已使用空间超过了 /dev/vda4 的可用空间,因此需要通过设置自定义排除路径来减小写入层大小。

Q:DSW如何使用Docker镜像?

  • 使用Docker镜像启动DSW实例:您可以将Docker镜像推送至阿里云容器镜像服务ACR中,然后再将其添加至PAI工作空间的自定义镜像中,即可在创建DSW实例时选择对应镜像启动实例。

  • 想打包当前的DSW的镜像环境,用于启动其他实例或部署模型,请参见制作DSW实例镜像

  • DSW的云端IDE中安装和使用Docker:目前二级容器功能仅支持由“灵骏资源组”或“1.0版本的通用资源组”创建的DSW实例。详情请参见子容器管理DockerBoardDSW中使用Docker

Q:为什么制作DSW镜像时会失败或超时?

  • 镜像大小超限:DSW制作镜像时,单层镜像保存的数据量不应超过10 GiB,否则构建会失败。建议您尝试缩小镜像大小。

  • 地域不匹配:DSW实例与容器镜像服务ACR实例必须位于同一地域,否则在制作镜像时将无法找到对应的镜像仓库。

  • 系统盘空间不足:制作镜像时,如果系统盘的剩余可用空间小于需要写入镜像层的数据大小,会报“insufficient capacity of ephemeral storage”错误。

  • 网络问题:使用个人版ACR时,镜像是通过公网推送的,较大的镜像可能会因为网络波动或传输时间过长而导致超时失败。企业版ACR实例若与DSW实例绑定在同一个VPC内,则可以通过内网推送,速度更快更稳定。

Q:为什么“制作镜像”按钮是灰色的,或者在制作时找不到我的镜像仓库?

  1. 实例状态不正确:“制作镜像”功能仅对处于“运行中”状态的DSW实例开放。如果实例处于“已停止”或其他状态,该按钮将为灰色不可用。

  2. 前置条件未满足或配置错误:

    • 您必须先在与DSW实例相同的地域创建好容器镜像服务ACR实例,并在其中创建了命名空间和镜像仓库。

    • 请务必确认DSW实例和ACR实例的地域完全一致。

Q:制作镜像报错:Push image registry-vpc.cn-****.aliyuncs.com/****/lm-mirrors:**** Failed: Push container failed, Container Name: dsw-notebook

在制作镜像时,请确保单层镜像中的数据量不超过10 GiB,否则构建会失败。对于公共资源组的DSW实例,您可以设置自定义排除路径,以排除某些文件或目录,使其不被包含在最终生成的镜像中。或者,您可以通过挂载存储路径(如挂载OSS路径)来将数据存储到已挂载的路径,并通过该路径进行访问。

Q:制作镜像,DSW实例状态一直处于保存中

一般是由于实例hang住了,可能原因是镜像体积过大而机器规格过小,导致机器负载过高。

Q:制作镜像时报错:failed to push image registry-vpc.cn-shenzhen.aliyuncs.com/mystu/stu:eas-service, please try again later, failed to commit image, error: different registry for base images and commit image

请先核实保存的镜像信息。以 _accelerated 结尾的镜像是加速镜像,目前无法保存到用户的镜像仓库。

Q:如何查看镜像的python版本?

您可以通过运行 python -V 来确认Python版本。不同镜像内的Python版本可能有所不同,参考自定义镜像查看镜像信息。

Q:Notebook保存的镜像存放在哪里了?

  • Notebook对应的是DSW实例,每个实例都分配了一定的计算资源,支持代码编辑和训练。您可以在DSW上保存Notebook的镜像,生成的新镜像将存放在镜像管理列表中的用户自定义镜像中。新建DSW实例时,可以直接选择这些自定义镜像。如果尚未创建任何自定义镜像,则只能选择默认的官方镜像。

  • 自行创建的镜像不会受到任何操作的影响。即使官方提供的镜像进行了更新,自建的镜像仍然保持原有的配置,不会发生变化。

Q:制作镜像推送至企业版 ACR 时报错 Failed to login 怎么办?

该错误通常由 ACR 仓库权限配置不当或认证信息无效导致。请按以下步骤排查:

  1. 先将镜像仓库类型临时修改为"公有"进行测试。

  2. 若改为公有后能成功推送,则确认为权限问题,需检查并修正私有仓库的访问控制策略及账号授权信息。

  3. 若改为公有后仍失败,需检查当前登录账号是否具备该 ACR 实例的写入权限。

Q:通过镜像重建实例期间,原实例如何处理及是否继续计费?

  • PAI-DSW 实例磁盘不支持缩容,若需调整配置(如缩容),需先将原实例制作成自定义镜像。

  • 镜像制作完成后,建议先停止原实例,以避免产生计算资源费用。

  • 使用新镜像创建实例并验证环境无误后,再释放(删除)原实例,以彻底停止计费。

Q:自定义镜像中是否必须包含 VS Code 或 Jupyter 等 IDE 包?

  • 自定义镜像中不强制要求包含VS CodeJupyter等 IDE 包,即使镜像未安装,DSW 网页端内置的 IDE 环境仍可正常使用。

  • 如果希望镜像内默认预装特定 IDE 或依赖,需在制作镜像前将相关软件打入镜像,或在实例启动后手动安装。

系统盘扩容

Q:DSW实例系统盘空间有多大,满了怎么办?

DSW实例中的文件和数据默认存储在系统盘中。

  • 查看免费额度

    公共资源组创建的实例免费额度为100 GiB,通用计算资源需满足规格要求后,才会提供免费额度的系统盘。灵骏智算资源不提供免费云盘。具体免费系统盘空间大小可以查看实例配置页面的系统盘选项。操作步骤:

    1. 单击实例列表页的实例名称。

    2. 在右上角单击变更配置,然后下拉找到系统盘

  • 查看系统盘使用量

    单击DSW实例名称,在环境信息区域可以查看系统盘的用量。

  • 系统盘满了如何扩容

    如果系统盘空间使用量超过了免费额度,您可以选择扩容系统盘或挂载数据集

Q:系统盘支持缩容吗?

DSW系统盘扩容后无法缩容。若系统盘空间过大,可通过挂载数据集/OSS/NAS/CPFS将数据备份至OSS,然后删除该实例、重新创建并设置合适的系统盘容量。

挂载配置

Q:DSW实例如何挂载和使用自己的文件系统?

您可以在新建实例时挂载OSS/NAS/CPFS/智算CPFS,可以通过DSW Terminal进入挂载目录查看并使用文件。

目前DSW仅支持在创建实例时,挂载同地域下的文件系统,详情请参见创建DSW实例

Q:PAI-DSW挂载数据集NAS,启动实例报错:The specified MountTarget 3b79d4a2ac-xmk97.cn-shanghai.nas.aliyuncs.com is not in VPC vpc(VPC实例)

  • 产生原因:创建NAS数据集时添加了挂载点配置。

  • 解决方案:创建数据集时将挂载点置空。

Q:使用ECS搭建FTP上传下载文件到NAS,执行挂载(mount)命令报错mount:wrong fs type,bad option,bad superblock

  • 现象描述

    [root@iZufxxx file]# sudo mount -t nfs -o vers=4.0  3f8axxx-lfc99.cn-shanghai.nas.aliyuncs.com:/ /usr/sftp/file
    mount: wrong fs type, bad option, bad superblock on 3f8axxx-lfc99.cn-shanghai.nas.aliyuncs.com:/,
           missing codepage or helper program, or other error
           (for several filesystems (e.g. nfs, cifs) you might
           need a /sbin/mount.<type> helper program)
    
           In some cases useful info is found in syslog - try
           dmesg | tail or so.
    [root@iZufxxx file]#
  • 解决方法

    执行mount命令之前,先安装nfs-utils安装包。

    yum install nfs-utils

Q:如果挂载OSS数据集后,访问挂载目录报错Input/output error,应如何解决?

root@dsw-xxx:/mnt/workspace# cd /mnt
root@dsw-xxx:/mnt# ls -ll
total 9
drw-rw-r--  0   99   99  512 Jan  1  1970 data
drwxr-xr-x  5 root root 4096 Dec 13 02:42 systemDisk
drwxr-xr-x  5 root root 4096 Dec 13 02:42 workspace
root@dsw-xxx:/mnt# cd data
root@dsw-xxx:/mnt/data# ls -ll
ls: reading directory '.': Input/output error
total 0
root@dsw-xxx:/mnt/data#

原因是RAM角色未获授OSS访问权限(AliyunPAIDLCAccessingOSSRole)。授权操作请参见PAI服务账号授权

Q:如何在使用jindo挂载OSS数据集时降低OOM(Out of Memory)风险?

在挂载OSS数据集后,可通过设置高级参数解决,方式如下:

  • 方式一:使用jindo6.8.1版本,该版本优化了内存。

    {
        "fs.jindo.fuse.pod.image.tag":"6.8.1"
    }
  • 方式二:使用ossfs。

    在提交任务时,指定:

    {
        "mountType": "ossfs"
    }

    通过以下配置关闭readdirplus优化,可以减少列举文件夹内容时的元数据缓存占用,从而最大程度的缓解OOM问题:

    {
        "mountType": "ossfs",
        "fs.ossfs.args": "-oreaddirplus=false"
    }

Q:成功挂载了OSS,为什么在JupyterLab界面的左侧文件浏览器中看不到?

这是因为DSW的文件浏览器默认显示的是实例的工作目录,其路径通常是/mnt/workspace。而您挂载OSS时指定的挂载路径(例如 /mnt/data)并不在默认工作目录下,因此不会直接显示在左侧文件列表中。

解决方法:

  • 通过代码访问:您的文件实际上已经成功挂载。在代码中,您需要使用完整的挂载路径来访问它们,例如 open('/mnt/data/my_file.csv')

  • 更改挂载点:为了在UI中方便地看到文件,您可以在配置挂载时,将挂载路径设置为工作目录下的一个子目录,例如 /mnt/workspace/my_oss_data。这样,挂载完成后,您就可以在文件浏览器的 my_oss_data 文件夹中看到您的OSS文件了。

  • 通过终端访问:您可以在DSWTerminal中使用cd /mnt/data命令进入挂载目录,然后通过ls等命令查看和操作文件。

Q:使用挂载的OSS时,程序报错“Transport endpoint is not connected”或“输入/输出错误”?

这个错误表明DSW实例与OSS的挂载连接已断开。可能的原因及排查方法如下:

  1. RAM角色权限问题:请检查您为DSW实例配置的RAM角色是否被授予了访问OSS的权限(例如 AliyunPAIDLCAccessingOSSRole)。权限不足是导致无法读取OSS的常见原因。

  2. 挂载服务资源不足:当进行高强度的随机读写或大量小文件操作时,负责挂载的ossfsJindoFuse进程可能会因内存不足(OOM)而崩溃 。您可以在挂载配置的“高级配置”中,可以关闭元数据Cache,或增加内存配置。详情请参见JindoFuse

  3. 恢复连接:

    • 对于启动时挂载,最简单的恢复方法是重启DSW实例,系统会自动重新执行挂载。

    • 您也可以使用PAI SDK执行动态挂载命令,在不重启实例的情况下重新挂载路径。

Q:DSW支持挂载哪些类型的数据?可以直接挂载阿里云盘或MaxCompute表吗?

DSW支持通过创建数据集或直接挂载路径的方式使用OSS、NASCPFS这几种云存储服务 

  • 不支持阿里云盘:目前DSW不直接支持挂载个人阿里云盘。需要处理的数据建议存放在OSS中。

  • 不支持挂载MaxCompute表:MaxCompute(原ODPS)的表数据,不能像文件系统一样直接“挂载”到DSW的目录中。您可以通过PAI提供的SDKAPIDSW代码中进行读写,详情请参见使用PyODPS读写MaxCompute

Q:DSW实例关机或删除后,代码和数据会丢失吗?如何实现数据持久化和迁移?

DSW实例的系统盘是临时存储。对于公共资源组,实例停机超过15天数据会被清空;对于专有资源组,实例停止或删除后,系统盘数据也会被清空。

为了实现数据和代码的持久化存储,以及在不同实例间迁移,必须使用外部挂载存储 。

  • 持久化方案:将您的重要数据、代码、模型等全部保存在通过挂载的OSSNAS路径下。这样,即使DSW实例被删除,您的所有资产依然安全地存放在您自己的OSSNAS中。

  • 迁移方案:当您需要将数据从一个DSW实例迁移到另一个时,只需在新实例中挂载包含这些数据的同一个OSSNAS路径即可,这是最便捷的数据迁移方式。

Q:成功挂载了OSS,在工作目录中的文件为什么在OSS中看不到?

挂载OSS时指定的挂载路径默认为 /mnt/data,而DSW默认的工作目录为/mnt/workspace,因此无法在OSS中看到工作目录下的文件。您可以使用如下复制命令将工作目录下的文件拷贝至/mnt/data下,即可在OSS中看到相应文件。

cp -r /mnt/workspace/. /mnt/data/

Q:挂载NAS提示扮演角色失败

如果您在创建DSW实例时挂载NAS失败:显示扮演角色失败。请参考如下方法进行处理,然后再次尝试挂载:

  1. 单击此处授权NAS拥有对您云资源相应的访问权限。

  2. 单击此处授权ODPS拥有对您云资源相应的访问权限。

Q:DSW实例重启后里边的文件全丢失

如果DSW实例未挂载数据集,则在停止或删除DSW实例后,相关数据将无法恢复。因此,在停止之前,请确保已挂载数据集。如果没有挂载,请尽快备份您的数据和资料,完成备份后再进行停止操作,以避免数据丢失。

Q:如何将 /mnt/workspace 目录下的数据完整复制到挂载的数据集目录?

在 DSW 实例终端中执行以下命令:

cp -r /mnt/workspace/ /mnt/data/

其中 /mnt/data 为默认数据集挂载路径,该操作可保留原有文件结构和内容。复制完成后,可以通过以下命令验证挂载状态及检查 OSS 中的数据:

mount | grep oss

数据读取、上传和下载

Q:如何使用DSW读取OSS数据?

您可以使用Python SDKAPI读取OSS数据,详情请参见读写对象存储OSS数据

Q:如何上传下载文件夹?

DSW不支持直接上传和下载文件夹,需先打包为压缩文件。Terminal支持targzipunzip等标准命令,以tar为例如下。

  1. 使用tar --version查看tar是否安装,如果没有,则可参考如下命令进行安装。

    # 对于基于Debian的系统(例如 Ubuntu)的安装命令
    sudo apt install tar
    
    # 基于Red Hat的系统(例如CentOS、Fedora)的安装命令
    sudo yum install tar
  2. 解压缩文件夹。

    # 压缩文件夹, /path/to/diretory为要压缩的文件夹
    tar -cvf archive_name.tar /path/to/directory
    
    # 解压文件夹
    tar -xvf archive_name.tar

Q:两个DSW实例之间怎么互传、分享数据?

您可以采用如下两种方式:

  • 挂载数据集/OSS/NAS/CPFS:两个DSW实例都挂载相同的数据集或OSS路径,然后将数据存储在该数据集或存储路径下,从而实现数据分享。

  • 上传与下载文件:从源DSW实例中下载需要分享的数据,然后再上传至另一个DSW实例中。

Q:点击“Download”后没有反应或下载失败怎么办?

这通常由网络拥堵或浏览器问题引起。请尝试以下步骤:

  1. 耐心等待片刻,大文件下载需要更长的响应时间。

  2. 更换浏览器或使用浏览器的无痕模式重试。

  3. 对于较大的文件(如超过200 MB)或网络不稳定的情况,建议通过挂载OSS的方式下载。

Q:提示“文件中转站”空间不足怎么办?

文件中转站的总容量为10 GB。您需要进入中转站管理页面,清理中转站文件释放空间。如果页面没有及时刷新,请尝试刷新浏览器。

Q:为什么上传时总是跳转到“文件中转站”?

这是正常现象。为保证上传稳定性和速度,所有大于10 MB的文件都会自动通过文件中转站进行传输,并在完成后保存到您的实例中。

Q:通过文件中转站上传大文件时进度条卡住或无响应怎么办?

  • 问题原因:通常由本地网络环境不稳定导致。

  • 解决方法:建议将文件先上传至对象存储 OSS,再在 DSW 实例中挂载或读取 OSS 数据。操作指引请参见挂载数据集

Q:如何将本地的大文件(例如超过5 GB的模型)或大量数据上传到DSW并使用?

DSW实例的系统盘空间有限且为临时存储,不建议直接上传大文件或大量数据。建议先将数据上传到OSS,再挂载到DSW实例中使用。详情请参见挂载数据集/OSS/NAS/CPFS

Q:DSW训练算法模型时,通过ODPS读取数仓数据的上限为10000条,如何解决这一限制问题?

ODPS的默认查询限制为10000条,这对写入或插入操作没有影响。您可以联系您的ODPS管理员,请求更改配置以允许下载或读取全量数据。

远程连接实例

Q:ProxyClient连接DSW实例时断连报错:client_loop: send disconnect: Broken pipe

通过SSH方式连接DSW实例时,长时间不操作会触发断连,系统可能提示:

Welcome to PAI DSW!

(base) [root@dsw-367946-867cc4957c-phxnp ~]$FATA[0245] proxy-read:websocket: close 1006 (abnormal closure): unexpected EOF
                        client_loop: send disconnect: Broken pipe

如果要从根本上解决此问题,推荐您使用稳定性更高的远程连接:SSH直连方式连接DSW实例。

Q:使用VSCode远程连接了实例,打开本地文件夹失败

通常由VS Code客户端问题引起。建议将本地文件上传至DSW云端,操作可参考上传与下载文件

Q:SSH直连配置失败,报错信息如下: Failed to update private zone items: Failed to add zone

报错原因是没有开启内网DNS解析服务,您可以参考开通内网DNS解析开通该服务。

Q:VS Code 连接 DSW 时报错"the input device is not a TTY"怎么办?

该报错通常由 SSH 服务端 TTY 配置缺失导致。解决方法:

  1. 在 DSW 实例的 Terminal 中编辑 /etc/ssh/sshd_config 文件,添加或确认存在 PermitTTY yes 配置项。

  2. 保存后执行 sudo service ssh restart 重启 SSH 服务。

  3. 重新使用 VS Code 连接。

Q:是否支持通过外部 IDE 直接远程调用 PAI GPU 算力执行代码?

不支持。无论是 DSW 还是 DLC,代码均需在云端环境中运行,不支持在本地外部 IDE 中通过 API 直接远程调用 PAI GPU 算力。

建议通过 SSH 直连方式将本地 IDE(如 VSCode、PyCharm)连接到 DSW 实例进行开发,或将代码上传至 DSW/DLC 中运行。具体 SSH 连接方式请参见本文「远程连接实例」章节。

更多远程连接问题请参见常见问题

网络问题

Q:网络下载速度过慢如何解决?

由于DSW、DLC实例默认使用共享网关,受带宽限制,下载大型文件时网速可能无法满足需求。因此,当您想要提升网络下载速度时,可参考如下内容:

Q:DSW实例是否有公网IP?

DSW实例默认情况下不分配公网IP。如果您需要访问外网或让外部访问您的DSW实例,建议您配置NAT网关或使用弹性公网IP(EIP),详情请参见网络配置

Q:DSW实例同NAT网关暴露公网访问时,公网端口可以重复吗?

当使用DSW自定义服务对外提供接口时,若多个服务配置了相同的NAT网关,则所有通过该NAT网关进行公网访问的自定义服务端口不得重复,包括不同DSW实例中的自定义服务。

Q:DSW实例为什么无法访问公网?

DSW实例默认可以使用公有网关访问公网。如果您无法访问公网请确认,在实例的配置页面,公网访问网关是否选择了专有网关。如果选择了专有网关,请必须配置弹性公网IPSNAT条目,详情见通过专有网关提升公网访问速率。否则,请选用公有网关。

Q:访问Hugging Face时遇到"Network is unreachable"错误?

拉取海外模型(如huggingface.co)时可能因网络跨域而无法访问。可创建全球加速GA实例,使DSW具备跨域获取模型和镜像的能力。详情请参见跨域拉取海外模型或容器镜像

Q:DSW创建实例绑定专有网络报错:错误码:InternalError 获取用户VPC列表失败

错误原因:PAI服务账号缺失AliyunPAIDSWDefaultRole权限。该权限在开通PAI的时,默认会由用户统一单击授权,可能在后续使用过程中该权限被删除或修改。

解决方法:使用主账号单击授权链接,将AliyunPAIDSWDefaultRole权限授予PAI服务账号。

第三方库安装

Q:DSW实例关机(停止)后,我用pip安装的包和写的代码会丢失吗?

如果使用了云盘作为系统盘则不会丢失。 实例的磁盘数据(包括/mnt/workspace/root下的环境)都会被保留。下次启动实例时,所有环境和文件都还在。只有删除实例才会彻底清空所有数据。

Q:为什么安装的第三方包没有生效?

通过pip命令安装第三方包后,使用import命令导入时,如果找不到该包,先尝试重启服务或Kernel。如果依然报错,请确认当前使用的环境。安装第三方包时,DSW默认安装到Python 3环境。如需安装到其他环境,必须先切换环境再安装,示例如下。

安装到Python 2环境。
source activate python2
pip install --user xxx
安装到TensorFlow 2.0环境。
source activate tf2
pip install --user xxx

其中xxx需要替换为待安装的第三方包名称。

Q:在DSW里用 pip install 安装一个包失败了,报依赖冲突或版本错误,该怎么办?

通常由环境不兼容导致。按以下顺序排查:

  1. 首选方案:更换镜像。 停止当前实例,新建一个DSW实例,选择一个不同的官方镜像。例如,如果当前PyTorch 2.1镜像不行,可以尝试PyTorch 2.3的镜像,或者尝试modelscope系列镜像,该系列镜像通常有更好的兼容性。

  2. 指定版本安装。 查阅该包的官方文档,找到一个支持您当前DSW环境(Python/CUDA版本)的包版本,然后执行 pip install package_name==x.y.z

  3. 更换下载源。 尝试使用清华源等国内镜像:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple <yourLibraryName>

Q:在DSWTerminal里已装好了库,为什么在Jupyter Notebookimport 还是找不到?

可能是因为TerminalJupyter使用了不同的Python环境。可通过which python命令确认当前Python环境,或在Notebook中安装所需的库,例如:

!which python
/usr/local/bin/python

!pip install bottle
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Collecting bottle
  Downloading https://mirrors.aliyun.com/pypi/packages/83/f6/b55...
                                            103.8/103.8 kB 6.7 ...
Installing collected packages: bottle
Successfully installed bottle-0.13.4
WARNING: Running pip as the 'root' user can result in broken per...

[notice] A new release of pip is available: 23.3.2 -> 25.1.1
[notice] To update

Q:代码报错说CUDA驱动版本太低,需要手动在DSW里升级NVIDIA驱动吗?

不要升级驱动版本。 DSW实例的驱动和CUDA是预装并锁定的,不能也不应该手动修改,否则极易导致实例损坏且无法恢复。正确做法:更换DSW镜像。停止当前实例,新建一个实例,选择官方提供的、带有更高版本CUDA和驱动的镜像。

例如官方镜像:modelscope:1.9.4-pytorch2.0.1tensorflow2.13.0-gpu-py38-cu118-ubuntu20.04。其中cu118,代表CUDA版本为11.8。

Q:在DSWVSCode中安装插件时报ETIMEDOUT错误,怎么解决?

VSCode插件安装需要访问VS Code Marketplace(marketplace.visualstudio.com),该域名为海外地址。如果DSW实例使用的是公有网关(共享带宽),访问海外资源时速度可能极慢或超时。

解决方法:

  1. 确认实例网络是否正常:在Terminal中执行 curl -I https://marketplace.visualstudio.com,检查能否正常返回。

  2. 如果访问海外资源超时,请参见提升DSW公网下载速度,为实例所在VPC配置公网NAT网关和EIP,并使用专有网关。

  3. 配置专有网关后,如仍无法访问海外资源,可参见DSW加速访问海外资源开启全球加速(GA)。

Q:想在DSW里使用Docker来部署我的应用,可以吗?

目前二级容器(子容器)功能仅支持由”灵骏资源组”或”1.0版本的通用资源组”创建的DSW实例。详情参见子容器管理DockerBoardDSW中使用Docker

Q:DSW实例里没有unzip7z命令,怎么解压文件?

您可以通过apt-get命令来安装。

  • 安装unzip:在Terminal中运行 apt-get update && apt-get install -y unzip,然后使用 unzip your_file.zip

  • 安装p7zip (用于7z):在Terminal中运行 apt-get update && apt-get install -y p7zip-full,然后使用 7z x your_file.7z

Q:安装三方包时一直卡住或超时,是怎么回事?

安装第三方库时出现卡住、超时或速度极慢的情况,通常是网络问题。按以下步骤排查:

第一步:确认网络连通性

在终端执行ping www.aliyun.com命令,测试能否访问外网。如果网络不通,继续第二步检查网关配置。

第二步:检查网关配置

在实例配置页查看公网访问网关的类型:

  • 公有网关:DSW默认使用公有网关访问外网。您可以在DSW实例配置页面确认网关类型。使用公有网关时带宽受限,下载大型文件时网速可能不够,此时可选择专有网关。

  • 专有网关:专有网关提供更高的网络访问速度,选择专有网关后必须在专有网络(VPC)中创建公网NAT网关、绑定弹性IP(EIP)并配置SNAT,否则无法访问公网,详情参见通过专有网关提升公网访问速率

第三步:尝试更换pip下载源

DSW默认使用阿里云镜像源,但在高峰期或网络波动时可能出现问题。建议尝试切换到其他国内镜像源:

# 使用清华源安装(推荐)
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn <yourLibraryName>

# 使用中科大源安装
pip install -i https://pypi.mirrors.ustc.edu.cn/simple --trusted-host pypi.mirrors.ustc.edu.cn <yourLibraryName>

# 使用豆瓣源安装
pip install -i https://pypi.doubanio.com/simple --trusted-host pypi.doubanio.com <yourLibraryName>

也可以永久更改默认pip源,参见查看或更改pip

第四步:使用离线安装

如果网络实在不通或非常不稳定,可以采用离线安装方式:

  1. 在本地电脑(网络良好)下载.whl格式的安装包:

    # 在本地电脑执行
    pip download <yourLibraryName> -d ./packages
  2. 将下载的.whl文件上传到DSW实例,文件上传参见上传与下载文件

  3. DSW中离线安装:

    pip install /path/to/your-package.whl

Q:访问aiext-pypi镜像源失败(如aiext-pypi.mirrors.aliyuncs.com),怎么处理?

aiext-pypi.mirrors.aliyuncs.com 是PAIPAI-PPU镜像专属配置的内部pip加速源,仅在使用PAI-PPU系列镜像时才能访问。如果您的DSW实例使用的是其他镜像(如PyTorch、TensorFlow官方镜像),将无法访问该源,这是正常现象,并非网络故障。

处理方式:

  • 如需使用该加速源,请更换为PAI-PPU系列镜像创建实例。

  • 如无需PAI-PPU镜像,可改用其他国内公共pip源(如阿里云源、清华源),参见查看或更改pip

Q:在DSWWebIDE里如何获取root权限?

DSW的大部分官方镜像默认以root用户身份运行,打开Terminal时看到命令提示符是root@...就说明已经是root。pip安装时出现的”不建议以root用户运行”的警告可以忽略。如果您的镜像不是root登录,这是镜像本身的设定,需要更换支持root的镜像。

Q:在DSW中如何启动xserver?

DSW不支持启动xserver。

模型部署

Q:如何部署DSW生成的模型?

  • 使用EAS模型部署服务

    在完成模型建模后,您可以使用PAI-EAS将模型部署为在线服务,详情请参见将模型部署为在线服务

  • 下载模型到本地部署

    您可以通过右键单击DSW生成的模型将其下载至本地。

实例运行

Q:运行机器学习代码时,为什么页面放置一段时间后提示重新登录?

DSW登录 Session 有效期为 3 小时,过期后需重新登录,不影响任务执行。目前不支持调整 Session 的超时断开时间,默认有效期为 3 小时。长时间运行任务建议在 Terminal 使用 nohup 命令后台执行。

Q:关闭浏览器或电脑关机后,DSW 中运行的训练任务还会继续吗?

会继续。DSW实例运行在云端,关闭本地设备不影响其运行。但部分实例(尤其是免费试用实例)配置了闲置自动关机策略——CPU、GPU等资源持续低于阈值时,系统会判定为闲置并自动停止,导致任务中断。

Q:为什么DSW无法启动Docker?

因为DSW本身运行在容器中,所以DSW不支持安装Docker。对应的CUDA版本是底层的虚拟机预装好的,无法变更,您可以使用nvidia-smi查看对应的CUDA版本。

Q:为什么在Terminal中没有tab键自动补全等bash功能?

因为部分镜像有使用限制,您需要手动在Terminal中输入bash并按回车键,才可以启动bash相关功能。

# bash
root@dsw-xxx-rxdxg:/mnt/workspace# ls
demos  lingxitest.tar
root@dsw-xxx-rxdxg:/mnt/workspace#

Q:如果您在DSW中进行AI开发时发现DSW实例规格不满足要求如何解决?

您可以按照以下操作步骤更新DSW实例规格:

  1. DSW实例列表中,单击实例名称,进入实例详情页面。

  2. 实例配置页签中,单击变更配置

  3. 变更实例配置面板中,更新实例规格。

    说明

    在更新DSW实例规格时,如果实例正在运行中,更新操作会立即重启实例。请确保您已经保存了实例中的内容。

Q:我的内存使用率较高,怎么样进行释放?

image内存使用率过高时,可通过以下两种方式释放。

  • 如果因内存占用过高,您已无法通过命令行进行交互,请单击右上角的停止实例;或返回到DSW控制台,单击实例所在行右侧的停止按键。等到实例停止后再打开实例。

  • 如果在实例中可以通过命令行进行交互,您可以在实例的Terminal中输入top命令,查看当前所有进程的内存占用信息。%MEM表示占用内存百分比,PID表示进程ID。

    top – 10:40:20 up 22 min,  0 users,  load average: 0.95, 0.40, 0.15
    Tasks:  21 total,   2 running,  19 sleeping,   0 stopped,   0 zombie
    %Cpu(s): 12.9 us,  0.6 sy,  0.0 ni, 86.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    MiB Mem :  16000.0 total,   5889.6 free,   8838.5 used,   1271.9 buff/cache
    MiB Swap:      0.0 total,      0.0 free,      0.0 used.   5889.6 avail Mem
    
      PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
      360 root      20   0 8992776   8.0g  17096 R 100.0  51.1   2:12.54 python
      207 root      20   0   11.2g 304160  50372 S   4.0   1.9   0:44.11 node
      106 root      20   0  288712 104764  18316 S   1.0   0.6   0:03.11 jupyter-lab
      122 root      20   0  638252 104652  32672 S   1.0   0.6   0:17.24 app
      244 root      20   0  648536  54848  37924 S   0.3   0.3   0:01.22 node
        1 root      20   0   10416   3828   3464 S   0.0   0.0   0:00.04 bash
       90 root      20   0   15420   3856   2240 S   0.0   0.0   0:00.00 sshd
       99 root      20   0   34500  25712  10688 S   0.0   0.2   0:00.48 supervisord
      100 root      20   0   16280   8612   5140 S   0.0   0.1   0:00.01 supervisor_stdo
      101 root      20   0   10420   3632   3300 S   0.0   0.0   0:00.00 launch_dswagent
      102 root      20   0   10420   3724   3384 S   0.0   0.0   0:00.00 launch_jupyterl
      103 root      20   0   10420   3628   3280 S   0.0   0.0   0:00.00 launch_code_ser
      105 root      20   0   29632  28416   1668 S   0.0   0.2   0:01.51 app
      154 root      20   0  721936  63232  37132 S   0.0   0.4   0:00.59 node
      172 root      20   0  995584 131364  41032 S   0.0   0.8   0:05.36 node
      218 root      20   0  848572  50384  37464 S   0.0   0.3   0:00.24 node
      256 root      20   0   10684   4468   3768 S   0.0   0.0   0:00.00 bash
      311 root      20   0  134328  50316  10432 S   0.0   0.3   0:00.93 python
      312 root      20   0  138020  54140  11004 S   0.0   0.3   0:01.06 python
     3670 root      20   0   10656   4368   3704 S   0.0   0.0   0:00.09 bash
     3694 root      20   0   13224   3980   3400 R   0.0   0.0   0:00.08 top

    如果您想要结束占用内存较高的进程,请在命令行中输入:

    kill PID

    您需要将PID替换成您想要结束进程的PID。运行后可看到内存使用率降低。

    C 0.9%  M 4.3%

Q:运行时报错:RuntimeError: CUDA error: too many resources requested for launch

出错原因:CUDA内核请求的资源超过GPU可用资源上限。

解决方案:尝试重启实例后重新运行。若仍报错,需选择更高规格的GPU实例。

Q:DSW内存不足时能否创建swap空间使用虚拟内存?

DSW本身是容器,不支持创建或管理swap空间。

原因如下:

  • 权限限制:容器的内核权限受限,无法挂载 Swap 文件。即使在容器内获取 root 权限,也无法绕过宿主机的资源策略。

  • 平台策略:平台统一调度和限制资源,以确保多租户环境的稳定和安全。

建议:若内存不足,请优化代码或升级实例规格。

Q:PAI可以配置PHP运行环境吗?

PAI目前不支持配置PHP运行环境。您可以构建其他环境来使用PAI,详情请参见DSW概述

Q:如何Debug代码?

  • Debug Notebook代码:Notebook天然就是适合Debug的形态,每个Cell单独执行就可即时看到运行输出,可以直接用 print() 输出关键变量值。

  • Debug Python代码:在WebIDE中使用VSCode标准的设置断点及运行调试功能。

Q:对接微服务引擎Nacos连接失败

在创建DSW实例时,您可以选择与Nacos配置中心一致的VPC。这样能确保DSW实例所在的VPCNacos配置中心VPC打通。

Q:内存用满导致实例页面打开失去响应,如何操作才能清理进程

1. 如果实例配置了SSH,可以优先尝试通过 SSH 连到实例上进行进程清理。
2. 如果 sshd 也被卡死了,可以点击控制台的保留资源重启按钮,系统会发送一个bash命令重启容器,该操作用户的计算资源不会释放。
3. 如果保留资源重启也无法生效,说明实例中目前连命令接收都被卡住了,此时仅可通过实例管控操作来直接停止实例。注意这个操作会释放计算资源。

Q:Notebook无法保存:File Save Error for *.ipynb

请清空Notebook的输出。当Notebook大小超过5 MB时,将无法保存。

Q:DSW中用nvidia-smi命令为什么看不到运行中的进程信息?

DSW里面有容器隔离,nvidia-smi查不到pid。可以参考该issue的解释: https://github.com/NVIDIA/nvidia-docker/issues/179

这是nvidia驱动程序的当前限制,它与 PID 命名空间相关,驱动程序不知道 PID 命名空间,因此容器中的 nvidia-smi 看不到任何正在运行的进程。

用户查看对应gpu占用对应的pid,可以使用:lsof /dev/nvidia*

image

注:nvitop 以及 nvtop均不能获取到准确的pid

image

image

Q:VS Code 编辑 Python 代码时出现红色波浪线格式错误提示怎么办?

在 DSW 的 WebIDE(VS Code)中编辑 Python 代码时,即使语法正确也可能持续显示红色波浪线报错。这通常是云端 IDE 环境的解析问题,可按以下步骤排查:

  1. 将代码剪切并粘贴到本地 VS Code 编辑器中检查,确认是否为云端 IDE 环境特有的解析问题。

  2. 如果本地检查正常,将代码重新上传/粘贴回 DSW 开发机。

  3. 若问题依旧存在且影响开发,需提交工单由 PAI 技术支持进一步排查。

Q:DSW 实例是否支持更改地域?更换地域后数据会自动迁移吗?

不支持直接更改 DSW 实例的地域或可用区,数据不会自动迁移。

  • 若需跨地域使用,需先在原地域对当前 DSW 实例制作自定义镜像备份数据,再在新地域基于该镜像创建新实例。

  • 若仅因资源紧缺报错无法创建实例,可尝试更换实例规格或等待资源释放。此操作不涉及地域变更,数据不会丢失。

Q:更换 DSW 实例地域时如何保留原有数据?

需根据存储方式区分:

  1. 未挂载外部存储(仅使用系统盘):直接更换地域创建新实例会导致数据丢失。正确做法是在原地域先对当前运行中的 DSW 实例制作自定义镜像进行备份,然后在新地域基于该镜像创建新实例以恢复环境和数据。

  2. 已挂载 NAS/OSS 存储:数据独立于实例存在,无需通过制作镜像备份。直接将 NAS/OSS 中的数据迁移至新地域即可。

Q:PAI-DSW 是否支持跨地域工作空间数据一键迁移?

DSW 暂不支持跨地域工作空间一键导入功能。替代方案为:先将源工作空间的文件上传至文件中转站或对象存储 OSS,再在目标地域的 DSW 实例中进行下载或挂载使用。

Q:DSW怎么测试使用NVIDIA Nsight Compute(NCU)工具?

需满足两个条件:

  1. 实例类型:公共资源组因安全隔离不支持NCU,需使用灵骏智算平台的GPU实例 。

  2. 暂停AMPerf服务:A10等非Hopper架构实例需先执行 /run/amperf/bin/amperfd profmetric -pause -t 600 后再运行NCU 。

更多说明请参考性能分析工具Nsight

Q:怎么通过nvidia-smi命令查看特定GPU上运行的进程ID?

PAI-DSW容器环境中,由于PID命名空间隔离,因此nvidia-smi无法显示进程信息。

Q:DSW 是否支持 GPU 直通、加载 nvidia-drm 模块或开启 P2P 通信?

DSW 在此方面存在以下限制:

  • DSW 容器实例不支持加载 nvidia-drm 内核模块或 GPU 直通,仅通过 --gpus=all 挂载 GPU 资源。

  • GPU 卡间 P2P 通信由底层硬件决定,平台不提供用户级开关。若 nvidia-smi 显示 NS,则说明当前硬件不支持 P2P 通信,无法通过软件开启。

  • PAI 为托管服务,不支持用户自行安装驱动或打补丁以启用 P2P 通信,GPU 驱动及底层通信能力由平台统一管理。

Q:多卡 GPU 显存是否可以叠加使用?单卡显存有什么限制?

多卡 GPU(如 A10*2)的显存不能简单相加,因为 GPU 显存是物理隔离的,程序看到的是多个独立的显存空间,而非一个巨大的显存池。在常规训练模式下,每张显卡需独立装载完整的模型参数、梯度及优化器状态,因此单卡显存上限决定了能否运行;若模型所需显存超过单卡容量(例如 A10 单卡 24 GB),即使有多张卡也会导致 OOM(CUDA out of memory)。