diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/README.md b/smartclass-odoo-basica/recursos/ejercicios/05-ia/README.md index fafa11b..0839219 100644 --- a/smartclass-odoo-basica/recursos/ejercicios/05-ia/README.md +++ b/smartclass-odoo-basica/recursos/ejercicios/05-ia/README.md @@ -1,3 +1,22 @@ -# Bloque 05 — ia +# Bloque 05 — IA -> Ejercicio pendiente. El walkthrough se generará con el skill `odoo-video-to-docs` y se moverá aquí desde `procesos/` una vez aprobado. +Walkthrough completo de las capacidades de Inteligencia Artificial en Odoo 19, +cubriendo agentes personalizados entrenados con documentos y automatizaciones +basadas en IA dentro del CRM. + +📄 [Configuración y uso de Inteligencia Artificial en Odoo (Agentes y CRM)](./ia-en-odoo-agentes-y-crm.md) + +## Contenido + +- Configuración de proveedores de IA (Google Gemini / OpenAI). +- Creación de un **Agente de garantía** entrenado con un PDF como fuente. +- Procesamiento manual de fuentes y embeddings en bases de test. +- Importación de leads al CRM. +- Puntuación predictiva de leads (algoritmo interno de Odoo). +- Reglas de automatización con **Actualizar con IA** para asignar vendedores + según el contenido en lenguaje natural del lead. + +## Material complementario + +Los archivos del ejercicio (`politica-garantia.pdf` y `crm-leads-import.xlsx`) +se entregan junto con el video; no se versionan en este repositorio. diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/ia-en-odoo-agentes-y-crm.md b/smartclass-odoo-basica/recursos/ejercicios/05-ia/ia-en-odoo-agentes-y-crm.md new file mode 100644 index 0000000..9ad8b79 --- /dev/null +++ b/smartclass-odoo-basica/recursos/ejercicios/05-ia/ia-en-odoo-agentes-y-crm.md @@ -0,0 +1,398 @@ +# Configuración y uso de Inteligencia Artificial en Odoo (Agentes y CRM) + +**Módulo:** IA / CRM +**Versión Odoo:** 19.0 +**Generado:** 2026-05-29 + +## Prerrequisitos + +- Módulo de IA instalado en la base. +- Credencial (API Key) de Google Gemini disponible. +- Archivo `politica-garantia.pdf` (provisto en el material del ejercicio). +- Archivo `crm-leads-import.xlsx` (provisto en el material del ejercicio). + +> **Nota sobre esta base:** en una instancia productiva los procesos de IA y las +> reglas de automatización corren de forma transparente. En la base de test +> usada para este ejercicio se ejecutan manualmente las acciones planificadas +> (paso 17) y se debe activar el modo desarrollador (paso 16). + +--- + +## Parte 1 — Configurar el proveedor de IA + +### Paso 1: Abrir Ajustes + +Desde el dashboard de Odoo, abrir la aplicación **Ajustes** para acceder a la +configuración del sistema. + +![Paso 1](media/paso-01-abrir-ajustes.png) + +### Paso 2: Ir a la sección IA + +Dentro de Ajustes, navegar a la pestaña **IA** desde la barra de pestañas +superior. Aquí se configuran los proveedores de Inteligencia Artificial +disponibles para la base: ChatGPT (OpenAI) y Google Gemini. + +![Paso 2](media/paso-02-seccion-ia.png) + +### Paso 3: Activar el proveedor Google Gemini + +Tildar la casilla **Usa tu propia cuenta de Google Gemini**. Alternativamente se +puede tildar la de ChatGPT (OpenAI) si se cuenta con esa cuenta. Cada proveedor +habilita los modelos correspondientes en la app de IA. + +![Paso 3](media/paso-03-tildar-gemini.png) + +### Paso 4: Pegar la API Key de Gemini + +Pegar la clave (API Key) de la cuenta de Google Gemini en el campo **Clave** +que aparece debajo de la casilla. La clave se almacena oculta una vez guardada. + +![Paso 4](media/paso-04-pegar-api-key.png) + +### Paso 5: Guardar la configuración del proveedor + +Hacer clic en **Guardar**. La página se recarga y el campo Clave muestra el +valor oculto, indicando que la credencial quedó registrada. + +![Paso 5](media/paso-05-guardar-proveedor.png) + +--- + +## Parte 2 — Crear el "Agente de garantía" + +### Paso 6: Abrir la aplicación IA + +Desde el menú de inicio, abrir la aplicación **IA**. Se ve la vista de +**Agentes** con dos agentes preexistentes: *Odoo Agent* (usa GPT-4o) y +*Ask AI* (usa Gemini 2.5 Flash). + +![Paso 6](media/paso-06-app-ia.png) + +### Paso 7: Crear un nuevo agente + +Hacer clic en **Nuevo** (parte superior izquierda) para abrir el formulario de +creación de un nuevo agente. + +![Paso 7](media/paso-07-nuevo-agente.png) + +### Paso 8: Asignar nombre al agente + +Escribir **Agente de garantía** en el campo *Nombre del agente*. + +![Paso 8](media/paso-08-nombre-agente.png) + +### Paso 9: Seleccionar el modelo de lenguaje + +Cambiar el modelo por defecto (GPT-4o) por uno de Google. En el video original +se usa *Gemini 1.5 Flash*, pero ese modelo fue deprecado por Google: usar +**Gemini 2.5 Flash** en su reemplazo. Esto es coherente con el proveedor +configurado en la Parte 1. + +> **Tip:** si al guardar aparece *"Gemini 1.5 Flash ya no está disponible"*, +> elegir un modelo más reciente como Gemini 2.5 Flash o Gemini 2.5 Pro. + +![Paso 9](media/paso-09-modelo-gemini.png) + +### Paso 10: Elegir el estilo de respuesta + +Dejar seleccionado **Equilibrado** como estilo de respuesta del agente. Los +otros estilos disponibles son *Analítico* y *Creativo*. + +![Paso 10](media/paso-10-estilo-equilibrado.png) + +### Paso 11: Definir la instrucción del sistema + +Escribir una instrucción base que defina el comportamiento del agente. En el +campo *Instrucción del sistema* ingresar: + +``` +Sos un agente que responde sobre la garantía de los productos +``` + +> **Tip:** cuanto más detallada y específica sea la instrucción, mejor será el +> rendimiento del agente. Acá se usa una versión mínima a modo de demostración. + +![Paso 11](media/paso-11-instruccion-sistema.png) + +### Paso 12: Limitar el agente a sus fuentes + +Tildar la opción **Limitar a las fuentes**. Con esta opción activa, el agente +sólo responde con la información provista en sus fuentes de conocimiento (en +este caso, el PDF de la política de garantía). + +![Paso 12](media/paso-12-limitar-fuentes.png) + +### Paso 13: Agregar una fuente + +En la sección *Fuentes* del agente, hacer clic en **Agregar una fuente**. Se +abre un modal con dos opciones: *Subir un archivo* o *Agregar un enlace*. + +![Paso 13](media/paso-13-modal-agregar-fuente.png) + +### Paso 14: Subir el PDF de política de garantía + +En el modal seleccionar **Subir un archivo** y elegir el archivo +`politica-garantia.pdf`. + +> **Tip:** el PDF debe contener texto real (no imágenes escaneadas) para que +> la IA pueda reconocer los caracteres. Un PDF generado desde un editor de +> texto funciona; un PDF escaneado como imagen no. + +![Paso 14](media/paso-14-subir-pdf.png) + +### Paso 15: Verificar el estado inicial de la fuente + +La fuente queda en estado **Procesando**. En una base de producción el +procesamiento corre automáticamente; en una base de test hay que ejecutar +manualmente dos acciones planificadas (siguientes pasos). + +![Paso 15](media/paso-15-agente-guardado.png) + +--- + +## Parte 3 — Procesar las fuentes manualmente + +### Paso 16: Activar el modo desarrollador + +Ir a **Ajustes → Ajustes generales** y desplazarse hasta la sección +*Herramientas de desarrollador*. Hacer clic en **Activar modo de desarrollador** +(la opción simple, sin assets ni tests). Esto habilita configuraciones +técnicas como las acciones planificadas. + +![Paso 16](media/paso-16-activar-developer.png) + +### Paso 17: Abrir Acciones planificadas + +Con el modo desarrollador activo, abrir la lista de **Acciones planificadas**. +Se puede acceder con `Ctrl+K` y buscar */Acciones planificadas* (ruta: +*Ajustes / Técnico / Automatización / Acciones planificadas*). + +![Paso 17](media/paso-17-acciones-planificadas.png) + +### Paso 18: Ejecutar "Fuentes del agente de IA: Procesar fuentes" + +Filtrar por *Procesar fuentes*, abrir la acción y hacer clic en +**Ejecutar de forma manual**. Esto procesa el PDF que se subió como fuente +del agente. + +![Paso 18](media/paso-18-ejecutar-procesar-fuentes.png) + +### Paso 19: Ejecutar "Incrustaciones de IA: Generar incrustaciones" + +Volver a la lista, abrir la acción **Incrustaciones de IA: Generar +incrustaciones** y ejecutarla manualmente. Esto genera los embeddings del +contenido procesado para que la IA pueda buscar en él. + +![Paso 19](media/paso-19-ejecutar-incrustaciones.png) + +### Paso 20: Verificar que el PDF quedó indexado + +Volver a la aplicación IA y abrir el *Agente de garantía*. La fuente +`politica-garantia.pdf` debe figurar en estado **Indexada** y **Activa**, +lo que indica que el agente ya puede consumir esa documentación. + +![Paso 20](media/paso-20-pdf-indexado.png) + +### Paso 21: Probar el agente + +Hacer clic en **Probar** (parte superior izquierda del formulario) para abrir +una ventana de chat con el agente. + +![Paso 21](media/paso-21-probar-agente.png) + +### Paso 22: Consultar al agente + +Escribir `como contacto para una garantía` (a propósito sin signos ni acentos +para mostrar que la IA igual entiende) y presionar Enter. El agente responde +con la información extraída del PDF: emails, teléfonos, portal de +autogestión y datos para iniciar el reclamo. + +> **Tip:** se puede pedir al agente que renderice la respuesta de forma más +> presentable agregándolo a la instrucción del sistema (por ejemplo: *"respondé +> con listas markdown y resaltá los datos de contacto"*). + +![Paso 22](media/paso-22-respuesta-agente.png) + +--- + +## Parte 4 — CRM: importación y puntuación predictiva + +### Paso 23: Abrir la aplicación CRM + +Volver al dashboard y abrir la aplicación **CRM**. Se muestra la vista +Kanban con las etapas *Nuevo*, *Calificado*, *Propuesta* y *Ganado*. + +![Paso 23](media/paso-23-crm-kanban.png) + +### Paso 24: Iniciar la importación de leads + +Desde el *Menú de acciones* (al lado del título "Flujo") elegir +**Importar registros** para cargar leads desde un archivo. + +![Paso 24](media/paso-24-menu-importar.png) + +### Paso 25: Cargar el archivo crm-leads-import.xlsx + +Hacer clic en **Subir archivo de datos** y elegir el archivo +`crm-leads-import.xlsx` provisto. Las columnas del archivo se mapean +automáticamente a los campos de Odoo. + +![Paso 25](media/paso-25-archivo-cargado.png) + +### Paso 26: Probar la importación + +Hacer clic en **Probar** para validar el mapeo. Debería aparecer un mensaje +verde *"Todo parece correcto"* si los campos se mapean bien. + +![Paso 26](media/paso-26-probar-importacion.png) + +### Paso 27: Confirmar la importación + +Hacer clic en **Importar**. Al volver al Kanban del CRM se ven los leads +cargados en las distintas etapas (*Nuevo*, *Calificado*, *Propuesta*, +*Ganado*), e incluso algunos perdidos en las etapas *Calificado* y *Propuesta*. + +![Paso 27](media/paso-27-leads-importados.png) + +### Paso 28: Observar la probabilidad en un lead + +Abrir cualquier lead nuevo (por ejemplo *Software de obra - Constructora Río +Paraná*) para ver el campo **Probabilidad**. Al avanzar el lead entre etapas +(Calificado → Propuesta → Ganado) la probabilidad va cambiando según un +cálculo probabilístico basado en el comportamiento histórico de leads +similares. + +![Paso 28](media/paso-28-probabilidad-lead.png) + +### Paso 29: Abrir Ajustes de CRM + +Ir a **Ajustes → pestaña CRM** y localizar la sección **Puntuación predictiva +de leads**. + +![Paso 29](media/paso-29-ajustes-crm.png) + +### Paso 30: Actualizar las probabilidades predictivas + +Hacer clic en **Actualizar probabilidades**. Se abre un modal donde se ven +los campos usados en el cálculo (Etapa, Estado, País, Calidad de llamada, +etc.). Confirmar con **Actualizar**. + +> **Tip:** a diferencia de los agentes, esta funcionalidad **no requiere un +> proveedor de IA externo**: usa un algoritmo interno de Odoo basado en +> regresión sobre las etiquetas/campos seleccionados. + +![Paso 30](media/paso-30-modal-probabilidades.png) + +### Paso 31: Volver al Kanban del CRM + +Regresar a la aplicación CRM. Al mover leads entre etapas se observa cómo la +probabilidad se actualiza, llega a 100% al pasarse a *Ganado* y se vuelve 0% +si se marca como *Perdido*. + +![Paso 31](media/paso-31-crm-tras-actualizar.png) + +--- + +## Parte 5 — Automatización con IA para asignar vendedor + +> **Nota sobre Adhoc Cloud:** en esta base de Adhoc, las reglas de +> automatización requieren que el módulo Studio esté instalado y que la base +> tenga habilitadas las "personalizaciones". Si al guardar la regla aparece +> un mensaje *"Actualmente las personalizaciones solo pueden ser realizadas +> por el equipo de Adhoc..."*, hay que ir a **Ajustes → Mi Base** y activar +> *"Quiero realizar mis propias personalizaciones"* antes de poder persistir +> la regla. Las capturas de los pasos 33-45 muestran la configuración tal +> como se llena en el formulario. + +### Paso 32: Abrir Automatizaciones desde la columna Calificado + +En el Kanban de CRM, hacer clic en el icono de configuración (tres puntos) +de la columna **Calificado** y elegir **Automatizaciones**. Hacerlo desde la +columna trae varios campos preconfigurados (modelo Lead + disparador "La etapa +está establecida como Calificado"). + +![Paso 32](media/paso-32-menu-columna-automatizaciones.png) + +### Paso 33: Crear una nueva regla + +Hacer clic en **Nuevo**. Se abre el formulario de regla de automatización, +preconfigurada con modelo *Lead* y disparador *"La etapa está establecida +como Calificado"*. + +![Paso 33](media/paso-33-nueva-regla.png) + +### Paso 34: Agregar una acción a la regla + +Hacer clic en **Agregar una acción** (sección *Acciones a realizar*). Se +abre el modal **Crear Acciones**. + +![Paso 34](media/paso-34-modal-crear-accion.png) + +### Paso 35-36: Cambiar el modo a "Actualizar con IA" + +Seleccionar el tipo **Actualizar el registro** y cambiar el modo del combobox +de **Actualizar** a **Actualizar con IA**. Se habilita un área de texto donde +se escribe la instrucción en lenguaje natural que va a guiar a la IA al +elegir el valor del campo. + +Antes de escribir la instrucción, se debe seleccionar el campo a actualizar. Seleccionar: **Vendedor** + +![Paso 36](media/paso-36-actualizar-con-ia.png) + +### Paso 37-43: Escribir la instrucción para la IA + +En el editor de instrucción se redacta la regla. Por ejemplo: + +``` +Si la lead habla sobre algo de consultoría en las [notas], asignar el vendedor +[Juan Perez]. Caso contrario, asignar a [Sofia Perez]. +``` + +Con el atajo `/` se puede insertar dinámicamente un *Selector de campo* del +lead (por ejemplo, *Notas*) para referenciar contenido específico del +registro. Para este caso usar **necesariamente** el selector de campos para las notas y el selector de registros para los usuarios (ambos entre corchetes). + +![Paso 39](media/paso-39-instruccion-ia.png) + +### Paso 44: Guardar la acción + +Hacer clic en **Guardar y cerrar** para confirmar la acción dentro del modal. + +![Paso 44](media/paso-44-accion-guardada.png) + +### Paso 45: Guardar la regla de automatización + +Hacer clic en **Guardar de forma manual** (icono nube en la parte superior +izquierda). En bases productivas de Adhoc con las personalizaciones +habilitadas, la regla queda activa y se ejecutará automáticamente cuando un +lead pase a la etapa *Calificado*. + +![Paso 45](media/paso-45-regla-guardada.png) + +### Paso 46: Elegir un lead para probar + +Volver a CRM (menú *Flujo*) y abrir un lead sin vendedor asignado. En este +ejemplo se usa **Migración ERP legacy - Tecno Servicios del Sur**, cuya nota +indica *"Queremos un servicio de consultoría completa"*. + +![Paso 46](media/paso-46-lead-migracion.png) + +### Paso 47: Mover el lead a Calificado + +En el Kanban arrastrar el lead desde *Nuevo* a *Calificado*. Esto dispara la +regla de automatización: la IA lee las notas del lead y, en base a la +instrucción que definimos, decide qué vendedor asignar. + +![Paso 47](media/paso-47-kanban-pre-prueba.png) + +### Paso 48: Verificar el vendedor asignado automáticamente + +Reabrir el lead y validar que el campo *Vendedor* fue completado +automáticamente por la IA según las notas. En el video original, el lead +*Migración ERP legacy* termina asignado a **Sofia Perez** (la instrucción +estaba interpretando las notas como "no consultoría" o pasó antes de leerlas +en profundidad — este detalle también muestra que la regla puede requerir +ajustes en lenguaje natural para mejorar la precisión). + +![Paso 48](media/paso-48-lead-final.png) diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-01-abrir-ajustes.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-01-abrir-ajustes.png new file mode 100644 index 0000000..d34c9df Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-01-abrir-ajustes.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-02-seccion-ia.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-02-seccion-ia.png new file mode 100644 index 0000000..60124e4 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-02-seccion-ia.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-03-tildar-gemini.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-03-tildar-gemini.png new file mode 100644 index 0000000..020cdd3 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-03-tildar-gemini.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-04-pegar-api-key.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-04-pegar-api-key.png new file mode 100644 index 0000000..d3183d1 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-04-pegar-api-key.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-05-guardar-proveedor.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-05-guardar-proveedor.png new file mode 100644 index 0000000..05e9cae Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-05-guardar-proveedor.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-06-app-ia.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-06-app-ia.png new file mode 100644 index 0000000..77be61f Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-06-app-ia.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-07-nuevo-agente.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-07-nuevo-agente.png new file mode 100644 index 0000000..300287b Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-07-nuevo-agente.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-08-nombre-agente.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-08-nombre-agente.png new file mode 100644 index 0000000..7e68993 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-08-nombre-agente.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-09-modelo-gemini.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-09-modelo-gemini.png new file mode 100644 index 0000000..978ea8a Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-09-modelo-gemini.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-10-estilo-equilibrado.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-10-estilo-equilibrado.png new file mode 100644 index 0000000..71057c9 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-10-estilo-equilibrado.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-11-instruccion-sistema.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-11-instruccion-sistema.png new file mode 100644 index 0000000..5284fb8 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-11-instruccion-sistema.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-12-limitar-fuentes.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-12-limitar-fuentes.png new file mode 100644 index 0000000..8bbe4da Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-12-limitar-fuentes.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-13-modal-agregar-fuente.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-13-modal-agregar-fuente.png new file mode 100644 index 0000000..dd6b648 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-13-modal-agregar-fuente.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-14-subir-pdf.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-14-subir-pdf.png new file mode 100644 index 0000000..2a60d20 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-14-subir-pdf.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-15-agente-guardado.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-15-agente-guardado.png new file mode 100644 index 0000000..226137a Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-15-agente-guardado.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-16-activar-developer.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-16-activar-developer.png new file mode 100644 index 0000000..b64110e Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-16-activar-developer.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-17-acciones-planificadas.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-17-acciones-planificadas.png new file mode 100644 index 0000000..1246ab3 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-17-acciones-planificadas.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-18-ejecutar-procesar-fuentes.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-18-ejecutar-procesar-fuentes.png new file mode 100644 index 0000000..4e396a5 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-18-ejecutar-procesar-fuentes.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-19-ejecutar-incrustaciones.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-19-ejecutar-incrustaciones.png new file mode 100644 index 0000000..8d0b3e5 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-19-ejecutar-incrustaciones.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-20-pdf-indexado.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-20-pdf-indexado.png new file mode 100644 index 0000000..e50e789 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-20-pdf-indexado.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-21-probar-agente.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-21-probar-agente.png new file mode 100644 index 0000000..e92bb84 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-21-probar-agente.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-22-respuesta-agente.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-22-respuesta-agente.png new file mode 100644 index 0000000..d73fced Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-22-respuesta-agente.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-23-crm-kanban.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-23-crm-kanban.png new file mode 100644 index 0000000..06d0c31 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-23-crm-kanban.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-24-menu-importar.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-24-menu-importar.png new file mode 100644 index 0000000..a947988 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-24-menu-importar.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-25-archivo-cargado.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-25-archivo-cargado.png new file mode 100644 index 0000000..013bfcc Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-25-archivo-cargado.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-26-probar-importacion.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-26-probar-importacion.png new file mode 100644 index 0000000..a676831 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-26-probar-importacion.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-27-leads-importados.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-27-leads-importados.png new file mode 100644 index 0000000..06d0c31 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-27-leads-importados.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-28-probabilidad-lead.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-28-probabilidad-lead.png new file mode 100644 index 0000000..b06cc4d Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-28-probabilidad-lead.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-29-ajustes-crm.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-29-ajustes-crm.png new file mode 100644 index 0000000..14e1040 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-29-ajustes-crm.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-30-modal-probabilidades.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-30-modal-probabilidades.png new file mode 100644 index 0000000..cb26d80 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-30-modal-probabilidades.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-31-crm-tras-actualizar.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-31-crm-tras-actualizar.png new file mode 100644 index 0000000..06d0c31 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-31-crm-tras-actualizar.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-32-menu-columna-automatizaciones.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-32-menu-columna-automatizaciones.png new file mode 100644 index 0000000..af9188d Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-32-menu-columna-automatizaciones.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-nueva-regla.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-nueva-regla.png new file mode 100644 index 0000000..669d502 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-nueva-regla.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-reglas-automatizacion.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-reglas-automatizacion.png new file mode 100644 index 0000000..2b2d1b5 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-33-reglas-automatizacion.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-34-modal-crear-accion.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-34-modal-crear-accion.png new file mode 100644 index 0000000..93bc77c Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-34-modal-crear-accion.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-36-actualizar-con-ia.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-36-actualizar-con-ia.png new file mode 100644 index 0000000..ade758d Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-36-actualizar-con-ia.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-39-instruccion-ia.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-39-instruccion-ia.png new file mode 100644 index 0000000..b8887e8 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-39-instruccion-ia.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-44-accion-guardada.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-44-accion-guardada.png new file mode 100644 index 0000000..e52108c Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-44-accion-guardada.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-45-regla-guardada.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-45-regla-guardada.png new file mode 100644 index 0000000..d970ffa Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-45-regla-guardada.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-46-lead-migracion.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-46-lead-migracion.png new file mode 100644 index 0000000..29f20fd Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-46-lead-migracion.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-47-kanban-pre-prueba.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-47-kanban-pre-prueba.png new file mode 100644 index 0000000..06d0c31 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-47-kanban-pre-prueba.png differ diff --git a/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-48-lead-final.png b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-48-lead-final.png new file mode 100644 index 0000000..a903c72 Binary files /dev/null and b/smartclass-odoo-basica/recursos/ejercicios/05-ia/media/paso-48-lead-final.png differ