5分钟使用EAS一键部署LLM大语言模型应用

EAS(Elastic Algorithm Service)是PAI为在线推理场景提供的模型在线服务,为自动化部署和应用LLM大语言模型提供了一键式解决方案。通过EAS,您可以轻松部署多种开源大模型服务应用,同时支持标准部署和多种加速部署方式。使用加速部署,您可以体验到高并发和低延迟的技术优势。本文为您介绍如何通过EAS一键部署和调用LLM大语言模型,以及常见的问题和解决方法。

前提条件

部署EAS服务

  1. 进入模型在线服务页面。

    1. 登录PAI控制台

    2. 在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。

    3. 在工作空间页面的左侧导航栏选择模型部署>模型在线服务(EAS),进入模型在线服务(EAS)页面。image

  2. 模型在线服务(EAS)页面,单击部署服务,然后在场景化模型部署区域,单击LLM大语言模型部署

  3. 部署LLM大语言模型页面,配置以下关键参数,其他参数使用默认配置。

    参数

    描述

    基本信息

    服务名称

    自定义服务名称。本方案使用的示例值为:llm_demo001

    版本选择

    选择开源模型一键部署

    模型类别

    本方案选择qwen2.5-7b-instruct。EAS还提供了多种模型类别可供选择,以满足您的不同需求,例如DeepSeek-R1、Qwen2-VL、Meta-Llama-3.2-1B等。

    部署方式

    不同模型支持的部署方式不同,请根据情况选择。这里选择SGLang加速部署 > 单机-标准机型。注意:Transformers标准部署(不使用任何加速框架)支持API调用和WebUI调用,加速部署仅支持API调用。

    资源部署

    资源类型

    选择公共资源

    部署资源

    选择模型类别后,系统会自动推荐适合的资源规格。

    部署中文

  4. 单击部署,大约等待5分钟后即可完成模型部署。

调用服务

加速部署只支持API调用,下面介绍SGLang加速部署情况下如何在线调试和API调用。更多部署方式的调用请参见LLM模型调用

在线调试

  1. 模型在线服务(EAS)页面,单击目标服务操作列下的image>在线调试

  2. 发送POST请求。根据采用的部署方式,填写相应的请求地址和请求体,然后单击发送请求

    image

    • 请求接口:/v1/chat/completions

    • 请求体示例如下:

      {
          "model": "Qwen2.5-7B-Instruct",
          "messages": [
              {
                  "role": "user",
                  "content": "What is the capital of Canada?"
              }
          ]
      }

API调用

  1. 查看服务访问地址和Token。

    1. 在模型在线服务(EAS)页面,单击目标服务的服务方式列下的调用信息

    2. 调用信息对话框,查看服务访问地址和Token。

  2. 在终端中执行以下代码调用服务。

    Python

    from openai import OpenAI
    
    ##### API 配置 #####
    openai_api_key = "<EAS API KEY>"
    openai_api_base = "<EAS API Endpoint>/v1"
    
    client = OpenAI(
        api_key=openai_api_key,
        base_url=openai_api_base,
    )
    
    models = client.models.list()
    model = models.data[0].id
    print(model)
    
    
    def main():
    
        stream = True
    
        chat_completion = client.chat.completions.create(
            messages=[
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "text",
                            "text": "加拿大的首都在哪里?",
                        }
                    ],
                }
            ],
            model=model,
            max_completion_tokens=2048,
            stream=stream,
        )
    
        if stream:
            for chunk in chat_completion:
                print(chunk.choices[0].delta.content, end="")
        else:
            result = chat_completion.choices[0].message.content
            print(result)
    
    
    if __name__ == "__main__":
        main()
    

    其中:

    • <EAS API KEY>:替换为已查询的服务Token。

    • <EAS API Endpoint>:替换为已查询的服务访问地址。

    命令行

    curl -X POST <service_url>/v1/chat/completions -d '{
        "model": "<model_name>",
        "messages": [
            {
                "role": "system",
                "content": [
                    {
                        "type": "text",
                        "text": "You are a helpful and harmless assistant."
                    }
                ]
            },
            {
                "role": "user",
                "content": "加拿大的首都在哪里?"
            }
        ]
    }' -H "Content-Type: application/json" -H "Authorization: <token>"

    其中:

    • <service_url>:替换为已查询的服务访问地址。

    • <token>:替换为已查询的服务Token。

    • <model_name>:替换为模型名称。模型名称可通过模型列表接口<service_url>/v1/modes获取。

      curl -X GET \
          -H "Authorization: <token>" \
          <service_url>/v1/models

常见问题及解决方法

如何切换其他的开源大模型?

您可以在EAS上快速从第三方拉起DeepSeek-R1、Llama、UI-TARS、QVQ、gemma2、以及baichuan2等开源大模型文件,参考以下操作步骤切换并部署这些模型:

  1. 单击目标服务操作列下的更新

  2. 更新模型类别为其他开源大模型,系统将同步更新资源规格

  3. 单击更新

如何提升推理并发且降低延迟?

EAS支持BladeLLMvLLM的推理加速引擎,可以帮助您一键享受高并发和低延时的技术红利。具体操作步骤如下:

  1. 单击目标服务操作列下的更新

  2. 基本信息区域,更新部署方式加速部署,然后单击更新

您也可以在部署LLM大语言模型时,将部署版本选择高性能部署,基于PAI自研的BladeLLM引擎进行快速部署

如何挂载自定义模型?

当部署版本选择高性能部署时,支持挂载自定义模型。仅支持部署QwenLlama全系列文本模型,包括开源版本、微调版本以及量化后的版本。以OSS挂载为例,具体操作步骤如下:

  1. 将自定义模型及相关配置文件上传到您自己的OSS Bucket目录中,关于如何创建存储空间和上传文件,详情请参见控制台创建存储空间控制台上传文件

    需要准备的模型文件样例如下:image.png

    其中配置文件中必须包含config.json文件,您需要按照HuggingfaceModelscope的模型格式配置Config文件。示例文件详情,请参见config.json

  2. 单击目标服务操作列下的更新

  3. 部署LLM大语言模型页面,配置以下参数,参数配置完成后,单击更新

    参数

    描述

    基本信息

    版本选择

    选择高性能部署

    镜像版本

    选择blade-llm:0.9.0

    模型配置

    选择自定义模型,单击OSS,并选择自定义模型所在的OSS存储路径。

    资源部署

    部署资源

    参考使用限制,选择资源规格

    如何使用API进行模型推理?

    请参见API调用

相关文档