首先需要確定下自己的硬件,在terminal中輸入指令
uname -a
返回結(jié)果
aarch64
接著判斷當(dāng)前環(huán)境的python版本,在terminal中輸入指令
python --version
返回結(jié)果
Python 3.10.14
可以判斷需要安裝aarch64的版本,如果使用whl包安裝dgl,以該鏈接(data.dgl.ai/wheels/cu118/repo.html)為例,需要安裝指定Python3.10-aarch64版本的包

比較便捷的方式是直接通過(guò)pip來(lái)安裝,指令如下
pip install dgl
注意安裝完成后,terminal顯示成功安裝的dgl版本以及對(duì)應(yīng)的配套安裝的其他包的版本,信息如下
Successfully installed dgl-2.1.0 sympy-1.13.1 torch-2.5.1 torchdata-0.10.1
接下來(lái)先簡(jiǎn)單導(dǎo)入下dgl看是否安裝成功,終端執(zhí)行指令如下
python -c "import dgl"
發(fā)現(xiàn)報(bào)錯(cuò)信息如下
import dgl時(shí)報(bào)錯(cuò)

按住Ctrl健點(diǎn)擊traceback信息,可以檢查安裝路徑下的python文件,經(jīng)檢查發(fā)現(xiàn),pip install自動(dòng)安裝的配套torchdata的版本為0.10.1,但是該版本做了改動(dòng),已經(jīng)沒(méi)有了datapipes屬性,由此可以推斷需要改動(dòng)torchdata的版本。經(jīng)嘗試,當(dāng)dgl版本為2.1時(shí),對(duì)應(yīng)的0.7.1版本的torchdata滿足要求,終端執(zhí)行指令如下
pip install torchdata==0.7.1
安裝成功后,再次嘗試導(dǎo)入dgl
python -c "import dgl"
新的報(bào)錯(cuò)信息如下

按照指示安裝缺失的包
pip install pydantic
安裝成功后,再次嘗試導(dǎo)入dgl
python -c "import dgl"
根據(jù)如下報(bào)錯(cuò)信息,推斷在NPU芯片上,torch2.5.1與dgl2.1版本無(wú)法正常導(dǎo)入,并且注意的是,因?yàn)槭窃跁N騰上運(yùn)行,所以在安裝torch時(shí)需要考慮到能否充分調(diào)動(dòng)NPU算力,因此應(yīng)當(dāng)優(yōu)先考慮torch_npu組件能覆蓋的torch版本 pytorch: Ascend Extension for PyTorch (gitee.com)

接下來(lái)重新裝torch,需要先確定CANN版本(在筆者機(jī)器上裝的是CANN 8.0.RC2),并根據(jù)對(duì)照關(guān)系安裝

由此可知,應(yīng)安裝pytorch與torch_npu組件的版本與指令如下
pip3 install torch==2.1.0
pip3 install torch-npu==2.1.0.post6
安裝成功后,再次嘗試導(dǎo)入dgl,發(fā)現(xiàn)能成功導(dǎo)入
導(dǎo)入dgl包成功

接下來(lái),基于導(dǎo)入的dgl包進(jìn)行一個(gè)簡(jiǎn)單的模型訓(xùn)練驗(yàn)證,將在下文中記載。