手把手教你實現 Ollama+FastGPT+DeepSeek 打造個人專屬 AI 知識庫!
本文從零實現,基于Ollama、FastGPT、Deepseek在本地環境中打造屬于自己的專業知識庫,與大家分享~
一、本地部署Ollama
Ollama是一個開源的本地大語言模型運行框架,專為在本地機器上便捷部署和運行大語言模型(LLM)而設計,無需依賴云端服務。它提供簡單易用的界面和優化的推理引擎,幫助我們輕松加載、管理和運行各種AI模型。
1. 下載Ollama
要使用Ollama,首先需要下載并安裝它。訪問以下鏈接:https://ollama.com/download
找到適合你操作系統的版本進行下載,默認安裝即可。這里筆者以Windows系統為例。
注:Ollama官網提供的地址下載速度很慢,而且中途崩潰很容易下載失敗,著急的小伙伴也可以從 https://ollama.zhike.in/ 下載,親測好用!
2. 部署DeepSeek R1模型
接下來,我們來安裝一個具體的語言模型——DeepSeek-R1。
打開Ollama官網,點擊Models菜單,選擇進入deepseek-r1模型詳情頁面。
根據自己的需求選擇合適的版本,并復制對應的ollama安裝命令。這里以deepseek-r1:1.5b為例,其中1.5b表示模型參數量為1.5億。
打開終端(Windows用戶可以用CMD或PowerShell),輸入剛剛復制的命令并回車。
等待運行完成,如果看到success提示,說明安裝成功了!
測試一下模型是否正常工作,輸入 “請問你是誰?”,看看模型能否正確回答。
3. 部署Embedding模型
為了后續搭建知識庫,我們還需要安裝一個嵌入模型。Embedding Model的作用是將文本轉換成向量形式,方便進行搜索和匹配。
在Ollama官網的Models頁面,找到一個Embedding Model。這里選擇一個比較小的模型:nomic-embed-text。
復制對應的安裝命令:
ollama pull nomic-embed-text
在終端中運行該命令,等待安裝完成。如果看到 success 提示,說明安裝成功了!
最后,輸入ollama list命令,查看ollama是否部署成功。
二、下載并安裝ubuntu
為了更好地運行FastGPT,官方建議將源代碼和其他數據存儲在Linux文件系統中,而不是Windows文件系統中。因此,這里我們使用Microsoft Store中的Ubuntu來安裝FastGPT。
打開Microsoft Store,在搜索框中輸入“Ubuntu”,選擇下載并安裝 Ubuntu 22.04.5 LTS 版本。
安裝完成后,打開Ubuntu應用,進入初始配置界面。按照提示設置一個用戶名和密碼。
「注意」:安裝完成后,Ubuntu會自動掛載到Windows的WSL(Windows Subsystem for Linux)環境中,后續我們可以通過Windows資源管理器訪問Ubuntu的文件系統。
1. Ubuntu準備docker環境
安裝Docker,運行以下命令通過阿里云鏡像安裝Docker,并啟動Docker服務并設置為開機自啟。
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo systemctl enable --now docker
安裝Docker-compose。運行以下命令下載Docker-compos二進制文件,并賦予執行權限。
curl -L https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
驗證安裝。
docker -v
docker-compose -v
三、部署FastGPT
1. 創建FastGPT目錄并下載配置文件
接下來,我們需要在Ubuntu中創建一個目錄用于存放FastGPT的相關文件,并下載必要的配置文件。
打開Ubuntu終端,執行以下命令創建 fastgpt 目錄:
mkdir fastgpt
進入剛創建的目錄:
cd fastgpt
下載FastGPT的配置文件config.json和docker-compose.yml:
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml
其中:
- config.json是FastGPT的核心配置文件,包含了項目的基本設置。
- docker-compose.yml 是Docker容器的配置文件,用于定義FastGPT所需的運行環境。
通過WSL,Ubuntu的文件系統會被掛載到Windows中,我們可以直接在Windows資源管理器中訪問這些文件。
打開Windows資源管理器,在地址欄輸入以下路徑,將看到剛剛在Ubuntu中創建的fastgpt文件夾,以及其中下載的兩個文件:config.json 和 docker-compose.yml。
\\wsl.localhost\Ubuntu-22.04\home\username\fastgpt
2. 修改配置文件docker-compose.yml
使用文本編輯器打開 docker-compose.yml 文件,這里以 vim 為例:
vim docker-compose.yml
找到 FE_DOMAIN 和 OPENAI_BASE_URL 兩個配置項,并進行如下修改:
- FE_DOMAIN:設置前端訪問地址為 http://localhost:3000。
- OPENAI_BASE_URL:設置AI模型的API地址為 http://host.docker.internal:3001/v1。
修改完成后,關閉當前終端并重新打開一個新終端,以確保配置生效。
3. 啟動容器
在fastgpt目錄下,運行以下命令啟動容器:
docker-compose up -d
如報錯:
The command 'docker-compose' could not be found in this WSL 2 distro. We recommend to activate the WSL integration in Docker Desktop settings,需啟用Docker Desktop的WSL 2集成。
啟動成功后會在Docker中看到fastgpt及其組件。
4. 配置OneAPI
(1) 登錄OneAPI
打開OneAPI地址:http://localhost:3001/
首次登錄默認密碼是root/123456。登錄后根據提示修改密碼。
(2) 添加渠道
在OneAPI的管理頁面中,點擊“渠道”選項,然后選擇“添加新的渠道”。
填寫以下信息:
- 渠道類型:選擇Ollama。
- 名稱:隨便填寫,例如 ollama:deepseek-r1:1.5b。
- 模型:先清空默認模型列表,然后手動輸入deepseek-r1:1.5b并確認添加。
- 密鑰:隨意填寫一個字符串(例如123456)即可。
- 代理地址:填寫 http://host.docker.internal:11434。
完成填寫后,點擊“提交”按鈕保存配置。
提交完成后,再點擊“渠道->測試”,開始測試模型,確保渠道能夠正常工作。如果顯示“測試成功”,說明配置正確。
同樣在“渠道”頁面,點擊“新增渠道”,填寫以下信息,添加嵌入模型渠道,并測試。
(3) 添加令牌
在 OneAPI 的管理頁面中,點擊“令牌”菜單,然后選擇“添加新的令牌”。
填寫以下信息:
- 令牌名稱:隨便填寫一個容易識別的名字,例如ollama:deepseek-r1:1.5b。
- 關聯模型:留空。
- 過期時間:選擇“永不過期”。
- 額度:選擇“設為無限額度”。
完成填寫后,點擊“提交”按鈕生成令牌。
生成后,系統會自動顯示新的令牌值,請點擊“復制”按鈕保存起來,后續配置中需要用到該令牌。
(4) 修改docker-compose.yml配置文件
將上述復制的令牌密鑰添加到CHAT_API_KEY變量。
5. 配置fastgpt
在Docker Desktop中找到并點擊fastgpt容器,打開FastGPT的管理頁面。
默認的登錄賬號和密碼是:
- 用戶名:root
- 密碼:1234
登錄后,你會看到如下界面:
(1) 配置模型
打開 FastGPT 的工作臺,點擊“賬號”選項,然后選擇“模型提供商”。在模型提供商頁面中,找到并點擊“模型配置”,再點擊右上角的“新增模型”按鈕。
添加語言模型deepseek,在彈出的窗口中填寫以下信息:
- 模型ID:這個ID必須與OneAPI中的ID一致。
- 模型提供商:選擇Ollama。
- 別名:給模型起一個便于識別的名字,比如ollama:deepseek-r1:1.5b。
填寫完成后,點擊“確認”保存。
添加索引模型,同樣點擊“新增模型”,這次我們添加一個索引模型:
- 模型ID:可以是任意有效的ID,這里同樣的與OneAPI中的ID一致。
- 模型提供商:選擇Ollama。
- 別名:nomic-embed-text。
填寫完成后,點擊“確認”保存。
模型添加好后,在模型列表中找到你剛添加的語言模型和索引模型,點擊旁邊的“測試”按鈕。
如果一切正常,系統會顯示“成功”的提示信息。這說明模型已經正確配置并且可以正常使用了。
6. 創建應用
打開FastGPT的工作臺,點擊“新建->簡易應用”按鈕,準備創建一個簡單的應用。
給應用起個名字,比如我這里隨便起了個名字叫fastgpt_test。選擇“空白應用”選項,然后點擊“確認”創建。
在應用的設置頁面中,找到AI模型的選擇項。從下拉菜單中選擇我們之前配置好的模型:Ollama->deepseek。
配置完成后,可以在右側的聊天區域進行測試。試著輸入一個問題,比如:“請問你是誰?”“你來自哪里?”
如果一切正常,系統會很快返回答案,說明我們的應用已經可以正常使用了!
7. 添加本地知識庫
首先新建知識庫,在左側菜單欄找到“知識庫”選項,點擊右上角的“新建”按鈕。選擇“通用知識庫”。
填入知識庫的名稱,然后選擇索引模型和文本理解模型。這兩個模型我們之前已經在Ollama中配置好了,直接選擇即可。最后點擊“確認”創建。
進入創建的知識庫中,點擊“新建/導入”->“表格數據集”,以新建一個表格數據集。
從本地上傳需要的知識庫文件。(注:這里筆者選擇的是csv文件,我們也可以選擇上傳txt等格式。)
上傳完成后,點擊“下一步”,進行參數設置,默認使用直接分塊方式分割內容。當頁面顯示“已就緒”,說明知識庫已經成功搭建好了。
點擊進入知識庫,可以看到系統已經將文檔內容分段處理成了一個個問答對。
8. 測試知識庫
回到工作臺,打開之前創建好的應用fastgpt_test,在應用的設置中找到“關聯知識庫”選項,點擊“選擇”,然后選中剛剛創建的本地知識庫(比如“兒科醫療問答”),最后點擊“完成”。
輸入一個問題試試效果,比如:“嬰兒眼睛多久能看到東西?”系統會給出答案,并顯示引用的知識庫文檔內容,還會提供處理時間和詳細信息。
至此,我們已經成功搭建了一個本地知識庫,并將其與應用關聯起來。