Módulo 8: Proyecto Final Integrador

5. Etapa 4: Estimación de Costos

Descripción

En esta etapa calculas el costo mensual completo del sistema: setup inicial, infrastructure, queries, y mantenimiento. El presupuesto es $2000/mes.


Costo de setup inicial (una vez)

1. Hardware (si compra)

GPU server (para embeddings):
- NVIDIA T4 (16GB)
- 32GB RAM
- 500GB SSD
Costo: $3000 (compra) o $0.35/hora cloud ($250/mes)

Weaviate server:
- 16 vCPUs
- 64GB RAM
- 500GB SSD
Costo: $2000 (compra) o $0.34/hora cloud ($245/mes)

→ Opción recomendada: Cloud (no CAPEX, más flexible)

2. Indexación inicial

Embedding de 500K chunks (Sentence-BERT local):
- Tiempo: 8 horas
- Costo GPU: $0.35/hora × 8 = $2.80

Weaviate indexación:
- Tiempo: 2 horas
- Costo server: $0.34/hora × 2 = $0.68

Total setup: $3.48 (despreciable)

Costo mensual recurrente

Categoría 1: Infrastructure

GPU server (embeddings):
$0.35/hora × 730 horas/mes = $255/mes

Weaviate server:
$0.34/hora × 730 horas/mes = $248/mes

API server (FastAPI en AWS Lambda):
50K requests/mes × $0.0000002 = $0.01/mes (despreciable)
+ $5/mes (API Gateway)

Subtotal infrastructure: $508/mes

Categoría 2: LLM (GPT-3.5 Turbo)

Queries esperadas:

Total queries: 50K/mes
De las cuales:
- 40% son búsqueda simple (sin LLM): 20K
- 60% son Q&A (con LLM): 30K

Costo LLM:

Q&A queries: 30K/mes

Por query:
- Input: 2500 tokens (query + 5 chunks × 500 tokens)
- Output: 300 tokens (respuesta)
- Costo input: 2500 × $0.0005/1K = $0.00125
- Costo output: 300 × $0.0015/1K = $0.00045
- Costo total/query: $0.0017

Costo mensual LLM:
30K × $0.0017 = $51/mes

Categoría 3: Storage

Vector DB (Weaviate):
- 500K vectors × 768D × 4 bytes = 1.5GB
- HNSW graph: ~2GB
- Metadata + texto: ~3GB
Total: ~6.5GB

AWS EBS (SSD): $0.10/GB/mes
→ 6.5GB × $0.10 = $0.65/mes (despreciable)

Categoría 4: Monitoring y logs

CloudWatch (AWS):
- Logs: ~10GB/mes
- Metrics: Standard

Costo: ~$10/mes

Categoría 5: Re-indexación incremental

Nuevos documentos: +5K/año = ~417/mes

Re-indexación:
- Embedding: 417 docs × 5 chunks = 2085 chunks/mes
- Tiempo GPU: ~3 minutos/mes
- Costo: $0.35/hora × (3/60) = $0.018/mes (despreciable)

Resumen de costos mensuales

CategoríaCosto/mes
GPU server (embeddings)$255
Weaviate server$248
API server (Lambda + API Gateway)$5
LLM (GPT-3.5 Turbo)$51
Storage (EBS)$1
Monitoring (CloudWatch)$10
Re-indexación<$1
Total$570/mes

Análisis vs presupuesto

Presupuesto: $2000/mes
Costo real: $570/mes
Margen: $1430/mes (71% bajo presupuesto) ✅


Optimizaciones de costo

Si presupuesto fuera ajustado ($500/mes):

Opción 1: Eliminar GPU dedicada (usar CPU)

Sentence-BERT en CPU:
- Latency: 200ms/batch (vs 50ms en GPU)
- Impacto en query: +150ms
- Nueva latency total: 380ms (búsqueda), 1590ms (Q&A)
→ Aún < 2s target ✅

