Pytorch?Conda環(huán)境pack打包遷移報(bào)錯(cuò)的處理方案
Anaconda虛擬環(huán)境打包
實(shí)驗(yàn)在本機(jī)上驗(yàn)證成功,需要網(wǎng)高級(jí)設(shè)備上遷移,單張4090D,跑一個(gè)128k多模態(tài)大模型在一個(gè)數(shù)據(jù)集上推理加評(píng)測(cè)都花了兩個(gè)半小時(shí),還是太費(fèi)時(shí)間了,重任亟需交給8A100機(jī)。

從源電腦中遷移anaconda的環(huán)境到目標(biāo)電腦,首先兩個(gè)電腦都安裝了anaconda才行,在此基礎(chǔ)上。
一、源電腦的環(huán)境打包
使用Anaconda Prompt操作
1.安裝conda-pack工具
conda install conda-pack

2.確定環(huán)境
conda env list

找到你想要打包環(huán)境名。比如我的環(huán)境名是VLM
3.打包環(huán)境
conda pack -n VLM -o VLM.tar.gz
4.將打包環(huán)境拷貝到U盤
Windows環(huán)境打包在當(dāng)前目錄,如XX為用戶名,路徑為
C:/Users/XX/VLM.tar.gz
Linux同理
二、環(huán)境遷移到目標(biāo)電腦上
①方法一
1.用Anaconda Prompt創(chuàng)建新環(huán)境,比如新環(huán)境是py310:
conda create -n py310 python=3.10
2.將U盤中的打包環(huán)境,拷貝在目標(biāo)電腦的用戶名目錄:
C:/Users/XX/Py36.tar.gz
3.用Anaconda Prompt將打包環(huán)境,解壓到新環(huán)境路徑下:
tar -zxvf Py36.tar.gz -C E:\anaconda3\envs\py36\
4.激活新環(huán)境
conda activate py310
注意:如果失敗的話,試一下方法二:
②方法二
1.找到目標(biāo)電腦的環(huán)境文件夾
環(huán)境的路徑為anaconda的所在目錄下的envs文件夾,如我的為:E:\anaconda3\envs,以下步驟都在這個(gè)路徑下進(jìn)行操作。
2.將U盤中的打包環(huán)境,拷貝在環(huán)境文件夾envs內(nèi)。
3.在環(huán)境路徑下使用cmd命令行,新建文件夾,命名為py36:
mkdir py36
或者手動(dòng)新建文件夾
4.使用cmd命令行,將打包環(huán)境解壓到新環(huán)境中
tar -zxvf Py36.tar.gz -C ./py36
三、異常處理
pip install -e. 導(dǎo)致無(wú)法pack→忽略
報(bào)錯(cuò)如下
Collecting packages... CondaPackError: Cannot pack an environment with editable packages installed (e.g. from `python setup.py develop` or `pip install -e`). Editable packages found: - /home/xxx
改用下面方式
conda pack -n VLM -o VLM.tar.gz --ignore-editable-packages
解壓縮使用
mkdir ~/ananconda/envs/pcdet-tmp tar -xf pcdet.tar.gz -C ~/ananconda/envs/pcdet-tmp cd ~/ananconda/envs/pcdet-tmp source ./bin/activate
管理的文件已經(jīng)被刪除或者被覆蓋→壓縮成tar
CondaPackError: Files managed by conda were found to have been deleted/overwritten in the following packages: - charset-normalizer 2.0.4: - xxxx This is usually due to `pip` uninstalling or clobbering conda managed files, resulting in an inconsistent environment. Please check your environment for conda/pip conflicts using `conda list`, and fix the environment by ensuring only one version of each package is installed (conda preferred).
解決方案嘗試過(guò)利用WSL優(yōu)勢(shì)直接在Windows下對(duì)anaconda中環(huán)境env進(jìn)行打包,然而報(bào)出巨量的依賴錯(cuò)誤和命名錯(cuò)誤

最后乖乖收手去Linux系統(tǒng)下打包壓縮嘗試是否可行
在Linux中,可以使用tar命令將文件或文件夾壓縮為.tar.gz格式。
tar 是用于打包文件的命令。
-c 表示創(chuàng)建一個(gè)新的歸檔文件。
-z 表示使用gzip壓縮。
-v 表示在歸檔時(shí)顯示詳細(xì)信息。
-f 后面跟著的是歸檔文件的名稱。
例如,想要壓縮anaconda中env下的名為VLM的文件夾,可以使用以下命令:
tar -czvf VLM.tar.gz VLM
注意
在Linux里去看位置,anaconda是不顯示完整文件目錄的,會(huì)直接不顯示有env文件夾,但是可以直接cd 進(jìn)env去看

