Qwen3 大模型在阿里云容器服务上的极简部署教程

简介: 通义千问 Qwen3 是 Qwen 系列最新推出的首个混合推理模型,其在代码、数学、通用能力等基准测试中,与 DeepSeek-R1、o1、o3-mini、Grok-3 和 Gemini-2.5-Pro 等顶级模型相比,表现出极具竞争力的结果。

【阅读原文】戳:Qwen3 大模型在阿里云容器服务上的极简部署教程


01. 背景介绍

 

Qwen3

 

通义千问 Qwen3 是 Qwen 系列最新推出的首个混合推理模型。旗舰模型 Qwen3-235B-A22B 在代码、数学、通用能力等基准测试中,与 DeepSeek-R1、o1、o3-mini、Grok-3 和 Gemini-2.5-Pro 等顶级模型相比,表现出极具竞争力的结果。此外,小型 MoE 模型 Qwen3-30B-A3B 的激活参数数量是 QwQ-32B 的 10%,表现更胜一筹,甚至像 Qwen3-4B 这样的小模型也能匹敌 Qwen2.5-72B-Instruct 的性能。Qwen3 支持多种思考模式,用户可以根据具体任务控制模型进行思考的程度。Qwen3 模型支持 119 种语言和方言, 同时也加强了对 MCP 的支持。更多信息请参考《Qwen3:思深,行速》

 

ACK

 

容器服务 Kubernetes 版 ACK(Container Service for Kubernetes)是全球首批通过 Kubernetes 一致性认证的服务平台,提供高性能的容器应用管理服务。它整合了阿里云虚拟化、存储、网络和安全能力,简化集群的搭建和扩容等工作,让您专注于容器化的应用的开发与管理。

 

ACS

 

容器计算服务 ACS(Container Compute Service)是以 Kubernetes 为用户界面的容器服务产品,提供符合容器规范的算力资源。

 

通过虚拟节点(Virtual Node)的形式接入到 ACK 集群中,使得集群可以轻松获得极大的弹性能力,而不必受限于集群的节点计算容量。ACS 在接管 Pod 容器底层基础设施的管理工作后,Kubernetes 不再需要直接负责单个 Pod 的放置、启动等工作,也不再需要关心底层虚拟机的资源情况,通过 ACS 即可确保 Pod 需要的资源随时可用。

 

 

 


02. 前提条件

 

 

已创建包含 GPU 的 ACK 集群。具体操作,请参见为集群添加 GPU 节点池 [1]

 

已通过 kubectl 连接到集群。具体操作,请参见通过 kubectl 连接集群 [2]

 


 

 

03. 模型部署

 

 

步骤一:准备 Qwen3-8B 模型文件

 

1. 执行以下命令从 ModelScope 下载 Qwen3-8B 模型。

 

请确认是否已安装 git-lfs 插件,如未安装可执行 yum install git-lfs 或者 apt-get install git-lfs 安装。更多的安装方式,请参见安装 git-lfs [3]

 

git lfs install
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/Qwen/Qwen3-8B
cd Qwen3-8B/
git lfs pull

 

2. 在 OSS 中创建目录,将模型上传至 OSS。

 

关于 ossutil 工具的安装和使用方法,请参见安装 ossutil [4]

 

ossutil mkdir oss://<your-bucket-name>/models/Qwen3-8B
ossutil cp -r ./Qwen3-8B oss://<your-bucket-name>/models/Qwen3-8B

 

3. 创建 PV 和 PVC。为目标集群配置名为 llm-model 的存储卷 PV 和存储声明 PVC。

 

apiVersion: v1
kind: Secret
metadata:
  name: oss-secret
stringData:
  akId: <your-oss-ak> # 配置用于访问OSS的AccessKey ID
  akSecret: <your-oss-sk> # 配置用于访问OSS的AccessKey Secret
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: llm-model
  labels:
    alicloud-pvname: llm-model
spec:
  capacity:
    storage: 30Gi 
  accessModes:
    - ReadOnlyMany
  persistentVolumeReclaimPolicy: Retain
  csi:
    driver: ossplugin.csi.alibabacloud.com
    volumeHandle: llm-model
    nodePublishSecretRef:
      name: oss-secret
      namespace: default
    volumeAttributes:
      bucket: <your-bucket-name> # bucket名称
      url: <your-bucket-endpoint> # Endpoint信息,如oss-cn-hangzhou-internal.aliyuncs.com
      otherOpts: "-o umask=022 -o max_stat_cache_size=0 -o allow_other"
      path: <your-model-path> # 本示例中为/models/Qwen3-8B/
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: llm-model
spec:
  accessModes:
    - ReadOnlyMany
  resources:
    requests:
      storage: 30Gi
  selector:
    matchLabels:
      alicloud-pvname: llm-model

 


步骤二:部署推理服务

 

执行下列命令,启动名称为 qwen3 的推理服务。

 

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: qwen3
  name: qwen3
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      app: qwen3
  template:
    metadata:
      labels:
        app: qwen3
        # for ACS Cluster
        # alibabacloud.com/compute-class: gpu
        # 指定GPU型号为example-model,请按实际情况填写,如T4
        # alibabacloud.com/gpu-model-series: "example-model"
    spec:
      volumes:
        - name: model
          persistentVolumeClaim:
            claimName: llm-model
      containers:
      - command:
        - sh
        - -c
        - vllm serve /models/Qwen3-8B/ --port 8000 --trust-remote-code --max-model-len 2048 --gpu-memory-utilization 0.98 
        image: kube-ai-registry.cn-shanghai.cr.aliyuncs.com/kube-ai/vllm:v0.8.4
        imagePullPolicy: IfNotPresent
        name: vllm
        ports:
        - containerPort: 8000
          name: restful
          protocol: TCP
        readinessProbe:
          tcpSocket:
            port: 8000
          initialDelaySeconds: 30
        resources:
          limits:
            nvidia.com/gpu: "1"
            cpu: 8
            memory: 16Gi
          requests:
            nvidia.com/gpu: "1"
            cpu: 8
            memory: 16Gi
        volumeMounts:
          - mountPath: /models/Qwen3-8B/
            name: model
---
apiVersion: v1
kind: Service
metadata:
  name: qwen3
spec:
  ports:
    - name: http
      port: 8000
      protocol: TCP
      targetPort: 8000
  selector:
    app: qwen3
  type: ClusterIP

 


步骤三:验证推理服务

 

1. 执行以下命令,在推理服务与本地环境之间建立端口转发。

 

kubectl port-forward svc/qwen3 8000:8000

 

预期输出:

 

Forwarding from 127.0.0.1:8000 -> 8000
Forwarding from [::1]:8000 -> 8000

 

2. 执行以下命令,向模型推理服务发送一条模型推理请求。

 

curl -H "Content-Type: application/json" http://localhost:8000/v1/chat/completions -d '{"model": "/models/Qwen3-8B/", "messages": [{"role": "user", "content": "Say this is a test!"}], "max_tokens": 512, "temperature": 0.7, "top_p": 0.9, "seed": 10}'

 

预期输出:

 

{"id":"chatcmpl-3e472d9f449648718a483279062f4987","object":"chat.completion","created":1745980464,"model":"/models/Qwen3-8B/","choices":[{"index":0,"message":{"role":"assistant","reasoning_content":null,"content":"<think>\nOkay, the user said \"Say this is a test!\" and I need to respond. Let me think about how to approach this. First, I should acknowledge their message. Maybe start with a friendly greeting. Then, since they mentioned a test, perhaps they're testing my response capabilities. I should confirm that I'm here to help and offer assistance with anything they need. Keep it open-ended so they feel comfortable asking more. Also, make sure the tone is positive and encouraging. Let me put that together in a natural way.\n</think>\n\nHello! It's great to meet you. If you have any questions or need help with something, feel free to let me know. I'm here to assist! 😊","tool_calls":[]},"logprobs":null,"finish_reason":"stop","stop_reason":null}],"usage":{"prompt_tokens":14,"total_tokens":161,"completion_tokens":147,"prompt_tokens_details":null},"prompt_logprobs":null}

 



 

04. ACK Pro 集群弹 ACS 算力

 


ACK 同时还支持 Serverless Pod 方式 ACS GPU 算力。ACS容器算力可以通过虚拟节点(Virtual Node)的形式接入到 Kubernetes 集群中,使得集群可以轻松获得极大的弹性能力,而不必受限于集群的节点计算容量。

 

前提条件

 

开通容器服务 Kubernetes 版,并授权默认角色和开通相关云产品。具体操作,请参见快速创建 ACK 托管集群 [5]

 

登录容器计算服务控制台 [6],根据提示开通 ACS 服务。

 

组件中心安装 虚拟节点组件(ACK Virtual Node)。

 

模型部署

 

ACS 与 ACK Pro 的部署方式基本一致,只需要再额外在 Pod 打上 ACS 算力标签即可 alibabacloud.com/compute-class: gpu,如下:

 

apiVersion: apps/v1
kind: Deployment
metadata:
  name: qwen3
