模型部署

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

模型部署可以为您创建专属的推理服务。本文介绍了模型部署的基本概念、使用方法和配置指南,帮助您为大语言模型配置专属的模型推理服务。

功能概述

简单来说,模型部署是指将大模型运行在专属的计算资源上,使模型在独立的运行环境中高效、可靠地运行,并为业务应用提供推理服务。

阿里云百炼支持两种模型部署方式:百炼控制台(0代码)和API(全代码)。两种部署方式完全等价,您可以根据业务需求决定部署方式。

支持的模型

模型部署支持预置模型和自定义模型,对比如下:

模型类别

定义

特点

为什么选择模型部署

预置模型

百炼预先部署在公用云服务器上的大语言模型。

泛用性高,用户基础较广,涵盖了通义系列模型、行业大模型、第三方模型等。

例如:通义千问-Plus模型。

部署后,您将获得更高的并发量。

自定义模型

使用百炼调优的个性化大语言模型。

适应特定领域的语义环境,具有更高的准确性和专业性,以及更好的上下文理解能力。

例如:基于情感分类任务调优的模型。

部署后,您才可以调用这类模型,评测模型的调优效果。同时您可以获得更稳定的模型服务、更高的并发量。

百炼控制台部署(0代码)

预置模型配置(仅支持算力时长计费)

操作步骤

示意图

  1. 请访问阿里云百炼-模型部署,点击部署新模型

image

  1. 选择您要部署的模型和计费模式。预置模型配置仅支持算力时长计费的两种计费模式,分别是算力时长计费/后付费算力时长计费/预付费。您可以前往计费项与定价对比两种计费模式。建议您在第一次部署时选择算力时长计费/后付费的计费模式

    重要
    • 点击开始部署后,您将开始支付模型部署的费用,请您务必确认后再部署模型。

    • 预付费不满一天按一天计费,后付费不满一小时按一小时计费。

算力时长计费/后付费:根据您的并发量需求,填写实例数量,最后确认部署清单。

系统会自动计算算力单元数量。实例数、算力单元与并发量的换算关系,请参考文末的实例数量与并发量的换算关系。

image

算力时长计费/预付费:您需要先付费购买资源包,操作步骤详见示意图。

实例规格支持不同的预置模型。请您在购买页面确认:您选择的预置模型与实例规格是否对应。

image

image

  1. 查看部署状态

    开始部署后,您可以在控制台上查看部署进度,这需要一定时间,请您耐心等待。

    当部署状态为运行中时,代表该模型可以提供推理服务。

image

自定义模型配置(支持算力时长计费/Tokens调用计费)

重要

选择您要部署的模型和计费模式时,请注意:

  • 如果使用全参训练或在已有模型基础上继续训练,仅支持算力时长计费;

  • 而在使用下列模型进行高效训练时,您可以在算力时长计费和Tokens调用计费之间自由选择。

    • 通义千问2-开源版-7B

    • 通义千问2-开源版-72B

    • 通义千问2-72B

阿里云百炼支持自定义模型部署,您可以根据业务需求在百炼控制台决定部署方式。

操作步骤

示意图

  1. 请访问阿里云百炼-模型部署,点击部署新模型

image

  1. 选择您要部署的模型和计费模式。

    自定义模型配置支持算力时长计费,Tokens调用计费两种方式。建议您在第一次部署时选择Tokens调用计费/后付费的计费模式:根据模型调用产生的Tokens量计费,此模式适用于峰谷调用、效果验证场景,如果超过1个月无调用量,模型将自动下线。

    系统每分钟调用次数(QPM)60次;每分钟消耗Token数(TPM)150000。
    重要

    点击开始部署后,您将开始支付模型部署的费用,请您务必确认后再部署模型。

image

  1. 查看部署状态

    开始部署后,您可以在控制台上查看部署进度,这需要一定时间,请您耐心等待。

    当部署状态为运行中时,代表该模型可以提供推理服务。

image

通过 API 部署模型(全代码)

除了在控制台操作,百炼支持通过 HTTP 请求执行模型部署。以下是简洁的操作指南:

前提准备

获取 API-KEY:确保已获取并配置好 API-KEY,参考获取API Key配置API Key到环境变量

重要

由于代码操作的特殊性,当您在执行付费操作时(例如创建或更新部署任务),百炼不会向您确认消费数额,因此可能产生意料之外的费用。强烈建议您在执行下列操作前,充分了解各项操作可能产生的影响,以及百炼模型部署服务的单价和计费规则

