全部產品
Search
文件中心

Platform For AI:模型線上服務 EAS 快速入門

更新時間:Nov 27, 2025

通過EAS可以快速將模型部署為線上推理服務。本文以vLLM架構部署Qwen3-0.6B模型為例,介紹使用EAS部署服務並調用的全流程。

說明

本文僅以LLM模型自訂部署為例協助您快速熟悉EAS使用。實際部署LLM模型推薦使用情境化部署的LLM大語言模型部署或者通過Model Gallery一鍵部署,更方便快捷。

前提條件

使用主帳號開通PAI並建立工作空間。登入PAI控制台,左上方選擇開通地區,然後一鍵授權和開通產品。

計費說明

本文將使用公用資源建立模型服務,計費方式為隨用隨付,詳細計費規則請參見EAS計費說明

準備工作

通常部署模型服務,需要準備模型檔案、代碼檔案(如Web介面等)。如果平台官方鏡像不滿足部署要求,還需要自行構建鏡像。

模型檔案準備

本文樣本所需Qwen3-0.6B的模型檔案,可以通過執行以下python代碼,從modelscope下載到預設路徑~/.cache/modelscope/hub

# 模型下載
from modelscope import snapshot_download
model_dir = snapshot_download('Qwen/Qwen3-0.6B')

代碼檔案準備

藉助vLLM架構,我們可以非常簡便地構建一個與OpenAI API相容的API服務,故這裡不需要特別準備代碼檔案。

如果您有複雜的商務邏輯或者特殊api需求,可以自行準備相關代碼處理檔案,如使用flask建立一個簡單的API介面代碼如下。

查看代碼檔案樣本

from flask import Flask

app = Flask(__name__)

@app.route('/hello/model')
def hello_world():
    # 這裡可以調用模型擷取結果
    return 'Hello World'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000)

上傳檔案到OSS

通過ossutil工具可將模型檔案和代碼檔案上傳到OSS,後續通過給服務掛載OSS來讀模數型檔案。

除了OSS,也可以使用其他方式儲存,參見儲存掛載

說明

也可以將部署所需檔案全部打包到鏡像中部署,但通常不建議這麼做,原因如下:

  • 模型的更新或迭代需要重新構建和上傳鏡像,增加維護成本。

  • 大模型檔案會顯著增加鏡像的大小,導致拉取鏡像的時間變長,影響服務啟動效率。

鏡像準備

Qwen3-0.6B模型可以使用vllm>=0.8.5 來建立一個與 OpenAI 相容的 API 端點。當前EAS提供的官方鏡像vllm:0.8.5.post1-mows0.2.1滿足要求,故本文將直接使用官方鏡像。

如不存在符合要求的官方鏡像,則需要自訂鏡像。如果您是在DSW開發訓練模型,可以通過製作DSW執行個體鏡像,來保障模型開發訓練環境與部署運行環境的一致性。

服務部署

  1. 登入PAI控制台,在頁面上方選擇目標地區,並在右側選擇目標工作空間,然後單擊進入EAS

  2. 單擊部署服務,然後在自訂模型部署地區,單擊自訂部署

  3. 部署參數配置。關鍵參數如下配置,其他保持預設即可。

    • 部署方式:鏡像部署。

    • 鏡像配置:在官方鏡像列表中選擇vllm:0.8.5.post1-mows0.2.1

    • 直接掛載:本文將模型檔案儲存體在 OSS中,路徑為oss://examplebucket/models/Qwen/Qwen3-0___6B ,故選擇OSS,配置如下。

      • Uri:模型所在的OSS路徑,配置為 oss://examplebucket/models/

      • 掛載路徑:掛載到服務執行個體中的目標路徑,如/mnt/data/

    • 運行命令:根據官方鏡像關聯了一個預設的運行命令,需根據實際情況進行修改。如本例中需要修改為vllm serve /mnt/data/Qwen/Qwen3-0___6B

    • 資源類型:選擇公用資源資源規格選擇ecs.gn7i-c16g1.4xlarge。如您想使用其他類型資源,請參見資源配置

  4. 單擊部署。服務部署時間約為5分鐘,當服務狀態運行中時,表明服務已成功部署。

線上調試

服務部署完成後,可以使用線上調試功能來測試服務是否正常運行。請根據具體的模型服務來配置請求方式、請求路徑、請求body等。

本文部署服務的線上調試方式如下:

  1. 推理服務頁簽,單擊目標服務,進入服務概覽頁面,切換到線上調試頁簽。

  2. 在調試頁面的線上調試請求參數地區,佈建要求參數,然後單擊發送請求。請求參數如下:

    • 對話介面:需在已有URL後添加/v1/chat/completions

    • Headers:添加要求標頭,key為Content-Type, value為application/json

      image

    • Body:

      {
        "model": "/mnt/data/Qwen/Qwen3-0___6B",
        "messages": [
          {
            "role": "user",
            "content": "Hello!"
          }
        ],
        "max_tokens": 1024
      }
  3. 返回結果如下圖所示。

    image

服務調用

擷取訪問地址和Token

本文部署時預設使用了共用網關。部署完成後,可以在服務概覽資訊中擷取調用所需的訪問地址和Token。

  1. 推理服務頁簽,單擊目標服務名稱進入概覽頁面,在基本資料地區單擊查看調用資訊

  2. 調用資訊面板,可擷取訪問地址和Token。根據您的實際情況選擇公網或VPC地址,後續使用<EAS_ENDPOINT>和<EAS_TOKEN>指代這兩個值。

    image

使用curl或Python進行調用

範例程式碼如下:

curl http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/****/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: *********5ZTM1ZDczg5OT**********" \
-X POST \
-d '{
  "model": "/mnt/data/Qwen/Qwen3-0___6B",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ],
  "max_tokens": 1024
}' 
import requests

# 替換為實際訪問地址
url = 'http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/***/v1/chat/completions'
# header資訊 Authorization的值為實際的Token
headers = {
    "Content-Type": "application/json",
    "Authorization": "*********5ZTM1ZDczg5OT**********",
}
# 根據具體模型要求的資料格式構造服務要求。
data = {
  "model": "/mnt/data/Qwen/Qwen3-0___6B",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ],
  "max_tokens": 1024
}
# 發送請求
resp = requests.post(url, json=data, headers=headers)
print(resp)
print(resp.content)

停止或刪除服務

本文使用了公用資源建立EAS服務,計費方式為隨用隨付。當您不需要使用服務時請停止或刪除服務,以免繼續計費

image

相關文檔