mcpField
H
huawei-cloud-ascend-models-deploy

huawei-cloud-ascend-models-deploy

github.com/huaweicloud云与 DevOps59425 次安装2 天前更新
代码仓库

关于 huawei-cloud-ascend-models-deploy

huawei-cloud-ascend-models-deploy 是用于在 Huawei Cloud Ascend DevServer(910B 系列)部署和测试模型的技能,供操作 DevServer 的 Agent 工作流使用。它覆盖单机和双机部署、推理测试及部署状态监控,并通过脚本匹配模型类别。

主要功能

  1. 01支持单机与双机模型部署
  2. 02测试 LLM、视觉语言、Embedding 和 Rerank 推理
  3. 03查看部署日志与状态
  4. 04按模型类别匹配部署脚本
  5. 05查询支持的模型目录

适用场景

  1. 01在 Ascend 910B DevServer 部署模型
  2. 02测试文本或多模态模型推理
  3. 03部署期间检查日志与状态
  4. 04根据模型类型生成部署命令

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-ascend-models-deploy

安装后在 Claude Code 中输入/huawei-cloud-ascend-models-deploy确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
acceptance-criteria.md
api-parameters.md
model-catalog.md
prerequisites.md
task-deploy-model.md
task-test-model.md
troubleshooting.md
verification-method.md
scripts/
deploy_helper.py

详细介绍

华为云昇腾模型部署

在华为云昇腾 DevServer(910B 系列)上部署和测试大模型。支持单机和双机部署、模型推理测试及部署监控。

概述

此技能用于在华为云昇腾 DevServer(910B 系列)上部署和测试大模型。支持 LLM、VL、Embedding 和 Rerank 模型的单机和双机部署。

相关技能(由 Agent 编排,不直接调用,规则 3):

  • huawei-cloud-ascend-remote-connect - 通过 SSH 连接 DevServer(部署前提)
  • huawei-cloud-ascend-command - NPU 状态检查和监控(部署前提及部署后监控)

功能:

  • 模型部署(单节点、双节点)
  • 推理测试(LLM 对话、VL 多模态、Embedding、Rerank)
  • 部署日志和状态监控
  • 模型目录及脚本自动匹配

部署工作流(由 Agent 编排):

  1. Agent 调用 huawei-cloud-ascend-remote-connect 建立 SSH 连接
  2. Agent 调用 huawei-cloud-ascend-command 检查 NPU 健康状况和可用性
  3. Agent 调用此技能(huawei-cloud-ascend-models-deploy)部署模型
  4. Agent 调用 huawei-cloud-ascend-command 监控部署期间的 NPU 状态

架构

系统架构图
┌─────────────────────────────────────────────────────────────────────┐
│                         Agent Orchestration                         │
│  ┌─────────────────────────────────────────────────────────────┐    │
│  │  1. SSH connect (remote-connect)                             │    │
│  │  2. NPU health check (ascend-command)                        │    │
│  │  3. Deploy model (this skill)                                 │    │
│  │  4. Monitor NPU (ascend-command)                             │    │
│  └────────────────────────────┬────────────────────────────────┘    │
│                               │ Explicit param passing (Rule 1)    │
│                               ▼                                     │
├─────────────────────────────────────────────────────────────────────┤
│              Huawei Cloud Ascend Models Deploy                      │
│                      (Stateless, Rule 2)                            │
├─────────────────────────────────────────────────────────────────────┤
│  ┌──────────────────┐    ┌──────────────────────────────────┐      │
│  │  Natural Language│    │          Deploy Helper           │      │
│  │     Commands     │───▶│  - Model Matching & Catalog      │      │
│  └──────────────────┘    │  - Script Auto-Match             │      │
│                          │  - Command Generation            │      │
│                          └──────────────────────────────────┘      │
│                                           │                         │
│          ┌─────────────────────────────────┼──────────────┐        │
│          ▼                                 ▼              ▼        │
│  ┌───────────────┐              ┌─────────────────┐ ┌────────┐    │
│  │ Model         │              │ Inference       │ │ Log    │    │
│  │ Deployment    │              │ Testing         │ │ Status │    │
│  │               │              │                 │ │        │    │
│  │ • Single-node │              │ • LLM Chat      │ │ • View │    │
│  │ • Dual-node   │              │ • VL Multimodal │ │ • Check│    │
│  │ • 910B Series │              │ • Embedding     │ │        │    │
│  └───────────────┘              │ • Rerank        │ └────────┘    │
│                                 └─────────────────┘               │
└─────────────────────────────────────────────────────────────────────┘
Agent 编排流程
User request: "Deploy Qwen2.5-72B on DevServer 116.204.23.145"
         │
         ▼
