Skip to content

JoacoCavarzan/PiData

Repository files navigation

Logo del Proyecto

RAG with LLM API

Este proyecto implementa una solución simple de tipo RAG (retrieved augmented generation) utilizando un LLM (large language model) a través de una API desarrollada con FastAPI en Python. La API permite a los usuarios hacer preguntas sobre un documento específico y recibir respuestas generadas por el LLM.


Características

  • Desarrollado con FastAPI en Python.
  • Utiliza Cohere para la generación de respuestas.
  • Almacena fragmentos del documento en ChromaDB para la búsqueda de contextos relevantes.
  • Incluye manejo de errores para una experiencia robusta.
  • Ofrece una estructura organizada y modular.

⚙️ Requisitos

  • Python 3.7 o superior.
  • Acceso a internet para comunicación con Cohere API.

🛠️ Instalación

  1. Clona este repositorio en tu máquina local:

git clone https://github.com/JoacoCavarzan/PiData

  1. Accede al directorio del proyecto:
bash

cd PiData

  1. Crea un entorno virtual e instala las dependencias:
bash

python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -r requirements.txt

  1. Configura las variables de entorno en un archivo .env:
plaintext

COHERE_API_KEY=tu_clave_de_api_de_cohere

🚀 Uso

  1. Inicia el servidor de desarrollo:
bash

uvicorn app.main:app --reload

  1. Abre tu navegador y visita http://localhost:8000/docs para acceder a la documentación de la API Swagger.
  2. Realiza una solicitud POST a /ask/ con el siguiente JSON en el cuerpo de la solicitud:
json

{ "user_name": "John Doe", "question": "How are you today?" }

🤝 Contribución

¡Toda contribución es bienvenida! Si deseas contribuir al proyecto, sigue estos pasos:

  1. Haz un fork del repositorio.
  2. Crea una nueva rama (git checkout -b feature/nueva-funcionalidad).
  3. Realiza tus cambios y haz commit (git commit -am 'Agrega nueva funcionalidad').
  4. Sube tus cambios a tu fork (git push origin feature/nueva-funcionalidad).
  5. Crea un nuevo Pull Request.

📝 Licencia

Este proyecto está bajo la licencia MIT.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published