模型轉換檔案結構
本文件解釋了模型轉換工作流程中生成的檔案結構,以及每個資料夾和檔案的用途,包括快取處理、歷史記錄跟蹤、推理等。
建立模型專案並執行幾次後,檔案結構可能如下所示:
model_project_name/
├── model_lab.workspace.config
└── huggingface_microsoft_resnet-50_v1/
├── .gitignore
├── imagenet.py
├── inference_sample.ipynb
├── model_project.config
├── README.md
├── requirements.txt
├── resnet_ptq_qnn.json
├── cache/
└── history/
└── history_1(20250414_161046)/
├── model/
├── footprints.json
├── history.config
├── history.config.user
├── inference_sample.ipynb
├── log.txt
├── metrics.json
├── model_config.json
├── olive_config.json
├── output_footprint.json
└── run_history.txt
└── history_2/
└── history_3/
在 model_project_name
資料夾中,每個模型的工作流程都儲存在一個單獨的資料夾中。
requirements.txt
:列出執行工作流程和推理示例所需的依賴項。resnet_ptq_qnn.json
、imagenet.py
:Olive 用於轉換模型的 JSON 檔案。有些可能需要額外的 Python 檔案進行自定義。README.md
:描述模型詳細資訊,例如模型的任務、效能指標和使用說明。model_project.config
:包含專案模板設定。某些設定可以根據您的特定要求進行覆蓋。inference_sample.ipynb
:測試輸出模型的示例。此檔案將被複制到history
資料夾中,以便使用不同的 Jupyter Notebook 比較來自不同歷史記錄的模型。
快取資料夾
cache
資料夾儲存在工作流程執行期間生成的快取檔案。這些快取結果有助於加速工作流程的重複執行。
如果不再需要,您可以刪除此資料夾以釋放空間。
歷史資料夾
history
資料夾名稱中的時間戳表示執行時間,例如:2025 年 4 月 14 日 16:10:46
。
model
:模型檔案。model_config.json
:包含有關模型的詳細資訊。footprints.json
、output_footprint.json
、run_history.txt
:Olive 輸出。history.config
、history.config.user
:模型轉換使用的歷史配置。inference_sample.ipynb
:測試輸出模型的示例。log.txt
:包含日誌。metrics.json
:如果啟用了評估,則包含評估結果。olive_config.json
:用於執行轉換的配置。
關於 Git
預設情況下,cache
和 history
資料夾被排除在版本控制之外(.gitignore
),除了以下兩個配置檔案:history.config
和 olive_config.json
。
您可以更新 .gitignore
檔案以包含值得儲存的特定歷史記錄資料夾。
當其他人克隆倉庫時,這兩個檔案確保他們可以重新執行這些歷史記錄以重現轉換結果。
__pycache__
/cache
/history/*/*
!/history/*/history.config
!/history/*/olive_config.json