炸裂!本地部署,輕松切換多個(gè) AI 模型
周末一直在耍 AI 本地部署個(gè)人知識(shí)庫(kù),基本都是基于 OpenAI 的開(kāi)放接口進(jìn)行封裝,亦或者你本地部署自己部署一個(gè)小模型。
感覺(jué)這兩個(gè)要求對(duì)小白玩家都太高了,一個(gè)要求有科學(xué)上網(wǎng)能力,一個(gè)要求你電腦帶高端顯卡能夠本地部署。
今天給大家?guī)?lái)一個(gè)炸裂產(chǎn)品gpt_academic,你可以玩 GPT-3、GPT-4、Claude-2 等國(guó)外模型,也可以玩國(guó)內(nèi)文心一言、星火、通義千文等國(guó)產(chǎn)大模型。
一、部署項(xiàng)目
1、前置條件
通過(guò) docker-compose 方式啟動(dòng)一直有點(diǎn)問(wèn)題,應(yīng)該是鏡像有問(wèn)題,看 issue 也有很多人提問(wèn),索性就直接根據(jù)源碼進(jìn)行啟動(dòng)。
需要我們本地安裝好 Pyhton 環(huán)境,這個(gè)就不多做介紹,網(wǎng)上有很多教程。
2、下載&安裝
gpt_academic 的 GitHub 地址:https://github.com/binary-husky/gpt_academic
進(jìn)入到上方網(wǎng)址,直接下載(免去安裝 Git)
圖片
下載好之后解壓到你對(duì)應(yīng) Python 項(xiàng)目位置,嘗試啟動(dòng)時(shí)會(huì)出現(xiàn)很多組件需要安裝,大家根據(jù)提示逐一安裝即可。
3、國(guó)內(nèi)模型配置
如果使用的時(shí)國(guó)內(nèi)大模型比較簡(jiǎn)單,映射關(guān)系如下:
公司 | 模型名稱 |
訊飛星火 | spark、sparkv2、sparkv3 |
通義千問(wèn) | qwen |
百度千帆 | qianfan |
智譜 AI | zhipuai |
這里我們以使用訊飛星火舉例,主要是訊飛實(shí)名注冊(cè)即送星火大模型3.0的200萬(wàn) token數(shù)。
圖片
實(shí)名注冊(cè)后拿到星火的 API 信息,將其填充到 config.py 這個(gè)文件對(duì)應(yīng)的星火模型配置處。
圖片
最后將 sparkv3 模型填充到 config.py 的 AVAIL_LLM_MODELS 屬性中:
圖片
這樣就可以直接啟動(dòng)項(xiàng)目使用了。
4、國(guó)外模型配置
使用國(guó)外模型就會(huì)比較復(fù)雜一些,我們需要配置好代理,運(yùn)行 check_proxy.py 文件看是否存在問(wèn)題。
這里以我使用的 Clash 軟件為例,查看代理端口并在代理頁(yè)面切換至全局模式:
圖片
將上面獲取到的本地端口配置到 config.py 文件,修改兩處地方:
- 將你的 OpenAI Key 進(jìn)行填充進(jìn)去
- 修改你本地的代理端口,我的就是 http://127.0.0.1:7890
圖片
運(yùn)行 check_proxy.py 文件輸出結(jié)果如下就表示通過(guò),否則還需要調(diào)整配置(使用的軟件不同,大家自行解決):
圖片
5、應(yīng)用實(shí)戰(zhàn)
這里如果大家想使用多模型輸出(同時(shí)詢問(wèn)多個(gè) AI 模型),還需要修改一個(gè)配置:
# 定義界面上“詢問(wèn)多個(gè)GPT模型”插件應(yīng)該使用哪些模型,請(qǐng)從AVAIL_LLM_MODELS中選擇,并在不同模型之間用`&`間隔,例如"gpt-3.5-turbo&chatglm3&azure-gpt-4"
# 默認(rèn) MULTI_QUERY_LLM_MODELS = "gpt-3.5-turbo&chatglm3"
MULTI_QUERY_LLM_MODELS = "gpt-3.5-turbo&sparkv3
這里就配置 gpt-3.5-turbo 和 sparkv3,如果大家有更多模型可以都配置上去。
然后我們運(yùn)行 main.py 文件即可,運(yùn)行成功會(huì)自動(dòng)彈出頁(yè)面 http://localhost:29717,端口每次都是隨機(jī)的。
圖片
在右上角可以切換不同的模型,默認(rèn)是使用 gpt-3.5 模型。我們將其切換到星火模型看看,效果如下:
圖片
在頁(yè)面右下角,我們選擇詢問(wèn)多個(gè)模型試下,可以看到同時(shí)輸出了結(jié)果。
圖片
這里還可以直接輸入文件內(nèi)容,有 AI 幫你總結(jié)。其實(shí)就是將你文件的內(nèi)容轉(zhuǎn)換成文本發(fā)給模型,最后會(huì)返回總結(jié)文件給你。
圖片
二、總結(jié)
里面功能還是很多,大家可以挖掘一下。我嘗試將整個(gè) Java 項(xiàng)目導(dǎo)入,結(jié)果返回的只是對(duì)每個(gè)文件代碼的解讀,實(shí)際上沒(méi)啥大用(花費(fèi)了我15萬(wàn) token 數(shù),心痛~ )。