您的位置:首頁(yè) > 軟件教程 > 教程 > ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

來(lái)源:好特整理 | 時(shí)間:2024-04-22 09:46:15 | 閱讀:109 |  標(biāo)簽: 我的 GO 一個(gè) A3 C in 小米手機(jī) Mac 手機(jī) 小米   | 分享到:

1、ollama到底是個(gè)什么玩意 一句話來(lái)說(shuō), Ollama 是一個(gè)基于 Go 語(yǔ)言開(kāi)發(fā)的簡(jiǎn)單易用的本地大模型運(yùn)行框架?梢詫⑵漕惐葹 docker(有類似docker中的一些常規(guī)命令list,pull,push,run 等等),事實(shí)上確實(shí)也制定了類似 docker 的一種模型應(yīng)用標(biāo)準(zhǔn),在后邊的內(nèi)容

ollama是一個(gè)基于Go語(yǔ)言開(kāi)發(fā)的簡(jiǎn)單易用的本地大模型運(yùn)行框架。它類似于docker,提供一些與docker類似的命令,如list、pull、push、run等。此外,它基于Go語(yǔ)言中的Web框架gin,提供了一些API接口,可以讓用戶像使用OpenAI提供的接口一樣進(jìn)行交互。

1、ollama是什么

ollama是一個(gè)基于Go語(yǔ)言開(kāi)發(fā)的簡(jiǎn)單易用的本地大模型運(yùn)行框架?梢詫⑵漕惐葹閐ocker(有類似docker中的一些常規(guī)命令list,pull,push,run等等),事實(shí)上確實(shí)也制定了類似docker的一種模型應(yīng)用標(biāo)準(zhǔn),在后邊的內(nèi)容中,你能更加真切體會(huì)到這一點(diǎn)。

在管理模型的同時(shí),它還基于Go語(yǔ)言中的Web框架gin提供了一些API接口,讓你能夠像跟OpenAI提供的接口那樣進(jìn)行交互。

2、ollama的命令

ollama安裝之后,其同時(shí)還是一個(gè)命令,與模型交互就是通過(guò)命令來(lái)進(jìn)行的。

  • ollama list:顯示模型列表
  • ollama show:顯示模型的信息
  • ollama pull:拉取模型
  • ollama push:推送模型
  • ollama cp:拷貝一個(gè)模型
  • ollama rm:刪除一個(gè)模型
  • ollama run:運(yùn)行一個(gè)模型

通過(guò)在命令行運(yùn)行ollama即可查看到相關(guān)命令。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

如果你用過(guò)docker的話,那簡(jiǎn)直就是so easy。接下來(lái)我就在我的window、mac、以及小米手機(jī)上分別體驗(yàn)一下。

3、在Windows上下載及體驗(yàn)

  • 官網(wǎng)首頁(yè)一進(jìn)來(lái)就可以看到下載按鈕,客戶端可以在window、mac、linux等進(jìn)行安裝,跨平臺(tái)的,真的nice啊。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

并且上面已經(jīng)把llama3集成進(jìn)來(lái)了,這速度是真的快。我這里下載的是window版本,目前213MB,很快就下載下來(lái)了。下載完畢即可安裝。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

安裝完畢之后你可以在命令行中輸入查看版本

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

我們可以查看文檔: https://github.com/ollama/ollama/blob/main/README.md#quickstart

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

如上圖所示,可以用最簡(jiǎn)單的方式就可以來(lái)啟動(dòng)llama3-8b,不過(guò)它可能還要等一會(huì)兒,因?yàn)槟P痛笮∮?.7G左右,需要下載一會(huì)兒?jiǎn)选I踔聊愕呐渲脡蚋,也可以使?0b的模型來(lái)嘗試,不過(guò)我的電腦配置一般估計(jì)跑起來(lái)太慢。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

看這里下載速度還算可以,四分鐘下載完畢,好了,那就先來(lái)測(cè)試一下吧。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

整個(gè)體驗(yàn)下來(lái),這可能是我本機(jī)測(cè)試感覺(jué)速度上最快的離線大模型了,真的表現(xiàn)非常棒。按照目前應(yīng)該很快會(huì)有優(yōu)化版本出來(lái)的,到時(shí)候繼續(xù)進(jìn)行評(píng)測(cè)一下。

