Skip to content

Latest commit

 

History

History
258 lines (224 loc) · 9.74 KB

File metadata and controls

258 lines (224 loc) · 9.74 KB

Estructura de Documentación del Proyecto

Este documento muestra la estructura completa de la documentación del proyecto para navegación rápida.

📁 Árbol de Documentación

demo-ray-serving/
│
├── 📘 README.md                          ← README PRINCIPAL
│   ├── Descripción general del proyecto
│   ├── Comparación de arquitecturas
│   ├── Guía de inicio rápido
│   └── Referencias a todos los módulos
│
├── 📂 training/                   ← MÓDULO DE ENTRENAMIENTO
│   └── 📘 README.md
│       ├── Entrenamiento distribuido con Ray Train
│       ├── Descarga de datasets de ventas
│       ├── Exportación a ONNX
│       └── Pipeline completo de training
│
├── 📂 profit/                            ← MÓDULOS DE PRODUCCIÓN
│   │
│   ├── 📘 README.md                      ← Guía de módulos de producción
│   │   ├── Comparación detallada de arquitecturas
│   │   ├── Métricas de performance
│   │   └── Guía de decisión de arquitectura
│   │
│   ├── 📂 ray/                           ← Ray Serve Puro
│   │   └── 📘 README.md
│   │       ├── Arquitectura y componentes
│   │       ├── Despliegue en Kubernetes
│   │       ├── Publicación en GCP
│   │       └── API endpoints y ejemplos
│   │
│   ├── 📂 triton/                        ← Triton Inference Server
│   │   └── 📘 README.md
│   │       ├── Pipeline de ensemble
│   │       ├── Configuración de modelos
│   │       ├── Testing y validación
│   │       └── Monitoreo con Prometheus
│   │
│   ├── 📂 ray-triton-separados/          ← Ray + Triton (Microservicios)
│   │   └── 📘 README.md
│   │       ├── Arquitectura de seguridad
│   │       ├── Docker Compose setup
│   │       ├── Comunicación entre servicios
│   │       └── Endpoints y API Gateway
│   │
│   └── 📂 ray+triton-combinados/         ← Ray + Triton (Contenedor único)
│       └── 📘 README.md
│           ├── Configuración combinada
│           ├── Optimización de latencia
│           ├── Despliegue en Kubernetes
│           └── Troubleshooting específico
│
└── 📂 examples/               ← EJEMPLOS DE APRENDIZAJE
    └── 📘 README.md
        ├── Tutorial paso a paso
        ├── app1.py: Servicio simple
        ├── app2.py: Múltiples deployments
        └── app3.py: FastAPI integration

🗺️ Mapa de Navegación

Para Principiantes

  1. Empieza con: README.md - Visión general
  2. Aprende con: examples/README.md
  3. Entrena modelo: training/README.md
  4. Explora: profit/README.md - Comparación de arquitecturas

Para Desarrolladores

  1. Entrenar modelo: training/README.md
  2. Comparar opciones: profit/README.md
  3. Elegir arquitectura según caso de uso
  4. Seguir README específico del módulo elegido

Para DevOps/Producción

  1. Revisar: README.md - Requisitos y setup
  2. Entrenar modelo (si necesario): training/README.md
  3. Comparar: profit/README.md - Métricas y decisiones
  4. Implementar:

📊 Contenido por Módulo

README Principal (/README.md)

  • ✅ Descripción del proyecto completo
  • ✅ Tabla comparativa de arquitecturas
  • ✅ Guía de decisión (¿Cuál elegir?)
  • ✅ Inicio rápido para cada módulo (incluye training)
  • ✅ Troubleshooting general
  • ✅ Recursos y referencias

Training README (/training/README.md)

  • ✅ Entrenamiento distribuido con Ray Train
  • ✅ Descarga de datasets de ventas (Excel BI Analytics)
  • ✅ Configuración y parámetros
  • ✅ Uso básico y avanzado
  • ✅ Exportación a ONNX
  • ✅ Pipeline completo
  • ✅ Troubleshooting de training

Profit README (/serving/README.md)

  • ✅ Descripción del modelo de negocio
  • ✅ Comparación detallada de 4 arquitecturas
  • ✅ Métricas de performance estimadas
  • ✅ Guía de decisión por caso de uso
  • ✅ Formato de datos común
  • ✅ Troubleshooting específico de profit

Ray Serve (/serving/1-ray-serve/README.md)

  • ✅ Arquitectura y flujo de datos
  • ✅ Componentes principales (serve.py, schema.py)
  • ✅ Preprocesamiento detallado
  • ✅ Despliegue con Docker y Kubernetes
  • ✅ Publicación en GCP (Artifact Registry y Container Registry)
  • ✅ Endpoints API con ejemplos curl
  • ✅ Troubleshooting de GCP y permisos