┌─────────────────────────────────────────────────────────────┐
│ Agent Step 1: SSH Connection                                 │
│   → Call huawei-cloud-ascend-remote-connect                  │
│   → Pass: host, user, password (explicit, Rule 1)            │
└─────────────────────────────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────────────────────────────┐
│ Agent Step 2: NPU Health Check                               │
│   → Call huawei-cloud-ascend-command                         │
│   → Check: NPU list, health, HBM availability                │
│   → Fail if NPU not healthy or insufficient HBM              │
└─────────────────────────────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────────────────────────────┐
│ Agent Step 3: Deploy Model (this skill)                      │
│   → Match model from catalog                                 │
│   → Generate deploy script                                   │
│   → Execute deployment                                        │
│   → Stateless execution (Rule 2)                             │
└─────────────────────────────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────────────────────────────┐
│ Agent Step 4: Monitor NPU                                    │
│   → Call huawei-cloud-ascend-command                         │
│   → Monitor: HBM usage, temperature, processes               │
└─────────────────────────────────────────────────────────────┘
         │
         ▼
      Deployment Complete
相关技能表
技能用途编排阶段
huawei-cloud-ascend-remote-connectSSH 连接部署前:建立与 DevServer 的连接
huawei-cloud-ascend-commandNPU 管理部署前:健康检查;部署后:监控

注意:技能之间不会直接调用。所有编排均由 Agent 根据用户意图执行(规则 3)。

先决条件

先决条件检查:需要 Ascend 910B 系列

  • 支持:910B1、910B2、910B3、910B4
  • 不支持:910A、310、310P 等
  • 使用以下命令检查:npu-smi info

强制规则(AI 必须遵守)

  1. 绝不可凭记忆猜测命令 — 必须阅读“部署脚本自动匹配”部分
  2. 必须先调用 deploy_helper.py — 确认模型类别和脚本 URL
  3. 不同模型使用不同脚本:
    • LLM / Embedding / Rerank → deploy-large-models.sh
    • VL → deploy-qwen3-vl-model.sh
    • OpenSource → deploy-ai-models.sh
  4. 部署前必须验证 — 端口、NPU、模型、卡数
  5. 展示命令并等待确认 — 这是敏感操作,绝不可直接执行

自然语言理解规则

从用户的自然语言中提取关键信息,并准确组装命令。

操作类型识别
关键词操作
deploy / start / launch单机部署
dual-machine / two-node / dual-node双机部署
test / inference / call测试(执行)
write command / generate command编写测试命令(仅生成,不执行)
deployment log / view log查看部署日志
deployment status / is ready查看部署状态
model list / supported models显示模型目录
parameter help / API parameters显示参数手册
信息提取规则

模型名称(模糊匹配,不区分大小写,支持按卡数筛选):

  • "qwen3-14b" → Qwen3-14B
  • "qwen3-235b" → 多个匹配结果,优先选择 Instruct 版本(Qwen3-235B-A22B-Instruct-2507),或询问用户
  • "vl-32b" → Qwen3-VL-32B-Instruct
  • "bge-m3" → bge-m3
  • "qwen3-vl" + 2 张卡 → 匹配卡数 ≤2 的 VL 模型,列出供用户选择
  • "qwen3" + 2 张卡 → 匹配所有卡数 ≤2 的 Qwen3 模型,列出供用户选择
  • 存在多个候选项 → 列出所有候选项(含卡数和类别),让用户确认
  • 没有匹配项 → 显示完整模型目录供用户选择

卡数:

  • "2 cards" / "use 2 cards" / "2 npus" → 2
  • "16 cards" / "16 npus" → 16
  • "dual-machine" → 16
  • 未指定 → 使用模型目录中的最小卡数

端口:

  • "port 8022" / "port:8022" → 8022
  • 未指定 → 默认 8080

