请问ModelScope有qwen+triton相关的本地化部署材料吗?

请问ModelScope有qwen+triton相关的本地化部署材料吗?

展开
收起
小小爱吃香菜 2024-02-14 08:53:11 145 分享 版权
阿里云 AI 助理回答

是的,ModelScope 提供了与 Qwen 模型相关的 Triton 推理服务本地化部署的相关材料。以下是详细的部署步骤和配置说明,帮助您完成 Qwen 模型的本地化部署。


1. 准备模型数据

在部署之前,需要下载并上传目标模型文件至存储系统(如 OSS 或 NAS),并在 Kubernetes 集群中创建对应的存储卷(PV)和存储声明(PVC)。

步骤:

  1. 下载模型文件
    使用 Git LFS 下载目标模型文件。例如,Qwen1.5-4B-Chat 模型可以通过以下命令获取:
    git lfs install
    git clone <模型仓库地址>
    

    注意:请确保已安装 Git 和 Git LFS 工具。

  2. 上传模型至 OSS
    将下载的模型文件上传至阿里云对象存储服务(OSS)。

    • 登录 OSS 控制台,记录目标 Bucket 名称。
    • 上传模型文件至指定路径,例如 /models/Qwen1.5-4B-Chat
  3. 配置存储卷(PV 和 PVC)
    在 ACK 集群中创建存储卷和存储声明,用于挂载模型文件。

    • PV 配置示例: | 配置项 | 说明 | |----------------|---------------------------------------| | 存储卷类型 | OSS | | 名称 | llm-model | | 访问证书 | 配置 AccessKey ID 和 AccessKey Secret | | Bucket ID | 选择已创建的 OSS Bucket | | OSS Path | 模型所在路径,如 /models/Qwen1.5-4B-Chat |

    • PVC 配置示例: | 配置项 | 说明 | |----------------|---------------------------------------| | 存储声明类型 | OSS | | 名称 | llm-model | | 分配模式 | 选择已有存储卷 | | 已有存储卷 | 选择已创建的 PV |


2. 配置 Triton 推理服务框架

Triton 是 NVIDIA 开源的推理服务框架,支持多种后端(如 TensorRT、PyTorch 等)。以下是配置 Triton 推理服务的关键步骤。

步骤:

  1. 创建工作目录
    创建一个工作目录,用于存放 Triton 的配置文件和模型文件。例如:

    mkdir -p /workspace/triton_model_repo/qwen-4b
    
  2. 编写配置文件

    • vLLM 配置文件 (config.pbtxt)
      定义模型的输入输出格式及参数。示例如下:

      name: "qwen-4b"
      platform: "vllm"
      max_batch_size: 8
      input [
      {
       name: "text_input"
       data_type: TYPE_STRING
       dims: [1]
      }
      ]
      output [
      {
       name: "text_output"
       data_type: TYPE_STRING
       dims: [1]
      }
      ]
      instance_group [
      {
       kind: KIND_GPU
       count: 1
      }
      ]
      
    • Triton 配置文件 (model.json)
      定义模型的加载路径和运行时参数。示例如下:

      {
      "name": "qwen-4b",
      "platform": "vllm",
      "model_path": "/models/Qwen1.5-4B-Chat",
      "parameters": {
       "stream": false,
       "temperature": 0
      }
      }
      

3. 部署推理服务

使用 ACK 集群中的 Arena 工具部署 Triton 推理服务。

步骤:

  1. 提交推理服务任务
    执行以下命令,启动 Triton 推理服务:

    arena submit triton-vllm -type triton-serving -n default
    
  2. 检查服务状态
    使用以下命令查看推理服务的状态,等待服务就绪:

    arena serve get triton-vllm
    

    输出示例:

    Name: triton-vllm
    Namespace: default
    Type: Triton
    Desired: 1
    Available: 1
    Address: 172.16.XX.XX
    Port: RESTFUL:8000, GRPC:9000
    GPU: 1
    

4. 验证推理服务

通过发送推理请求验证服务是否正常运行。

步骤:

  1. 建立端口转发
    执行以下命令,将推理服务的端口映射到本地环境:

    kubectl port-forward svc/triton-vllm 8000:8000
    
  2. 发送推理请求
    使用 curl 命令向推理服务发送请求。例如:

    curl -X POST localhost:8000/v2/models/qwen-4b/generate \
        -d '{"text_input": "什么是人工智能?", "parameters": {"stream": false, "temperature": 0}}'
    

    预期输出:

    {
     "model_name": "qwen-4b",
     "model_version": "1",
     "text_output": "人工智能是计算机科学的一个分支,研究如何使计算机具有智能行为。"
    }
    

5. 清理环境(可选)

如果不再需要已部署的服务或资源,可以执行以下清理操作: 1. 删除推理服务:

arena serve del triton-vllm
  1. 删除存储卷和存储声明:
    kubectl delete pvc llm-model
    kubectl delete pv llm-model
    

重要提醒

  • 硬件要求:部署大语言模型(如 Qwen 系列)通常需要高性能 GPU(如 A10、A100 等),建议根据模型大小选择合适的 GPU 资源。
  • 生产环境建议:本文档适用于快速体验,生产环境中建议使用 vLLM 或 Triton 等成熟的推理服务框架。

希望以上内容能够帮助您顺利完成 Qwen 模型的本地化部署!

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352

热门讨论

热门文章

还有其他疑问?
咨询AI助理