Triton Server (/serving/2-triton-server/README.md)

  • ✅ Arquitectura de ensemble (Python + ONNX)
  • ✅ Estructura del model_repository
  • ✅ Configuración rápida con Docker
  • ✅ Testing individual y completo
  • ✅ Despliegue en Kubernetes
  • ✅ Personalización de preprocesamiento
  • ✅ Monitoreo con métricas Prometheus

Ray + Triton Microservices (/serving/3-ray-triton-microservices/README.md)

  • ✅ Arquitectura de microservicios
  • ✅ Modelo de seguridad (Triton interno)
  • ✅ Docker Compose setup completo
  • ✅ Variables de entorno
  • ✅ Preprocesamiento en Ray (local)
  • ✅ Comunicación Ray ↔ Triton
  • ✅ Testing con curl y Python
  • ✅ Despliegue en Kubernetes

Ray + Triton Single (/serving/4-ray-triton-single/README.md)

  • ✅ Arquitectura de contenedor único
  • ✅ Configuración combinada
  • ✅ Dockerfile con Triton embebido
  • ✅ Optimización de latencia
  • ✅ Despliegue en Kind/Kubernetes
  • ✅ Comandos todo-en-uno
  • ✅ Limpieza de recursos Docker

Ray Simple Examples (/examples/README.md)

  • ✅ Tutorial paso a paso
  • ✅ app1.py: Servicio básico (Faker)
  • ✅ app2.py: Múltiples deployments comunicándose
  • ✅ app3.py: FastAPI con Pydantic
  • ✅ Conceptos clave de Ray Serve
  • ✅ Comandos de ejecución

🎯 Flujos de Uso Recomendados

Flujo 1: Aprender Ray Serve

1. README.md (Sección "Conceptos Clave")
   ↓
2. examples/README.md
   ↓
3. Ejecutar app1.py, app2.py, app3.py
   ↓
4. serving/1-ray-serve/README.md (Caso real)

Flujo 2: Implementar en Producción

1. README.md (Visión general)
   ↓
2. profit/README.md (Comparar arquitecturas)
   ↓
3. Decidir arquitectura según caso de uso
   ↓
4. README del módulo específico
   ↓
5. Implementar y desplegar

Flujo 3: Troubleshooting

1. README del módulo específico (sección Troubleshooting)
   ↓
2. profit/README.md (Troubleshooting común)
   ↓
3. README.md principal (Problemas generales)
   ↓
4. Logs y debugging

📝 Checklists de Implementación

Checklist: Ray Serve

  • Leer serving/1-ray-serve/README.md
  • Verificar preprocessing_info.pkl existe
  • Construir imagen Docker
  • Cargar en kind/minikube o push a GCP
  • Aplicar config-serve-docker.yaml
  • Port-forward y probar endpoint /predict
  • Verificar logs del pod

Checklist: Triton Server

  • Leer serving/2-triton-server/README.md
  • Verificar estructura model_repository/
  • Construir imagen o usar base de NVIDIA
  • Ejecutar con Docker o Kubernetes
  • Verificar health: /v2/health/ready
  • Probar ensemble con cliente Python
  • Revisar métricas en puerto 8002

Checklist: Ray + Triton Microservices

  • Leer serving/3-ray-triton-microservices/README.md
  • Verificar docker-compose.yaml
  • Configurar variables de entorno
  • Ejecutar docker-compose up --build
  • Verificar ambos servicios (Ray:8080, Triton:8000)
  • Probar endpoint /predict de Ray
  • Verificar comunicación entre servicios

Checklist: Ray + Triton Single

  • Leer serving/4-ray-triton-single/README.md
  • Verificar Dockerfile con Triton base
  • Construir imagen combinada
  • Cargar en kind o push a registry
  • Aplicar config-serve-docker.yaml
  • Verificar pod con ambos procesos
  • Probar endpoint y verificar latencia

🔗 Links Rápidos

Módulo README Dockerfile Config K8s Docker Compose
Training 📘
Ray Serve 📘 🐳 ☸️
Triton Server 📘 🐳 ☸️
Ray+Triton Sep 📘 🐳 🐳 ☸️ 🐙
Ray+Triton Comb 📘 🐳 ☸️

📚 Recursos Externos


Tip: Usa este documento como índice para navegar rápidamente por toda la documentación del proyecto.

Última actualización: Diciembre 2025