課程連結:https://www.bilibili.com/video/BV1234y157Xh/?spm_id_from=333.788&vd_source=c2a322357481107ab7f418b1ae9ce618
一、Triton總體架構
服務端:模型倉庫->backend->硬體
從模型倉庫載入模型,根據模型的型別,選擇特定的backend,將模型執行在特定的硬體上。
客戶端:程式語言->query->服務端
客戶端可以使用python或者C++等程式語言的庫,透過HTTP、gRPC協議,或者直接使用C API進行呼叫。服務端收到請求後,會排程器會排程請求給模型進行處理,返回推理結果。
二、需要了解的基本內容
- 模型倉庫準備;
- 模型配置;
- Triton Server啟動;
- 配置組合模型;
- 客戶端傳送Requests;
2.1 模型倉庫準備
必須符合以下結構:
- 一級目錄:倉庫名稱,如model_repository。
- 二級目錄:具體模型名字,如densenet_onnx。
- 三級目錄:
- 版本號目錄:1,表示版本1,可以有多個版本。裡面放模型檔案,如model.onnx;
- config.pbtxt:模型配置引數,規定模型執行時的行為;
- label檔案:(可選)將分類模型的輸出,轉為檔案裡指定的標籤。
2.1.1 模型目錄細節
版本號目錄:
- 需要包含模型檔案,注意格式;
- 使用模型版本需要和版本目錄名保持一致。
配置檔案:
為模型和服務定義一系列配置引數。
標籤檔案:
針對分類模型,標籤自動轉為標籤檔案中的標籤名。
啟動Triton服務:
啟動Triton服務時,需要指定倉庫目錄。
啟動成功的輸出: