全部產品
Search
文件中心

Platform For AI:通過控制台自訂部署

更新時間:Oct 24, 2025

EAS(Elastic Algorithm Service)的自訂部署提供高度靈活和全面的AI推理服務託管能力。支援將任意演算法或模型封裝成線上服務,適用於從通用大語言模型(LLM)到自研演算法的各類AI應用情境。對於LLM、ComfyUI等常見應用,推薦優先嘗試情境化部署,以獲得更簡化的配置體驗。本文面向需要深度定製環境、效能和功能的專業使用者。

部署原理

EAS服務本質上是運行在一個或多個隔離的容器執行個體中。EAS通過組合以下基本元素來構建和啟動服務:

  • 環境鏡像 :一個包含作業系統、基礎庫(如CUDA)、語言環境(如Python)和必要依賴的唯讀模板。可使用PAI提供的官方鏡像,也可以自訂鏡像以滿足特定業務需求。

  • 代碼與模型檔案 :商務邏輯代碼、模型權重等檔案。最佳實務是將它們儲存在Object Storage ServiceApsara File Storage NAS上,通過掛載方式使用。這能實現代碼/模型與環境的解耦,當需要迭代時,只需更新儲存中的檔案,無需重建鏡像。

  • 儲存掛載:服務啟動時,EAS會將指定的OSS或NAS路徑掛載到容器內的本地目錄。這使得容器內的代碼可以像訪問本地檔案一樣,直接存取外部儲存上的代碼和模型。

  • 運行命令:容器啟動後需要執行的第一個命令。通常是用於啟動一個HTTP伺服器的命令,例如python app.py

整個流程如下:

  1. EAS拉取指定的鏡像來建立容器。

  2. 將外部儲存掛載到容器的指定路徑。

  3. 在容器內執行運行命令。

  4. 命令成功執行後,服務便開始在指定連接埠監聽並處理推理請求。

說明

EAS支援鏡像部署和Processor部署兩種部署方式。推薦使用鏡像部署。因為鏡像部署提供了更高的靈活性和可維護性,而Processor部署在環境和架構存在較多限制。

重要限制與策略

  • EAS服務如果持續180天處於非運行中狀態,將會被系統自動刪除。

  • 通過網關調用時,請求體大小不得超過 1MB。

  • 請避免使用EAS引擎固定監聽的8080和9090連接埠。

快速開始:部署一個簡單的Web服務

本節將使用鏡像部署模式,快速部署一個簡單的Web服務。

第1步:準備代碼檔案

將如下Flask應用代碼儲存為app.py檔案。注意,服務監聽在8000連接埠。

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/hello')
def hello_world():
    #  這裡是模型推理或其他商務邏輯
    return 'Hello World'

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

第2步:上傳代碼至OSS

app.py檔案上傳到OSS Bucket中(請確保OSS Bucket與EAS工作空間在同一地區)。例如,上傳至oss://examplebucket/code/目錄下。

第3步:配置並部署服務

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

  2. 推理服務頁簽,單擊部署服務。然後在自訂模型部署地區,單擊自訂部署

  3. 在配置頁面,如下填寫環境資訊資源資訊地區的關鍵參數:

    • 鏡像配置:選擇鏡像部署,並在鏡像配置中選擇官方鏡像python-inference:3.9-ubuntu2004

    • 儲存掛載:將包含app.py的OSS目錄掛載到容器的/mnt/data/路徑下。

      • Uri:選擇代碼所在的OSS目錄,本例中為oss://examplebucket/code/

      • 掛載路徑:為該目錄在容器內指定本地路徑,本例中為/mnt/data/

    • 運行命令:由於app.py已被掛載到容器的/mnt/data/目錄,因此啟動命令為:python /mnt/data/app.py

    • 三方庫配置:本範例程式碼依賴的flask庫未包含在使用的官方鏡像中。可以在三方庫列表直接添加flask。EAS會在服務啟動時自動安裝。

    • 資源配置:為服務分配合適的計算資源。對於這個簡單樣本,一個小型CPU執行個體即可滿足需求。

      • 資源類型:公用資源。

      • 資源規格ecs.c7.large

  4. 完成配置後,單擊部署。服務狀態變為運行中時,即表示部署成功,可進行服務調用

更多配置說明

管理環境與依賴

環境資訊地區,可以佈建服務的允許環境與依賴項。

參數

描述

鏡像配置

服務的運行環境基礎。可以使用PAI提供的官方鏡像,或通過自訂鏡像或輸入鏡像地址使用自行構建的鏡像,詳情請參見自訂鏡像

說明

若鏡像中包含WebUI,開啟Web應用,EAS 會自動啟動Web伺服器,方便直接存取前端頁面。

