If this project helps you, consider buying me a coffee ☕. Your support helps me keep contributing to the open-source community!
bRAGAI官方平台即將上線。加入候補名單,成為早期採用者之一!
該存儲庫包含對各種應用程式的檢索增強生成(RAG)的全面探索。每個筆記本都提供了詳細的實踐指南,用於設定和試驗 RAG,從入門級到高級實現,包括多重查詢和自訂 RAG 建置。
如果您想直接跳入其中,請查看檔案full_basic_rag.ipynb
-> 該檔案將為您提供完全可自訂的 RAG 聊天機器人的樣板起始程式碼。
確保在虛擬環境中運行您的檔案(請查看“ Get Started
”部分)
可以在目錄tutorial_notebooks/
下找到以下筆記本。
本介紹筆記本概述了 RAG 架構及其基本設定。筆記本走過:
本筆記本以基礎知識為基礎,介紹了 RAG 管道中的多重查詢技術,並探索:
本筆記本深入研究了客製化 RAG 管道。它涵蓋:
延續之前的定制,本筆記本探索:
最後一款筆記本匯集了 RAG 系統組件,重點在於可擴展性和優化:
先修條件:Python 3.11.7(首選)
克隆儲存庫:
git clone https://github.com/bRAGAI/bRAG-langchain.git
cd bRAG-langchain
建立虛擬環境
python -m venv venv
source venv/bin/activate
安裝相依性:確保安裝requirements.txt
中所列的所需軟體包。
pip install -r requirements.txt
執行筆記本:從[1]_rag_setup_overview.ipynb
開始熟悉設定過程。依序繼續瀏覽其他筆記本,以建立和試驗更高級的 RAG 概念。
設定環境變數:
複製根目錄中的.env.example
檔案並將其命名為.env
並包含以下按鍵(替換為您的實際鍵):
#LLM Modal
OPENAI_API_KEY="your-api-key"
#LangSmith
LANGCHAIN_TRACING_V2=true
LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
LANGCHAIN_API_KEY="your-api-key"
LANGCHAIN_PROJECT="your-project-name"
#Pinecone Vector Database
PINECONE_INDEX_NAME="your-project-index"
PINECONE_API_HOST="your-host-url"
PINECONE_API_KEY="your-api-key"
筆記本順序:以結構化方式追蹤項目:
從[1]_rag_setup_overview.ipynb
開始
繼續[2]_rag_with_multi_query.ipynb
然後遍歷[3]_rag_routing_and_query_construction.ipynb
繼續[4]_rag_indexing_and_advanced_retrieval.ipynb
以[5]_rag_retrieval_and_reranking.ipynb
結束
設定環境並按順序運行筆記本後,您可以:
嘗試檢索增強生成:使用[1]_rag_setup_overview.ipynb
中的基礎設定來了解 RAG 的基礎知識。
實作多重查詢:了解如何透過在[2]_rag_with_multi_query.ipynb
中引入多重查詢技術來提高回應相關性。
The notebooks and visual diagrams were inspired by Lance Martin's LangChain Tutorial.