隨著ChatGPT 和open Sora 的熱度劇增,大語言模型時(shí)代,開啟了AI新篇章,大語言模型的應(yīng)用非常廣泛,包括聊天機(jī)器人、智能客服、自動(dòng)翻譯、寫作助手等。它們可以根據(jù)用戶輸入的文本生成相應(yīng)的響應(yīng),提供個(gè)性化的建議和服務(wù),目前大部分大語言模型的產(chǎn)品都是基于網(wǎng)絡(luò)線上的,如果我們本地想自己部署一個(gè)自己的大語言模型,該如何操作呢,下面介紹一款可以在自己本地部署運(yùn)行的大語言模型Llama 2
Llama 2是一款開源的大語言模型,其中訓(xùn)練的數(shù)據(jù)目前已經(jīng)達(dá)到7B級(jí)別,在上下文長(zhǎng)度為4K下的單輪與多輪對(duì)話中表現(xiàn)出色,部署運(yùn)行Llama 2同時(shí)需要借助一個(gè)框架Ollama.
Ollama是一個(gè)強(qiáng)大的框架,設(shè)計(jì)用于在Docker容器中部署大型語言模型(LLM)。它的主要功能是簡(jiǎn)化在Docker容器內(nèi)部署和管理LLM的過程。Ollama通過提供簡(jiǎn)單的安裝指令,使用戶能夠輕松地在本地運(yùn)行大型開源語言模型.
借助Ollama 框架可以很方便運(yùn)行Llama2大語言模型,同時(shí),為了方便與模型進(jìn)行交互,還需要部署一個(gè)web交互 界面Chatbot-Ollama.
Chatbot-Ollama是一個(gè)基于Ollama框架的聊天機(jī)器人前端應(yīng)用。它利用Ollama框架提供的接口和功能,將大型語言模型(LLM)集成到聊天機(jī)器人中,使其能夠與用戶進(jìn)行交互,并提供各種聊天機(jī)器人服務(wù)。
Chatbot-Ollama 接入本地Ollama框架運(yùn)行的Llama2大語言模型,使我們可以很輕松簡(jiǎn)便在本地創(chuàng)建一個(gè)聊天機(jī)器人.Chatbot-Ollama 同時(shí)也是基于docker本地部署的,本地部署,只能局限于本地訪問,無法做到提供遠(yuǎn)程給其他人訪問,下面我們還需要安裝一個(gè)內(nèi)網(wǎng)穿透工具cpolar,使得本地聊天機(jī)器人可以被遠(yuǎn)程訪問.
Cpolar是一款強(qiáng)大的內(nèi)網(wǎng)穿透軟件,它能夠在多個(gè)操作系統(tǒng)上無縫運(yùn)行,包括Windows、MacOS和Linux,因此無論您使用哪種操作系統(tǒng),都可以輕松將本地內(nèi)網(wǎng)服務(wù)器的HTTP、HTTPS、TCP協(xié)議端口映射為公網(wǎng)地址端口,使得公網(wǎng)用戶可以輕松訪問您的內(nèi)網(wǎng)服務(wù),無需部署至公網(wǎng)服務(wù)器.
下面我們通過群暉Docker來演示如何結(jié)合上面介紹的技術(shù)來運(yùn)行一個(gè)自己的本地聊天機(jī)器人并且發(fā)布到公網(wǎng)訪問.本地部署,對(duì)設(shè)備配置要求高一些,如果想要擁有比較好的體驗(yàn),可以使用高配置的服務(wù)器設(shè)備.
1. 拉取相關(guān)的Docker鏡像
運(yùn)行Llama 2需要借助Ollama鏡像,對(duì)語言模型進(jìn)行交互需要用到Chatbot-Ollama前端界面,所以我們需要拉取這兩個(gè)docker鏡像,本例群暉版本由于無法直接在群暉控制面板docker界面搜索下載鏡像,所以采用命令行方式進(jìn)行鏡像下載,首先開啟群暉ssh連接,然后使用工具通過ssh連接上群暉,分別執(zhí)行下面docker命令 拉取
*拉取Ollama鏡像命令
sudo docker pull ollama/ollama:latest
*拉取Chatbot-Ollama鏡像命令
sudo docker pull ghcr.io/ivanfioravanti/chatbot-ollama:main
拉取成功后,我們可以在Docker界面看到拉取的兩個(gè)鏡像,下面開始運(yùn)行兩個(gè)鏡像,首先運(yùn)行ollama
2. 運(yùn)行Ollama 鏡像
選中鏡像,點(diǎn)擊運(yùn)行進(jìn)入配置界面,名稱無需設(shè)置,默認(rèn)即可,然后點(diǎn)擊下一步
輸入外部訪問的端口,和容器內(nèi)部端口一致,填寫11434即可,然后點(diǎn)擊下一步
然后點(diǎn)擊完成即可運(yùn)行ollama
運(yùn)行后,打開容器界面,可以看到運(yùn)行的服務(wù),下面開始下載運(yùn)行Llama 2模型,點(diǎn)擊選中ollama容器,點(diǎn)擊操作
然后打開終端機(jī),進(jìn)入終端命令界面
然后選擇左邊新增一個(gè)bash命令界面
然后在bash命令界面,執(zhí)行ollama run llama2
命令,接著等待下載即可,最后出現(xiàn)success,表示下載運(yùn)行Llama 2模型成功,下載完成后可以關(guān)閉掉窗口.這樣ollama 容器啟動(dòng),并運(yùn)行Llama 2模型就成功了,下面運(yùn)行chatbot-ollama鏡像,配置前端交互界面
3. 運(yùn)行Chatbot Ollama鏡像
選中我們下載的鏡像,點(diǎn)擊運(yùn)行,開始進(jìn)行設(shè)置
名稱可以默認(rèn),直接點(diǎn)擊下一步
設(shè)置對(duì)外端口,本例設(shè)置3001,具體可以自己自定義,這個(gè)端口也是我們?yōu)g覽器上web訪問的端口
然后設(shè)置一個(gè)環(huán)境變量,該變量就是連接我們上面運(yùn)行Ollama框架服務(wù)的地址,我們?cè)O(shè)置本地地址:http://群暉局域網(wǎng)IP:11434
即可,設(shè)置完成點(diǎn)擊下一步,然后直接點(diǎn)擊完成即可,chatbot Ollama鏡像就運(yùn)行成功了,接下來我們進(jìn)行本地訪問.
4. 本地訪問
上面我們運(yùn)行設(shè)置chatbot ollama 的對(duì)外端口是3001(具體以自己設(shè)置的為準(zhǔn)),下面我們?cè)跒g覽器訪問群暉3001端口,既可看到我們的web交互 界面,同時(shí),上面顯示了使用的llama2模型,下面輸入文字即可對(duì)話,這樣一個(gè)本地部署的機(jī)器人就完成了,對(duì)話的響應(yīng)速度取決于設(shè)備的配置,盡量使用高配置的服務(wù)器運(yùn)行部署哦,本地完成后,我們接下來設(shè)置遠(yuǎn)程也可以訪問,下面安裝cpolar工具,實(shí)現(xiàn)無公網(wǎng)IP也可以遠(yuǎn)程訪問我們的聊天機(jī)器人界面!
5. 群暉安裝Cpolar
點(diǎn)擊下面Cpolar群暉套件下載地址,下載相應(yīng)版本的群暉Cpolar套件
https://www.cpolar.com/synology-cpolar-suite,
打開群暉套件中心
,點(diǎn)擊右上角的手動(dòng)安裝
按鈕。
選擇我們本地下載好的cpolar套件安裝包,然后點(diǎn)擊下一步
點(diǎn)擊同意
按鈕,然后點(diǎn)擊下一步
最后點(diǎn)擊完成即可。
安裝完成后,在外部瀏覽器,我們通過群暉的局域網(wǎng)ip地址
加9200
端口訪問Cpolar的Web管理界面,然后輸入Cpolar郵箱賬號(hào)與密碼進(jìn)行登錄
6. 配置公網(wǎng)地址
點(diǎn)擊左側(cè)儀表盤的隧道管理——?jiǎng)?chuàng)建隧道,創(chuàng)建一個(gè)chatbot的公網(wǎng)地址隧道!
- 隧道名稱:可自定義命名,注意不要與已有的隧道名稱重復(fù)
- 協(xié)議:選擇http
- 本地地址:3001 (本地訪問的端口)
- 域名類型:免費(fèi)選擇隨機(jī)域名
- 地區(qū):選擇China
點(diǎn)擊創(chuàng)建
隧道創(chuàng)建成功后,點(diǎn)擊左側(cè)的狀態(tài)——在線隧道列表,查看所生成的公網(wǎng)訪問地址,有兩種訪問方式,一種是http 和https,下面我們使用生成的http地址訪問
7. 公網(wǎng)訪問
使用上面cpolar生成的http地址,在瀏覽器訪問,同樣可以看到聊天機(jī)器人主界面,公網(wǎng)地址訪問成功,無需公網(wǎng)IP,無需云服務(wù)器,即可把我們本地聊天機(jī)器人發(fā)布到公網(wǎng)進(jìn)行訪問!
小結(jié)
為了更好地演示,我們?cè)谇笆鲞^程中使用了cpolar生成的隧道,其公網(wǎng)地址是隨機(jī)生成的。
這種隨機(jī)地址的優(yōu)勢(shì)在于建立速度快,可以立即使用。然而,它的缺點(diǎn)是網(wǎng)址由隨機(jī)字符生成,不太容易記憶(例如:3ad5da5.r10.cpolar.top)。另外,這個(gè)地址在24小時(shí)內(nèi)會(huì)發(fā)生隨機(jī)變化,更適合于臨時(shí)使用。
我一般會(huì)使用固定二級(jí)子域名,原因是我希望將網(wǎng)址發(fā)送給同事或客戶時(shí),它是一個(gè)固定、易記的公網(wǎng)地址(例如:chatbot.cpolar.cn),這樣更顯正式,便于流交協(xié)作。
8. 固定公網(wǎng)地址
由于以上使用Cpolar所創(chuàng)建的隧道使用的是隨機(jī)公網(wǎng)地址,24小時(shí)內(nèi)會(huì)隨機(jī)變化,不利于長(zhǎng)期遠(yuǎn)程訪問。因此我們可以為其配置二級(jí)子域名,該地址為固定地址,不會(huì)隨機(jī)變化【ps:cpolar.cn已備案】
注意需要將cpolar套餐升級(jí)至基礎(chǔ)套餐或以上,且每個(gè)套餐對(duì)應(yīng)的帶寬不一樣?!綾polar.cn已備案】
登錄cpolar官網(wǎng),點(diǎn)擊左側(cè)的預(yù)留,選擇保留二級(jí)子域名,設(shè)置一個(gè)二級(jí)子域名名稱,點(diǎn)擊保留,保留成功后復(fù)制保留的二級(jí)子域名名稱
保留成功后復(fù)制保留成功的二級(jí)子域名的名稱
返回登錄Cpolar web UI管理界面,點(diǎn)擊左側(cè)儀表盤的隧道管理——隧道列表,找到所要配置的隧道,點(diǎn)擊右側(cè)的編輯
修改隧道信息,將保留成功的二級(jí)子域名配置到隧道中
- 域名類型:選擇二級(jí)子域名
- Sub Domain:填寫保留成功的二級(jí)子域名
點(diǎn)擊更新
(注意,點(diǎn)擊一次更新即可,不需要重復(fù)提交)
更新完成后,打開在線隧道列表,此時(shí)可以看到公網(wǎng)地址已經(jīng)發(fā)生變化,地址名稱也變成了固定的二級(jí)子域名的名稱域名
最后,我們使用固定的公網(wǎng)http地址訪問,可以看到同樣訪問成功,這樣一個(gè)固定且永久不變的公網(wǎng)地址就設(shè)置好了!文章來源:http://www.zghlxwxcb.cn/news/detail-848195.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-848195.html
到了這里,關(guān)于如何在群暉Docker運(yùn)行本地聊天機(jī)器人并結(jié)合內(nèi)網(wǎng)穿透發(fā)布到公網(wǎng)訪問的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!