通過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介面代碼如下。
上傳檔案到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執行個體鏡像,來保障模型開發訓練環境與部署運行環境的一致性。
服務部署
登入PAI控制台,在頁面上方選擇目標地區,並在右側選擇目標工作空間,然後單擊進入EAS。
單擊部署服務,然後在自訂模型部署地區,單擊自訂部署。
部署參數配置。關鍵參數如下配置,其他保持預設即可。
部署方式:鏡像部署。
鏡像配置:在官方鏡像列表中選擇
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。如您想使用其他類型資源,請參見資源配置。
單擊部署。服務部署時間約為5分鐘,當服務狀態為運行中時,表明服務已成功部署。
線上調試
服務部署完成後,可以使用線上調試功能來測試服務是否正常運行。請根據具體的模型服務來配置請求方式、請求路徑、請求body等。
本文部署服務的線上調試方式如下:
在推理服務頁簽,單擊目標服務,進入服務概覽頁面,切換到線上調試頁簽。
在調試頁面的線上調試請求參數地區,佈建要求參數,然後單擊發送請求。請求參數如下:
對話介面:需在已有URL後添加
/v1/chat/completionsHeaders:添加要求標頭,key為
Content-Type, value為application/json。
Body:
{ "model": "/mnt/data/Qwen/Qwen3-0___6B", "messages": [ { "role": "user", "content": "Hello!" } ], "max_tokens": 1024 }
返回結果如下圖所示。

服務調用
擷取訪問地址和Token
本文部署時預設使用了共用網關。部署完成後,可以在服務概覽資訊中擷取調用所需的訪問地址和Token。
在推理服務頁簽,單擊目標服務名稱進入概覽頁面,在基本資料地區單擊查看調用資訊。
在調用資訊面板,可擷取訪問地址和Token。根據您的實際情況選擇公網或VPC地址,後續使用<EAS_ENDPOINT>和<EAS_TOKEN>指代這兩個值。

使用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服務,計費方式為隨用隨付。當您不需要使用服務時請停止或刪除服務,以免繼續計費。
