管理 API¶
TorchServe 提供以下 API,可讓您在執行時管理工作流程
預設情況下,工作流程管理 API 會在連接埠 8081 上接聽,並且只能從 localhost 存取。若要變更預設設定,請參閱TorchServe 設定。
註冊工作流程¶
POST /workflows
url
- 工作流程封存下載網址。 支援以下位置本機工作流程封存檔 (.war);該檔案必須位於
workflow_store
資料夾中(而非子資料夾中)。使用 HTTP(s) 協定的 URI。 TorchServe 可以從網際網路下載
.war
檔案。
workflow_name
- 工作流程的名稱;此名稱將在其他 API 中用作路徑的一部分中的 {workflow_name}。如果沒有這個參數,將使用 MANIFEST.json 中的modelName
。
curl -X POST "https://127.0.0.1:8081/workflows?url=https://<public_url>/myworkflow.mar"
{
"status": "Workflow myworkflow has been registered and scaled successfully."
}
工作流程註冊 API 會剖析工作流程封存檔 (.war) 中提供的工作流程規格檔案 (.yaml),並使用規格中提供的組態,使用 DAG 中指定的所有模型向 TorchServe 註冊。
描述工作流程¶
GET /workflows/{workflow_name}
使用描述工作流程 API 來取得工作流程的詳細資訊
curl https://127.0.0.1:8081/workflows/myworkflow
[
{
"workflowName": "myworkflow",
"workflowUrl": "myworkflow.war",
"minWorkers": 1,
"maxWorkers": 1,
"batchSize": 8,
"maxBatchDelay": 5000,
"workflowDag": "{preprocessing=[m1], m1=[postprocessing]}"
}
]
取消註冊工作流程¶
DELETE /workflows/{workflow_name}
使用取消註冊工作流程 API,透過從 TorchServe 取消註冊工作流程來釋放系統資源
curl -X DELETE https://127.0.0.1:8081/workflows/myworkflow
{
"status": "Workflow \"myworkflow\" unregistered"
}
列出工作流程¶
GET /models
limit
- (選用) 要傳回的項目數上限。 它以查詢參數的形式傳遞。預設值為100
。next_page_token
- (選用) 查詢下一頁。 它以查詢參數的形式傳遞。此值由先前的 API 呼叫傳回。
使用列出工作流程 API 來查詢目前已註冊的工作流程
curl "https://127.0.0.1:8081/workflows"
此 API 支援分頁
curl "https://127.0.0.1:8081/workflows?limit=2&next_page_token=2"
{
"nextPageToken": "4",
"workflows": [
{
"workflowName": "myworkflow1",
"workflowUrl": "myworkflow1.war"
},
{
"workflowName": "myworkflow2",
"workflowUrl": "myworkflow2.war"
}
]
}