云服务器内容精选
-
应用场景 在数字化时代,新闻的生成与传播速度不断刷新记录。在ModelArts Studio大模型即服务平台(下面简称为MaaS),使用Llama3-8B模型框架可以实现新闻自动分类,能够高效处理和分类大量新闻内容。 该解决方案可以应用于如下场景: 新闻门户网站: 自动将新闻内容归类到相应板块,如科技、体育或国际新闻,以提升用户体验和内容检索效率。 社交媒体平台: 对用户分享的新闻链接进行智能分类,帮助用户迅速定位到感兴趣的话题。 内容推荐系统: 根据用户的阅读偏好和历史行为,智能推荐相关新闻,增强用户粘性和满意度。 新闻分析工具: 为分析师提供自动分类的新闻数据,便于进行市场趋势和热点分析。
-
Step8 下载模型权重 模型权重(可选择)InternVL2-8B, InternVL2-26B, InternVL2-40B 手动下载放置在${container_name}/InternVL/internvl_chat/pretrained路径下, pretrained目录需手动创建。 https://huggingface.co/OpenGVLab/InternVL2-8B/tree/main https://huggingface.co/OpenGVLab/InternVL2-26B/tree/main https://huggingface.co/OpenGVLab/InternVL2-40B/tree/main
-
Step9 开始训练 单机训练 cd ${container_work_dir}/InternVL/internvl_chat # 8B全参微调 GPUS=8 PER_DEVICE_BATCH_SIZE=2 sh shell/internvl2.0/2nd_finetune/internvl2_8b_internlm2_7b_dynamic_res_2nd_finetune_full.sh # 8Blora微调 GPUS=8 PER_DEVICE_BATCH_SIZE=2 sh shell/internvl2.0/2nd_finetune/internvl2_8b_internlm2_7b_dynamic_res_2nd_finetune_lora.sh # 26Blora微调 GPUS=8 PER_DEVICE_BATCH_SIZE=2 sh shell/internvl2.0/2nd_finetune/internvl2_26b_internlm2_20b_dynamic_res_2nd_finetune_lora.sh # 40Blora微调 GPUS=8 PER_DEVICE_BATCH_SIZE=2 sh shell/internvl2.0/2nd_finetune/internvl2_40b_hermes2_yi_34b_dynamic_res_2nd_finetune_lora.sh 多机训练 cd ${container_work_dir}/InternVL/internvl_chat # 8B lora GPUS=8 PER_DEVICE_BATCH_SIZE=2 NNODES=${NODE_NUM} NODE_RANK=${NODE_RANK} MASTER_ADDR="${master_node_ip}" sh shell/internvl2.0/2nd_finetune/internvl2_8b_internlm2_7b_dynamic_res_2nd_finetune_lora_multi.sh # 8B full GPUS=8 PER_DEVICE_BATCH_SIZE=2 NNODES=${NODE_NUM} NODE_RANK=${NODE_RANK} MASTER_ADDR="${master_node_ip}" sh shell/internvl2.0/2nd_finetune/internvl2_8b_internlm2_7b_dynamic_res_2nd_finetune_full_multi.sh # 26B lora GPUS=8 PER_DEVICE_BATCH_SIZE=2 NNODES=${NODE_NUM} NODE_RANK=${NODE_RANK} MASTER_ADDR="${master_node_ip}" sh shell/internvl2.0/2nd_finetune/internvl2_26b_internlm2_20b_dynamic_res_2nd_finetune_lora_multi.sh # 26B full GPUS=8 PER_DEVICE_BATCH_SIZE=2 NNODES=${NODE_NUM} NODE_RANK=${NODE_RANK} MASTER_ADDR="${master_node_ip}" sh shell/internvl2.0/2nd_finetune/internvl2_26b_internlm2_20b_dynamic_res_2nd_finetune_full_multi.sh 参数说明: NODE_NUM:机器数量。 NODE_RANK:机器rank num,主机为0,其余递增。 MASTER_ADDR:主机IP地址。 训练成功如下图所示。
-
获取软件和镜像 表1 获取软件和镜像 分类 名称 获取路径 插件代码包 AscendCloud-6.3.909软件包中的AscendCloud-AIGC-6.3.909-xxx.zip 文件名中的xxx表示具体的时间戳,以包名发布的实际时间为准。 获取路径:Support-E 说明: 如果上述软件获取路径打开后未显示相应的软件信息,说明您没有下载权限,请联系您所在企业的华为方技术支持下载获取。 基础镜像包 swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc3-py_3.9-hce_2.0.2406-aarch64-snt9b-20240910112800-2a95df3 SWR上拉取。 表2 模型镜像版本 模型 版本 CANN cann_8.0.rc3 驱动 23.0.6 PyTorch 2.1.0
-
步骤一 检查环境 请参考DevServer资源开通,购买DevServer资源,并确保机器已开通,密码已获取,能通过SSH登录,不同机器之间网络互通。 购买DevServer资源时如果无可选资源规格,需要联系华为云技术支持申请开通。 当容器需要提供服务给多个用户,或者多个用户共享使用该容器时,应限制容器访问Openstack的管理地址(169.254.169.254),以防止容器获取宿主机的元数据。具体操作请参见禁止容器获取宿主机元数据。 SSH登录机器后,检查NPU卡状态。运行如下命令,返回NPU设备信息。 npu-smi info # 在每个实例节点上运行此命令可以看到NPU卡状态 npu-smi info -l | grep Total # 在每个实例节点上运行此命令可以看到总卡数 如出现错误,可能是机器上的NPU设备没有正常安装,或者NPU镜像被其他容器挂载。请先正常安装固件和驱动,或释放被挂载的NPU。 检查是否安装docker。 docker -v #检查docker是否安装 如尚未安装,运行以下命令安装docker。 yum install -y docker-engine.aarch64 docker-engine-selinux.noarch docker-runc.aarch64 配置IP转发,用于容器内的网络访问。执行以下命令查看net.ipv4.ip_forward配置项的值,如果为1,可跳过此步骤。 sysctl -p | grep net.ipv4.ip_forward 如果net.ipv4.ip_forward配置项的值不为1,执行以下命令配置IP转发。 sed -i 's/net\.ipv4\.ip_forward=0/net\.ipv4\.ip_forward=1/g' /etc/sysctl.conf sysctl -p | grep net.ipv4.ip_forward
-
步骤五 下载代码安装环境 下载华为侧插件代码包AscendCloud-AIGC-6.3.909-xxx.zip文件,获取路径参见表1。 unzip AscendCloud-AIGC-6.3.909-*.zip cd multimodal_algorithm/InternVL2/train/5d8f485ad09b3eb9b2a7d9a24cca727fa58bb775 bash InternVL2_install.sh cp shells/* InternVL/internvl_chat/shell/internvl2.0/2nd_finetune/ mv InternVL ${container_work_dir}
-
步骤六 增加适配代码 表3 添加优化代码 模型 使用方法 internVL2-40B internVL2-40B模型需要执行下列步骤。 cd ${container_work_dir}/multimodal_algorithm/ascendcloud_multimodal_plugin pip install -e . cd ${container_work_dir} 修改InternVL/internvl_chat/internvl/train/internvl_chat_finetune.py 文件,加入如下命令,用于引入优化代码包。 from ascendcloud_multimodal.train.models.internvl2 import ascend_modeling_internvl 执行如下命令添加优化代码。 cp -rf multimodal_algorithm/ascendcloud_multimodal_plugin/ascendcloud_multimodal/train/models/internvl2/modeling_intern_vit.py ${container_work_dir}/InternVL/internvl_chat/internvl/model/internvl_chat/modeling_intern_vit.py internVL2-8B或 internVL2-26B internVL2-8B或internVL2-26B模型需要执行如下命令添加优化代码。 cd ${container_work_dir} cp -rf multimodal_algorithm/ascendcloud_multimodal_plugin/ascendcloud_multimodal/train/models/internvl2/modeling_intern_vit.py ${container_work_dir}/InternVL/internvl_chat/internvl/model/internvl_chat/modeling_intern_vit.py cp -rf multimodal_algorithm/ascendcloud_multimodal_plugin/ascendcloud_multimodal/train/models/internvl2/modeling_internlm2.py ${container_work_dir}/InternVL/internvl_chat/internvl/model/internlm2/modeling_internlm2.py
-
Step5 下载并适配代码 在容器中解压代码包。 unzip AscendCloud-AIGC-6.3.906-*.zip rm -rf AscendCloud-AIGC-6.3.906-* 执行wav2lip推理插件的安装脚本。 cd multimodal_algorithm/Wav2Lip/inference/f361e9527b917a435928a10931fee9ac7be109cd source install.sh 从官网下载Wav2lip权重文件和Wav2Lip+GAN权重文件,并放在容器的checkpoints目录下。上一步执行完source install.sh命令后,会自动生成checkpoints目录。 从官网下载模型s3fd-619a316812.pth,并重命名为s3fd.pth,放在容器路径face_detection/detection/sfd下。上一步执行完source install.sh命令后,会自动生成face_detection/detection/sfd目录。
-
获取软件和镜像 表2 获取软件和镜像 分类 名称 获取路径 插件代码包 AscendCloud-6.3.906-xxx.zip软件包中的AscendCloud-AIGC-6.3.906-xxx.zip 说明: 包名中的xxx表示具体的时间戳,以包名的实际时间为准。 获取路径:Support-E 说明: 如果没有下载权限,请联系您所在企业的华为方技术支持下载获取。 基础镜像 西南-贵阳一:swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc2-py_3.9-hce_2.0.2312-aarch64-snt9b-20240606190017-b881580 从SWR拉取。
-
Step1 准备环境 请参考DevServer资源开通,购买DevServer资源,并确保机器已开通,密码已获取,能通过SSH登录,不同机器之间网络互通。 当容器需要提供服务给多个用户,或者多个用户共享使用该容器时,应限制容器访问Openstack的管理地址(169.254.169.254),以防止容器获取宿主机的元数据。具体操作请参见禁止容器获取宿主机元数据。 SSH登录机器后,检查NPU设备检查。运行如下命令,返回NPU设备信息。 npu-smi info # 在每个实例节点上运行此命令可以看到NPU卡状态 npu-smi info -l | grep Total # 在每个实例节点上运行此命令可以看到总卡数 如出现错误,可能是机器上的NPU设备没有正常安装,或者NPU镜像被其他容器挂载。请先正常安装固件和驱动,或释放被挂载的NPU。 检查docker是否安装。 docker -v #检查docker是否安装 如尚未安装,运行以下命令安装docker。 yum install -y docker-engine.aarch64 docker-engine-selinux.noarch docker-runc.aarch64 配置IP转发,用于容器内的网络访问。执行以下命令查看net.ipv4.ip_forward配置项的值,如果为1,可跳过此步骤。 sysctl -p | grep net.ipv4.ip_forward 如果net.ipv4.ip_forward配置项的值不为1,执行以下命令配置IP转发。 sed -i 's/net\.ipv4\.ip_forward=0/net\.ipv4\.ip_forward=1/g' /etc/sysctl.conf sysctl -p | grep net.ipv4.ip_forward
-
Step4 启动容器镜像 启动容器镜像。启动前请先按照参数说明修改${}中的参数。 docker run -itd --net=host \ --device=/dev/davinci0 \ --device=/dev/davinci_manager \ --device=/dev/devmm_svm \ --device=/dev/hisi_hdc \ --shm-size=1024g \ -v /usr/local/dcmi:/usr/local/dcmi \ -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \ -v /var/log/npu/:/usr/slog \ -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \ -v ${work_dir}:${container_work_dir} \ --name ${container_name} \ ${image_id} \ /bin/bash 参数说明: -v ${work_dir}:${container_work_dir}:代表需要在容器中挂载宿主机的目录。宿主机和容器使用不同的文件系统。work_dir为宿主机中工作目录,目录下存放着代码、数据等文件。container_work_dir为要挂载到的容器中的目录。为方便两个地址可以相同。 容器不能挂载到/home/ma-user目录,此目录为ma-user用户家目录。如果容器挂载到/home/ma-user下,拉起容器时会与基础镜像冲突,导致基础镜像不可用。 driver及npu-smi需同时挂载至容器。 --name ${container_name}:容器名称,进入容器时会用到,此处可以自己定义一个容器名称。 ${image_id}:镜像ID,通过docker images查看刚拉取的镜像ID。 通过容器名称进入容器中。默认使用ma-user用户,后续所有操作步骤都在ma-user用户下执行。 docker exec -it ${container_name} bash
-
Step2 创建OBS桶 ModelArts使用 对象存储服务 (Object Storage Service,简称OBS)进行数据存储以及模型的备份和快照,实现安全、高可靠和低成本的存储需求。因此,在使用ModelArts之前通常先创建一个OBS桶,然后在OBS桶中创建文件夹用于存放数据。 本文档需要将运行代码以及输入输出数据存放OBS,请提前创建OBS(参考创建OBS桶),例如桶名:sdxl-train。并在该桶下创建文件夹目录用于后续存储代码使用,例如:code。
-
Step7 创建训练作业 创建训练作业,填下如下参数。 创建方式:选择自定义算法,启动方式选择自定义,然后选择上传到SWR的 自定义镜像 。 代码目录:选择上传到OBS的代码文件夹,例如/sdxl-train/code。若用户需要修改代码文件,可修改OBS桶中代码文件,创建训练作业时,会将OBS的code目录复制到训练容器的/home/ma-user/sdxl-train/user-job-dir/目录下,覆盖容器中原有的code目录。 启动命令:直接运行启动脚本文件diffusers_finetune_train.sh。 sh /home/ma-user/sdxl-train/user-job-dir/code/diffusers_finetune_train.sh 本地代码目录:保持默认即可。 工作目录:选择代码文件目录,例如/home/ma-user/sdxl-train/user-job-dir/code/。 输出:单击“增加训练输出”,将模型保存到OBS中。参数名称为output,数据存储位置选择OBS桶中制定文件夹,例如sdxl-train/checkpoint,获取方式选择环境变量,/home/ma-user/modelarts/outputs/output_0下的模型文件会保存到OBS中。 图4 选择镜像 资源池:选择专属资源池,规格选择Ascend: 8*ascend-snt9b。如果需要多机训练,增加计算节点个数即可,启动脚本文件diffusers_finetune_train.sh支持多机训练。 图5 选择资源池规格 作业日志路径:选择输出日志到OBS的指定目录。 图6 选择作业日志路径 填写参数完成后,提交创建训练任务,训练完成后,作业状态会显示为已完成。 图7 训练完成
-
获取软件和镜像 表1 获取软件和镜像 分类 名称 获取路径 插件代码包 AscendCloud-3rdAIGC-6.3.905-xxx.zip 文件名中的xxx表示具体的时间戳,以包名发布的实际时间为准。 获取路径:Support-E 如果没有软件下载权限,请联系您所在企业的华为方技术支持下载获取。 基础镜像包 swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc2-py_3.9-hce_2.0.2312-aarch64-snt9b-20240528150158-b521cc0 SWR上拉取 表2 模型镜像版本 模型 版本 CANN cann_8.0.rc2 PyTorch 2.1.0
-
Step4 下载模型依赖包 请在如下链接中下载好模型依赖包。 下载stable-diffusion-xl-base-1.0,官网下载地址:https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/tree/main 下载vae-fp16-fix,官网下载地址:https://huggingface.co/madebyollin/sdxl-vae-fp16-fix/tree/main
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格