En este workshop haremos uso de las APIs de Watson de IBM, en particular las que nos habilitan a construir un Chatbot: Watson Assistant
Al terminar este workshop el participante comprenderá como hacer lo siguiente:
- Crear un dialogo usando Watson assistant
- Usar Assistant Slots para optimizar la vista de dialogos
- Usar una simple aplicación para validar el comportamiento del asistente
- Nivel de skill: Cualquier nivel de skill
Se requiere conocimientos básicos de Git e IBM Cloud.
- Cuenta en IBM Cloud - Crea tu IBMid desde este enlace https://ibm.biz/BdzJFA
- Cuenta en Github - Creat tu ususario desde este enlace https://github.com
Para todos los efectos del taller se debe usar la región Dallas (US-South)
Un asistente es un bot cognitivo que puede personalizar para adaptarlo a sus necesidades empresariales y desplegar en varios canales para ofrecer ayuda a los clientes donde y cuando la necesiten
Para nuestro ejemplo, crearemos un asistente que pueda tomar las órdenes de Pizzas para un restaurante. La arquitectura que utilizaremos para nuestro taller
El flujo que se desarrolla es como sigue:
- El cliente envia un mensaje a través de la Aplicación
- La aplicación envia el mensaje al servicio de Watson Assistant, y se presenta en la pantalla de chat de nuestra aplicación Web
- La API de Watson procesa el mensaje y genera la respuesta a enviar al cliente
Los componentes Empleados son:
Los siguientes pasos deben realizarse usando un usuarios con privilegios de administración
- Descargar la CLI de IBMCloud siguiendo estas instrucciones
- Instalar NodeJs siguiendo las instrucciones de esta página
- Validar que la CLI de IBM Cloud está operativa
$ ibmcloud -v
ibmcloud version 0.19.0+94101c85-2019-09-23T03:46:57+00:00
- Validar que la CLI de NodeJs y NPM están operativas
$ node -v
v12.10.0
$ npm -v
6.10.3
- Crea un servicio de Watson Assistant desde el dashboard de IBM Cloud con tu cuenta y colocale el siguiente nombre
wcsi-conversation-service - Presiona el botón
Launch Watson Assistantpara acceder a la configuración de los servicios del asistente - Selecciona la pestaña
Skills - Seleccionar
Create Skill - Selecciona
Import Skill - Selecciona carga desde archivo en esta dirección
data/skill-WatsonPizzeria.json - Asegurate que esté marcado la opción
Everythingy pulsa el botóImport
- Crear directorio de trabajo (Por ejemplo ~/lab/)
$ cd ~
$ mkdir lab
- Clonar el repositorio para descargar los artefactos del taller
$ cd lab
$ git clone https://github.com/IBMInnovationLabUY/watson-assistant-slots-intro.git
- Definir nombre único para la aplicación en el archivo
manifest.yml.
---
declared-services:
wcsi-conversation-service:
label: conversation
plan: free
applications:
- name: pizza-ya-campusprty
command: npm start
path: .
memory: 256M
instances: 1
env:
NPM_CONFIG_PRODUCTION: false
buildpack: sdk-for-nodejs- configurar variables de entorno en
.env
# Replace the credentials here with your own.
# Rename this file to .env before running 'npm start'
WORKSPACE_ID=<put workspace id here>
ASSISTANT_IAM_APIKEY=<put assistant IAM apikey here>
ASSISTANT_URL=<put assistant url here>El identificador del workspace lo obtienen de la siguiente forma:
Las credenciales de acceso al servicio de la siguiente forma:
- Instalar paquete de BZIP2 para instalación de PhantomJs
$ sudo yum install bzip2
- Instalar la app local usando NPM
$ npm install
- Levantamos nuestra Web app
$ npm start
-
Accedemos a la aplicación usando un browser a la siguiente dirección http://localhost:3000
-
Revisemos el comportamiento de nuestro asistente
- Iniciemos la CLI de IBM cloud
$ ibmcloud login
- Definamos nuestro target a aplicaciones Cloud Foundry usando este comando
$ ibmcloud target --cf
- Subamos nuestra app a IBM cloud
$ ibmcloud app push
- A pedir Pizzas!
Siguenos en twiiter @IBMUruguay



