Skip to content

idilioga/rag-chatbot-local

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 LangChain RAG Chatbot

Transforma tus documentos estáticos en una base de conocimientos inteligente.


📖 Descripción General

Este proyecto es un sistema RAG (Retrieval-Augmented Generation) que permite cargar archivos (PDF, DOCX, HTML) y realizar consultas usando Gemini 2.5 Flash y Gemma 3.

✨ Características Principales

  • Multiformato: Soporta .pdf, .docx y .html.
  • Arquitectura: Backend con FastAPI y Frontend con Streamlit.
  • Base de Datos: Usa ChromaDB para recuperación de información.
  • Memoria: Historial de chat almacenado en SQLite.
  • RAG-Fusion: Crea 4 "queries" relacionados con la pregunta del usuario y hace retrieve de cada uno, devolviendo los dos chunks más relacionados para cada. Luego, rankea los 8 chunks retrieved (4 queries * 2 chunks). Estos chunks pueden ser repetidos. Finalmente, devuelve como contexto los cuatro chunks mejor rankeados.

🛠️ Tecnologías

Componente Tecnología
IA Framework LangChain & LangGraph
Modelos Gemini & Gemma
API FastAPI
UI Streamlit

🚀 Instalación y Uso

  1. Instalar dependencias: pip install -r requirements.txt

  2. Backend (API): uvicorn api.main:app --host 0.0.0.0 --port 10000

  3. Frontend (App): streamlit run app/streamlit_app.py


📂 Estructura

  • /api: Servidor FastAPI y lógica de LangChain.
  • /app: Interfaz de usuario en Streamlit.
  • chroma_db/: Base de datos vectorial persistente.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%