破除了之前有人說(shuō)沒(méi)有上下文的問(wèn)題,中文語(yǔ)料可能確實(shí)有點(diǎn)少。但是寫(xiě)代碼的體驗(yàn)還算不錯(cuò)的,雖然上面的代碼可能是不對(duì)的。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

上下文長(zhǎng)度過(guò)長(zhǎng)時(shí)確實(shí)有幻覺(jué)的問(wèn)題。

這個(gè)回答速度真的再優(yōu)化一下,很多小公司自己來(lái)部署大模型并進(jìn)行創(chuàng)造就很近了。

但是它畢竟是小模型,參數(shù)相對(duì)較少,運(yùn)行時(shí)所需要的資源就少很多。就像我本地運(yùn)行的,其實(shí)我的電腦配置可以看一下如下圖所示。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

從開(kāi)發(fā)的角度來(lái)看還算不錯(cuò)了。另外對(duì)翻譯的要求不高的話,效果也還過(guò)得去的。

同樣的你也可以直接進(jìn)行調(diào)用API

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

4、mac 上安裝以及體驗(yàn)

同樣還是在官網(wǎng)首頁(yè)可以點(diǎn)擊直接下載即可,下載下來(lái)會(huì)是一個(gè)壓縮包

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

解壓然后安裝就可以使用了,然后在命令行中可以查看是否安裝成功

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

通過(guò) ollama -v 來(lái)查看安裝的版本,如果打印出來(lái)也就說(shuō)明安裝成功了。然后再通過(guò) ollama serve 開(kāi)啟 ollama 的服務(wù),注意當(dāng)前這個(gè)命令行窗口暫時(shí)不要關(guān)閉,關(guān)閉了則代表 ollama 服務(wù)也暫時(shí)停止了,可以打開(kāi)另外一個(gè)命令行窗口進(jìn)行下載和使用大模型。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

哇塞,這會(huì)的下載速度簡(jiǎn)直起飛了。跑起來(lái)之后,測(cè)試就可以跟上面window類似了,這個(gè)就不在此多說(shuō)了。

5、小米手機(jī)再來(lái)體驗(yàn)一波

android手機(jī)要想體驗(yàn)一波,就需要先按照依稀Termux,這里我之前有寫(xiě)過(guò)一篇手把手來(lái)教你在手機(jī)上安裝大模型llama2,這篇文章中我主要使用的是huggingface 來(lái)運(yùn)行大模型,那么現(xiàn)在用到的是ollama。

于是我在Termux中執(zhí)行如下命令進(jìn)行安裝ollama


curl -fsSL https://ollama.com/install.sh | sh

發(fā)現(xiàn)我的手機(jī)沒(méi)有root,ollama是使用不起來(lái)的,必須要先root。

簡(jiǎn)單搜索發(fā)現(xiàn)一個(gè)不錯(cuò)的方法:
https://gitlab.com/st42/termux-sudo

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

但是點(diǎn)進(jìn)去發(fā)現(xiàn)是五年前的,不知道能不能用,于是我就又搜索了一下

https://github.com/termux/proot-distro

proot-distro 是一個(gè)用于在 Termux 應(yīng)用程序中管理和使用 Linux 發(fā)行版的項(xiàng)目。Termux 是一個(gè) Android 終端模擬器和 Linux 環(huán)境應(yīng)用,它不需要設(shè)備的 root 權(quán)限就可以運(yùn)行。

proot-distro 允許用戶在 Termux 中安裝、卸載和運(yùn)行各種 Linux 發(fā)行版,包括 Ubuntu、Debian、Arch Linux 等。這樣,用戶就可以在他們的 Android 設(shè)備上使用完整的 Linux 環(huán)境,包括安裝和運(yùn)行 Linux 軟件包。

接下來(lái)要先在手機(jī)上打開(kāi)termux


// 先來(lái)安裝proot-distro
pkg install proot-distro

//使用proot-distro安裝一個(gè)debian
proot-distro install debian

