云服务器内容精选

  • Step2 权重格式离线转换(可选) AutoAWQ量化完成后,使用int32对int4的权重进行打包。昇腾上使用int8对权重进行打包,在线转换会增加启动时间,可以提前对权重进行转换以减少启动时间,转换步骤如下: 进入llm_tools/AutoAWQ代码目录下执行以下脚本: 执行时间预计10分钟。执行完成后会将权重路径下的原始权重替换成转换后的权重。如需保留之前权重格式,请在转换前备份。 python convert_awq_to_npu.py --model /home/ma-user/Qwen1.5-72B-Chat-AWQ 参数说明: model:模型路径。
  • 应用场景 在数字化时代,新闻的生成与传播速度不断刷新记录。在ModelArts Studio大模型即服务平台(下面简称为MaaS),使用Llama3-8B模型框架可以实现新闻自动分类,能够高效处理和分类大量新闻内容。 该解决方案可以应用于如下场景: 新闻门户网站: 自动将新闻内容归类到相应板块,如科技、体育或国际新闻,以提升用户体验和内容检索效率。 社交媒体平台: 对用户分享的新闻链接进行智能分类,帮助用户迅速定位到感兴趣的话题。 内容推荐系统: 根据用户的阅读偏好和历史行为,智能推荐相关新闻,增强用户粘性和满意度。 新闻分析工具: 为分析师提供自动分类的新闻数据,便于进行市场趋势和热点分析。
  • 步骤二 权重格式离线转换(可选) 在GPU上AutoAWQ量化完成后,使用int32对int4的权重进行打包。昇腾上使用int8对权重进行打包,在线转换会增加启动时间,可以提前对权重进行转换以减少启动时间,转换步骤如下: 进入llm_tools/AutoAWQ代码目录下执行以下脚本: 执行时间预计10分钟。执行完成后会将权重路径下的原始权重替换成转换后的权重。如需保留之前权重格式,请在转换前备份。 python convert_awq_to_npu.py --model /home/ma-user/Qwen1.5-72B-Chat-AWQ 参数说明: model:模型路径。
  • Step1 环境准备 在节点自定义目录${node_path}下创建config.yaml文件 apiVersion: apps/v1 kind: Deployment metadata: name: yourapp labels: app: infers spec: replicas: 1 selector: matchLabels: app: infers template: metadata: labels: app: infers spec: schedulerName: volcano nodeSelector: accelerator/huawei-npu: ascend-1980 containers: - image: ${image_name} # 推理镜像名称 imagePullPolicy: IfNotPresent name: ${container_name} securityContext: runAsUser: 0 ports: - containerPort: 8080 command: - "sleep" - "1000000000000000000" resources: requests: huawei.com/ascend-1980: "8" # 需求卡数,key保持不变。 limits: huawei.com/ascend-1980: "8" # 限制卡数,key保持不变。 volumeMounts: # 容器内部映射路径 - name: ascend-driver #驱动挂载,保持不动 mountPath: /usr/local/Ascend/driver - name: ascend-add-ons #驱动挂载,保持不动 mountPath: /usr/local/Ascend/add-ons - name: hccn #驱动hccn配置,保持不动 mountPath: /etc/hccn.conf - name: localtime mountPath: /etc/localtime - name: npu-smi # npu-smi mountPath: /usr/local/sbin/npu-smi - name: model-path # 模型权重路径 mountPath: ${model-path} - name: node-path # 节点自定义目录,该目录下包含pod配置文件config.yaml mountPath: ${node-path} volumes: # 物理机外部路径 - name: ascend-driver hostPath: path: /usr/local/Ascend/driver - name: ascend-add-ons hostPath: path: /usr/local/Ascend/add-ons - name: hccn hostPath: path: /etc/hccn.conf - name: localtime hostPath: path: /etc/localtime - name: npu-smi hostPath: path: /usr/local/sbin/npu-smi - name: model-path hostPath: path: ${model-path} - name: node-path hostPath: path: ${node-path} 参数说明: ${container_name}:容器名称,此处可以自己定义一个容器名称,例如ascend-vllm。 ${image_name}:Step3 制作推理镜像构建的推理镜像名称。 ${node-path}:节点自定义目录,该目录下包含pod配置文件config.yaml。 ${model-path}:Step1 上传权重文件中上传的模型权重路径。 参考Step4 创建pod创建pod以用于后续进行模型量化
  • Step3 权重格式离线转换(可选) AutoAWQ量化完成后,使用int32对int4的权重进行打包。昇腾上使用int8对权重进行打包,在线转换会增加启动时间,可以提前对权重进行转换以减少启动时间,转换步骤如下: 进入llm_tools/AutoAWQ代码目录下执行以下脚本: 执行时间预计10分钟。执行完成后会将权重路径下的原始权重替换成转换后的权重。如需保留之前权重格式,请在转换前备份。 python convert_awq_to_npu.py --model /home/ma-user/Qwen1.5-72B-Chat-AWQ 参数说明: model:模型路径。
  • 步骤五 部署服务 单击AI应用名称,进入AI应用详情页,单击部署在线服务。 图7 部署在线服务 填写如下服务部署参数。 名称: 服务的名称,按照实际需要填写 是否自动停止:如果配置自动停止,服务会按照配置的时间自动停止。如果需要常驻的服务,建议关掉该按钮。 描述:按照需要填写。 资源池:选择专属资源池。若之前未购买专属资源池,具体步骤请参考创建资源池。 资源规格要求: 硬盘空间:至少200GB。 昇腾资源规格:可以申请Ascend: 1* ascend-snt9b(32GB)或Ascend: 1* ascend-snt9b(64GB)规格。请按需选择需要的规格,64GB规格的推理耗时更短。 推荐使用“西南-贵阳一”Region上的昇腾资源。 AI应用来源: 我的AI应用。 选择AI应用及其版本:此处选择上一步中创建的sdxl-webui-pytorch:0.0.1应用。 计算节点规格: 按需选择Ascend: 1* ascend-snt9b(32GB)或Ascend: 1* ascend-snt9b(64GB)。 图8 填写服务部署参数 选择开启APP认证并选择应用。 图9 开启APP认证 按照上述配置完参数后,单击“下一步”, 确认信息无误后,单击“提交”,完成服务的部署。
  • 步骤六 访问在线服务 在Chrome浏览器中安装ModHeader插件。 图10 安装ModHeader插件 Chrome浏览器安装ModHeader插件后,可能会导致访问不了Modelarts平台,访问Modelarts时需要临时禁用ModHeader插件。或者使用Edge登录Modelarts,使用Chrome安装插件访问页面。 打开ModHeader,单击添加MOD。 图11 添加MOD 选择添加Request header。 图12 添加Request header 进入在线服务详情,查看Key值和Value值。 Key值固定为X-Apig-AppCode,Value值为APP认证的app_code值,在服务调用指南tab的APP认证API处展开,进行AppCode管理设置。 图13 获取Key值和Value值 将在ModHeader插件中添加Key值和Value值。 图14 添加Key和value 进入在线服务详情页,查看APP认证方式的服务API。 图15 API接口公网地址 复制API接口公网地址,并在地址后添加"/",进行页面访问,例如: https://infer-app-modelarts-cn-southwest-2.myhuaweicloud.com/v1/infers/abc104bb-d303-4ffb-a8fa-XXXXXXXXX/ 图16 访问在线服务 输入Prompt,修改所需要的请求参数(如Width、Height),进行Prompt请求。 图17 填写请求参数 表1 SDXL模型参数及其含义 参数名称 说明 是否必选 默认值 prompt 提示词,根据提示词生成含有对应内容的图像 是 无 negative_prompt 反向提示词,图像生成过程中应避免的提示 否 无 num_inference_steps 推理步骤数,控制推理的步数 否 40 height 生成图像的纵向分辨率 否 1024 width 生成图像的横向分辨率 否 1024 high_noise_frac 高噪声比例,即基础模型跑的步数占总步数的比例 否 0.8 refiner_switch 是否使用细化模型refiner 否 true(使用) seed 随机种子,控制生成图像的多样性 否 无 您可在ModelArts控制台查看相关日志。 图18 查看相关日志 首次请求时会进行模型加载,耗时较长,因此第一个请求可能超时,第二个请求将会正常,请耐心等待。
  • 步骤四 创建AI应用 在ModelArts的AI应用页面,进行AI应用创建。 图3 创建AI应用 填写如下参数信息。 名称:AI应用的名称,请按照实际应用名填写。 版本:版本描述,请按照实际填写。 元模型来源:注意此处选择“从容器镜像选择”。 容器镜像所在路径:单击文件夹标签,选择已经制作好的镜像。 容器调用接口参数:根据镜像实际提供的协议和端口填写,本案例中的SDXL镜像提供HTTP服务和8183端口。 图4 填写参数(1) 系统运行架构: 选择ARM. 推理加速卡:无。 部署类型: 在线服务。 请求模式:同步请求。 启动命令: source /etc/bashrc && python3 launch.py --skip-torch-cuda-test --port 8183 --enable-insecure-extension-access --listen --log-startup --disable-safe-unpickle --skip-prepare-environment --api 按照上述配置完参数后,单击右下角的立即创建, 完成AI应用的创建。 图5 填写参数(2) 当AI应用状态变为正常时,表示创建完成。 图6 AI应用创建完成
  • 准备工作 使用专属资源池部署在线服务,服务状态为“运行中”。 需使用新版专属资源池部署服务,详情请参见ModelArts Standard资源池功能介绍。 只有专属资源池部署的服务才支持VPC直连的高速访问通道。 VPC直连的高速访问通道,目前只支持访问在线服务。 因流量限控,获取在线服务的IP和端口号次数有限制,每个主账号租户调用次数不超过2000次/分钟,每个子账号租户不超过20次/分钟。 目前仅支持 自定义镜像 导入模型,部署的服务支持高速访问通道。
  • 背景说明 访问在线服务的实际业务中,用户可能会存在如下需求: 高吞吐量、低时延 TCP或者RPC请求 因此,ModelArts提供了VPC直连的高速访问通道功能以满足用户的需求。 使用VPC直连的高速访问通道,用户的业务请求不需要经过推理平台,而是直接经VPC对等连接发送到实例处理,访问速度更快。 由于请求不经过推理平台,所以会丢失以下功能: 认证鉴权 流量按配置分发 负载均衡 告警、监控和统计 图1 VPC直连的高速访问通道示意图
  • ModelArts Standard推理部署 表4 推理部署列表 样例 镜像 对应功能 场景 说明 基于ModelArts Standard一键完成商超商品识别模型部署 - 在线服务 物体检测 此案例以“商超商品识别”模型为例,完成从AI Gallery订阅模型,到ModelArts一键部署为在线服务的 免费体验 过程。 第三方推理框架迁移到ModelArts Standard推理自定义引擎 - 第三方框架 推理部署 - ModelArts支持第三方的推理框架在ModelArts上部署,本文以TFServing框架、Triton框架为例,介绍如何迁移到推理自定义引擎。
  • 第三方案例列表 第三方案例来源为华为云开发者社区“云驻计划”。由于ModelArts产品的持续更新和迭代,第三方案例中的界面和步骤可能因时效性而与最新产品有所差异,仅供学习和参考。 表5 第三方案例列表 分类 文章名称 作者 Standard自动学习 2步打通ModelArts和Astro实现AI应用落地 胡琦 Standard开发环境 想不想让一张静态的照片动起来 林欣 基于TensorFlow训练轻量化ssdlite_mbv2人脸手机检测模型 AI练习生 基于ModelArts的手写数字识别 AXYZdong AI 文字编辑图片 instruct-pix2pix 案例 AXYZdong Standard推理部署 上线二维码检测识别服务 林欣 使用ModelArts对8类常见生活垃圾进行分类 福州司马懿 使用ModelArts搭建"花卉种类识别"服务 福州司马懿
  • ModelArts Standard模型训练案例 表3 自定义算法样例列表 样例 镜像 对应功能 场景 说明 使用ModelArts Standard自定义算法实现手写数字识别 PyTorch 自定义算法 手写数字识别 使用用户自己的算法,训练得到手写数字识别模型,并部署后进行预测。 从0制作自定义镜像并用于训练(PyTorch+CPU/GPU) PyTorch 镜像制作 自定义镜像训练 - 此案例介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是PyTorch,训练使用的资源是CPU或GPU。 从0制作自定义镜像并用于训练(MPI+CPU/GPU) MPI 镜像制作 自定义镜像训练 - 此案例介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是MPI,训练使用的资源是CPU或GPU。 从0制作自定义镜像并用于训练(Tensorflow+GPU) Tensorflow 镜像制作 自定义镜像训练 - 此案例介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是Tensorflow,训练使用的资源是GPU。 从0制作自定义镜像并用于训练(MindSpore+Ascend) MindSpore 镜像制作 自定义镜像训练 - 此案例介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是MindSpore,训练使用的资源是NPU。
  • 数字人场景 样例 场景 说明 Wav2Lip推理基于DevServer适配PyTorch NPU推理指导(6.3.907) Wav2Lip训练基于DevServer适配PyTorch NPU训练指导(6.3.907) Wav2Lip,人脸说话视频模型,训练、推理 Wav2Lip是一种基于对抗生成网络的由语音驱动的人脸说话视频生成模型。主要应用于数字人场景。不仅可以基于静态图像来输出与目标语音匹配的唇形同步视频,还可以直接将动态的视频进行唇形转换,输出与输入语音匹配的视频,俗称“对口型”。该技术的主要作用就是在将音频与图片、音频与视频进行合成时,口型能够自然。 案例主要介绍如何基于ModelArts DevServer上的昇腾NPU资源进行模型训练推理。
  • ModelArts Standard开发环境案例 表2 Notebook样例列表 样例 镜像 对应功能 场景 说明 将Notebook的Conda环境迁移到SFS磁盘 - 环境迁移 开发环境 本案例介绍如何将Notebook的Conda环境迁移到SFS磁盘上。 使用ModelArts PyCharm插件调试训练ResNet50图像分类模型 MindSpore PyCharm ToolKit工具 目标检测 本案例介绍如何在本地进行MindSpore模型开发,并将模型迁移至ModelArts训练。 使用ModelArts VS Code插件调试训练ResNet50图像分类模型 MindSpore VS Code Toolkit工具 目标检测 本案例以Ascend Model Zoo为例,介绍如何通过VS Code插件及ModelArts Notebook进行云端数据调试及模型开发。