如果想壓縮單個(gè)文件,比如myfile.txt,可以使用:
tar -czvf myfile.tar.gz myfile.txt
這些命令將在當(dāng)前目錄下創(chuàng)建.tar.gz文件,可以在需要的時(shí)候更改文件路徑或者指定輸出目錄。

壓縮成功
重新激活環(huán)境
3.第三步:激活環(huán)境
對(duì)于tar壓縮來(lái)講解壓執(zhí)行
tar -xzvf VLM.tar.gz
如果是.zip 拷貝到另外一個(gè)系統(tǒng)上并解壓到目錄下/xxxx/anaconda/envs/則為
unzip -d /xxxx/anaconda/envs/ pyenv.zip
注意!打包的虛擬環(huán)境記錄的是源環(huán)境的,新系統(tǒng)上的anaconda安裝路徑可能和源環(huán)境的不一樣,比如源環(huán)境是/xxxx/anaconda2023/,新系統(tǒng)上是/xxxx/anaconda/,此時(shí)需要先在新系統(tǒng)上新建一個(gè)和源環(huán)境anaconda安裝路徑一樣的空目錄,例如原路徑\wsl.localhost\Ubuntu\home\test\anaconda3\envs\VLM的
mkdir /xxxx/anaconda3/envs/
然后再建立軟鏈
ln -s /xxxx/anaconda/envs/pyenv /xxxx/anaconda3/envs/
將空目錄指向 實(shí)際anaconda路徑
然后激活環(huán)境 source activate /xxxx/anaconda/envs/VLM
希望能順順利利完成!
以上就是Pytorch Conda環(huán)境pack打包遷移報(bào)錯(cuò)的處理方案的詳細(xì)內(nèi)容,更多關(guān)于Conda pack打包遷移報(bào)錯(cuò)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- PyTorch使用tensorboard的SummaryWriter報(bào)錯(cuò)問(wèn)題解決方案
- Pytorch backward報(bào)錯(cuò)2次訪問(wèn)計(jì)算圖需要retain_graph=True的情況詳解
- 分析PyTorch?Dataloader報(bào)錯(cuò)ValueError:num_samples的另一種可能原因
- pytorch報(bào)錯(cuò)問(wèn)題:ValueError: num_samples should be a positive integer value, but got num_samples=0
- 解決遇到:PytorchStreamReader failed reading zip archive:failed finding central錯(cuò)誤問(wèn)題
相關(guān)文章
Python中實(shí)現(xiàn) xls 文件轉(zhuǎn) xlsx的4種方法(示例詳解)
在 Python 中,可以采用 pandas、pyexcel、win32com 和 xls2xlsx 這四個(gè)模塊,實(shí)現(xiàn) xls 轉(zhuǎn) xlsx 格式,本文以 Excel 示例文件test_Excel.xls 為例結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06
Python實(shí)現(xiàn)釘釘自動(dòng)化完整指南
本文詳細(xì)介紹如何使用 Python 實(shí)現(xiàn)釘釘自動(dòng)化,包括消息發(fā)送、部門管理、審批流程觸發(fā)等功能,內(nèi)容涵蓋實(shí)現(xiàn)步驟、前置條件、依賴項(xiàng)以及注意事項(xiàng),幫助快速上手并避免常見(jiàn)問(wèn)題,需要的朋友可以參考下2025-03-03
Win10?Anaconda?新建環(huán)境安裝python-pcl的步驟
這篇文章主要介紹了Win10?Anaconda?新建環(huán)境安裝python-pcl的方法,至于VS環(huán)境下安裝C++?版本的pcl也可以按照此文提供的步驟安裝實(shí)現(xiàn),需要的朋友可以參考下2022-04-04
Python的Django框架中if標(biāo)簽的相關(guān)使用
這篇文章主要介紹了Python的Django框架中if標(biāo)簽的相關(guān)使用,是Django框架使用中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-07-07
python使用win32com在百度空間插入html元素示例
這篇文章主要介紹了python使用win32com在百度空間插入html元素的示例,大家參考使用吧2014-02-02
Python數(shù)據(jù)處理的三個(gè)實(shí)用技巧分享
數(shù)據(jù)處理無(wú)所不在,掌握常用技巧,事半功倍。這篇文章將使用Pandas開(kāi)展數(shù)據(jù)處理分析,總結(jié)其中常用、好用的數(shù)據(jù)分析技巧,感興趣的可以學(xué)習(xí)一下2022-04-04

