Saltar al contenido
hg.Héctor GarridoCiencia de datos y economía

El cuaderno

Notas de investigación, decisiones de ingeniería y aprendizajes de proyectos reales. Ciencia de datos explicada desde la práctica.

Señales cruzadas: validación con búsquedas reales y matching de proveedores

Este artículo técnico aborda la problemática de identificar tendencias de productos basadas únicamente en la oferta del marketplace, que no siempre reflejan la demanda real de los consumidores. Para solucionarlo, se implementa un sistema que combina datos de Google Trends con información del marketplace, utilizando Reciprocal Rank Fusion para crear un ranking unificado. Además, se realiza scraping de sitios de proveedores mayoristas y se aplica matching semántico mediante embeddings de Vertex AI para estimar márgenes. El lector aprenderá sobre la integración de múltiples fuentes de datos, técn

Ecommerce Analytics

Cómo Rescaté el Chatbot: Reverts, Streaming SSE y Conversaciones Multi-turno

Este artículo relata la depuración de un chatbot que fallaba en producción tras la implementación de conversaciones multi-turno. Se describe cómo un simple revert inicial permitió aislar una serie de problemas subyacentes, desde errores de CORS y health checks mal configurados hasta el manejo incorrecto de streams SSE y la respuesta de la API de Vertex AI. El lector aprenderá sobre estrategias de depuración en producción, la importancia de un buen manejo de errores en streams y cómo solucionar problemas comunes al integrar APIs de LLMs.

Portafolio RAG

Cinco Bugs en Cadena: Una Noche Arreglando el Admin de Django en Producción

Este artículo técnico detalla la resolución de cinco bugs críticos encontrados en el panel de administración de Django en un entorno de producción. El primer bug, un error 503, se debió a una señal sincrónica que bloqueaba Gunicorn al interactuar con Vertex AI. La solución implicó el uso de `transaction.on_commit()` y hilos daemon. El segundo bug, también un error 503, fue causado por un fallo en la verificación CSRF debido a un problema de parsing en GitHub Actions. Aprenderás sobre el manejo de señales en Django, la configuración de Gunicorn y la depuración de errores en entornos de producc

Portafolio RAG

Mejoras al Motor RAG: Restricción de Contenido, Resiliencia y LaTeX

Este artículo técnico aborda tres problemas comunes en la implementación de un motor RAG (Retrieval-Augmented Generation). Primero, cómo evitar que el modelo responda con conocimiento general en lugar de basarse en el contexto recuperado. Segundo, cómo manejar errores transitorios de la API de Vertex AI para evitar cachear respuestas fallidas. Tercero, cómo mejorar la selección de fuentes relevantes. Se implementan restricciones en el prompt, lógica de reintentos con backoff exponencial y un sistema dinámico de selección de fuentes. El lector aprenderá técnicas para construir sistemas RAG más

Portafolio RAG

Vertex AI Exclusivo, Resiliencia y la Última Milla: Paginación

Este artículo describe la migración de un motor RAG desde una arquitectura multi-proveedor (SBERT, Ollama y Vertex AI) a una solución exclusiva con Vertex AI, explicando las razones detrás de esta decisión y el refactor resultante. Además, aborda un problema intermitente de carga de datos en la página de inicio debido a cold starts de Cloud Run. La solución implementada involucra un mecanismo de retry con exponential backoff en el cliente API (JavaScript/Axios). Aprenderás sobre las ventajas de simplificar la arquitectura, el manejo de cold starts y la implementación de retries.

Portafolio RAG

# Despliegue Full-Stack Serverless en Google Cloud Platform

Este artículo detalla el despliegue de una aplicación full-stack serverless en Google Cloud Platform. Se describe la arquitectura, que incluye un frontend React en Cloud Run, un backend Django con DRF también en Cloud Run, una base de datos PostgreSQL en Cloud SQL con pgvector, y Vertex AI para embeddings y generación de lenguaje. Aprenderás a configurar el proyecto en GCP, habilitar las APIs necesarias, configurar las credenciales y crear una instancia de PostgreSQL en Cloud SQL. Se explica la migración a Neon PostgreSQL serverless.

Portafolio RAG

De Búsqueda por Keywords a RAG: Cómo le Enseñé a Mi Blog a Entender Preguntas

Este artículo técnico describe cómo se implementó un motor de búsqueda semántica para un blog personal, superando las limitaciones de la búsqueda por keywords tradicional. Se explica el concepto de embeddings, la similitud coseno y la transición de un modelo local (SBERT) a Vertex AI `text-embedding-005`. El lector aprenderá sobre el pipeline de indexación, la justificación para usar `pickle` en lugar de `pgvector` y los desafíos de convertir texto en representaciones numéricas significativas para mejorar la experiencia de búsqueda.

Portafolio RAG