缺失参数(逐项检查并提示缺少的内容):

  • 缺少模型名称 → "请指定模型名称" + 显示模型列表
  • 缺少卡数 → "请指定卡数,例如:2 cards" + 显示此模型所需的最少卡数
  • 缺少端口 → "请指定端口(默认 8080),例如:port 8001"
  • 双机部署缺少头节点 IP → "请指定头节点 IP,例如:head:192.168.1.1"
  • 双机部署缺少工作节点 IP → "请指定工作节点 IP,例如:worker:192.168.1.2"

头节点/工作节点 IP(双机部署):

  • "head:1.1.1.1" / "head node 1.1.1.1" → 头节点 IP
  • "worker:2.2.2.2" / "worker node 2.2.2.2" → 工作节点 IP

提示词:

  • "prompt:hello" / "ask:hello" → 提示词文本
  • 未指定 → LLM 默认使用 "hello",VL 默认使用 "describe the image",Embedding 默认使用 "I love shanghai",Rerank 默认使用 "What is the capital of France?"

图像 URL(VL 测试):

  • "image:https://xxx.jpg" / 直接提供 URL → 图像 URL
  • 用户发送图像附件 → 自动转换为 base64 数据 URL
  • 未指定且正在测试多模态模型 → 提示用户提供图像 URL

多模态能力自动检测:

  • VL 类别 → 支持多模态
  • OpenSource:Qwen3.6-35B-A3B、Qwen3.6-27B → 支持多模态
  • LLM 类别 → 仅支持文本
  • Embedding → 仅支持文本
  • Rerank → 仅支持文本

图像 URL 转换(本地图像 → 数据 URL):

# Efficient base64 conversion
IMG_B64=$(base64 -w 0 ${local_image_path})
IMG_URL="data:image/jpeg;base64,${IMG_B64}"

高级参数(可选):

  • "max_tokens:64" → max_tokens=64
  • "temperature:0.7" → temperature=0.7
  • "stream" → stream=true
  • "system:You are assistant" → system_prompt
  • "disable thinking" / "no thinking" → chat_template_kwargs: {"enable_thinking": false}
  • (默认 = 启用思考模式)

思考模式: Qwen3/Qwen3.6 模型默认启用思考模式,会在最终回答前输出推理过程。

  • 启用思考:质量更高,消耗更多 token
  • 禁用思考:直接输出,消耗更少 token,适用于简单查询
  • 可通过 "chat_template_kwargs": {"enable_thinking": false/true} 在请求级别控制

支持的机器类型

仅支持 Ascend 910B 系列(910B1 / 910B2 / 910B3 / 910B4)。部署前必须检查 NPU 型号,拒绝非 910B 系列。


模型目录

大语言模型(LLM)— 端点:/v1/chat/completions
ModelMin Cards
Qwen3-14B1
Qwen3-30B-A3B-Instruct-25072
Qwen3-32B2
Qwen3-235B-A22B-Thinking-250716
Qwen3-235B-A22B-Instruct-250716
DeepSeek-R1-Distill-Llama-70B4
视觉语言(VL)— 端点:/v1/chat/completions
ModelMin Cards
Qwen3-VL-30B-A3B-Instruct2
Qwen3-VL-32B-Instruct2
Qwen3-VL-235B-A22B-Instruct16
Qwen3-VL-235B-A22B-Instruct-W8A88
Embedding — 端点:/v1/embeddings(仅限 V0 后端,且只能使用单卡)
ModelMin CardsMulti-card
Qwen3-Embedding-8B1No
bge-large-zh-v1.51No
bge-m31No
重排 — 端点:/v1/rerank(仅单卡)
模型最少卡数多卡
Qwen3-Reranker-8B1否
bge-reranker-v2-m31否
开源(多模态)
模型最少卡数能力
Qwen3.6-35B-A3B2文本 + 图像(MoE)
Qwen3.6-27B2文本 + 图像(MoE)
Qwen3-Next-80B-A3B-Instruct4大模型
DeepSeek-V4-Flash-w8a8-mtp8大模型

部署脚本自动匹配(必须使用,绝不可猜测脚本 URL)

脚本路径: scripts/deploy_helper.py

匹配规则(硬编码,100% 准确):

模型类别部署脚本备注
LLMdeploy-large-models.sh与 Embedding/Rerank 共用
Embeddingdeploy-large-models.sh同上
Rerankdeploy-large-models.sh同上
VLdeploy-qwen3-vl-model.sh多模态专用
OpenSourcedeploy-ai-models.shOpenSource 专用

