獲得訓練好的模型后,您可以使用EAS的命令行方式快速將其部署為模型在線服務。本文為您介紹如何使用EASCMD或DSW方式部署服務。
背景信息
EAS支持以下兩種命令行部署方式。
通過客戶端工具EASCMD,您可以在自己的服務器上對模型服務進行管理,包括創建、查看、刪除及更新服務。
由于DSW已預置EASCMD客戶端,因此使用DSW訓練的模型可以直接部署為在線服務。
前提條件
在開始執行操作前,請確認您已完成以下準備工作。
已獲得訓練好的模型。
已獲取阿里云賬戶的AccessKey ID和AccessKey Secret,詳情請參見創建AccessKey。
通過DSW部署服務時,您需要創建DSW實例,詳情請參見創建DSW實例。
本地客戶端(EASCMD)部署
通過客戶端工具EASCMD,您可以在自己服務器上對模型服務進行管理,包括創建、查看、刪除及更新服務。創建服務時支持配置多規格實例,詳情請參見高級配置:多規格實例選擇。以Windows64版本為例,說明如何使用EASCMD客戶端部署服務,具體操作步驟如下。
下載EASCMD客戶端并進行身份認證,詳情請參見下載并認證客戶端。
部署服務。
準備JSON文件
test.json
,文件示例如下。{ "metadata": { //resource字段表示使用專屬資源組部署服務。 "resource": "eas-r-9lkbl2jvdm0puv****", "instance": 1, "gpu": 0, "cpu": 1, "memory": 2000 }, //當使用公共資源組部署服務時,需要通過cloud.computing配置指定機器型號。 /*"cloud": { "computing": { "instance_type":"ecs.gn6i-c24g1.6xlarge" } },*/ "name": "test_eascmd", "processor": "tensorflow_cpu_1.12", "model_path": "oss://examplebucket/linshi/pslr/" }
其中:
model_path參數值需要替換為實際模型文件在OSS Bucket的路徑;該文件中的其他參數說明,詳情請參見服務模型所有相關參數說明。
cloud.computing:當使用公共資源組部署服務時,需要通過該參數來指定實例使用的機型。
在JSON文件所在目錄,執行以下命令部署服務。
eascmdwin64.exe create <test.json>
其中:<test.json>需要替換為實際的JSON文件名稱。
系統返回如下類似結果。
[RequestId]: 1651567F-8F8D-4A2B-933D-F8D3E2DD**** +-------------------+----------------------------------------------------------------------------+ | Intranet Endpoint | http://166233998075****.cn-shanghai.pai-eas.aliyuncs.com/api/predict/test_eascmd | | Token | YjhjOWQ2ZjNkYzdiYjEzMDZjOGEyNGY5MDIxMzczZWUzNGEyMzhi**** | +-------------------+--------------------------------------------------------------------------+ [OK] Creating api gateway [OK] Building image [registry-vpc.cn-shanghai.aliyuncs.com/eas/test_eascmd_cn-shanghai:v0.0.1-20221122114614] [OK] Pushing image [registry-vpc.cn-shanghai.aliyuncs.com/eas/test_eascmd_cn-shanghai:v0.0.1-20221122114614] [OK] Waiting [Total: 1, Pending: 1, Running: 0] [OK] Waiting [Total: 1, Pending: 1, Running: 0] [OK] Service is running
等待一段時間即可完成模型部署,您可以到模型在線服務(EAS)頁面查看模型部署情況,詳情請參見服務部署:控制臺。
服務部署完成后,您也可以使用EASCMD客戶端命令來管理模型服務,詳情請參見命令使用說明。
DSW部署
DSW是PAI針對深度學習推出的交互式云端開發環境,提供高性能GPU卡和開放的交互式編程環境。因為DSW已預置EASCMD客戶端工具,所以DSW訓練完成的模型可以直接部署至EAS,具體操作步驟如下。
進入DSW開發環境。
登錄PAI控制臺。
在左側導航欄單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。
在頁面左上方,選擇使用服務的地域。
在左側導航欄,選擇 。
可選:在交互式建模(DSW)頁面的搜索框,輸入實例名稱或關鍵字,搜索實例。
單擊需要打開的實例操作列下的打開。
您可以使用DSW預置的客戶端工具,也可以下載最新的EASCMD客戶端(Linux 64版本),并上傳到Notebook的任意目錄。
在DSW開發環境的頂部菜單欄,單擊Terminal頁簽,即可打開Terminal。
在Terminal中,進入客戶端工具上傳后的當前目錄。將客戶端工具修改為可執行文件,并使用阿里云賬號的AccessKey進行身份認證,詳情請參見下載并認證客戶端。
構造JSON文件,并上傳到Notebook中客戶端所在的目錄。
關于如何構造JSON文件,詳情請參見命令使用說明。
關于如何配置JSON文件中的服務部署參數,詳情請參見服務模型所有相關參數說明。
關于如何上傳JSON文件,詳情請參見上傳與下載數據文件。
在腳本上傳后的當前目錄執行如下命令部署服務。
eascmd64 create <service_desc_json>
其中:<service_desc_json>需要替換為實際的JSON文件名稱。
等待一段時間即可完成模型部署。
相關文檔
服務部署完成后,您可以到模型在線服務(EAS)頁面查看模型部署情況,并管理模型服務,詳情請參見管理EAS模型在線服務。
EAS在線服務支持多種部署方式,您可以根據不同的使用場景,選擇合適的部署方式,詳情請參見服務部署概述。
服務部署完成后,您可以通過自動壓測工具,對部署的服務進行壓測,從而了解EAS服務的使用性能。詳情請參見服務自動壓測。
如果EAS提供的官方通用Processor無法滿足模型部署需求,則可以根據Processor的開發標準自定義Processor,詳情請參見服務部署:自定義Processor。