以下是使用?Docker + Dify + DeepSeek?搭建本地知識庫的詳細方案,結合?Ollama 模型運行?和?Dify 可視化管理,實現高效、安全的私有化部署:
一、核心工具與優勢
- Docker
- 作用:容器化部署,隔離環境,避免依賴沖突。
- 優勢:跨平臺兼容(Windows/Mac/Linux),一鍵啟動服務。
- Dify
- 作用:基于 LLM 的知識庫問答系統,集成 DeepSeek 和私有文檔管理。
- 優勢:可視化操作界面,支持多模型切換、知識庫版本控制。
- Ollama
- 作用:本地運行 DeepSeek 模型,無需依賴云端 API。
- 優勢:數據完全私有化,支持離線使用,響應速度快。
二、詳細搭建步驟
1. 環境準備
- 硬件要求:
- 內存:至少 16GB(推薦 32GB+ 以運行 32B 參數模型)。
- 存儲:預留 50GB+ 空間(模型文件較大)。
- GPU(可選):NVIDIA 顯卡(加速推理,非必需)。
- 系統要求:
- Windows 10+/MacOS 12+/Linux(Ubuntu 20.04+ 推薦)。
2. 安裝 Docker
- 下載地址:
Docker 官網- 選擇對應系統版本(Windows/Mac/Linux)。
- 安裝完成后,重啟系統并啟動 Docker Desktop。
- 驗證安裝:
docker –version 輸出類似?
Docker version 25.0.0
?即表示成功。
3. 部署 Dify 系統
-
克隆項目代碼:
git clone https://github.com/langgenius/dify.git cd dify/docker -
配置環境變量:
復制示例文件并編輯:cp .env.example .env - 打開?
.env
?文件,找到?DIFY_MODEL_SUPPLIERS
?部分,確保包含?ollama
?配置。
- 打開?
-
啟動容器:
docker-compose up -d - 等待約 20 分鐘(首次拉取鏡像較慢)。
- 訪問?
http://localhost
,若看到 Dify 登錄界面即表示成功。
4. 運行 DeepSeek 模型(通過 Ollama)
-
- 安裝 Ollama:
- Windows/Mac:從?Ollama 官網?下載安裝包。
- 安裝 Ollama:
-
- Linux:
curl -fsSL https://ollama.com/install.sh | sh
- Linux:
- 拉取 DeepSeek 模型:
# 選擇適合的模型版本(根據顯存大?。?/span> ollama run deepseek-r1:8b # 8B 參數(顯存 8GB+) ollama run deepseek-r1:14b # 14B 參數(顯存 16GB+) ollama run deepseek-r1:32b # 32B 參數(顯存 32GB+) - 安裝完成后,測試模型是否可用:
ollama list | grep deepseek
- 安裝完成后,測試模型是否可用:
5. 配置 Dify 集成 DeepSeek
-
登錄 Dify:
訪問?http://localhost
,使用默認賬號(或注冊新賬號)登錄。 -
添加 Ollama 模型:
- 進入?設置 > 模型供應商。
- 點擊?添加模型,選擇?Ollama。
- 填寫基礎 URL:
http://host.docker.internal:11434 - 保存后,返回模型列表,確認狀態為?已連接。
-
添加文本嵌入模型:
- 重復上述步驟,添加?bge-large(用于文檔向量化):
ollama run bge-large - 在 Dify 中配置其 URL 為?
http://host.docker.internal:11434
。
- 重復上述步驟,添加?bge-large(用于文檔向量化):
6. 創建并管理知識庫
- 上傳文檔:
- 進入?知識庫?頁面,點擊?新建知識庫。
- 上傳文檔(支持 PDF/Word/TXT/Markdown 等格式)。
- 配置處理參數:
- 向量維度:1536(推薦)
- 分塊長度:512 字符
- 點擊?保存并處理,等待嵌入完成(約 5MB/分鐘)。
- 關聯知識庫到聊天助手:
- 進入?工作室 > 聊天助手,創建新助手。
- 在?知識庫?選項卡中,選擇剛創建的知識庫。
- 設置響應模板(如默認回復、引用格式等)。
7. 測試問答效果
- 在聊天界面輸入問題,例如:
根據上傳的《DeepSeek 使用手冊》,如何調整模型溫度? - 系統應自動引用知識庫中的相關段落并生成回答。
三、進階優化
- 外部訪問配置:
- 若需公網訪問,需配置路由器端口轉發(將本地端口映射到公網 IP)。
- 在 Dify 中設置?外部知識庫 API,填寫公網可訪問的 URL。
- 性能調優:
- 模型選擇:根據硬件條件調整模型參數(如從 32B 降級到 14B)。
- 批處理大?。涸?Ollama 配置中調整?
num_gpu_layers
?和?batch_size
。
- 數據備份:
- 定期備份 Dify 的數據庫(位于?
dify/docker/volumes/db
)和上傳的文檔。
- 定期備份 Dify 的數據庫(位于?
四、常見問題解決
- Dify 啟動失敗:
- 檢查 Docker 日志:
bash
docker-compose logs -f - 確保端口?
80
?未被占用(或修改?.env
?中的?DIFY_PORT
)。
- 檢查 Docker 日志:
- Ollama 模型無法連接:
- 確認 Ollama 服務已啟動:
ollama serve - 在 Dify 中使用?
http://host.docker.internal:11434
(而非?localhost
)。
- 確認 Ollama 服務已啟動:
- 文檔解析錯誤:
- 檢查文檔格式是否支持(如掃描版 PDF 需 OCR 預處理)。
- 嘗試分塊上傳大型文檔(避免單文件超過 50MB)。
域名頻道為客戶提供服務器代維服務,為客戶節約服務器維護成本,費用不到專職人員的十分之一。
服務器托管與單獨構建機房和租用專線上網相比、其整體運營成本有較大降低。
網站空間可隨意增減空間大小,空間升級可以按照對應的產品號升級到相對應的空間類型。隨時隨地能達到用戶的使用要求。
您有自己的獨立服務器,需要托管到國內機房,我們為你提供了上海電信五星級骨干機房,具體請查看http://www.sirendai.cn/server/ai-server.asp