一、RAGFlow簡介
RAGFlow是一個基于對文檔深入理解的開源RAG(Retrieval-augmented Generation,檢索增強生成)引擎。
主要作用: 讓用戶創建自有知識庫,根據設定的參數對知識庫中的文件進行切塊處理,用戶向大模型提問時,RAGFlow先查找自有知識庫中的切塊內容,接著把查找到的知識庫數據輸入到對話大模型中再生成內容輸出。
平臺特點: 支持豐富的文件類型,如Word、PPT、excel表格、csv/txt、圖片、PDF、結構化數據、網頁等 。
平臺Demo鏈接: https://demo.ragflow.io.
二、win10 系統本地化部署 RAGFlow 平臺
2.1 部署思路
1、通過win10系統自帶的wsl構建linux虛擬環境;
2、通過docker desktop實現docker環境部署
3、通過ollama實現大模型底座下載管理;
4、將ragflow平臺下載到本地linux環境進行運行部署,使用ollama中的大模型能力;
5、自己構建業務數據訓練本地大模型;
6、測試訓練結果。
2.2 環境要求
CPU >= 4 cores
RAM >= 16 GB
Disk >= 50 GB
Docker >= 24.0.0 & Docker Compose >= v2.26.1
2.3 前置條件(win10 環境設置)
可通過代碼或者自己配置實現環境設置。
(1)代碼修改
// 啟用適用于 Linux 的 Windows 子系統
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart//檢查運行 WSL 2 的要求
//若要更新到 WSL 2,需要運行 Windows 10。
// 對于 x64 系統:版本 1903 或更高版本,采用 內部版本 18362 或更高版本。
// 對于 ARM64 系統:版本 2004
// 或更高版本,采用 內部版本 19041 或更高版本。
// 低于 18362 的版本不支持 WSL 2。使用 Windows Update 助手更新 Windows 版本。//啟用虛擬機功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart//開啟“虛擬機平臺”后需要重啟電腦生效。//將 WSL 2 設置為默認版本
wsl --set-default-version 2//查看當前wsl版本列表
wsl --list --verbose
(2)手動配置
注意:開啟以上功能需要重啟
2.4 開始部署
2.4.1安裝Docker
(一)下載Docker安裝包
鏈接: https://docs.docker.com/desktop/setup/install/windows-install/
(二)安裝Docker
直接下一步安裝就行。
(三)安裝Docker成功
2.4.2利用wsl安裝ubuntu系統
(一)更新wsl
//更新一下可以解決很多后面的問題,自己安裝的時候沒有更新,搞了很久。
wsl --update
(二)利用 wsl 安裝 Ubuntu
//安裝ubuntu命令
wsl --install -d ubuntu//安裝成功以后會自動提醒創建用戶,按照要求創建用戶、設置密碼
//使用剛創建的賬戶登錄
//因為docker一些操作需要root賬戶,但是這時候不知道root 密碼,通過命令修改密碼sudo passwd
//輸入當前登錄賬戶的密碼,然后輸入新密碼,這時候可以使用新密碼登錄root賬戶
su root//至此linux環境安裝成功。
(三)建議安裝windows terminal,操作wsl安裝的系統
windows terminal的操作界面會比默認的CMD看起來舒服一點,而且方便單獨操作虛擬系統。
(四)按照建議修改系統參數
按照官方建議調整vm.max_map_count參數
sysctl vm.max_map_count
sudo sysctl -w vm.max_map_count=262144
(四)下載 ragflow
RAGFlow官方鏈接: https://infiniflow.cn/docs/v0.7.0/
git clone https://github.com/infiniflow/ragflow.git
注意:如果出現下列問題可修改hosts文件解決
文件位置:
C:\Windows\System32\drivers\etc
最下方添加:
10.10.211.68 www.github.com
如果效果不明顯,可自己調整延遲最低的ip映射
訪問以下地址查看本地延遲情況,然后選擇延遲最低的。
https://ping.chinaz.com/github.com
注意:如果出現下載慢導致下載失敗,可使用以下辦法嘗試解決
2.4.3 安裝 RagFlow
官方鏈接:RagFlow
#配置要求
CPU >= 4 核
RAM >= 16 GB
Disk >= 50 GB
Docker >= 24.0.0 & Docker Compose >= v2.26.1
如果你并沒有在本機安裝 Docker(Windows、Mac,或者 Linux), 可以參考文檔 Install Docker Engine 自行安裝。#克隆倉庫
git clone https://github.com/infiniflow/ragflow.git文件比較大,需要下載一段時間,下載完成后:
# 進入下載目錄
cd ragflow
#運行ragflowdocker compose -f docker/docker-compose.yml up -d# 注意:這里需要啟動本地docker desktop 應用,不然無法執行。下載、運行成功以后,會在docker desktop 管理端看到以下鏡像信息。
# 注冊賬號
登錄127.0.0.1:80 進行注冊賬號登錄
2.4.4 安裝 Ollama
管網下載并安裝[Ollama](https://ollama.com/)。
具體安裝過程自行查找,安裝成功以后可按照以下方式進行驗證。
輸入以下鏈接查詢服務是否i東
http://127.0.0.1:11434/
#根據個人電腦配置情況下載需要的大模型,這里推薦使用qwen2或者qwen2.5,模型大小從效果考慮建設使用7b以上,但是本地設備配置不夠的話,可以使用1.5b嘗試效果。
#模型下載安裝命令(win10中安裝)
#列出模型
ollama list
#刪除模型
ollama rm
#顯示模型信息
ollama show #下載運行qwen2:7bollama run qwen2:7b
#下載Embedding模型,一個免費的中文的向量化模型
ollama pull shaw/dmeta-embedding-zh
2.4.5 準備個人數據
這里提供一個訓練數據下載地址,里面有一些業務的訓練數據。
https://huggingface.co/InfiniFlow也可以完全自己構建訓練數據集,數據訓練格式參考如下:
2.4.6 運行RagFlow
1、注冊賬戶。http://127.0.0.1/login
2、創建知識庫
3、配置數據庫
4、解析數據集
5、問答測試(我這里使用的是醫療數據,如我沒有進行數據訓練,測試將無結果)