用法:

# Match model (returns category, script URL, min cards, etc.)
python3 scripts/deploy_helper.py match <model_name>

# Generate deploy command directly
python3 scripts/deploy_helper.py command <model_name> <cards> <port>

# List all models (optional category filter)
python3 scripts/deploy_helper.py list [LLM|VL|Embedding|Rerank|OpenSource]

AI 必须先调用 deploy_helper.py match,确认类别和脚本,然后使用返回的 deploy_url 组装命令。绝不可凭记忆猜测!


核心命令

模型部署和测试的核心命令。详细步骤请参见操作流程。

命令描述
deploy <model> <port>在单台机器上部署模型
deploy <model> <port> <cards>使用指定卡数部署
dual-machine deploy <model> head:<IP> worker:<IP> port:<PORT>在双机集群上部署
test <model> <port>测试模型推理
deployment log查看部署日志
deployment status检查部署状态
model list显示支持的模型

操作流程

I. 部署
1. 部署前检查(每次都必须执行,不可跳过)

按顺序检查,任一项失败即停止:

  1. NPU 型号检查 — Agent 调用 huawei-cloud-ascend-command 检查芯片型号,拒绝非 910B 系列
  2. NPU 卡数检查 — Agent 调用 huawei-cloud-ascend-command 检查可用卡数,确认 >= 所需卡数
  3. 用户指定卡数检查 — 用户指定的卡数必须 >= 最少卡数,且在支持范围内(1,2,4,8,16)
  4. Embedding/Rerank 单卡检查 — Embedding 和 Rerank 仅支持单卡,拒绝多卡
  5. 端口占用检查 — Agent 调用 huawei-cloud-ascend-remote-connect 运行 ss -tlnp | grep :port,如端口被占用则通知用户
  6. SSH 连通性检查 — 对于双机部署,验证头节点和工作节点均可通过 SSH 访问
2. 单机部署

用户说:“deploy model_name port XXXX”或“deploy model_name port XXXX N cards”

部署前,必须通过 SSH 执行 mkdir -p /home/modelarts-agent,确保目录存在。

LLM / Embedding / Rerank 命令模板:

nohup bash -c 'export model_name=${model} && export required_cards=${cards} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-large-models/single-machine/deploy-large-models.sh && chmod 755 /home/modelarts-agent/deploy-large-models.sh && sh /home/modelarts-agent/deploy-large-models.sh ${model} ${cards} ${port}' > /home/modelarts-agent/deploy_${model}.log 2>&1 &

VL 多模态命令模板:

nohup bash -c 'export model_name=${model} && export required_cards=${cards} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-vl-model/single-machine/deploy-qwen3-vl-model.sh && chmod 755 /home/modelarts-agent/deploy-qwen3-vl-model.sh && sh /home/modelarts-agent/deploy-qwen3-vl-model.sh ${model} ${cards} ${port}' > /home/modelarts-agent/deploy_${model}.log 2>&1 &

OpenSource 命令模板:

nohup bash -c 'export model_name=${model} && export required_cards=${cards} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-large-models/single-machine/open_source/deploy-ai-models.sh && chmod 755 /home/modelarts-agent/deploy-ai-models.sh && sh /home/modelarts-agent/deploy-ai-models.sh ${model} ${cards} ${port}' > /home/modelarts-agent/deploy_${model}.log 2>&1 &
3. 双机部署

用户说:“dual-machine deploy model_name head:IP worker:IP port XXXX”

双机部署前,头节点和工作节点都需要执行 mkdir -p /home/modelarts-agent。

头节点命令模板:

nohup bash -c 'export ray_head_ip=${head_ip} && export model_name=${model} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-large-models/dual-machine/qwen3-235b-a22b.sh && chmod 755 /home/modelarts-agent/qwen3-235b-a22b.sh && sh /home/modelarts-agent/qwen3-235b-a22b.sh head ${head_ip} ${model} ${port}' > /home/modelarts-agent/deploy_${model}_head.log 2>&1 &

工作节点命令模板:

nohup bash -c 'export ray_head_ip=${head_ip} && export model_name=${model} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-large-models/dual-machine/qwen3-235b-a22b.sh && chmod 755 /home/modelarts-agent/qwen3-235b-a22b.sh && sh /home/modelarts-agent/qwen3-235b-a22b.sh worker ${head_ip} ${model} ${port}' > /home/modelarts-agent/deploy_${model}_worker.log 2>&1 &

