)
10分鐘R2R本地部署:免費跑通自己的AI文檔問答系統(tǒng)【免費下載鏈接】R2RSoTA production-ready AI retrieval system. Agentic Retrieval-Augmented Generation (RAG) with a RESTful API.項目地址: https://gitcode.com/GitHub_Trending/r2/R2R部署完成后,你的文檔庫就住進了一臺會思考的檢索引擎:上傳 PDF、Word、網(wǎng)頁,它自動切塊、向量化,再基于文檔內(nèi)容回答問題并附上出處。這就是 R2R 本地部署要解決的事——一個帶完整管理面板的開源 AI 文檔檢索與問答系統(tǒng),全程跑在你自己的機器上。 方案選型:Docker 還是源碼維度Docker 部署源碼部署上手速度快,幾條命令起全部容器慢,需裝 Python 環(huán)境、配依賴可定制性中,改配置文件即可生效高,可深入改源碼適用人群想先跑通、驗證效果的普通用戶要二次開發(fā)的開發(fā)者資源占用全套約 8GB 內(nèi)存起視加載模塊而定,更可控建議:先用 Docker 跑通,確認滿足需求后再考慮源碼方式,避免一開始陷在環(huán)境搭建里。? 環(huán)境自檢:動手前花 2 分鐘確認檢查項最低要求推薦值如何確認是否達標Docker Desktop已安裝并能運行容器24.0 以上終端執(zhí)行docker version,能打印客戶端和服務(wù)端版本內(nèi)存8GB16GB系統(tǒng)設(shè)置里查看;Docker 需在設(shè)置里分配至少 8GB磁盤空間10GB 可用20GBdocker system df查看鏡像占用,另留空間放文檔數(shù)據(jù)端口占用7272、7273 空閑同左netstat -an \| findstr 7272(Windows)或lsof -i :7272(Mac/Linux)無輸出即空閑網(wǎng)絡(luò)能拉取 Docker Hub 鏡像有加速配置docker pull hello-world能成功下載別急,有一項沒達標就先補上,后面會少踩很多坑。 分步部署:跟著做就行第 1 步:拿到項目代碼??寺}庫并進入部署目錄,這一步只為把 compose 文件和默認配置放到本地。git clone https://gitcode.com/GitHub_Trending/r2/R2R cd R2R/docker # 部署文件都在這個目錄執(zhí)行后應(yīng)看到compose.yaml、env/、user_configs/等文件,說明目錄沒錯。第 2 步:填上模型密鑰。編輯 docker/env/r2r.env,找到OPENAI_API_KEY這一行,把你的密鑰填進去(后面接 Ollama 本地模型可以跳過這步)。其他變量如 Postgres 賬號密碼已有默認值,不用動。第 3 步:啟動服務(wù)棧。一條命令拉起 R2R 服務(wù)、數(shù)據(jù)庫和管理面板,數(shù)據(jù)持久化到 Docker 卷里。# --profile postgres 讓向量數(shù)據(jù)庫一起啟動,數(shù)據(jù)不隨容器銷毀丟失 docker compose -f compose.yaml --profile postgres up -d首次會拉取鏡像,耐心等待幾分鐘。執(zhí)行后應(yīng)看到各容器狀態(tài)變?yōu)閁p (healthy)。第 4 步:打開管理面板。瀏覽器訪問http://localhost:7273,用默認管理員賬號登錄(默認郵箱adminexample.com,密碼change_me_immediately,來自認證配置項)。登錄后應(yīng)看到登錄界面,輸入憑證后進入文檔管理頁:關(guān)于完整功能棧:上面的compose.yaml是輕量組合。如果你還需要 Hatchet 工作流編排(處理批量文檔任務(wù)的后臺調(diào)度器),改用 docker/compose.full.yaml,命令換成docker compose -f compose.full.yaml --profile postgres up -d,詳細說明見官方文檔 docs/README.md。 本地模型接入:數(shù)據(jù)不出內(nèi)網(wǎng)為什么接本地模型?兩個理由:文檔內(nèi)容不經(jīng)過任何第三方 API(隱私),以及按 token 計費的云模型在高頻檢索下會燒錢(成本)。R2R 內(nèi)置 Ollama 配置模板,最小可運行組合是兩個模型——一個負責生成回答的llama3.1,一個負責把文本變成向量的mxbai-embed-large:# 拉取本地大模型和向量模型 ollama pull llama3.1 ollama pull mxbai-embed-large然后復(fù)用倉庫里現(xiàn)成的 Ollama 配置 py/core/configs/full_ollama.toml:把它復(fù)制一份放到 docker/user_configs/ 目錄,再到r2r.env里把R2R_CONFIG_PATH指向它,例如R2R_CONFIG_PATH/app/user_configs/full_ollama.toml,重啟容器生效。該目錄的用途說明見 docker/user_configs/README.md。 驗證閉環(huán):看到這些才算部署成功驗證項操作成功的現(xiàn)象健康檢查瀏覽器訪問http://localhost:7272/v3/health返回 JSON,狀態(tài)為正常面板登錄訪問 7273 端口并輸入默認管理員憑證進入文檔管理頁,而不是反復(fù)跳回登錄框文檔入庫上傳 py/core/examples/data/aristotle.txt,等狀態(tài)變完成文檔列表里出現(xiàn)該文件,狀態(tài)為成功檢索問答在聊天框問一個只存在于文檔里的問題回答準確,且?guī)Э牲c擊的文檔出處引用持久化執(zhí)行docker compose ps,重啟容器后再看文檔和對話記錄都還在? 高頻問題排障現(xiàn)象:瀏覽器打不開 7273,一直轉(zhuǎn)圈。原因:面板容器還在啟動,或有程序占用了端口。 解法:docker compose ps確認所有服務(wù)是healthy;用端口檢查命令排查占用,換端口后同步改r2r-dashboard.env?,F(xiàn)象:登錄時提示憑證錯誤。原因:認證配置里改過默認賬號,或require_authentication未開啟導(dǎo)致行為不一致。 解法:對照 docker/env/r2r.env 與認證段的default_admin_email/default_admin_password核對一遍?,F(xiàn)象:問答無響應(yīng)或報模型超時。原因:LLM 密鑰沒填,或 Ollama 沒在跑。 解法:檢查r2r.env里密鑰非空;終端執(zhí)行ollama list能看到兩個模型,且ollama serve在后臺運行?,F(xiàn)象:內(nèi)存占用飆高,Docker 變卡。原因:full 棧包含 Hatchet、RabbitMQ 等多套容器。 解法:先用輕量compose.yaml驗證;Docker Desktop 設(shè)置里把分配內(nèi)存調(diào)到 12GB 以上?,F(xiàn)象:上傳某類文件失敗。原因:該格式?jīng)]有對應(yīng)解析器,或文件損壞。 解法:對照 py/core/examples/supported_file_types/ 里的示例確認格式在支持列表內(nèi),換個文件重試。?? 調(diào)優(yōu)建議分塊別貪大:chunk_size調(diào)小(如 512)檢索更精準,調(diào)大(如 2048)上下文更完整,按文檔長度二選一即可。混合檢索打開:語義檢索加關(guān)鍵詞檢索一起用(RRF 融合排序),專有名詞多的場景命中率明顯更高。并發(fā)限流:concurrent_request_limit控制模型并發(fā),本機跑 Ollama 時調(diào)低(比如 2~4),避免顯存被打爆。定期備份:postgres_data卷里存著全部文檔和向量,docker run -v導(dǎo)出該卷即可,換機遷移也靠它。提示詞在線改:面板設(shè)置頁直接編輯各場景的提示詞模板,不用重啟服務(wù),見 docs/cookbooks/images/application/settings_prompts.png 對應(yīng)的設(shè)置界面。下一步系統(tǒng)跑通之后,把真實工作文檔批量傳進集合里,用聊天功能驗證檢索質(zhì)量。如果問答還不夠聰明,再去 py/core/configs/ 里挑一份更細的模型配置替換,然后按排障清單核對一遍環(huán)境變量。【免費下載鏈接】R2RSoTA production-ready AI retrieval system. Agentic Retrieval-Augmented Generation (RAG) with a RESTful API.項目地址: https://gitcode.com/GitHub_Trending/r2/R2R創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考