Volver a los proyectos

Python · Automatización con IA

Un pipeline de IA que clasifica oportunidades y prepara candidaturas

Un flujo en Python que reúne empleos remotos de datos, elimina duplicados, evalúa la compatibilidad con varios proveedores de IA, prepara documentos personalizados y envía las mejores oportunidades por Telegram.

Data EngineeringApplied AI
Flujo programado histórico
236ejecuciones históricas
220ejecuciones exitosas
142pruebas en la última ejecución
3grupos de proveedores de IA

El problema

Qué necesitaba cambiar

Buscar vacantes relevantes implica visitar varias fuentes, revisar anuncios repetidos y preparar documentos similares una y otra vez. Quería un solo flujo que gestionara esas etapas y mantuviera un registro claro.

Mi enfoque

Cómo lo abordé

El flujo aplica reglas simples antes de consultar un modelo de IA, registra cada etapa en Supabase y prueba otro proveedor cuando el primero no está disponible.

Flujo del sistema

Cómo se conectan las partes

  1. 01Fuentes de empleo
  2. 02Recopilación asíncrona + normalización
  3. 03Eliminación de duplicados en Supabase
  4. 04Prefiltro determinista
  5. 05Evaluación + personalización LLM
  6. 06DOCX + entrega por Telegram

Lo que construí

Qué incluye

  • Adaptadores asíncronos para varias fuentes con eliminación de duplicados.
  • Prefiltro por reglas antes de la evaluación LLM para controlar coste y ruido.
  • Alternativas entre Gemini, Groq y OpenRouter con seguimiento de límites.
  • Telemetría de tokens, latencia, éxito y errores en cada intento.
  • Currículos y cartas personalizados en DOCX con escritura atómica.
  • Envío por Telegram y estado persistente para evitar notificaciones repetidas.

Decisiones clave

Elecciones que dieron forma al proyecto

01

Usar reglas antes de la IA

Las reglas simples eliminan incompatibilidades evidentes antes de llamar al modelo. Esto ahorra tiempo y hace que la primera etapa sea fácil de explicar.

02

Registrar cada alternativa

Los cambios de proveedor, límites, tiempos de respuesta y tokens quedan registrados en lugar de ocultarse en reintentos.

03

Evitar afirmaciones inventadas

Los resultados se comparan con el perfil estructurado; cualquier elemento sin respaldo vuelve a una selección determinista.

Resultado

Lo que entregué

El proyecto demuestra un flujo completo de automatización con recopilación, deduplicación, monitoreo de modelos, generación de documentos y entrega.

Próxima mejora

Qué haría después

Añadiría un conjunto fijo de evaluación, reactivaría la programación y crearía una página para monitorear fuentes, confiabilidad, coste y resultados.

Herramientas y métodos

PythonSupabaseGitHub ActionsGeminiGroqOpenRouterTelegrampython-docx

Siguiente caso de estudio

Ciclo de vida de baterías

Un informe interactivo en Power BI que ayuda a los equipos de operaciones a revisar la vida útil, comparar el consumo con promedios históricos, analizar dispositivos y planificar el mantenimiento por ubicación.

Seguir explorando