Ahorro: $255/mes
Nuevo total: $315/mes

Opción 2: Weaviate en servidor más pequeño

c5.xlarge (4 vCPUs, 8GB RAM):
- Costo: $0.17/hora = $124/mes (vs $248 actual)
- Trade-off: Latencia kNN +20ms (80ms → 100ms)

Ahorro: $124/mes
Nuevo total: $446/mes

Opción 3: Usar Llama 3 local (eliminar GPT-3.5)

Llama 3 8B (self-hosted):
- Requiere GPU adicional (NVIDIA A10): $0.60/hora = $438/mes
- Pero: Elimina costo GPT-3.5 ($51/mes)

Balance: +$387/mes (más caro) ❌
→ NO recomendado para este caso

Proyección de crecimiento

Año 1:

Queries: 50K/mes (constante)
Nuevos docs: +5K/año
Costo: $570/mes × 12 = $6,840/año

Año 2:

Queries: 75K/mes (+50% usuarios)
LLM cost: 45K × $0.0017 = $76.5/mes (+$25.5)
Nuevo total: $595.5/mes × 12 = $7,146/año

Año 5:

Docs: 100K + (5K × 5) = 125K docs (+25%)
Vectors: 625K (vs 500K inicial)
Weaviate: Requiere upgrade → c5.4xlarge ($0.68/hora = $496/mes)

Queries: 100K/mes (2x inicial)
LLM cost: 60K × $0.0017 = $102/mes

Nuevo total: $255 + $496 + $5 + $102 + $1 + $10 = $869/mes

→ Incluso en año 5, costo ($869/mes) < presupuesto ($2000/mes) ✅


Análisis de sensibilidad

¿Qué pasa si queries aumentan 10x?

Queries: 500K/mes (10x)
Q&A queries: 300K/mes

LLM cost: 300K × $0.0017 = $510/mes (vs $51 actual)

Nuevo total: $255 + $248 + $5 + $510 + $1 + $10 = $1,029/mes
→ Aún < $2000 presupuesto ✅

Pero: Latencia puede degradarse (GPU saturado)
→ Solución: Agregar segundo GPU server (+$255/mes)
→ Total: $1,284/mes (aún OK)

¿Qué pasa si usamos GPT-4 en lugar de GPT-3.5?

GPT-4 cost/query: $0.022 (vs $0.0017 GPT-3.5)
→ 13x más caro

LLM cost: 30K × $0.022 = $660/mes (vs $51 actual)

Nuevo total: $255 + $248 + $5 + $660 + $1 + $10 = $1,179/mes
→ Aún < $2000 presupuesto ✅

Trade-off: +$609/mes para mejor calidad (puede valer la pena)

Recomendaciones de costo

  1. Monitorear usage mensual:
    Alertas si costo > $700/mes (50% bajo presupuesto)

  2. Cachear queries frecuentes:
    Top-100 queries (30% de tráfico) → Ahorro $15/mes LLM

  3. Ajustar top-K si es posible:
    Si precision@10 > 0.80 con top-K=50 (en lugar de 100) → Latencia -20ms

  4. Evaluar GPT-4 en producción:
    A/B test: 10% tráfico GPT-4, 90% GPT-3.5
    Si calidad mejora significativamente → Aumentar % GPT-4


Resumen de costos

Costo mensual base: $570/mes (71% bajo presupuesto)

Breakdown:

  • Infrastructure (GPU + Weaviate): $503/mes (88%)
  • LLM (GPT-3.5): $51/mes (9%)
  • Otros (API, storage, monitoring): $16/mes (3%)

Margen: $1430/mes disponible para:

  • Upgrades (GPT-4, más GPUs, servidores más grandes)
  • Crecimiento (10x queries aún cabe en presupuesto)
  • Contingencia

Próxima etapa: 06-the-final-document.md — Consolidar todo en documento de diseño técnico.