跳到主要内容

Aladdin

产品介绍

Aladdin —— Alaya AI addin 是开发者必备的大模型开发利器,为自研的IDE插件,可适配VScode,Cursor等代码开发编辑器。

算力包+Severless架构的强强结合,让开发者无缝使用AlayaNeW云端GPU算力,一键开启大模型的远程开发、调试和微调。成本直降75%,实现开发效率和资源利用率双效提升。

前置条件

使用本地VSCode连接弹性容器集群进行代码开发和调试,需要以下前置条件:

安装扩展

启动VSCode,点击左侧菜单栏的扩展标签,将下载好的Aladdin.vsix文件拖入VSCode的扩展安装窗口,完成安装

图片

安装完成后会出现Aladdin插件的图标,点击图标,会出现Aladdin的菜单栏,如下图:

图片

提示

共有两个功能区WORKSHOP 和ENVIRONMENTS

  • WORKSHOP: 管理开发环境,包括创建、启动、停止、删除等。
  • ENVIRONMENTS: 用于管理镜像仓库,

登录

点击登录,弹出AlayaNeW登录页面,输入用户名和密码,点击登录按钮。

登录成功后,会显示当前登录用户的个人信息。

在ENVIRONMENTS看到镜像列表,并设置Habor账号密码

build镜像

如果有镜像可以忽略此步骤

Dockerfile 示例

FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/pytorch/pytorch:2.5.1-cuda12.4-cudnn9-devel
ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Shanghai
RUN sed -i 's|http://ports.ubuntu.com|https://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list

RUN apt update -y && \
apt install -y curl wget

WORKDIR /root
RUN mkdir ~/.pip
RUN echo "[global]" > ~/.pip/pip.conf
RUN echo "index-url = https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple" >> ~/.pip/pip.conf
RUN echo "[install]" >> ~/.pip/pip.conf
RUN echo "trusted-host=mirrors.tuna.tsinghua.edu.cn" >> ~/.pip/pip.conf
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV TIME_ZONE Asia/Shanghai
RUN apt-get update && apt-get install tzdata -y && apt-get install openssh-server -y
RUN apt-get update && apt-get install -y vim telnet iputils-ping unzip
RUN mkdir -p /workspace/envs
RUN rm -rf /opt/conda/envs
RUN ln -s /workspace/envs /opt/conda/envs
RUN ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh
ENV PATH /opt/conda/bin:$PATH
RUN /opt/conda/bin/conda init bash --system && \
echo ". /opt/conda/etc/profile.d/conda.sh" >> /etc/profile && \
echo "conda activate base" >> /etc/profile && \
conda info --envs
RUN apt-get install pip -y

build镜像,上传到镜像仓库,关于如何上传请参考存储->镜像仓库->镜像仓库的使用

创建workshop

点击创建workshop,会弹出创建workshop的窗口

  • 输入workshop名称
  • Enviromnent中选择镜像,
  • 配置资源,如需使用GPU可以选择GPU资源
  • 选择弹性容器集群
  • 选择namespace
  • 添加环境变量
  • 添加挂载,可挂载存储内任意文件夹到容器中,可以是编写好的代码

提示
  • 启动workshop时默认会将容器内的/root通过存储挂载,但是需要注意的是workshop删除后/root下存储的数据也会删除,重启workshop则不会删除
  • 添加的使用pvc的挂载删除和重启workshop均不删除挂载的数据

提交后等待启动成功即可

右键打开workshop

接下来会自动打开一个新的vscode窗口,连接进入到workshop中,并下载vscode相关插件,等待插件安装完成,会看到aladdin的图标

如果没有自动打开新的vscode窗口,可以右键点击workshop,手动打开

如果打开了vscode窗口,没有看到aladdin的图标,可以右键点击workshop 手动安装

环境准备

打开工作目录/workspace即可开始开发, 在这里下载编写好的代码训练,直接拖到vscode中 示例代码

打开命令行执行以下命令配置环境

mkdir /workspace/envs
conda init
#再次打开一个命令行窗口
conda create -n py311 python=3.11 -y
conda activate py311
pip install -r requirement.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple

执行以下命令下载模型

export HF_ENDPOINT=http://hfmirror.mas.zetyun.cn:8082
huggingface-cli download --resume-download meta-llama/Meta-Llama-3-8B-Instruct --local-dir meta-llama/Meta-Llama-3-8B-Instruct
提示

关于下载模型如何加速的详细使用,请参考 工具->模型下载加速

设置python解释器

选择虚拟环境

GPU RUN

选择要运行的py文件右键选择GPU RUN

选择镜像和需要的GPU资源

在OUTPUT中可以看到运行的日志

GPU DEBUG

选择要调试的py文件右键选择GPU DEBUG

选择镜像和需要的GPU资源

在DEBUG COMSOLE中可以看到调试的日志,断点调试等

点击关闭debug按钮两次即可退出调试,停止计费

RUN shell

选择要运行的shell脚本右键选择RUN shell

选择镜像和需要的GPU资源

在OUTPUT中可以看到运行的日志

查看 session

GPU RUN 和 RUN shell 以及 GPU DEBUG 都会产生一个session,点击GPU Debug 插件图标,可以查看session的列表,删除session,展示session日志,使用session命令行等

如果您有一个任务需要run很长时间,可直接关闭当前vscode,再次打开时仅需在session列表中找到,点击show log即可重新将日志输出到VSCode的OUTPUT中

保存镜像

操作过程中如果在容器中安装了一些包,未放在持久化目录,可以点击保存镜像按钮,会弹出保存镜像的窗口,输入镜像名称,点击保存按钮即可保存镜像

镜像保存成功后会提示是否需要使用保存的镜像替换当前workshop,如果需要点击yes,不需要no即可