VS Code摸鱼神器,让你快速开发AI模型
摘要:ModelArts VS Code插件一键接入云上开发环境介绍及操作指导
对于习惯于使用本地VS Code IDE的开发者,受限于本地资源,采用本地开发加云上调测的远程开发方式不失为一种更好的选择。对比一下本地开发和远程开发的优劣可以看到,本地+远程结合的方式可以同时享受IDE工程化开发的优势和云上资源的即开即用,优势互补,最大程度地满足开发者需求。

通过本地IDE加ModelArts提供的远程开发插件,用户可以先在本地做一些基础的代码编写和CPU环境的运行,当需要使用GPU等资源时,可以便捷地接入云上环境进行代码调测,云上云下无缝协同。

当需要从本地环境接入云上环境时,接入的简单和易操作是非常重要的。ModelArts提供了适配VS Code IDE的插件,能做到从Console一键打开VS Code并自动接入开发环境,首次接入仅需1分钟左右,后续仅需10s以内即可进入远端开发环境,真正实现了无感切换。

下面我们就通过实际操作,体验一下ModelArts这款一键接入插件吧。
1)登录ModelArts管理控制台,创建开发环境实例
进入华为云ModelArts Console主页,点击管理控制台,https://www.huaweicloud.com/product/modelarts.html
ModelArts Notebook是华为云一站式开发平台提供的云上开发环境。该开发环境是基于容器,其预置镜像中包含了即开即用的JupyterLab交互式开发界面,以及多种AI Kernel如PyTorch、TensorFlow等,CPU、GPU等计算资源可以按需选择和切换,支持自定义镜像,并且支持从本地SSH访问,是对开发者非常友好的一款云上AI开发调测环境。

跳转到登录界面的话,先用华为云账号登录,没有账号需要先注册。
进入后,在左侧导航栏中选择“开发环境 > Notebook”,进入“Notebook”新版管理页面。

请参考创建Notebook实例创建一个Notebook环境。
注意1:需要开启SSH开关

注意2:SSH的密钥文件需要下载至本地
实例的密钥文件需要下载至本地,需要存放在如下目录或其子目录中:
Windows:C:\Users\{{user}}
Mac/Linux: Users/{{user}}
浏览器下载文件通常默认的下载地址在C:\Users\{{user}}\Downloads目录下,是符合要求的。
2)实例状态为“运行中”,点击“VS Code接入”
单击“操作”列的“更多 > VS Code接入”。
图1 打开VS Code接入

3)如果本地已安装VS Code,请单击“打开”,进入“Visual Studio Code”页面
图2 打开Visual Studio Code

如果本地未安装VS Code,请根据页面的提示以及自己本地电脑操作系统,选择“win”或“其他”下载并安装VS Code。VS Code直接按照默认配置安装即可。
图3 下载并安装VS Code

4)如果用户之前未安装过ModelArts VS Code插件,单击“Install and Open”进行插件安装
如果之前已经安装过插件,则不会有该提示,请跳过此步骤,直接执行5。
图4 安装VS Code插件

安装过程预计1~2分钟,安装完成后右下角会弹出对话框,请单击“Reload Window and Open”。
说明:
本文以VS Code 1.57.1版本的操作为例,其它版本的VS Code可能不会弹出“Reload Window and Open”,请直接执行5。
图5 Reload Window and Open

在弹出的提示中,勾选“Don’t ask again for this extension”,然后单击"Open"。

5)远程连接Notebook实例
远程连接执行前,会自动在(Windows:C:\Users\{{user}}.ssh或者downloads,Mac/Linux: Users/{{user}}/.ssh或者Downloads)目录下根据密钥名称查找密钥文件,如果找到则直接使用该密钥打开新窗口并尝试连接远程实例,此时无需选择密钥。
图6 远程连接Notebook实例

如果未找到会弹出选择框,请根据提示选择正确的密钥。
图7 选择密钥文件

如果密钥选择错误,则弹出提示信息,请根据提示信息选择正确密钥。
图8 选择正确的密钥文件

当左下角显示如下状态时,代表实例连接成功:

图9 连接成功后的开发界面

6)连接失败如何查找原因
当弹出如下错误时,代表实例连接失败,请关闭弹窗,并查看OUTPUT窗口的输出日志,请查看FAQ并排查失败原因。
图10 实例连接失败

也可以参考远程连接失败信息收集收集相关日志,便于进一步排错。
更多探索 Learn More
一键连接的功能是基于VS Code的远程连接功能的基础上扩展的,学习相关原理可以查看VS Code远程连接原理简介
除了一键连接,ModelArts VS Code Toolkit还支持登录的方式进行实例启停等操作,可以参考ModelArts VS Code Toolkit使用指南

