模型本地部署和運(yùn)行中,經(jīng)常遇到這三個(gè)概念,llama,ollama,llama.cpp。 剛開始接觸時(shí),的確有些傻傻分不清楚。這里簡(jiǎn)單區(qū)分理解下,方便快速上手。
簡(jiǎn)單來講,llama 是一個(gè)Meta公司開源的預(yù)訓(xùn)練大型語言模型,llama.cpp用于加載和運(yùn)行 LLaMA 語言模型。ollama是大模型運(yùn)行框架,它利用了 llama.cpp 提供的底層功能。
LLaMa
LLama(又稱為羊駝)是預(yù)訓(xùn)練開源語言模型,它來著Meta公司(原Facebook公司)。類似國(guó)內(nèi)阿里通義千問Qwen系列大模型、智譜AI的 GLM系列模型等。LLaMA系列模型以其高質(zhì)量、可擴(kuò)展性和靈活性,在NLP領(lǐng)域取得了顯著的進(jìn)展。通過不斷地技術(shù)創(chuàng)新和優(yōu)化,LLaMA模型在各種任務(wù)上展現(xiàn)了卓越的性能,成為了大型語言模型研究和應(yīng)用的重要里程碑。
2024年4月19日,Meta在官網(wǎng)上官宣了Llama-3,作為繼Llama-1、Llama-2和Code-Llama之后的第三代模型,Llama-3在多個(gè)基準(zhǔn)測(cè)試中實(shí)現(xiàn)了全面領(lǐng)先,性能優(yōu)于業(yè)界同類*********的模型。
llama.cpp
llama.cpp 是一個(gè)開源的 C++ 庫, 它用原始 C++ 重寫了 LLaMa 的推理代碼,是一種推理框架,用于加載和運(yùn)行 LLaMA 語言模型。通過一些優(yōu)化和量化權(quán)重,llama.cpp能讓我們?cè)诟鞣N以前無法想象的硬件上本地運(yùn)行 LLaMa 模型。其中:
在谷歌 Pixel5 手機(jī)上,它能以 1 token/s 的速度運(yùn)行 7B 參數(shù)模型。
在 M2 芯片的 Macbook Pro 上,使用 7B 參數(shù)模型的速度約為 16 token/s
我們甚至于可以在 4GB RAM 的樹莓派上運(yùn)行 7B 模型,盡管速度只有 0.1 token/s
獲取代碼
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
在國(guó)內(nèi)訪問,可以使用gitcode.com替換,命令如下:
git clone https://gitcode.com/ggerganov/llama.cpp.git llama
(注:習(xí)慣起見,這里將下載的llama.cpp重新命名為llama)
llama.cpp提供了基礎(chǔ)的推理功能,但缺乏一些高級(jí)功能,如上下文管理、插件系統(tǒng)等。
Ollama
Ollama是一個(gè)開源的大型語言模型服務(wù)工具,它幫助用戶快速在本地運(yùn)行大模型。通過簡(jiǎn)單的安裝指令,用戶可以執(zhí)行一條命令就在本地運(yùn)行開源大型語言模型,如Llama 2。Ollama極大地簡(jiǎn)化了在Docker容器內(nèi)部署和管理LLM的過程,使得用戶能夠快速地在本地運(yùn)行大型語言模型。
一句話:Ollama是一個(gè)簡(jiǎn)明易用的本地大模型運(yùn)行框架,有點(diǎn)類似docker的概念。
Ollama下載和安裝(支持windows、linux和Mac):
Download Ollama on macOS
Get up and running with large language models.
https://ollama.com/download
Ollama已經(jīng)支持了很多開源大模型庫,參考官方地址:
library
Get up and running with large language models.
https://ollama.com/library
付費(fèi)1元即可閱讀全文