VL 双机部署:

对于 VL 模型(Qwen3-VL-235B-A22B-Instruct 等),请使用以下脚本:

VL 头节点命令:

nohup bash -c 'export ray_head_ip=${head_ip} && export model_name=${model} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-vl-model/dual-machine/qwen3-vl-235b-a22b.sh && chmod 755 /home/modelarts-agent/qwen3-vl-235b-a22b.sh && sh /home/modelarts-agent/qwen3-vl-235b-a22b.sh head ${head_ip} ${model} ${port}' > /home/modelarts-agent/deploy_${model}_head.log 2>&1 &

VL 工作节点命令:

nohup bash -c 'export ray_head_ip=${head_ip} && export model_name=${model} && export port=${port} && wget -P /home/modelarts-agent/ https://documentation-samples-17.obs.cn-north-9.myhuaweicloud.com/solution-as-code-publicbucket/solution-as-code-module/quickly-deploy-llm-on-modelarts-lite-devserver/userdata/deploy-vl-model/dual-machine/qwen3-vl-235b-a22b.sh && chmod 755 /home/modelarts-agent/qwen3-vl-235b-a22b.sh && sh /home/modelarts-agent/qwen3-vl-235b-a22b.sh worker ${head_ip} ${model} ${port}' > /home/modelarts-agent/deploy_${model}_worker.log 2>&1 &
4. 部署确认流程

敏感操作,必须向用户显示完整命令,并等待用户回复“确认”后再执行。

发送部署命令后:

  1. 通知用户:就绪,正在开始部署 ${model},日志位于 /home/modelarts-agent/deploy_${model}.log
  2. 每 2 分钟检查一次日志,并报告进度(加载权重、Dynamo 编译、服务启动等)
  3. 端口开始监听后,通知用户部署成功
  4. 部署失败处理(严格遵守):
    • 部署失败 = 报告失败原因,不自动重试
    • 绝不自动更换镜像并重试
    • 绝不自动修改参数并重试
    • 绝不尝试其他部署方式
    • 只报告错误,由用户决定下一步操作
  5. 向用户输出 API 示例:
Deployment successful! ${model} is ready

Service URL: http://${IP}:${PORT}/v1/chat/completions

Example request:
curl -X POST http://${IP}:${PORT}/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","messages":[{"role":"user","content":"hello"}],"max_tokens":256}'

Multimodal request (if supported):
curl -X POST http://${IP}:${PORT}/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","messages":[{"role":"user","content":[{"type":"image_url","image_url":{"url":"image_url"}},{"type":"text","text":"describe the image"}]}],"max_tokens":512}'

II. 部署日志

用户说:“deployment log model_name”

Agent 使用 huawei-cloud-ascend-remote-connect 执行:

tail -50 /home/modelarts-agent/deploy_${model}.log

III. 部署状态

用户说:“deployment status port XXXX”

Agent 使用 huawei-cloud-ascend-remote-connect 执行:

ss -tlnp | grep :

端口正在监听 = 服务已就绪,可以开始测试。


IV. 测试(执行)

用户说:“test model_name prompt:xxx”或“test model_name image:URL”

测试流程(严格遵守):

  1. 向用户显示完整的 curl 命令以供审核
  2. 等待用户回复“确认”或“发送”后再执行
  3. 结构化结果输出:
Test Result

| Field | Value |
|-------|-------|
| id | chatcmpl-xxx |
| model | Qwen3-VL-32B-Instruct |
| prompt_tokens | 93 |
| completion_tokens | 400 |
| total_tokens | 493 |
| finish_reason | stop |

Model Response:
[Extract full content, no truncation]

Raw Response:
[Full JSON, no truncation]
LLM 聊天补全
curl -s -X POST http://${IP}:${PORT}/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","messages":[{"role":"user","content":"${prompt}"}],"max_tokens":1024,"temperature":0.7}'
多模态 VL
curl -s -X POST http://${IP}:${PORT}/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":[{"type":"image_url","image_url":{"url":"${image_url}"}},{"type":"text","text":"${prompt}"}]}],"max_tokens":512,"temperature":0.7}'
嵌入
curl -s -X POST http://${IP}:${PORT}/v1/embeddings \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","input":"${text}"}'
重排序
curl -s -X POST http://${IP}:${PORT}/v1/rerank \
  -H 'Content-Type: application/json' \
  -d '{"model":"${model}","query":"${query}","documents":["${doc1}","${doc2}"]}'

