Llama2是Meta最新開源的語言大模型,訓(xùn)練數(shù)據(jù)集2萬億token,上下文長度是由Llama的2048擴展到4096,可以理解和生成更長的文本,包括7B、13B和70B三個模型,在各種基準集的測試上表現(xiàn)突出,最重要的是,該模型可用于研究和商業(yè)用途。
一、準備工作
1、本文選擇部署的模型是Llama2-chat-13B-Chinese-50W(模型的下載地址為:https://huggingface.co/RicardoLee/Llama2-chat-13B-Chinese-50W)
2、由于大部分筆記本電腦無法滿足大模型Llama2的部署條件,因此可以選用autodl平臺(算力云)作為部署平臺。注:收費,但比阿里云便宜的多
二、在autodl平臺租用實例
注冊賬號,進行登錄。點擊右上角的“控制臺”進入個人控制臺。點擊左側(cè)“容器實例”進入頁面。再點擊“租用新實例”進行實例的租用。
進入“租用新實例”頁面后,計算方式選擇“按量計費”,地區(qū)選擇“北京C區(qū)”,主機選擇算力型號為“V100-32GB”的即可。
鏡像選擇“基礎(chǔ)鏡像”:PyTorch/2.0.0/3.8(ubuntu20.04)/11.8
最后點擊“立即創(chuàng)建”。
等待一會兒,狀態(tài)變?yōu)?strong>“運行中”后,點擊“關(guān)機”
三、克隆大模型Llama2到數(shù)據(jù)盤
點擊實例右側(cè)的“更多”,選擇“無卡模型開機”。下載數(shù)據(jù)無需GPU,選擇無卡模式開機價格更低。
開機之后,點擊快捷工具中“JupyterLab”進入JupyterLab。
其中autodl-tmp是數(shù)據(jù)盤,用于存儲較大的文件,剩余三個為系統(tǒng)盤。在本次實驗中,Llama2大模型文件存儲在autodl-tmp.
接下來新建一個文件夾“Llama2”,用于存儲執(zhí)行文件。
然后進入到autodl-tmp內(nèi),下載Llama2-chat-13B-Chinese-50W,依次運行以下代碼。
1、安裝git-lfs
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
運行結(jié)果圖
2、克隆大模型Llama2到數(shù)據(jù)盤
克隆過程中需要鏈接VPN,可以使用云平臺自帶的學(xué)術(shù)加速功能,運行以下代碼即可。
source /etc/network_turbo
運行以下代碼對大模型進行克隆:
git clone https://huggingface.co/RicardoLee/Llama2-chat-13B-Chinese-50W
運行一會兒后卡住不動或報錯,觀察左側(cè)發(fā)現(xiàn),有三個文件未下載。
三個文件都比較大,分別為9.6G、9.6G、6.4G。如果因為網(wǎng)絡(luò)原因無法下載這個三個文件,那么可以進入到huggingface官網(wǎng)將模型下載到本地,然后再上傳至云平臺。(進入huggingface需要鏈接VPN,如有需要可直接三連私信贈送源文件)
或者運行下面代碼依次單獨下載(記得cd到Llama2-chat-13B-Chinese-50W/目錄下進行下載):
wget https://huggingface.co/RicardoLee/Llama2-chat-13B-Chinese-50W/resolve/main/pytorch_model-00001-of-00003.bin
wget https://huggingface.co/RicardoLee/Llama2-chat-13B-Chinese-50W/resolve/main/pytorch_model-00002-of-00003.bin
wget https://huggingface.co/RicardoLee/Llama2-chat-13B-Chinese-50W/resolve/main/pytorch_model-00003-of-00003.bin
運行結(jié)果圖(如果速度過慢,請設(shè)置學(xué)術(shù)加速)
下載完畢后,需要注意,如果顯示為“N個月前”即表示成功下載,如果是最近日期(如3分鐘前),說明下載過程中出現(xiàn)了問題,那么需要重新下載。
四、下載并部署gradio
隨著ChatGPT等機器人對話框架的流行,讓一個名為gradio的框架也火熱起來,這個框架可以開啟一個http服務(wù),并且?guī)л斎胼敵鼋缑?,可以讓對話類的人工智能項目快速運行。gradio號稱可以快速部署ai可視化項目。
1、下載執(zhí)行文件gradio_demo.py和requirements.txt
進入網(wǎng)址https://github.com/ymcui/Chinese-LLaMA-Alpaca/blob/main/scripts/inference/gradio_demo.py,將執(zhí)行文件gradio_demo.py和requirements.txt,下載到本地再上傳至文件夾Llama2中。
2、修改requrement.txt里的torch版本為2.0.0,然后安裝requirements.txt
修改requrement.txt里的torch版本為2.0.0,修改完后記得點擊Ctrl+S進行保存。
切換到Llama2目錄下,執(zhí)行以下代碼,安裝requirements.txt
pip install -r requirements.txt
運行結(jié)果圖(如果報錯,請設(shè)置學(xué)術(shù)加速)
3、注釋gradio.py里59、60、61行,手動安裝相關(guān)包
把gradio.py里59、60、61行注釋掉,然后手動安裝gradio和gradio_demo.py里import的包:
安裝gradio:
pip install gradio -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
安裝bitsandbytes:
pip install bitsandbytes
安裝accelerate:
pip install accelerate
安裝scipy:
pip install scipy
完成以上步驟之后,關(guān)閉“JupyterLab”并關(guān)機。
五、有卡模式開機,運行大模型
返回到AutoDL控制臺,點擊“開機”。開機之后,點擊快捷工具中“JupyterLab”進入JupyterLab。
首先cd到文件夾Llama2下,并設(shè)置學(xué)術(shù)加速。
運行大模型:
python gradio_demo.py --base_model /root/autodl-tmp/Llama2-chat-13B-Chinese-50W --tokenizer_path /root/autodl-tmp/Llama2-chat-13B-Chinese-50W --gpus 0
運行結(jié)果:
點擊紅色框中的鏈接,即可出現(xiàn)對話頁面。
至此,你已成功部署Llama2-chat-13B-Chinese-50W!
六、可能會出現(xiàn)的問題
1、第五步(有卡模式開機,運行大模型),當輸入代碼運行后,出現(xiàn)報錯。
報錯內(nèi)容:
Vocab of the base model: 49954
Vocab of the tokenizer: 49954
Traceback (most recent call last):
? File "gradio_demo.py", line 298, in <module>
? ? user_input = gr.Textbox(
AttributeError: 'Textbox' object has no attribute 'style'
解決辦法:打開gradio_demo.py文件,刪除第301、302行中陰影部分內(nèi)容。刪除之后點擊Ctrl+S保存。
再次運行,報錯消失。文章來源:http://www.zghlxwxcb.cn/news/detail-769166.html
感謝三連!文章來源地址http://www.zghlxwxcb.cn/news/detail-769166.html
到了這里,關(guān)于在Linux系統(tǒng)下部署Llama2(MetaAI)大模型教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!