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
로 시작하여 설정 프로세스에 익숙해집니다. 다른 Notebook을 순차적으로 진행하여 더욱 발전된 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.