想了解更多ModelArts VS Code插件内容,欢迎参与【华为云ModelArts关键AI能力宣讲会】第二期直播
直播主题:华为云+VS Code远程AI开发
直播介绍:介绍VS Code远程开发模式,以及如何通过华为云ModelArts的VS Code扩展快速接入云上开发环境进行AI开发。
直播讲师:华为云AI开发高级工程师,小雪老师
直播链接:http://su.modelarts.club/bluj
VS Code摸鱼神器,让你快速开发AI模型的更多相关文章
- Thief-Book 上班摸鱼神器
Thief-Book 上班摸鱼神器 介绍 Thief-Book 是一款真正的摸鱼神器,可以更加隐秘性大胆的看小说. 隐蔽性 自定义透明背景,随意调整大小,完美融入各种软件界面 快捷性 三个快捷键,实现 ...
- vscode插件(摸鱼神器-小霸王游戏机
vscode插件(摸鱼神器-小霸王游戏机 步骤 vscode扩展搜索小霸王,点击下载即可. 使用 默认有一个demo小游戏,即超级玛丽. 本地仓库 可以通过local菜单上的添加按钮添加本地nes r ...
- 【摸鱼神器】UI库秒变LowCode工具——列表篇(一)设计与实现
内容摘要: 需求分析 定义 interface 定义 json 文件 定义列表控件的 props 基于 el-table 封装,实现依赖 json 渲染 实现内置功能:选择行(单选.多选),格式化.锁 ...
- 【转】让Chrome化身成为摸鱼神器,利用Chorme运行布卡漫画以及其他安卓APK应用教程
下周就是十一了,无论是学生党还是工作党,大家的大概都会有点心不在焉,为了让大家更好的心不在焉,更好的在十一前最后一周愉快的摸鱼,今天就写一个如何让Chrome(google浏览器)运行安卓APK应用的 ...
- 【摸鱼神器】基于SSM风格的Java源代码生成器 单表生成 一对一、一对多、多对多连接查询生成
一.序言 UCode Cms 是一款Maven版的Java源代码生成器,是快速构建项目的利器.代码生成器模块属于可拆卸模块,即按需引入.代码生成器生成SSM(Spring.SpringBoot.Myb ...
- 【摸鱼神器】UCode Cms管理系统 内置超好用的代码生成器 解决多表连接痛点
一.序言 UCode Cms管理系统是面向企业级应用软件开发的脚手架.当前版本1.3.4.快速体验: git clone https://gitee.com/decsa/demo-cms.git (一 ...
- 【摸鱼神器】UI库秒变LowCode工具——列表篇(二)维护json的小工具
上一篇介绍了一下如何实现一个可以依赖 json 渲染的列表控件,既然需要 json 文件,那么要如何维护这个 json 文件就成了重点,如果没有好的维护方案的话,那么还不如直接用UI库. 所以需要我们 ...
- 【摸鱼神器】一次搞定 vue3的 路由 + 菜单 + tabs
做一个管理后台,首先要设置路由,然后配置菜单(有时候还需要导航),再来一个动态tabs,最后加上权限判断. 这个是不是有点繁琐?尤其是路由的设置和菜单的配置,是不是很雷同?那么能不能简单一点呢?如果可 ...
- 【摸鱼神器】UI库秒变低代码工具——表单篇(一)设计
前面说了列表的低代码化的方法,本篇介绍一下表单的低代码化. 内容摘要 需求分析. 定义 interface. 定义表单控件的 props. 定义 json 文件. 基于 el-form 封装,实现依赖 ...
- 【摸鱼神器】UI库秒变低代码工具——表单篇(二)子控件
上一篇介绍了表单控件,这一篇介绍一下表单里面的各种子控件的封装方式. 主要内容 需求分析 子控件的分类 子控件属性的分类 定义 interface. 定义子控件的的 props. 定义 json 文件 ...
随机推荐
- XX-net安装
1.下载https://github.com/XX-net/XX-Net 2. 3. 4.运行google浏览器 5.找到安装XX-net的位置,点击即可访问google ps:校园网用户可以直接使用 ...
- 使用 DDPO 在 TRL 中微调 Stable Diffusion 模型
引言 扩散模型 (如 DALL-E 2.Stable Diffusion) 是一类文生图模型,在生成图像 (尤其是有照片级真实感的图像) 方面取得了广泛成功.然而,这些模型生成的图像可能并不总是符合人 ...
- 采药(lgP1048)
emmm 01 背包模板... 设 f[i] 表示背包容积为 i 时所得的最大价值. 则状态转移方程为 f[j] = f[j - w[i]] + c[i] . #include<bits/std ...
- APP攻防--安卓逆向&数据修改&逻辑修改&视图修改
APP攻防--安卓逆向&数据修改&逻辑修改&视图修改 @ 目录 APP攻防--安卓逆向&数据修改&逻辑修改&视图修改 工具集 apk目录意义 逆向数据修 ...
- C++基础杂记(1)
结构体中的位字段 共用体 烦人的枚举 枚举的声明与赋值 枚举的取值范围与强制类型转换 枚举的注意事项 指针 为什么是 int* ptr 而不是 int *ptr ? 避免危险的指针 使用array和v ...
- 7/10 luoguRound 10 庆典 div3T1
#include<bits/stdc++.h> using namespace std; int m,n,x; int arr[100005]; int maxi = -1,maxn = ...
- Util应用框架基础(三) - 面向切面编程(AspectCore AOP)
本节介绍Util应用框架对AspectCore AOP的使用. 概述 有些问题需要在系统中全局处理,比如记录异常错误日志. 如果在每个出现问题的地方进行处理,不仅费力,还可能产生大量冗余代码,并打断业 ...
- JavaScript高级程序设计笔记12 BOM
BOM BOM的核心--window对象 窗口和弹窗 location对象--页面信息 navigator对象--浏览器信息 history对象--浏览器历史记录 BOM是使用JavaScript开发 ...
- clickHouse-golang
目录 clickHouse优势与劣势 golang操作clickHouse clickHouse优势与劣势 ClickHouse和传统的MySQL在设计和使用场景上有一些显著的区别,因此它们各自具有不 ...
- mysql group by 执行原理及千万级别count 查询优化
大家好,我是蓝胖子,前段时间mysql经常碰到慢查询报警,我们线上的慢sql阈值是1s,出现报警的表数据有 7000多万,经常出现报警的是一个group by的count查询,于是便开始着手优化这块, ...