儲存掛載

將存放在OSS、NAS等雲端儲存上的模型、代碼或資料掛載到容器的本地路徑,實現代碼/資料與環境的解耦,便於獨立更新。詳情請參見儲存掛載

資料集掛載

若希望對模型或資料進行版本化管理,可以使用資料集功能進行掛載。詳見建立及管理資料集

運行命令連接埠號碼

設定鏡像啟動命令(例如python /run.py)以及服務監聽的連接埠。

重要

請避免使用EAS引擎固定監聽的8080和9090連接埠。

三方庫配置

若僅需額外安裝少數Python庫,在此處直接添加庫名或指定一個requirements.txt檔案路徑,避免重新構建鏡像。

環境變數

以索引值對形式為服務執行個體設定環境變數。

對於GPU執行個體,還可以在服務功能資源配置中指定GPU驅動版本,以滿足特定模型或架構的運行要求。

配置計算資源

資源資訊地區,可以為服務配置計算資源。

參數

描述

資源類型

支援選擇公用資源EAS資源群組、資源配額。

說明

開啟GPU共用,可在同一張GPU卡上部署多個模型服務,通過共用算力來提升GPU資源使用率。適用於模型較小或推理負載不高的情境。僅使用EAS資源群組或資源配額時支援開啟。詳見GPU共用

執行個體數

建議配置多個執行個體,避免單點故障風險。

部署資源

使用公用資源時,對於支援的規格,可以開啟競價模式,並設定出價上限,以遠低於常規執行個體的價格搶佔空閑資源,適用於對中斷不敏感的推理任務。

說明

配置系統硬碟

  • 使用公用資源,EAS免費贈送30 GiB系統硬碟。如需更大容量,則需按實際使用量付費。

  • 使用EAS資源群組或資源配額,預設開啟60GiB系統硬碟,修改容量後將從宿主機上進行劃分。

彈性資源集區

使用EAS資源群組或資源配額時,開啟此功能後,當自有資源不足時,會自動使用公用資源(隨用隨付)進行擴容以應對突發流;縮容時則優先釋放公用資源執行個體,節約成本。詳情請參見彈性資源集區

高優資源重調度

開啟後,系統會周期性地嘗試將服務執行個體從低優先順序資源(如公用資源、常規執行個體)遷移到高優先順序資源(如專屬資源群組、競價執行個體)上,以最佳化成本和資源分派。該功能可以解決以下問題:

  • 在變換過程中,避免因舊執行個體暫用資源導致新執行個體短暫調度到公用資源群組的問題。

  • 當同時使用競價執行個體和常規執行個體時,系統會定期檢查並將執行個體遷移至更經濟的競價執行個體上(如果可用)。

服務接入與網路

EAS提供靈活的服務接入和網路設定選項,以滿足不同的業務整合需求。詳情請參見服務調用

參數

描述

網關選擇

預設使用免費的共用網關,可付費開通專屬網關以獲得自訂網域名、存取控制等更多進階功能。詳情請參見通過專屬網關調用

重要

通過網關調用時,請求體大小不得超過 1MB。

Virtual Private Cloud

通過配置VPC、交換器和安全性群組,可以實現服務在VPC內部的直接存取,或允許服務訪問公網資源。詳情請參見網路設定

關聯負載平衡NLB

將服務關聯到網路型負載平衡NLB執行個體,實現更自主可控的負載平衡。詳情請參見通過關聯負載平衡NLB調用

關聯服務發現Nacos

將服務註冊到微服務註冊配置中心,便於在微服務架構中實現服務的自動探索與同步。詳情請參見通過關聯服務發現Nacos調用

還可以在服務功能地區的進階網路啟用GRPC。開啟後,服務網關將支援GRPC串連,適用於需要高效能RPC通訊的情境。

服務安全

為了保障服務安全,可以在服務功能地區使用以下功能:

參數

描述

自訂鑒權

如果不想使用系統自動產生的Token,可在此處自訂服務訪問的鑒權Token。

配置安全加密環境

通過與系統信任管理服務整合,保證服務在部署和調用過程中,資料、模型和代碼等資訊的安全加密,實現可信推理。該功能主要針對掛載的隱藏檔,請先完成儲存掛載再開啟。詳情請參見安全加密推理服務

執行個體RAM角色

通過為執行個體關聯RAM角色,服務內代碼可基於STS臨時憑證訪問其他雲資源,無需配置固定的AccessKey,從而降低密鑰泄漏風險。詳情請參見配置EAS RAM角色

保障服務穩定與高可用

