Antes de empezar: versiones y qué vas a tocar
Manufacturing AI Work-Instruction Copilot está publicado en Odoo Apps para Odoo 17.0, 18.0 y 19.0. En las tres fichas cuesta 49 € sin IVA, pago único por versión.
La puesta en marcha pasa por cuatro pantallas: el asistente AI Provider Setup, los ajustes del módulo, la lista de Prompt Templates y la lista AI Work Instructions › AI Providers. Después, durante la primera semana, entran en juego AI Work Instructions › Reporting › AI Cost (Estimated) y los campos de estado de los registros. Si antes quieres una vista general de menús y registros, tienes cómo funciona el módulo por dentro.
El caso: Mecanizados Albera pone en marcha el copiloto
Ejemplo Caso ilustrativo: la empresa y sus datos son inventados para explicar el flujo.
Mecanizados Albera es una empresa inventada que fabrica piezas mecanizadas y trabaja con Odoo 18. Marta, su responsable de producción, ha instalado el módulo y quiere dejarlo listo para que su equipo revise las primeras instrucciones de trabajo. Este es el orden que sigue ella.
Primer paso: crear el proveedor de IA
Marta abre el diálogo AI Provider Setup. Escribe un nombre en Name, elige Ollama (self-hosted) en Provider Type, rellena Model Name (llega vacío, con un texto de ejemplo) y revisa Api Url, que aparece apuntando a localhost. Pulsa Create Provider.

El proveedor aparece en AI Work Instructions › AI Providers. En la base de Marta hay dos filas, una de OpenAI y otra llamada Ollama Local, las dos de tipo Ollama (self-hosted).

AI Work Instructions › AI Providers con dos proveedores y todos los costes todavía a ceroEl módulo define un estado de conexión, connection_status, con tres valores: Unknown, OK y Error. Marta no da este paso por cerrado hasta ver OK.
Segundo paso: los ajustes del módulo
En la pantalla de ajustes, el módulo agrupa sus opciones en Generation & Caching y Data & Privacy. Estos son los campos, con su etiqueta y su nombre técnico:
AI Cache TTL (days)(mai_cache_ttl_days), un número entero de días.Pre-Generation Batch Size(mai_pregen_batch), un número entero.Output Content Filter(mai_content_filter_enabled), una casilla.Q&A Retention (days)(mai_retention_days), un número entero de días.Training Cleanup (days)(mai_training_retention_days), un número entero de días.Max Attachment Size (MB)(mai_max_attachment_mb), un número entero.Structured JSON Logs(mai_json_logs), una casilla.
Marta no improvisa los números: los días de retención los acuerda con quien lleva la protección de datos en la empresa, y el tamaño máximo de adjunto con quien prepara los planos y documentos. Marca Output Content Filter y activa Structured JSON Logs porque su equipo de sistemas se lo ha pedido.
Tercer paso: revisar las plantillas de prompt
En la lista de Prompt Templates encuentra seis plantillas por sector: Assembly, Chemical, Food & Beverage, General, Machining y Packaging. La lista muestra columnas de etiqueta, predeterminado, versión y activo. Como Albera mecaniza, Marta se fija en la de Machining y comprueba en esas columnas cuál está marcada como predeterminada y cuáles están activas.
Los estados que va a ver Marta en cada registro
El módulo trabaja con varios campos de estado. Los listamos con sus valores tal como los define el módulo; esta página no asume transiciones que el código no describa.
- Pregeneración (
ai_pre_generation_state):Not Started,Queued,GeneratedyError. - Estado de la instrucción (
ai_instruction_status):Not Generated,Draft,Pending Approval,ApprovedyLocked. - Aprobación (
state):Pending ApprovalyApproved. - Otro campo
state, con más valores:Draft,Pending Approval,Approved,LockedyReplaced.
Para Marta lo útil es distinguir los campos: Replaced solo existe en el último, y Queued y Generated pertenecen al de pregeneración, no al de la instrucción. Si alguien de su equipo dice «está aprobada», le pregunta en qué campo lo ha visto.
Lo que revisa Marta la primera semana
Con el módulo ya en uso, Marta se reserva un rato cada mañana para estas comprobaciones:
- El estado de conexión: si aparece
Erroro se queda enUnknown, lo anota antes de seguir generando. - Los registros con
ai_pre_generation_stateenErroro que siguen enQueued. - Las instrucciones en
Pending Approval, para que alguien con criterio técnico las revise. - La lista
AI Work Instructions › Reporting › AI Cost (Estimated), donde de momento solo ve sus dos proveedores con los costes a cero. - Los valores de
Pre-Generation Batch SizeyMax Attachment Size (MB), por si quiere ajustarlos con lo aprendido.

AI Cost (Estimated) en la primera semana: los dos proveedores y los costes a cero, aún sin registros de consumoTambién abre el diálogo Manufacturing AI GDPR para saber qué pide antes de necesitarlo. Ve el campo Mode en Data Subject Access (export), los campos Data Subject y Limit to Work Order, y los botones Run y Close. No ejecuta nada: solo se familiariza con él.

Manufacturing AI GDPR con Data Subject y Limit to Work Order sin rellenar, aún sin registrosCuando algo no cuadra y aparece un aviso, Marta acude a los mensajes de error del módulo explicados uno a uno.
Qué aprender del caso
La puesta en marcha es más ordenada si separas tres cosas: el proveedor de IA, los ajustes y las plantillas. Cada una vive en su pantalla y se puede revisar por separado.
Los números de los ajustes no son decisiones técnicas sin más: los días de Q&A Retention (days) y Training Cleanup (days) conviene acordarlos con quien responde de los datos en tu empresa.
Y los estados: el módulo tiene más de un campo de estado, con valores que se repiten (Pending Approval, Approved). Saber en qué campo estás mirando evita malentendidos en el equipo.
Cómo te ayuda FlexigoTech
En FlexigoTech implantamos Odoo 17, 18, 19 y 20 y desarrollamos conectores e integraciones a medida. Si quieres que te acompañemos en la puesta en marcha del copiloto o adaptarlo a tu planta, tienes los detalles en la página del módulo en flexigotech.com y en su ficha de Odoo Apps.
Sigue leyendo
Comprobado en el código del módulo (versión 19.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/res_config_settings.py
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/mrp_ai_provider.py
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/mrp_production.py
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/mrp_workorder.py
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/mrp_workorder_dependency.py
- Código del módulo: flexigo_manufacturing_ai_work_instruction_copilot 19.0 (40c663bd): models/mrp_workorder_instruction.py
- apps.odoo.com/apps/modules/19.0/flexigo_manufacturing_ai_work_instruction_copilot
- apps.odoo.com/apps/modules/17.0/flexigo_manufacturing_ai_work_instruction_copilot
- apps.odoo.com/apps/modules/18.0/flexigo_manufacturing_ai_work_instruction_copilot
- flexigotech.com/en/services.html
