EAS(Elastic Algorithm Service)的自訂部署提供高度靈活和全面的AI推理服務託管能力,支援將任意演算法或模型封裝成線上服務。
推薦優先嘗試情境化部署(適用於 LLM、ComfyUI 等),不滿足需求時,再使用自訂部署。
快速開始:部署一個簡單的Web服務
本節將使用鏡像部署模式,快速部署一個簡單的Web服務。
第1步:準備代碼檔案
將如下Flask應用代碼儲存為app.py檔案。注意,服務監聽在8000連接埠。
第2步:上傳代碼至OSS
將app.py檔案上傳到OSS Bucket中(請確保OSS Bucket與EAS工作空間在同一地區)。例如,上傳至oss://examplebucket/code/目錄下。
第3步:配置並部署服務
登入PAI控制台,在頁面上方選擇目標地區,並在右側選擇目標工作空間,然後單擊進入EAS。
在推理服务頁簽,單擊部署服务。然後在自定义模型部署地區,單擊自定义部署。
在配置頁面,如下填寫環境資訊和資源資訊地區的關鍵參數:
部署方式:選擇镜像部署。
镜像配置:選擇官方镜像
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。
完成配置後,單擊部署。服務狀態變為运行中時,即表示部署成功,可進行服務調用。
更多配置說明
管理環境與依賴
在环境信息地區,可以佈建服務的允許環境與依賴項。
參數 | 描述 |
镜像配置 | 服務的運行環境基礎。可以使用PAI提供的官方鏡像,或通過自定义镜像或輸入镜像地址使用自行構建的鏡像,詳情請參見自訂鏡像。 說明 若鏡像中包含WebUI,开启Web应用,EAS 會自動啟動Web伺服器,方便直接存取前端頁面。 |
存储挂载 | 將存放在OSS、NAS等雲端儲存上的模型、代碼或資料掛載到容器的本地路徑,實現代碼/資料與環境的解耦,便於獨立更新。詳情請參見儲存掛載。 |
数据集挂载 | 若希望對模型或資料進行版本化管理,可以使用数据集功能進行掛載。詳見建立及管理資料集。 |
运行命令 | 設定鏡像啟動命令(例如 |
端口号 | 設定服務監聽的連接埠。連接埠號碼在一些情境中為可選。 例如,在使用者服務中不依賴由EAS網關匯入的流量,而是使用者在鏡像中自行通過訂閱訊息佇列的方式擷取訊息,則此情境中鏡像連接埠號碼可選填。 重要 EAS引擎固定佔用8080和9090連接埠,部署新服務時請避開這兩個連接埠,以免衝突導致服務無法啟動。 |
三方库配置 | 若僅需額外安裝少數Python庫,在此處直接添加庫名或指定一個requirements.txt文件路径,避免重新構建鏡像。 |
环境变量 | 以索引值對形式為服務執行個體設定環境變數。 |
選擇GPU執行個體部署服務時,還可以在服务功能的资源配置中指定GPU驱动版本,以滿足特定模型或架構的運行要求。
配置計算資源
在资源信息地區,可以為服務配置計算資源。
參數 | 描述 |
资源类型 | 說明 開啟GPU共用,可在同一張GPU卡上部署多個模型服務,通過共用算力來提升GPU資源使用率。適用於模型較小或推理負載不高的情境。僅使用EAS資源群組或資源配額時支援開啟。詳見GPU切分。 |
副本數 | 建議配置多個執行個體,避免單點故障風險。 |
部署资源 | 使用公用資源時,對於支援的規格,可以開啟競價模式,並設定出價上限,以遠低於常規執行個體的價格搶佔空閑資源,適用於對中斷不敏感的推理任務。 說明 |
配置系統硬碟 |
|
弹性资源池 | 使用EAS資源群組或資源配額時,開啟此功能後,當自有資源不足時,會自動使用公用資源(隨用隨付)進行擴容以應對突發流量;縮容時則優先釋放公用資源執行個體,節約成本。詳情請參見彈性資源集區。 |
指定节点调度 | 僅適用於使用EAS資源群組或資源配額。
|
高优资源重调度 | 開啟後,系統會周期性地嘗試將服務執行個體從低優先順序資源(如公用資源、常規執行個體)遷移到高優先順序資源(如專屬資源群組、競價執行個體)上,以最佳化成本和資源分派。該功能可以解決以下問題:
|
服務接入與網路
EAS提供靈活的服務接入和網路設定選項,以滿足不同的業務整合需求。詳情請參見服務調用。
參數 | 描述 |
網關選擇 | 預設使用免費的共享网关,可付費開通专属网关以獲得自訂網域名、存取控制等更多進階功能。詳情請參見使用專屬網關。 重要 通過網關調用時,請求體大小不得超過 1MB。 |
专有网络 | 通過配置VPC、交換器和安全性群組,可以實現服務在VPC內部的直接存取,或允許服務訪問公網資源。詳情請參見EAS訪問公網或內網資源。 |
关联负载均衡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智能路由部署。 |
服務觀測與診斷
為洞察服務狀態和快速排查問題,可以在服务功能地區開啟以下功能:
參數 | 描述 |
保存调用记录 | 將服務的所有請求和響應記錄持久化儲存到大数据MaxCompute或日志服务SLS中,用於審計、分析或問題排查。
|
链路追踪 | 部分官方鏡像已內建採集組件,可一鍵開啟鏈路追蹤功能。對於其他鏡像,可通過簡單配置來整合ARMS探針,實現對服務調用鏈路的端到端監控。可參見EAS中開啟LLM應用鏈路追蹤(Tracing)。 配置方法如下:
|
非同步與彈性服務
修改JSON檔案配置參數
在服务配置地區查看當前介面配置對應的完整 JSON,並支援直接編輯。
對於自動化和精細化配置情境,還可以直接使用 JSON 檔案來定義和部署服務。詳情請參見JSON部署。