Skip to content

DaniDevGS/Ecommerce-API-RAG-DRF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ecommerce API RAG DRF

Django DRF Python AI

Ecommerce-API-RAG-DRF es un sistema backend robusto para eCommerce que integra un asistente virtual inteligente (Chatbot RAG) capaz de responder preguntas sobre el inventario en tiempo real utilizando búsqueda semántica y modelos de lenguaje grandes.

🚀 Descripción

Este es el proyecto de finalización de mi curso de "Desarrollo de APIs con arquitectura de Microservicios", este proyecto demuestra mi dominio de Python, desarrollo de APIs Rest usando Django Rest Framework y modelos de inteligencia artificial (LLM), en este RAG los modelos que use fueron los de la API de Groq. También se uso una base de datos vectorial para mejorar el contexto y las respuestas del RAG

📋 Requisitos Previos

  • Python: 3.10 o superior
  • Django: 5.2
  • Pip: Última versión
  • Venv: Recomendado para aislamiento de dependencias

🛠️ Instalación Paso a Paso

  1. Clonar el repositorio:

    git clone https://github.com/DaniDevGS/Ecommerce-API-RAG-DRF.git
    cd Ecommerce-API-RAG-DRF
  2. Crear y activar entorno virtual:

    python -m venv venv
    .\venv\Scripts\activate  # En Windows
    source venv/bin/activate # En Linux/Mac
  3. Instalar dependencias:

    pip install -r requirements.txt
  4. Configurar variables de entorno: Crea un archivo .env en la raíz del proyecto basándote en la sección de Variables de Entorno.

  5. Ejecutar migraciones:

    python manage.py migrate
  6. Iniciar el servidor:

    python manage.py runserver

🏗️ Estructura del Proyecto

graph TD
    A[Root] --> B[core]
    A --> C[productos]
    A --> D[tienda]
    A --> E[usuarios]
    A --> F[chatbot]

    B --> B1[settings.py]
    B --> B2[urls.py]

    C --> C1[Gestión de Productos/Categorías]
    D --> D1[Carrito y Órdenes de Compra]
    E --> E1[Gestión de Usuarios JWT]
    F --> F1[Lógica de IA y Vectores RAG]
Loading
  • core/: Configuración central del proyecto Django.
  • productos/: Modelos y vistas para el inventario, incluyen lógica de conversión de divisas.
  • tienda/: Gestión del flujo de compra (Carrito -> Orden -> Stock).
  • usuarios/: Autenticación personalizada con SimpleJWT.
  • chatbot/: Integración con Groq y Upstash Vector para asistencia inteligente.

🔑 Variables de Entorno

Variable Descripción Ejemplo Obligatoria
SECRET_KEY Llave secreta de Django django-insecure...
GROQ_API_KEY API Key para modelos de lenguaje Groq gsk_...
UPSTASH_VECTOR_REST_URL URL de la base de datos de vectores https://...upstash.io
UPSTASH_VECTOR_REST_TOKEN Token de Upstash Vector ABUF...
LLAMACPP_API Endpoint opcional para Llama.cpp http://localhost:8080/ No

🧪 Ejecución de Tests

Para validar que todo el sistema funciona correctamente:

python manage.py test

📄 Licencia

Este proyecto bajo la licencia de Uso Personal Únicamente. No está permitida la distribución, venta o uso en entornos de producción. Consulta el archivo LICENSE para más detalles.


About

Este es el proyecto de finalización de mi curso de "Desarrollo de APIs con arquitectura de Microservicios", este proyecto demuestra mi dominio de Python, desarrollo de APIs Rest usando Django Rest Framework y modelos de inteligencia artificial (LLM).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages