MCP-RAG: Protocolo de Contexto Modelo con RAG 🚀
Una implementación potente y eficiente de RAG (Recuperación-Generación Aumentada) que utiliza GroundX y OpenAI, construida con Procesamiento de Contexto Moderno (MCP).
🌟 Características
Implementación avanzada de RAG : utiliza GroundX para la recuperación de documentos de alta precisión
Protocolo de contexto del modelo : integración perfecta con MCP para un mejor manejo del contexto
Type-Safe : Creado con Pydantic para una verificación y validación de tipos robustas
Configuración flexible : configuraciones fáciles de personalizar a través de variables de entorno
Ingestión de documentos : Soporte para la ingesta y el procesamiento de documentos PDF
Búsqueda inteligente : capacidades de búsqueda semántica con puntuación
Related MCP server: MCP-RAG Server
🛠️ Requisitos previos
Python 3.12 o superior
Clave API de OpenAI
Clave API de GroundX
Herramientas CLI de MCP
📦 Instalación
Clonar el repositorio:
git clone <repository-url>
cd mcp-ragCrear y activar un entorno virtual:
uv sync
source .venv/bin/activate # On Windows, use `.venv\Scripts\activate`⚙️ Configuración
Copie el archivo de entorno de ejemplo:
cp .env.example .envConfigure sus variables de entorno en
.env:
GROUNDX_API_KEY="your-groundx-api-key"
OPENAI_API_KEY="your-openai-api-key"
BUCKET_ID="your-bucket-id"🚀 Uso
Iniciando el servidor
Ejecute el servidor de inspección usando:
mcp dev server.pyIngestión de documentos
Para ingerir nuevos documentos:
from server import ingest_documents
result = ingest_documents("path/to/your/document.pdf")
print(result)Realizar búsquedas
Consulta de búsqueda básica:
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}")Con configuración personalizada:
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)📚 Dependencias
groundx(≥2.3.0): Funcionalidad principal de RAGopenai(≥1.75.0): integración de API OpenAImcp[cli](≥1.6.0): Herramientas modernas de procesamiento de contextoipykernel(≥6.29.5): compatibilidad con Jupyter Notebook
🔒 Seguridad
Nunca confirmes tu archivo
.envque contiene claves APIUtilice variables de entorno para toda la información confidencial
Rote regularmente sus claves API
Supervisar el uso de la API para detectar cualquier acceso no autorizado
🤝 Contribuyendo
Bifurcar el repositorio
Crea tu rama de funciones (
git checkout -b feature/amazing-feature)Confirme sus cambios (
git commit -m 'Add some amazing feature')Empujar a la rama (
git push origin feature/amazing-feature)Abrir una solicitud de extracción