<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Ed Mosqueda (@bbaaxx)</title>
        <link>https://paragraph.com/@ed-mosqueda-bbaaxx</link>
        <description>I am a software developer and crazy inventor. I love taming new technologies.</description>
        <lastBuildDate>Wed, 02 Sep 2026 21:45:58 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Ed Mosqueda (@bbaaxx)</title>
            <url>https://storage.googleapis.com/papyrus_images/7d292c6291d78318464474e1a28207ebef67baac25fb05b747199728996c0171.jpg</url>
            <link>https://paragraph.com/@ed-mosqueda-bbaaxx</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Construyamos un Bot 🤖 con Discord y Dialogflow ]]></title>
            <link>https://paragraph.com/@ed-mosqueda-bbaaxx/construyamos-un-bot-con-discord-y-dialogflow</link>
            <guid>OFS2Zwz2oRVbAjYIULpN</guid>
            <pubDate>Wed, 04 May 2022 04:22:45 GMT</pubDate>
            <description><![CDATA[NOTA IMPORTANTE:* El tutorial que viene en este articulo fue escrito para la version 1 de la API de Dialogflow, aunque la mayor parte del tutorial sigue vigente, la parte de autorización de tokens ha cambiado . Para una implementación de referencia de la API V2 puedes dar un vistazo a este repositorio que incluye un ejemplo.* De niño siempre quise tener un robot que me ayudara con todas las cosas que necesitaba recordar, formulas de areas, la #@$%! tabla del 7, datos históricos y hasta las ta...]]></description>
            <content:encoded><![CDATA[<figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5e6d564127dcf0590a46cf048fffdb4324500ce0a25b4f0f8d21196d2aacec59.jpg" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><strong><em>NOTA IMPORTANTE:</em></strong>* El tutorial que viene en este articulo fue escrito para la version 1 de la API de Dialogflow, aunque la mayor parte del tutorial sigue vigente, la parte de autorización de tokens ha cambiado . Para una implementación de referencia de la API V2 puedes <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/bbaaxx/node-red-contrib-dialogflow-apiv2"><em>dar un vistazo a este repositorio</em></a> que incluye un ejemplo.*</p><p>De niño siempre quise tener un robot que me ayudara con todas las cosas que necesitaba recordar, formulas de areas, la <em>#@$%!</em> tabla del 7, datos históricos y hasta las tareas que me asignaba mamá. Imaginaba uno al que bauticé <strong>“Strider”</strong> y me gustaba ponerme a pensar en todas las cosas que sería capaz de hacer.</p><p>Invertía mucho tiempo jugando <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.whitestick.co.uk/text.html">text adventures</a>, las <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://en.wikipedia.org/wiki/Butlerian_Jihad">“thinking machines”</a> del universo de Dune me apasionaban, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.imdb.com/title/tt0062622/characters/nm0706937">HAL 9000</a> me parecía una ominosa pero fantástica criatura a la que aún me gustaría conocer. Mi primera vez con un chatbot fue con <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.scielo.org.mx/scielo.php?script=sci_arttext&amp;pid=S1405-55462015000400625">A.L.I.C.E</a>, una impresionante pieza de código que me puso a soñar con el futuro, fue en ese tiempo cuando decidí que le entregaría mi vida a la tecnología …</p><p>Poco después de eso me convertí en un adulto joven y tanto la vida como el mercado me demandaban usar mi pasión para otras cosas, pero hoy después de unos 20 años de esos eventos tengo el placer de escribirte como el líder en México de la división de <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sngular.team/capacidades/cognitive-computing/">Cognitive Computing</a> para <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sngular.team/">Sngular</a>, y me hace muy feliz tener la oportunidad de enseñarte a <strong>construir tu propio “Strider”</strong>.</p><h2 id="h-pre-requisitos" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Pre-requisitos</h2><p>Para construir tu bot necesitas lo siguiente:</p><ul><li><p>Tener 13 años o mas y un numero celular para verificar tu cuenta de Google.</p></li><li><p>Contar con las habilidades de llenar formularios incluyendo copiar y pegar texto.</p></li><li><p>Abrir una cuenta en <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://accounts.google.com/SignUp">Google</a>.</p></li><li><p>Abrir una cuenta en <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/join">Github</a> (para la cuenta en Glitch).</p></li><li><p>Abrir una cuenta en <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://glitch.com/">Glitch</a>.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discordapp.com/download">Instalar el cliente de Discord</a> (opcional porque #clienteWeb) y</p></li><li><p>… abrir <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discordapp.com/register">una cuenta</a> allí también.</p></li><li><p>Tener cierta afinidad o interés por la programación para tolerar la longitud de este post.</p></li></ul><h2 id="h-stack-arquitectura" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Stack / Arquitectura</h2><p>Este es un diagrama de alto nivel con la arquitectura, el stack de herramientas y el flujo que vamos a usar para conectar nuestro bot:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/da9737e60464eb9fe96da1105bb33cb2192d60fa353dffc84ab87dc87d19cbdc.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Arquitectura / Stack / Flow</p><h2 id="h-primera-parte-discord-el-medio-en-donde-vive-nuestro-bot" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Primera Parte: Discord — El medio en donde vive nuestro bot</h2><p>Vamos a empezar preparando un medio en donde el bot* *pueda tener interacción con nosotros, este medio va a ser una plataforma de chat y en este tutorial he elegido Discord porque #gamer y porque además de ser genial, es gratuito.</p><p>Para hacer esto, necesitas abrir el cliente (web o desktop) de discord, y dar un click en el símbolo + del lado izquierdo y seguir las instrucciones. Puedes consultar <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://support.discordapp.com/hc/es/articles/204849977--C%C3%B3mo-creo-un-servidor-">esta guía</a>.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/844474dfc371239913df88d03e54f5f49ed9f4b473a876f4760272bfa4be0cb6.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Crear un server en Discord</p><p>Por ahora no podrás hacer mucho mas que platicar contigo mismo en el servidor que creaste, pero vamos a instalar una app de Discord para que el bot tenga un canal de comunicación.</p><p>Visita esta <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discordapp.com/developers/applications/me">página para crear una nueva aplicación</a>. ¡Dale un buen nombre!</p><p>Cuando salves la configuración inicial seras presentado con mas opciones, por ahora revisa el nombre, agrega una descripción y un icono.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/fc0e7abd86c9fc00944772053d02612796525c8399275c46a01c1e149725c715.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Crear una app en Discord</p><p>Necesitamos que nuestro bot tenga un usuario en Discord, dale click al botón <code>Create a Bot User</code> :</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/bf032e3a098746dc8af3f698e34edd834c8e9bac02e1eac15272c9c7012caf7c.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Agregar un Bot User</p><p>Después de dar click en el botón podrás ver el tag de tu bot y un par de opciones, da click en <code>click to reveal</code> para ver tu token, este token son tus credenciales de acceso a la API de discord, asegúrate de copiarlo en algún lugar porque vamos a usarlo pronto.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/e5bfb9514bf5335caa6b0a7f615de9bcbd4497da9fa62cd8553440d08d7d90b4.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Configuración del Bot User</p><p>El siguiente paso es invitar a tu bot a tu servidor de Discord, para eso da click en el botón Generate OAuth2 URL y copia la URL que aparece en esa ventana.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/3cb0ec914e998746c5b2e6a3dd719ec5bf4a3dc2aed3fc8e32c3f66661f41cde.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Generar una OAuth2 URL</p><p>Pega la URL en una ventana de tu navegador y agrega el bot a tu servidor.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2c37cf7dec8654ed6d82882fd4b965ca75315eade7c4783db7693c35d38d1042.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Invitar al bot a nuestro servidor</p><p>Ahora nuestro bot esta autorizado y podemos verlo en la lista de usuarios en el cliente de Discord, por ahora debe aparecer <code>Offline</code>.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6b0d7d237399ae4c1f6c6cc7c27d03bac2b8198f0d306e4728cc665c0d94736a.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Bot Offline</p><p>Tu bot ahora tiene acceso a un medio con capacidades de enviar y recibir mensajes.</p><h2 id="h-segunda-parte-codigo-javascript-el-sistema-nervioso" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Segunda parte: Código 💚 JavaScript — El sistema nervioso</h2><p>Para conectar el entorno de nuestro bot con su cerebro necesitamos:</p><ul><li><p>Un cliente programático para poder conectar a nuestro bot con Discord</p></li><li><p>Algo de código para utilizar este cliente</p></li><li><p>Un lugar para ejecutar este código</p></li></ul><p>Ya he preparado todo el código que necesitamos pero para ejecutarlo vamos a utilizar <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://medium.com/u/c41c9661ddbd?source=post_page-----b6f55852a7ec--------------------------------">Glitch</a>, una plataforma que disfruto mucho utilizar porque te permite escribir y probar cosas super rápido. Sigue estos pasos:</p><ol><li><p>Ábrete una cuenta en <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://glitch.com/">Glitch.com</a> (vas a necesitar tu cuenta de <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/">GitHub</a>)</p></li><li><p>Dale <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://glitch.com/edit/#!/remix/discord-dialogflow-bot"><strong>click aquí para crear un remix</strong></a> del proyecto base, esto va a generar un proyecto en tu cuenta y a copiar el código para hacer tu propia versión.</p></li><li><p>Selecciona el archivo <code>.env</code> en tu proyecto y proporciona las primeras dos variables: <code>BOT_KEYWORD</code> que es la palabra con la que vamos a iniciar una conversación con el bot (por ejemplo su nombre) y <code>DISCORD_API_TOKEN</code> que obtuviste en la parte anterior</p></li></ol><p>El archivo <code>.env</code> debe verse parecido a este ejemplo:</p><p>Ejemplo de archivo `.env`</p><p>Ahora revisa tu cliente de Discord y debes poder ver que tu bot se encuentra online</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6edf32a363cd6b4043223a83fdd82d15ff0fd03c2c8ecae4f1898a437d370d84.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Bot Online</p><p>Por default he dejado un comando para probar que el bot esta en condiciones de trabajar, intenta escribiendo <code>!ping</code> en tu cliente de Discord y tu bot debe responderte con un <code>pong!</code> .</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8a9920a822ea45c4b397388a219e8ab274691bde46f5ebdd4d819ad9f93151b5.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Prueba inicial con `!ping`</p><h2 id="h-tercera-parte-dialogflow-el-cerebro-del-bot" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Tercera parte: Dialogflow — El cerebro del bot</h2><p>Dialogflow es una herramienta impresionante que merece una serie completa de posts para capturar un poco de su poder. En este ejercicio vamos a usar su funcionalidad mas elemental que es comprender intenciones simples y resolver con respuestas pre-programadas.</p><p>Primero que nada necesitas <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://console.dialogflow.com/api-client/">conseguir una cuenta en Dialogflow</a>, vas a necesitar una cuenta con Google.</p><p>Ya que tengas tu cuenta vamos a crear un <em>agente</em> dando click en el link de Create Agent en el menú de la izquierda.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f1c0a7694e5c17049646bcde56073bfee784d6a87e1c7ba6b1493b6329fc4fd5.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Crear un agente nuevo</p><p>En las opciones dale un nombre al agente y asegúrate de seleccionar el idioma y la zona horaria correcta.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/c8a3f0fea9a5c55623d3f81835969362f4fe740f28581213ffea10248a927f98.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Configuración del agente</p><p>Después de dar click en <code>CREATE</code> podrás ver las opciones del bot, si avanzas con el scroll en esta pantalla podrás consultar las llaves de acceso.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/778679bb739c140e1f40afe32689d515e32d9f38140bbfa720f82aa96cb21d15.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Llaves de acceso (difuminadas en la imagen)</p><p>Copia el <code>Client Access Token</code> y pégalo en la variable <code>DIALOGFLOW_CLIENT_ACCESS_KEY</code> en el archivo <code>.env</code> de tu proyecto que configuramos en la Segunda Parte.</p><p>Dialogflow utiliza el concepto de Intent para describir la forma en la que toma el texto de un mensaje y lo interpreta en una intención del usuario.</p><p>Desde la consola de Dialogflow configuremos el primera Intent, selecciona <code>INTENTS</code> en el menú principal y luego dale al botón <code>CREATE INTENT</code> arriba a la derecha.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/19b620ef34813fea8c5fe46dd4eb6c7c352cc399239a8d926c45296224521f7c.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Crear un intent</p><p>Dale un nombre a tu Intent, mi recomendación es que utilices una taxonomía para tus intentos utilizando puntos en el nombre para clasificarlos , por ejemplo:</p><ul><li><p>charla.saludos.hola</p></li><li><p>smalltalk.user.willBeBack</p></li><li><p>iot.luces.apagar</p></li></ul><p>Para entrenar a nuestro bot para que responda a un saludo genérico creamos un Intent al que podemos llamar: <code>smalltalk.greetings.hello</code>, y agregamos algunas frases de entrenamiento (Training Phrases), estas frases son ejemplos iniciales con los que el bot aprende a comprender las intenciones de su interlocutor.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/e18131479f1f144ed5194de3fbcfac4d005e4158a29c6f337806231a49b302af.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Nombre del intent y frases de entrenamiento</p><p><strong>NOTA IMPORTANTE!!!:</strong> Asegúrate de darle un nombre a la acción en la sección Action and parameters, esto es importante para que nuestro código sepa que Dialogflow ha identificado una intención. Puedes usar el mismo nombre del Intent.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2d3b912a3f3f2906aa7bf9944b20348165656ac550834086edc71921b14c430d.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>No olvides agregar un nombre a la acción</p><p>Por ultimo vamos a agregar algunas respuestas en la sección Responses, una de estas respuestas será enviada cuando el bot reconozca que lo estamos saludando. Después dale clic en el botón <code>SAVE</code> para guardar el Intent y que la IA pueda entrenarse con esta nueva data, esto normalmente toma unos segundos.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/53877ba1fa58395f70ed2d3eb5fbda3368b16fb585fd14dd62ef1e66ed6752a7.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Respuestas para el intent de saludo simple</p><p>Ahora estamos listos para probar el cerebro de nuestro bot, abre tu cliente de Discord y saluda a tu bot, no olvides incluir en el <strong>primer mensaje</strong> la <strong>palabra clave</strong> que definimos en el archivo <code>.env</code> en la Segunda Parte de este tutorial. En este ejemplo la palabra clave es <code>strider</code> .</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a244b4694de6afa6698e88aafc347041a81d939a2a375213b0e18169f2aee7c0.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>El bot estrena su cerebro para saludar.</p><p>Si llegaste hasta este punto: Felicidades, eres el feliz poseedor y entrenador de un bot con un cerebro artificial que puede “entender” tus intenciones escritas en lenguaje natural.</p><h2 id="h-bonus-siguientes-pasos" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Bonus: Siguientes pasos</h2><p>Insisto en que Dialogflow es una herramienta muy poderosa, es el motor que utiliza el asistente de Google para hacer su magia.</p><p>En este tutorial hemos rascado la superficie de lo que puede hacer y espero que me de la vida para poder escribir una segunda parte pero por ahora te sugiero explorar cosas como las <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dialogflow.com/docs/entities">entidades</a> para adquirir parámetros, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dialogflow.com/docs/contexts">contextos</a> para producir diálogos complejos y el <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dialogflow.com/docs/fulfillment">fulfillment</a> para llamar servicios externos con los que básicamente le das súper poderes a tu bot.</p><p>También te sugiero hacer cosas como:</p><ul><li><p>Crear muchos Intents en Dialogflow y generar una personalidad para tu bot.</p></li><li><p>Conseguir un avatar para tu bot y tenerlo a la vista cuando escribas sus respuestas.</p></li><li><p>Da un vistazo al código de tu bot y trata de cambiar la respuesta de <code>!ping</code> por otra cosa</p></li><li><p>Intenta agregar otras respuestas estáticas (como la de <code>!ping</code> ) que no requieran a la NLP</p></li><li><p>Asegúrate de que tus Intents tienen por lo menos de 10 a 15 frases de entrenamiento y por lo menos 5 respuestas distintas.</p></li></ul><h2 id="h-conclusion" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Conclusión</h2><p>Espero que hayas disfrutado hacer a tu propio asistente, tanto como yo he disfrutado preparar este post. Strider es un individuo en una creciente familia de Bots a la que he tenido la oportunidad de darle vida.</p><p>En parte construir Bots es como hacer un show de marionetas utilizando trucos tecnológicos bastante avanzados, pero hoy en día esta tomando fuerza en la industria como una de las plataformas que van a desplazar a la web en interfaces de usuario, acceso a datos y procesos de negocio.</p><p>En Sngular utilizamos esta tecnología para producir interfaces conversacionales y para hacer análisis de sentimientos en grandes volúmenes de datos (como en Twitter por ejemplo), sin lugar a dudas las tecnologías de IA serán las estrellas del próximo lustro.</p><p>Si te interesa utilizar y producir tecnología como esta en tu día a día, ponte en contacto conmigo, continuamente estoy a la búsqueda de individuos talentosos con afinidad por este tipo de tecnologías que involucran Inteligencia Artificial.</p><blockquote><p>Edu Mosqueda es papá, arquitecto, junkie de el Script de la Asociación Europea de Manufactura de Computadoras en su versión 6, y disfruta mucho escribir entre líneas.</p></blockquote>]]></content:encoded>
            <author>ed-mosqueda-bbaaxx@newsletter.paragraph.com (Ed Mosqueda (@bbaaxx))</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/303208fd3dad10b52b49b56925962f6b9cca53677925957b90386b7c2319d015.jpg" length="0" type="image/jpg"/>
        </item>
    </channel>
</rss>