spec:
  template:
    metadata:
      labels:
        app: qwen3
        # for ACS 算力
        alibabacloud.com/compute-class: gpu
        # 指定GPU型号为example-model,请按实际情况填写,如T4
        alibabacloud.com/gpu-model-series: "example-model"
    spec:
      containers:
      ...

 


相关链接:

 

[1] 为集群添加 GPU 节点池

https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/user-guide/create-an-ack-managed-cluster-with-gpu-accelerated-nodes

 

[2] 通过 kubectl 连接集群

https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/user-guide/obtain-the-kubeconfig-file-of-a-cluster-and-use-kubectl-to-connect-to-the-cluster

 

[3] 安装 git-lfs

https://docs.github.com/en/repositories/working-with-files/managing-large-files/installing-git-large-file-storage

 

[4] 安装 ossutil

https://help.aliyun.com/zh/oss/developer-reference/install-ossutil

 

[5] 快速创建 ACK 托管集群

https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/getting-started/quick-start-for-first-time-users/

 

[6] 容器计算服务控制台

https://acs.console.aliyun.com/#/



我们是阿里巴巴云计算和大数据技术幕后的核心技术输出者。

欢迎关注 “阿里云基础设施”同名微信微博知乎

获取关于我们的更多信息~

相关实践学习
如何快速创建插件agent
阿里云百炼应用基于Assistant API技术架构,结合大语言模型(LLM)的推理、知识检索增强、插件调度等能力,构建应对各类复杂场景任务的场景应用。通过集成化、直观易用的产品界面,为开发者提供了丰富的应用配置选项,包括大型语言模型(LLM)选择、Pro
目录
打赏
0
34
34
0
253
分享
相关文章
一键部署开源Qwen3并集成到钉钉、企业微信
Qwen3系列模型现已正式发布并开源,包含8款“混合推理模型”,其中涵盖两款MoE模型(Qwen3-235B-A22B与Qwen3-30B-A3B)及六个Dense模型。阿里云计算巢已支持Qwen3-235B-A22B和Qwen3-32B的私有化部署,用户可通过计算巢轻松完成部署,并借助AppFlow集成至钉钉机器人或企业微信。文档详细介绍了从模型部署、创建应用到配置机器人的全流程,帮助用户快速实现智能助手的接入与使用。
一键部署开源Qwen3并集成到钉钉、企业微信
NVIDIA 实现通义千问 Qwen3 的生产级应用集成和部署
阿里巴巴近期开源了通义千问Qwen3大语言模型(LLM),包含两款混合专家模型(MoE)235B-A22B与30B-A3B,以及六款稠密模型(Dense)从0.6B到32B不等。开发者可基于NVIDIA GPU使用TensorRT-LLM、Ollama、SGLang、vLLM等框架高效部署Qwen3系列模型,实现快速词元生成和生产级应用开发。
一键部署 Qwen3! 0 代码,2 种方式全新体验
Qwen3 正式发布并开源 8 款混合推理模型,包括两款 MoE 模型(Qwen3-235B-A22B 和 Qwen3-30B-A3B)及六个 Dense 模型。这些模型支持 119 种语言,在代码、数学等测试中表现优异,并提供思考与非思考两种模式。依托阿里云函数计算 FC 算力,FunctionAI 平台支持模型服务和应用模板部署,适用于多种场景。用户可通过 Serverless 架构快速构建高弹性、智能化应用,显著降低开发成本,提升效率。试用链接及详细文档已提供,欢迎体验。
qwen模型 MindIE PD分离部署问题定位
使用MindIE提供的PD分离特性部署qwen2-7B模型,使用k8s拉起容器,参考这个文档进行部署:https://www.hiascend.com/document/detail/zh/mindie/100/mindieservice/servicedev/mindie_service0060.html,1个Prefill,1个Decode。 最后一步测试推理请求的时候,出现报错:model instance has been finalized or not initialized。
60 1
魔搭社区大模型一键部署到阿里云边缘云(ENS)
随着大模型技术的快速发展,业界的关注点正逐步从模型训练往模型推理 转变。这一转变不仅反映了大模型在实际业务中的广泛应用需求,也体现了技术优化和工程化落地的趋势。
101 7
阿里云AI Stack全量适配Qwen3模型,企业级部署效率全面升级
2025年4月29日的凌晨5点,阿里全新一代模型通义千问Qwen3正式发布并全部开源8款「混合推理模型」,包含: 6款Dense模型:0.6B、1.7B、4B、8B、14B、32B。 2款MoE模型:Qwen3-30B-A3B和旗舰版Qwen3-235B-A22B。 阿里云AI Stack已适配全量Qwen3模型,可快速部署实现Qwen3模型的开箱即用!
106 4
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
124 16
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
151 30

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等