// 安裝成功后通過(guò)login命令就直接進(jìn)入debian
proot-distro login debian

//進(jìn)入之后再來(lái)安裝ollama
curl -fsSL https://ollama.com/install.sh | sh

// 安裝完畢可以查看ollama版本進(jìn)行驗(yàn)證
ollama -v

// 出現(xiàn)版本號(hào)之后就可以使用ollama
// 開(kāi)啟ollama服務(wù)
ollama serve
// 此時(shí)這個(gè)命令行的窗口不要關(guān)閉,關(guān)閉之后ollama服務(wù)就停止了

然后再termux左上角向右滑動(dòng)

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

點(diǎn)擊NEW SESSION,這樣就新開(kāi)了一個(gè)命令行,在這里命令行中就可以使用ollama其他命令了


// 這是一個(gè)新的命令行,,記得要先進(jìn)入debian
proot-distro login debian

//下載并運(yùn)行大模型
ollama run llama3

進(jìn)行測(cè)試就跟上面一樣了,這里相當(dāng)于單獨(dú)安裝了一個(gè)模擬運(yùn)行環(huán)境debian,會(huì)有一部分性能的消耗吧。有興趣或者手機(jī)性能不錯(cuò)的到時(shí)候可以玩玩,感覺(jué)小模型在未來(lái)的某個(gè)時(shí)刻還是會(huì)有更廣泛的應(yīng)用場(chǎng)景,參數(shù)不用那么多,那么大,但是針對(duì)特定領(lǐng)域進(jìn)行微調(diào)訓(xùn)練的。

6、總結(jié)

應(yīng)該說(shuō)llama3給與了開(kāi)源模型更廣闊的思考空間,期待開(kāi)源模型更大的進(jìn)步讓我們拭目以待。同時(shí)希望Meta在接下來(lái)的時(shí)候能將llama3-400的發(fā)布。

就在實(shí)驗(yàn)此文章的過(guò)程中也發(fā)現(xiàn)了:

高通與Meta宣布合作,優(yōu)化Meta新推出的Llama 3大語(yǔ)言模型在驍龍終端上的運(yùn)行。Llama 3有兩種版本,分別為80億和700億參數(shù),旨在為智能手機(jī)、PC、VR/AR頭顯和汽車(chē)等設(shè)備提供強(qiáng)大的開(kāi)源語(yǔ)言模型支持。合作將使開(kāi)發(fā)者能夠利用高通AI Hub的資源和工具,優(yōu)化Llama 3在驍龍平臺(tái)上的執(zhí)行,以縮短產(chǎn)品上市時(shí)間,并提升終端側(cè)AI的性能,包括響應(yīng)能力、隱私性、可靠性和個(gè)性化體驗(yàn)。

這才幾天過(guò)去,在huggingface平臺(tái)就發(fā)現(xiàn)了8個(gè)中文微調(diào)模型,不得不說(shuō)社區(qū)的力量真的太強(qiáng)大了,全民共享大模型。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

從Llama 3的發(fā)布能看到,好而全的數(shù)據(jù),對(duì)模型訓(xùn)練的重要性! HuggingFaceFW 開(kāi)源的 FineWeb ,有 15T tokens 的高質(zhì)量網(wǎng)絡(luò)數(shù)據(jù),以英文為主,由CommonCrawl獲取的2013-2024年數(shù)據(jù)。

ollama:一個(gè)基于Go語(yǔ)言的本地大模型運(yùn)行框架

ollama和huggingface 給與了像我這樣的普通人,就能很方便的了解AI大模型,并且在本地運(yùn)行大模型,真的太高興了,接下來(lái)有機(jī)會(huì)會(huì)繼續(xù)嘗試其他的可能性。

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

Go v1.62
Go v1.62
類型:動(dòng)作冒險(xiǎn)  運(yùn)營(yíng)狀態(tài):正式運(yùn)營(yíng)  語(yǔ)言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動(dòng)

GoEscape是一款迷宮逃脫休閑闖關(guān)游戲。在這款游戲中,玩家可以挑戰(zhàn)大量關(guān)卡,通過(guò)旋轉(zhuǎn)屏幕的方式幫助球球

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號(hào)!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]

湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)