V. 编写测试命令(仅生成)

用户说:“write test command model_name prompt:xxx”

逻辑与“test”相同,但仅输出命令文本,不执行。


API 参数手册

LLM 参数(/v1/chat/completions)
参数必填默认值描述
model是—模型名称,与部署时相同
messages是—消息列表,每条消息包含 role 和 content
max_tokens否16最大生成 token 数
temperature否1.0采样随机性,0=贪心采样
top_p否1.0核采样阈值
top_k否-1仅考虑排名前 K 的 token
stream否false流式输出(SSE)
chat_template_kwargs否{}模板参数,例如 {"enable_thinking": false}
VL 额外参数
参数描述
content[]数组格式:image_url 对象 + text 对象
detail图像精度:auto/high/low
嵌入参数(/v1/embeddings)
参数必填描述
model是模型名称
input是字符串或字符串列表
encoding_format否float/base64
重排序参数(/v1/rerank)
参数必填描述
model是模型名称
query是查询文本
documents是待重排序的文档列表
top_n否返回前 N 项

执行模式

此技能以无状态模式运行(规则 2)。所有上下文(主机、凭据、模型信息)都必须由 Agent 显式传入(规则 1)。

前置条件(由 Agent 编排)

调用此技能前,Agent 必须:

  1. 使用 huawei-cloud-ascend-remote-connect 建立 SSH 连接

    • Agent 接收:用户提供的 host、port、user、password
    • Agent 验证连接是否成功
  2. 使用 huawei-cloud-ascend-command 检查 NPU 状态

    • Agent 检查:NPU 健康状况、HBM 可用量
    • Agent 验证:是否有足够的卡用于模型部署
技能执行

此技能接收 Agent 显式传入的参数:

# Model matching (local operation)
python3 scripts/deploy_helper.py match <model_name>

# Script URL generation (local operation)
python3 scripts/deploy_helper.py script <model_name>

# Deploy command generation (local operation)
python3 scripts/deploy_helper.py command <model> <cards> <port>
远程部署执行

Agent 在远程服务上执行部署命令:

# Agent uses SSH to execute deployment on DevServer
ssh root@<host> "cd /path/to/model && bash deploy.sh"
部署后(由 Agent 编排)

部署后,Agent 调用 huawei-cloud-ascend-command 以:

  • 监控 NPU HBM 使用情况
  • 检查部署进程状态
  • 验证模型端点是否有响应
参数流转
User Input                    Agent                      This Skill
    │                          │                            │
    │ host, password           │                            │
    ├─────────────────────────▶│                            │
    │                          │ SSH connect                │
    │                          ├───────────────────────────▶│
    │                          │                            │ (remote-connect)
    │                          │◀───────────────────────────┤
    │                          │                            │
    │                          │ NPU check                  │
    │                          ├───────────────────────────▶│
    │                          │                            │ (ascend-command)
    │                          │◀───────────────────────────┤
    │                          │                            │
    │ model_name, cards        │                            │
    ├─────────────────────────▶│                            │
    │                          │ match model                │
    │                          ├───────────────────────────▶│
    │                          │                            │ deploy_helper.py
    │                          │◀───────────────────────────┤
    │                          │                            │
    │                          │ execute deploy             │
    │                          ├───────────────────────────▶│
    │                          │                            │ (via SSH)
    │                          │◀───────────────────────────┤
    │                          │                            │
    │                          │ monitor NPU                │
    │                          ├───────────────────────────▶│
    │                          │                            │ (ascend-command)
    │                          │◀───────────────────────────┤
    │                          │                            │
    ▼                          ▼                            ▼

注意:技能之间无法直接调用。所有编排均由 Agent 完成(规则 3)。


参考资料

文档描述
task-deploy-model.md部署任务步骤
task-test-model.md测试任务步骤
model-catalog.md完整模型目录
api-parameters.mdAPI 参数参考
prerequisites.md前置条件检查清单
verification-method.md验证步骤
troubleshooting.md故障排除指南
scripts/deploy_helper.py模型匹配辅助工具

评论

支持 Markdown