可能是一個愚蠢的問題,但我正在嘗試在 GitLab 中設定一個專案,該專案將用于部署 ML 模型,為此我將使用 FastAPI。我對此很陌生,并將嘗試提供盡可能多的資訊。
我在 GitLab 中創建了這個專案,它現在只包含一個 README.md 檔案。實際的 Python 代碼存盤在我計算機上的一個檔案夾中(“MyProject”),其中包含兩個檔案夾,每個檔案夾都包含一些資料、.py 腳本和一個筆記本。
為了設定requirements.txt,我嘗試在 Windows 中創建一個虛擬環境。現在,當我打開“MyProject”檔案夾時,它包含這兩個帶有代碼的檔案夾和虛擬環境,其中還包含Lib, Scripts, pyvenv.cfg. 后者包含:
home = c:\users\me\anaconda3
implementation = CPython
version_info = 3.8.5.final.0
virtualenv = 20.10.0
include-system-site-packages = false
base-prefix = c:\users\me\anaconda3
base-exec-prefix = c:\users\me\anaconda3
base-executable = c:\users\me\anaconda3\python.exe
我還克隆了 GitLab 存盤庫,但在我的計算機上它保存在其他地方(在 中c:\users\me)。我知道我需要這樣做:
pip install -r
requirements.txt
但我不明白如何實際添加這個需求檔案。在我創建這個虛擬環境之前,我的 ML 模型所需的所有包和庫都是很久以前用 anaconda 安裝的。我做錯了什么嗎?
uj5u.com熱心網友回復:
我想你混淆了一些東西。GitLab 使用 Git 對您的檔案(您的代碼)進行版本控制。因此,您的存盤庫應包含帶有代碼的檔案。您可以將檔案夾“MyProject”中的檔案放入您將存盤庫克隆到的檔案夾中。還要添加requirements.txt 自述檔案等。
虛擬環境用于保持 Python 的系統安裝干凈,并且只為每個專案安裝必要的包。除其他外,以避免包要求沖突。requirements.txt 檔案的使用與虛擬環境無關,即使它是一個合理的組合。
一般來說,這意味著您的 requirements.txt 始終與您的代碼共享,因為它位于同一個存盤庫中。當有人克隆存盤庫時,他可以使用 requirements.txt 將所有依賴項安裝到他的 venv(或其他地方),然后在沒有 nedd 的情況下運行您的代碼以安裝更多的 python 包。
您requirements.txt檔案必須包含列,這是這樣的:numpy==1.21.4。然后你必須激活環境<your path to the venv folder>\venv\Scripts\activate并使用它python -m pip install -r requirements.txt來安裝你的 requirements.txt 中列出的包。
uj5u.com熱心網友回復:
您可以創建requirements.txtusingpip freeze > requirements.txt并將其添加到您的存盤庫中。這將生成您已安裝的軟體包串列和您擁有的確切版本。
https://pip.pypa.io/en/stable/cli/pip_freeze/
uj5u.com熱心網友回復:
簡單的解決方案是pip freeze > requirements.txt但此命令將添加您的環境中存在的所有包,這些包可能不會在您的專案中使用。在我的日常作業中,我使用這個https://pypi.org/project/pipreqs/。您可以安裝它并pipreqs --force在您的專案檔案夾中運行。這會將包添加到在您的專案中使用的 requirements.txt。
uj5u.com熱心網友回復:
如何實際添加這個需求檔案
您自己創建檔案。對于您使用的每個庫,requirements.txt在庫名中添加一行。另請參閱檔案https://pip.pypa.io/en/stable/reference/requirements-file-format/
創建檔案后,commit和push它的git倉庫。
我的 ML 模型所需的所有包和庫很久以前都是用 anaconda 安裝的
帶有 docker executor 的 Gitlab-CI 從一個全新的環境開始。你必須重復所有您在作業站上沒有安裝步驟里面的泊塢窗環境。您可以在本地運行容器的 docker 實體進行測驗。查閱 gitalb-??ci 和 docker 檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/380591.html
上一篇:Gitdiff命令無法進行兩點比較。錯誤:“致命:模棱兩可的論點”
下一篇:提交大量檔案的訊息
