En este artículo se describe cómo compilar el primer bot con Bot Framework SDK para C#, Java, JavaScript o Python y cómo probar el bot con Bot Framework Emulator.
La creación del primer bot no requiere una suscripción de Azure ni un recurso del servicio de Bot de Azure AI. Este inicio rápido se centra en la creación del primer bot localmente. Si quiere obtener información sobre cómo crear un bot en Azure, consulte Creación de un recurso de Azure Bot.
Nota:
Los SDK de JavaScript, C# y Python de Bot Framework seguirán siendo compatibles, pero el SDK de Java se va a retirar con la compatibilidad final a largo plazo que finaliza en noviembre de 2023.
Los bots existentes creados con el SDK de Java seguirán funcionando.
Las plantillas de .NET Core te ayudarán a crear rápidamente nuevos bots de IA conversacionales mediante Bot Framework v4.
A partir de mayo de 2020, estas plantillas y el código que generan requieren .NET Core 3.1 o posterior.
Para instalar las plantillas de Bot Framework:
Abra una ventana de la consola.
Descarga e instala la versión 3.1 o posterior del SDK de .NET Core.
Puedes usar este comando para determinar qué versiones de la interfaz de la línea de comandos de .NET Core están instaladas.
dotnet --version
Instala las tres plantillas de C# de Bot Framework: el eco, el núcleo y las plantillas de bot vacías.
dotnet new -i Microsoft.Bot.Framework.CSharp.EchoBot
dotnet new -i Microsoft.Bot.Framework.CSharp.CoreBot
dotnet new -i Microsoft.Bot.Framework.CSharp.EmptyBot
Comprueba que las plantillas se han instalado correctamente.
dotnet new --list
Nota:
Los pasos anteriores instalan las tres plantillas de Bot Framework. No es necesario instalar todas las plantillas y puedes instalar solo las que usarás. En este artículo se usa la plantilla de bot de eco.
Una cuenta de Azure si deseas implementar en Azure.
Plantillas de Java
Usa el generador de Yeoman para crear rápidamente un bot de IA conversacional mediante las funcionalidades principales de IA en Bot Framework v4. Para obtener más información, consulte yeoman.io.
El generador admite tres opciones de plantilla diferentes, como se muestra a continuación.
Plantilla
Descripción
Echo Bot
Una buena plantilla si quieres un poco más que "Hola mundo!", pero no mucho más. Esta plantilla controla los aspectos básicos de enviar mensajes a un bot y hacer que el bot procese los mensajes repitiéndolos de nuevo al usuario. Esta plantilla genera un bot que simplemente "devuelve" al usuario todo lo que el usuario dice al bot.
Bot vacío
Una buena plantilla si estás familiarizado con Bot Framework v4 y simplemente quieres un proyecto de esqueleto básico. También es una buena opción si deseas tomar código de ejemplo de la documentación y pegarlo en un bot mínimo para aprender.
Bot principal
Una buena plantilla si desea crear bots avanzados, ya que usa diálogos de varios turnos y LUIS de Azure AI para implementar la comprensión del lenguaje. Esta plantilla crea un bot que puede extraer lugares y fechas para reservar un vuelo.
Reconocimiento del lenguaje conversacional (CLU), una característica del lenguaje de Azure AI, es la versión actualizada de LUIS.
Para obtener más información sobre la compatibilidad con reconocimiento del lenguaje en Bot Framework SDK, consulte reconocimiento natural del lenguaje.
Instalación de Yeoman
Asegúrate de que tienes instalada la versión 12.10 o una versión posterior de Node.js.
Conocimientos sobre restify y programación asincrónica en JavaScript.
Visual Studio Code o su IDE favorito, si desea editar el código del bot.
Plantillas de JavaScript y TypeScript
Para instalar Yeoman y el generador de Yeoman para Bot Framework v4:
Abra un terminal o un símbolo del sistema con privilegios elevados.
Cambie al directorio para sus bots de JavaScript. Créelo primero si aún no tiene uno.
mkdir myJsBots
cd myJsBots
Asegúrate de tener instalada las versiones más recientes de npm y Yeoman.
npm install -g npm
npm install -g yo
Instala el generador de Yeoman.
Yeoman es una herramienta para crear aplicaciones. Para obtener más información, consulte yeoman.io.
npm install -g generator-botbuilder
Nota:
La instalación de las herramientas de compilación de Windows que se indican a continuación solo se necesitan si se usa Windows como sistema operativo de desarrollo.
En algunas instalaciones, el paso de instalación de restify genera un error relacionado con node-gyp.
Si este es el caso, intente ejecutar este comando con permisos elevados.
Esta llamada también puede bloquearse si Python ya está instalado en el sistema:
Conocimientos de programación asincrónica en Python
Creación y habilitación de un entorno virtual
Un entorno virtual es una combinación de un intérprete de Python específico y bibliotecas que son diferentes de tu configuración global. El entorno virtual es específico a un proyecto y se mantiene en la carpeta de proyecto. Una ventaja de usar un entorno virtual es que a medida que el proyecto se desarrolla a lo largo del tiempo, el entorno virtual siempre refleja las dependencias exactas del proyecto. Para más información sobre los entornos virtuales, consulte Creación de entornos virtuales.
Ve al directorio donde deseas crear el bot. A continuación, ejecuta los siguientes comandos para la plataforma preferida. Después de activar el entorno virtual, la línea de comandos o terminal debe estar precedida de (venv). Esto te permite saber que el entorno virtual está activo. Puedes desactivar el entorno virtual en cualquier momento si escribes: deactivate.
macOS y Linux
python3 -m venv venv
source venv/bin/activate
Windows
python -m venv venv
venv\Scripts\activate.bat
Plantillas de Python
Para instalar los paquetes necesarios, ejecute los comandos pip install siguientes:
En Visual Studio, crea un proyecto de bot mediante la plantilla Echo Bot (Bot Framework v4 - .NET Core 3.1). Elige Bots de IA en los tipos de proyecto para mostrar solo plantillas de bot.
Asegúrate de que .NET Core 3.1 o posterior esté instalado.
En Visual Studio Code, abra una ventana de terminal.
Ve al directorio en el que deseas crear tu proyecto de bot.
Cree un nuevo proyecto de bot eco utilizando el siguiente comando. Necesitará reemplazar <your-bot-name> por el nombre que desee utilizar para su proyecto de bot.
dotnet new echobot -n <your-bot-name>
Abra una nueva ventana de terminal.
Ve al directorio en el que deseas crear tu proyecto de bot.
Cree un nuevo proyecto de bot eco utilizando el siguiente comando. Necesitará reemplazar <your-bot-name> por el nombre que desee utilizar para su proyecto de bot.
dotnet new echobot -n <your-bot-name>
Gracias a la plantilla, el proyecto contiene todo el código necesario para crear el bot en esta guía de inicio rápido. No es necesario ningún código adicional para probar el bot.
Ejecuta el siguiente comando para crear un bot de eco a partir de plantillas. El comando usa opciones predeterminadas para tus parámetros.
yo botbuilder-java -T "echo"
Yeoman le solicitará alguna información con la que se va a crear el bot. En este tutorial, use los valores predeterminados.
? What's the name of your bot? (echo)
? What's the fully qualified package name of your bot? (com.mycompany.echo)
? Which template would you like to start with? (Use arrow keys) Select "Echo Bot"
? Looking good. Shall I go ahead and create your new bot? (Y/n) Enter "y"
El generador admite muchas opciones de la línea de comandos que puedes usar para cambiar los valores predeterminados del generador o para inicializar previamente un mensaje. Las opciones distinguen entre mayúsculas y minúsculas.
Opción de línea de comandos
Descripción
--help, -h
Enumerar el texto de ayuda de todas las opciones de la línea de comandos admitidas
--botName, -N
Nombre asignado al proyecto de bot
--packageName, -P
Nombre del paquete de Java que se va a usar para el bot
--template, -T
El proyecto generado a partir de la plantilla. Las opciones son echo, empty, core. Para obtener más información sobre las distintas plantillas, consulta el repositorio de GitHub para el lenguaje, C#, JavaScript, Python o Java.
--noprompt
El generador no pedirá confirmación antes de crear un nuevo bot. Cualquier opción de requisito que no se pase en la línea de comandos usará un valor predeterminado razonable. Esta opción está pensada para habilitar la generación automatizada de bots con fines de prueba.
Gracias a la plantilla, el proyecto contiene todo el código necesario para crear el bot en esta guía de inicio rápido. No es necesario ningún código adicional para probar el bot.
Yeoman le solicitará alguna información con la que se va a crear el bot. En este tutorial, use los valores predeterminados.
? What's the name of your bot? my-chat-bot
? What will your bot do? Demonstrate the core capabilities of the Microsoft Bot Framework
? What programming language do you want to use? JavaScript
? Which template would you like to start with? Echo Bot - https://aka.ms/bot-template-echo
? Looking good. Shall I go ahead and create your new bot? Yes
Gracias a la plantilla, el proyecto contiene todo el código necesario para crear el bot en esta guía de inicio rápido. No es necesario ningún código adicional para probar el bot.
Visual Studio compila la aplicación, la implementa en localhost e inicia el navegador web para mostrar la página default.htm de la aplicación.
En este momento, el bot se ejecuta de forma local en el puerto 3978.
En Visual Studio Code:
Abre la carpeta del proyecto del bot.
Si se te pide que selecciones un proyecto, selecciona el que creaste para el bot..
En el menú Ejecutar, selecciona Ejecutar sin depuración.
Si se solicita seleccionar entorno, selecciona .NET Core.
Si este comando actualizó la configuración de inicio, guarda los cambios y vuelve a ejecutar el comando.
El comando de ejecución compila la aplicación, la implementa en localhost e inicia el navegador web para mostrar la página default.htm de la aplicación.
En este momento, el bot se ejecuta de forma local en el puerto 3978.
Desde un terminal o un símbolo del sistema:
Cambia los directorios a una carpeta de proyecto para tu bot.
Usa dotnet run para iniciar el bot.
dotnet run
Este comando compila la aplicación y la implementa en el localhost.
La página web predeterminada de la aplicación no se mostrará, pero en este momento el bot se ejecuta localmente en el puerto 3978.
Haz clic en Abrir bot en la pestaña de Bienvenido/a de Emulator.
Escribe la dirección URL del bot, que es el host local y el puerto, con /api/messages agregado a la ruta de acceso. La dirección suele ser: http://localhost:3978/api/messages.