通過基本資料地區的所屬群組功能,可將多個版本的服務或使用異構資源的服務劃分到同一個群組,配合流量管理原則,實現灰階發布。詳情參見灰階發布

為確保生產環境服務的穩定可靠,可以在服務功能地區進行以下相關配置:

參數

描述

服務響應逾時時間長度

合理配置每個請求的逾時時間,預設為5秒,避免慢請求長時間佔用服務資源。

健全狀態檢查

為服務配置健全狀態檢查,系統會定期探測執行個體的存活狀態,並在執行個體異常時自動拉起新執行個體,實現故障自愈。詳情請參見健全狀態檢查

優雅退出

配置優雅退出時間,確保在服務更新或縮容時,執行個體有足夠的時間處理完已接收的請求再退出,避免請求處理中斷。還可以選擇是否發送SIGTERM訊號,以便在應用程式層進行更精細的退出處理。詳情請參見變換與優雅退出

變換

通過配置超到期望的執行個體數最大不可用執行個體數,可以精細化控制服務更新過程中的執行個體替換策略,在保證服務不中斷的前提下完成版本升級。詳情請參見變換與優雅退出

效能最佳化

以下配置對於提升服務效能至關重要,能有效加快啟動速度、提高輸送量並降低延遲,尤其適用於大模型等資源密集型應用。

參數

參數及描述

儲存加速

分布式緩衝加速

將掛載的OSS等儲存中的模型或資料檔案快取到執行個體本地,以提高讀取速度,減少I/O延遲。詳情請參見記憶體緩衝本地目錄

模型權重服務(MoWS)

通過模型權重的本機快取和跨執行個體共用,顯著提升大規模執行個體部署情境下的擴縮容效率和服務啟動速度。詳情請參見模型權重服務

資源配置

共用記憶體

為執行個體配置共用記憶體,允許容器內的多個進程直接讀寫同一記憶體地區,避免資料複製和傳輸帶來的開銷,適用於需要高效處理序間通訊的情境。

分布式推理

將單個推理執行個體部署在多台機器上,共同完成一次推理任務,解決超大模型無法在單機上部署的問題。詳情見多機分布式推理

智能調度

LLM智能路由

當LLM服務有多個後端執行個體時,LLM智能路由能夠根據後端負載進行動態請求分發,保證各執行個體的算力和顯存使用儘可能均衡,提升叢集資源使用率。詳情請參見LLM智能路由

服務觀測與診斷

為洞察服務狀態和快速排查問題,可以在服務功能地區開啟以下功能:

參數

描述

儲存調用記錄

將服務的所有請求和響應記錄持久化儲存到巨量資料MaxComputeLog ServiceSLS中,用於審計、分析或問題排查。

  • 巨量資料MaxCompute

    • MaxCompute專案:選擇一個已建立的專案。如果列表為空白,可以單擊建立MaxCompute專案進行建立。詳情請參見通過MaxCompute控制台建立專案

    • MaxCompute資料表:配置資料表名稱,部署服務時,系統會自動在選定的專案中建立此表。

  • Log ServiceSLS

    • SLS專案:選擇一個已建立的記錄項目。如果列表為空白,可以單擊前往建立SLS Project進行建立。詳情請參見管理Project

    • logstore:配置一個日誌庫(Logstore)名稱。部署服務時,系統會自動在選定的專案中建立此Logstore。

鏈路追蹤

部分官方鏡像已內建採集組件,可一鍵開啟鏈路追蹤功能。對於其他鏡像,可通過簡單配置來整合ARMS探針,實現對服務調用鏈路的端到端監控。可參見EAS中開啟基於LLM應用鏈路追蹤(Tracing)。 配置方法如下:

  • 運行命令增加aliyun-bootstrap -a install && aliyun-instrument python app.py,用以安裝探針並使用ARMS Python探針啟動應用(請將app.py替換為用於提供預測服務的主檔案)。

  • 三方庫配置增加aliyun-bootstrap,用於從PyPI倉庫下載探針安裝器。

非同步與彈性服務

  • 非同步推理:對於AIGC、視頻處理等長耗時推理情境,建議開啟非同步隊列,用戶端發起調用後可立即獲得響應,並通過輪詢或回調方式擷取最終結果。詳情請參見部署非同步推理服務

  • 彈性Job服務:在服務功能地區開啟任務模式,可將推理服務部署為按需執行的Job服務,適用於批量資料處理、定時任務等情境。任務完成後資源自動釋放,節約成本。詳情請參見彈性Job服務

修改JSON檔案配置參數

服務配置地區查看當前介面配置對應的完整 JSON,並支援直接編輯。

說明

對於自動化和精細化配置情境,還可以直接使用 JSON 檔案來定義和部署服務。請參見JSON部署