Creé un robot entrenador de cachorros con inteligencia artificial usando Coze, una plataforma fácil de usar y sin código. Me ayudó a entrenar a mi pastor australiano, Jenny, brindándome instrucciones detalladas y recordatorios para su cuidado. Las características flexibles de la plataforma, como múltiples agentes, complementos y variables de memoria, facilitaron la personalización del robot para mis necesidades. Si bien Coze es excelente para crear robots sin codificación, un poco más de control sobre la lógica compleja sería una buena adición. En general, Coze es una herramienta fantástica para cualquiera que busque crear robots de IA personalizados con facilidad.
Hace tres semanas, adopté un cachorro, un adorable pastor australiano llamado Jenny. Casi al mismo tiempo, recibí un correo electrónico de HackerNoon invitándome a probar los bots de inteligencia artificial de Coze. Resultó ser un correo electrónico un tanto fatídico porque el bot que construí me ayudó mucho con el entrenamiento.
Pero primero lo primero.
En general, es una plataforma de desarrollo de chatbots de IA todo en uno que reúne varios sistemas de IA diferentes en un solo lugar. Puedes crear una variedad de bots con escenarios absolutamente diferentes:
Resumen de noticias
Actualizaciones meteorológicas
Traductor
Generación de imágenes
Asesor de viajes
+ innumerables más.
Y las posibilidades no terminan ahí. No está limitado a los sistemas de IA existentes: Coze le permite personalizar y crear sus propias soluciones únicas.
Entonces, revisemos mi creación del robot entrenador de cachorros y veamos si Jenny está en camino de convertirse en una buena chica 🐶
Cachorros muy fáciles de apretar
Una de las ventajas innegables de Coze es su interfaz fácil de usar, que viene acompañada de instrucciones detalladas. Puedes imaginar que cuando recién te llevas una mascota a casa, no tienes mucho tiempo libre. Pero me tomó solo 2 horas hacer la primera iteración y recibir al entrenador-ayudante. Todo eso se debe al fantástico nivel de entrada bajo de la plataforma.
El proceso de construcción de un robot de IA con Coze se ve así:
Tú eliges el modo*:
Agente único para una tarea específica. Por ejemplo, “traductor”.
Flujo de trabajo. Para lógica compleja con comandos estructurados que se suceden entre sí. Como el llenado de formularios.
Multiagente. Para conversaciones complejas, no seriales, con diversas funcionalidades.
Configurar las variables de modelo, base de datos y memoria del agente
Añadir habilidades: complementos y activadores
Configurar Crear indicaciones para su(s) agente(s)*.
*Las acciones obligatorias están marcadas con un asterisco.
También puedes usar otras funciones, como atajos, voces y otras, para mejorar o ampliar tu bot. Puedes leer sobre ellas .
Para mi primera iteración, creé un solo agente con una sola tarea: darme una explicación detallada de cómo enseñar un nuevo comando. Según el plan, debo elegir un modo (obviamente, un solo agente) y completar el mensaje.
Inmediato
Para ser sincero, no soy precisamente un profesional en la creación de consignas. De hecho, ¡a veces me cuesta poner en palabras mis pensamientos! 😅 Pero Coze hace que el proceso sea muy fácil y fluido. Simplemente dices lo que quieres en lenguaje humano cotidiano, o incluso en la forma en que lo diría un niño de 5 años:
You are a skilled dog trainer. You use positive reinforcement training. You can teach the proper techniques for teaching commands. … Oh! And I want an ice cream 🍦 (just kidding)
Luego, simplemente haz clic en el botón mágico “A” y tu lista de deseos se convertirá en un mensaje deliberado.
Para obtener los mejores resultados, edité el mensaje un par de veces, agregué el formato deseado y repetí el botón “A”.
¡Y ya está! Para mis necesidades, esto fue más que suficiente: pura magia 🪄✨
Multiagente
Después de una semana, cuando las cosas se calmaron, Jenny se acostumbró al lugar y a la gente nueva, y nosotros nos acostumbramos a ella, encontré algo de tiempo para expandir mi ai-bot.
Esta vez, mi investigación incluyó varias tareas basadas en mi experiencia de la semana anterior. En primer lugar, soy como una madre sobreprotectora y excesivamente preocupada, siempre atenta a cualquier cosa “anormal” en mi cachorro. ¿Está pesando lo suficiente? ¿Está comiendo muy poco? ¿Está haciendo pis demasiado? 😅 Así que necesito una ayudante que me tranquilice y me dé algunos consejos sobre el bienestar de los cachorros.
En segundo lugar, quería probar algo divertido con esta tecnología de inteligencia artificial. Y estaba pensando en fotografías, por supuesto.
Para incorporar estas nuevas funciones, pasé del modo “Agente único” al modo “Multiagente” . La idea es bastante simple. Solo tienes varios nodos; cada uno realiza su propia funcionalidad y delega las solicitudes de los usuarios a otro si no es su “trabajo”.
Cada agente tiene cuatro campos:
Escenarios. ¿Cuándo se debe utilizar este agente?
Aviso del agente
Habilidad. ¿Qué herramientas y complementos utiliza esta agencia?
Sugerencias automáticas. Opciones generadas para que los usuarios elijan entre ellas en lugar de ingresar texto manualmente.
El nodo único, o agente, es casi igual que en el modo individual, con una excepción: se debe asignar una personalidad a todo el bot.
En mi caso, la Persona del bot es “Experto en adiestramiento y cuidado de perros”. Mientras tanto, se llamará al “Agente de adiestramiento” cuando el usuario pida un consejo sobre “Sentarse” (este es su escenario). Se llamará al “Agente de cuidado” cuando el usuario pregunte si el cachorro orina con demasiada frecuencia.
Para cada nodo, deberás utilizar un mensaje específico adaptado a su tarea. Yo utilicé un pequeño truco con el botón mágico “A”: tomé mi mensaje preliminar, semiformulado, lo inserté en el campo “Persona y mensaje” del bot y dejé que Coze hiciera su magia. El resultado fue un mensaje bellamente elaborado que luego volví a insertar en el campo de mensajes de mi agente. ¡Fácil y eficaz!
Entonces, para mi asistente de cuidado, me aseguré de especificar qué modelo de IA quería usar, porque parece crucial tener una fuente de datos confiable para este tema. En realidad, tienes dos opciones para hacerlo (si estamos hablando de salida de texto).
Configuración del modelo . Cada agente funciona según un modelo, siendo GPT el modelo predeterminado. Este modelo es responsable de las interacciones con los usuarios en este nodo. Genera respuestas y preguntas para los usuarios en relación con las indicaciones y las entradas de los usuarios y se encarga de generar sugerencias.
El modelo en sí puede usar complementos para procesar tareas del usuario. Por ejemplo, si quieres generar una imagen, haces algo como esto en el mensaje: Use {text2img} to generate a cartoonish image of a dog from user input . Le pides a tu modelo GPT que use otro. Ah, y no olvides agregar este complemento {text2img} en skills 😀
Me resultó útil utilizar diferentes modelos de texto para el agente en sí y para la generación de resultados cuando no te gusta la forma en que uno de ellos se comunica con el usuario. Compartiré un ejemplo específico cuando lleguemos a las variables de memoria.
En general, elegí Claude 3.5 Sonnet como agente y le pedí que usara GPT-4 para recuperar la información más precisa sobre el bienestar del cachorro. El resultado fue bueno y, lo más importante para mí, tranquilizador 😄
Complementos
La variedad de complementos disponibles no deja indiferente a nadie. Naturalmente, decidí experimentar con más de ellos. Lo bueno es que no hay límite en la cantidad de complementos que puedes usar dentro de un solo agente. Al combinarlos, puedes crear flujos no triviales. Simplemente conviertes la entrada del usuario de una salida a otra, y así sucesivamente.
Se me ocurrió una idea sencilla usando solo dos complementos, ¡pero me encanta cómo quedó! El concepto es generar una foto de un perro adulto a partir de una imagen de un cachorro.
En este momento no existe ningún complemento que pueda convertir (imagen + texto) en una nueva imagen en la plataforma. Por eso utilicé estos dos:
img2text . Para convertir la entrada (foto del cachorro) en una descripción detallada de la foto.
text2img . Para convertir el texto generado nuevamente en una imagen, pero agregando información de que esta vez debería ser la foto de un perro adulto.
Para lograr los resultados más plausibles, tuve que jugar con las indicaciones y especificar que es importante prestar atención a los colores, los puntos y sus posiciones. Sin embargo, fue divertido y relativamente preciso.
Desencadenantes
Además de los complementos, me encanta la función " Disparadores " (Habilidades). Es útil en un robot entrenador de cachorros por un par de razones:
Ayuda a establecer rutinas, como cuándo alimentarlo, salir, entrenarlo, etc. Es útil tener toda la información sobre tu cachorro en un solo lugar, no configurar una alarma separada.
Un cachorro no siempre es divertido. Uno puede sentirse desanimado cuando lo muerde todo, no se porta bien y hace pis en la alfombra. Los activadores pueden ayudar al permitir que los usuarios configuren recordatorios para recibir refuerzos positivos o consejos motivadores cuando las cosas se pongan difíciles.
Para habilitar los recordatorios, actívelos en el panel izquierdo. Para crear recordatorios personalizados, utilice el mismo panel izquierdo y haga clic en el botón “+”.
Lamentablemente, esta función solo está disponible en Discord al momento de escribir este artículo.
Variables de memoria
Para añadir un toque personal a tu bot, puedes utilizar la función de variables de memoria. Es sorprendente cómo un cambio tan pequeño puede hacer que el usuario crea que está hablando con una persona real y experta. Por supuesto, también hay otros campos de aplicación de las variables de memoria, pero para mi entrenador de cachorros, todo se trata de personalidad.
En el panel izquierdo, puedes agregar variables de memoria, cosas que el chat recordará sobre el usuario. Actualizará esta información si es necesario recientemente. En mi caso, es información sobre Jenny. Es útil mantener la raza y la edad porque los consejos de cuidado dependen de esas cosas y no quieres ingresar estos detalles una y otra vez. A veces, incluso los consejos de entrenamiento pueden depender de la raza.
Perro Border Collie:
"Día 1: Enséñale a tu Collie a buscar algo.
Día 2: Búsqueda avanzada: incluye rutas complejas y pistas de obstáculos.
Día 7: Espera el periódico, las zapatillas y el desayuno que te traerá tu Border Collie.”
Buldog:
"Día 1: Enséñale a tu Bulldog a buscar algo... si tiene ganas.
Día 2: Celebremos incluso si mira la pelota.
Día 7: Intenta que mire fijamente la pelota durante 10 segundos antes de que decida que es hora de dormir la siesta nuevamente”.
Bono. Variables de memoria o configuraciones del modelo
Como prometí, quería compartir un poco más sobre la configuración de modelos. Al principio, usé GPT-4 para el agente de conocimiento y fue un desastre. Por alguna razón, siempre ignoraba los datos que le proporcionaba.
Me llevó un tiempo considerar la posibilidad de probar nuevos ajustes de modelo . Y por una buena razón. Cambiar a otro modelo finalmente me dio el resultado deseado: dejó de preguntar repetidamente el nombre de mi cachorro.
Implementando
Finalmente, la implementación resultó ser la parte más fácil de todo el proceso. Todo lo que hay que hacer es seguir las instrucciones proporcionadas amablemente por Coze. Las instrucciones están bien organizadas, con títulos claros y capturas de pantalla detalladas. ¡Bravo por el equipo de Coze!
En resumen, todo lo que necesitas es un token de bot y, a veces, algunos tokens e identificaciones adicionales. Para obtenerlos para la mayoría de las plataformas de publicación, debes autorizarlos e ir a la configuración. No es tan fácil, pero puede ser tedioso.
Conclusión
Mi Jenny ya ha aprendido mucho 💪 y creo que va camino de ser una buena niña. Mis órdenes favoritas hasta ahora son “pata” y “medio”. ¡Porque son tan lindas! 💕
En cuanto a Coze, lo recomiendo sin dudarlo . Como dije al principio, la plataforma es muy fácil de usar. No puedo imaginar que crear tu primer bot pueda ser tan fácil y divertido. También destacaría la flexibilidad que brindan los diferentes modos y los diversos complementos. Literalmente, puedes crear un bot para cualquier cosa.
Puede que no haya tenido suficientes cosas basadas en código. Algunos flujos están bastante determinados. Por ejemplo,
If puppyName.isEmpty { ask name } else { goto training }
Solo con indicaciones del lenguaje humano y sin una IA persistente, este escenario no se puede lograr al 100%.
Sin embargo, aparte de eso, no se me ocurre ningún otro problema importante. Es una gran herramienta que hace que la creación de bots sea fácil, divertida y flexible.