MCP-RAG: RAG를 사용한 모델 컨텍스트 프로토콜 🚀
GroundX와 OpenAI를 사용하여 강력하고 효율적인 RAG(Retrieval-Augmented Generation)를 구현했으며, MCP(Modern Context Processing)로 구축되었습니다.
🌟 특징
- 고급 RAG 구현 : 고정확도 문서 검색을 위해 GroundX 활용
- 모델 컨텍스트 프로토콜 : 향상된 컨텍스트 처리를 위한 MCP와의 원활한 통합
- Type-Safe : 강력한 유형 검사 및 검증을 위해 Pydantic으로 구축됨
- 유연한 구성 : 환경 변수를 통해 설정을 쉽게 사용자 정의할 수 있습니다.
- 문서 수집 : PDF 문서 수집 및 처리 지원
- 지능형 검색 : 점수 매기기 기능이 포함된 의미 검색 기능
🛠️ 필수 조건
- Python 3.12 이상
- OpenAI API 키
- GroundX API 키
- MCP CLI 도구
📦 설치
- 저장소를 복제합니다.
지엑스피1
- 가상 환경을 만들고 활성화하세요.
uv sync
source .venv/bin/activate # On Windows, use `.venv\Scripts\activate`
⚙️ 구성
- 예제 환경 파일을 복사하세요.
.env
에서 환경 변수를 구성하세요.
GROUNDX_API_KEY="your-groundx-api-key"
OPENAI_API_KEY="your-openai-api-key"
BUCKET_ID="your-bucket-id"
🚀 사용법
서버 시작
다음을 사용하여 검사 서버를 실행합니다.
문서 수집
새 문서를 수집하려면:
from server import ingest_documents
result = ingest_documents("path/to/your/document.pdf")
print(result)
검색 수행
기본 검색어:
from server import process_search_query
response = process_search_query("your search query here")
print(f"Query: {response.query}")
print(f"Score: {response.score}")
print(f"Result: {response.result}")
사용자 정의 구성:
from server import process_search_query, SearchConfig
config = SearchConfig(
completion_model="gpt-4",
bucket_id="custom-bucket-id"
)
response = process_search_query("your query", config)
📚 종속성
groundx
(≥2.3.0): 핵심 RAG 기능openai
(≥1.75.0): OpenAI API 통합mcp[cli]
(≥1.6.0): 최신 컨텍스트 처리 도구ipykernel
(≥6.29.5): Jupyter Notebook 지원
🔒 보안
- API 키가 포함된
.env
파일을 커밋하지 마십시오. - 모든 민감한 정보에 환경 변수를 사용하세요
- API 키를 정기적으로 순환하세요
- 승인되지 않은 액세스에 대한 API 사용을 모니터링합니다.
🤝 기여하기
- 저장소를 포크하세요
- 기능 브랜치를 생성합니다(
git checkout -b feature/amazing-feature
) - 변경 사항을 커밋하세요(
git commit -m 'Add some amazing feature'
) - 브랜치에 푸시(
git push origin feature/amazing-feature
) - 풀 리퀘스트 열기