常见操作步骤

  1. 列举可部署模型

    获取可部署模型列表:

    curl "https://dashscope.aliyuncs.com/api/v1/deployments/models" \
        --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
        --header "Content-Type: application/json"

    返回示例:

    {
      "request_id": "cb68e88f-d3fc-4aed-b8bc-2c76c7e05607",
      "output": {
        "models": [
          {
            "model_name": "qwen-plus",
            "base_capacity": 2
          },
        ],
        "page_no": 1,
        "page_size": 50,
        "total": 1
      }
    }

    model_name:模型名称

    base_capacity:每个实例需要的最小算力单元数量

  2. 创建部署任务

    部署模型:

    curl "https://dashscope.aliyuncs.com/api/v1/deployments" \
        --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
        --header "Content-Type: application/json" \
        --data '{        
                    "model_name": "<YOUR_MODEL_NAME>",      
                    "capacity": 1,        
                    "suffix": "sample"
                }'

    model_name:待部署的模型。

    capacity:分配的算力单元,需为 base_capacity(基础算力单元) 的整数倍。

    suffix(可选):用于区分多个部署任务。

  3. 查询部署任务状态

    查看某个任务的状态:

    curl 'https://dashscope.aliyuncs.com/api/v1/deployments/qwen-v1-ft-202305099980-fac9-sample' \
        --header 'Authorization: Bearer <YOUR-DASHSCOPE-API-KEY>' \
        --header 'Content-Type: application/json' 
  4. 调用部署任务

    使用已部署模型:

    curl --location "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json" \
    --data '{
        "model": "qwen-plus",
        "input":{
            "messages":[      
                {
                    "role": "system",
                    "content": "You are a helpful assistant."
                },
                {
                    "role": "user",
                    "content": "你是谁?"
                }
            ]
        },
        "parameters": {
            "result_format": "message"
        }
    }'
  5. 更新部署任务(可选)

    动态调整部署任务的算力单元,实现扩缩容:

    curl --request PUT 'https://dashscope.aliyuncs.com/api/v1/deployments/qwen-v1-ft-20230703-cx7f/scale' \
        --header 'Authorization: Bearer <YOUR-DASHSCOPE-API-KEY>' \
        --header 'Content-Type: application/json' \
        --data '{    
                    "capacity":8
                }'
  6. 查询所有部署任务(可选)

    查看所有任务状态:

    curl "https://dashscope.aliyuncs.com/api/v1/deployments" \
        --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
        --header "Content-Type: application/json" 
  7. 删除部署任务(可选)

    警告

    删除已部署的模型,可能会导致该模型关联的线上业务发生中断,请谨慎操作。

    下线已部署模型:

    curl --request DELETE "https://dashscope.aliyuncs.com/api/v1/deployments/<deployed_model>" \
        --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
        --header "Content-Type: application/json" 

资源池管理

您可以通过资源池管理,购买相关资源规格。您可以前往计费项与定价查询具体资源规格。

image

image

附录

名词解释

名词

解释

实例

是模型部署量的基本单位,表示每个部署任务提供的推理服务数量。实例数量越多,部署提供的推理服务越多,并发性能越好。通过动态调整实例数量,模型能够应对流量变化,确保高峰期的高效响应。

基础算力单元

是模型的一项属性,表示部署模型到单个实例上所需的算力单元数量。比如,qwen-plus模型的基础算力单元是8,代表部署qwen-plus到一个实例上需要8个算力单元。

QPM(Queries Per Minute,每分钟请求数)

是衡量模型推理并发性能的一个指标,表示模型每分钟可处理的请求数量。实例越多,QPM越高,模型的响应能力越强,能够更好地应对高并发请求。

部署后并发性能参考表

支持的模型列表以控制台为准,如您有疑问请访问技术支持页面获取帮助。

模型名称

基础算力单元

每实例参考处理能力

qwen-plus

8

70 QPM

后续操作

如您希望了解计费信息,请访问计费项与定价

如您希望了解API详情,请访问模型部署

常见问题

  1. 可以上传和部署自己的模型吗?

    暂不支持上传和部署自有模型,建议您持续关注百炼最新动态。此外,阿里云人工智能平台 PAI 提供了部署自有模型的功能,您可以参考PAI模型部署与推理了解部署方法。

  2. 如何进一步提高模型并发量呢?

    如果您需要进一步提高模型的RPMTPM,请通过邮箱申请,告知uid、期望申请的模型和RPMTPM,请邮件联系:modelstudio@service.aliyun.com。