Langflow¶
Langflow sirve como gestor visual de flujos para la capa de decision IA de MDU. Aunque los flujos se disenan en la interfaz de Langflow, la ejecucion se realiza via llamadas directas a la API de OpenAI GPT-4o para mayor fiabilidad y velocidad.
Configuracion¶
- Contenedor:
mdu-langflowen/opt/langflow/ - Puerto:
127.0.0.1:7860(solo interno) - Credenciales:
langflow/langflow - Acceso: Nginx restringe a
127.0.0.1,10.x,172.xsolamente
Flujos¶
Flow 1 — Optimizador de Prompt¶
ID: 072376c5
Usado por: routes.js (mdu-api, ~linea 1323)
Trigger: Antes de generate-model para peticiones solo de texto
Optimiza prompts del usuario para mejor generacion 3D:
- Mejora el prompt con detalles especificos de miniaturas
- Selecciona el proveedor optimo (Tripo vs Meshy)
- Anade indicaciones de pose, escala y nivel de detalle
Flow 2 — Evaluador de Calidad¶
ID: 871c5ea1
Usado por: main.py (stl-pipeline, linea 335)
Trigger: Despues de reparacion admesh en pipeline STL
Enruta mallas por niveles de calidad:
| Decision | Accion |
|---|---|
| FAST | Saltar validacion detallada |
| FULL | Ejecutar suite de validacion completa |
| REJECT | Fallar el trabajo inmediatamente |
Flow 3 — Decision de Remix¶
ID: 0dfbf800
Usado por: main.py (stl-pipeline, linea 384)
Trigger: Despues de validacion STL
| Decision | Accion |
|---|---|
| PASS | Modelo listo para imprimir |
| REMIX | Badge en metadata (sugerir re-generacion) |
| ESCALATE | Marcar para revision manual |
Flow 4 — Personalizador de Bases¶
ID: d547d13c
Usado por: routes.js (mdu-api, ~linea 2838)
Trigger: POST /api/generate-base
Genera codigo Python build123d para bases parametricas:
Arquitectura de Ejecucion¶
Langflow UI (diseno de flujos)
|
v
Definiciones de flujos (JSON)
|
v
callLangflow() en routes.js / _call_flow() en main.py
|
v
Llamada directa API GPT-4o (NO contenedor Langflow)
|
v
Respuesta parseada → accion
Info
callLangflow() en langflow.cjs puede llamar al contenedor Langflow via header x-api-key, pero la ruta de ejecucion principal usa llamadas directas a OpenAI para fiabilidad. La funcion devuelve null en cualquier error (degradacion graciosa).