En este IBM recipe, crearemos una app utilizando Node.js que toma los reviews de usuarios de Amazon y los manda a un servicio de Natural Language Understanding (NLU). Los reviews de los usuarios se guardarán en una base de datos en Cloudant. El servicio de Natural Language Understanding mostrará el sentimiento general de las reviews. La aplicación demo hará toda la lectura de las reviews por ti y dara un insight general acerca de estas. Este recipe puede ser útil para developers que estén buscando procesar múltiples documentos con Watson Natural Language Understanding.
Cuando termines este recipe, podrás entender como:
- Interactuar con Watson Natural Language Understanding utilizando el Node SDK de Watson
- Crear una interfaz de usuario para desplegar el resultado del servicio de NLU
- Crear y usar una base de datos NoSQL en Cloudant
- Desplegar una app en Node.js para analizar reviews de productos
• Tener instalado Node.js.
• Tener una cuenta de IBM Cloud.
• Tener una cuenta en Github.
• Clonar este Repositorio.
- Acceder al HUB para Software para uso académico. Y navegar hasta la parte de abajo de la pagina
- Buscar el WebStore del instituto/escuela al que perteneces.
- En caso de no contar con WebStore, acceder al portal de IBM Academic Initiative, registrarse o iniciar sesión y seleccionar la opción de Students
- Seleccionar Add to Cart para IBM Bluemix – 6 Month Trial.
- Realizar el registro correspondiente utilizando la cuenta de correo académica
- Ingresamos a nuestro panel de control de IBM Cloud (console.bluemix.net)
- Una vez que tengamos el código nos vamos a Gestionar>Facturación y Uso>Facturación
- Buscamos “Códigos de características (Promocionales)”
- El usuario despliega la app en IBM Cloud. El usuario interactua con la interfaz de usuario de la app.
- El usuario ingresa la URL del producto y la app comenzará a obtener las reviews del producto.
- Después, la app guarda las reviews en la base de datos para usarlas más tarde.
- La app comienza a subir las reviews en el servicio de NLU.
- Después de que el servicio de NLU termine de procesar las reviews, la app guarda el resultado (Sentimiento General y las Entidades más Importantes) en Cloudant. El usuario verá el resultado en la UI
- Watson Natural Language Understanding: Analiza el texto para extraer meta-data de el contenido como sentimiento general, emociones, conceptos, entidades, palabras claves, categorias, relaciones y roles semánticos.
- Cloudant NoSQL DB: Una capa de datos completamente administrada y diseñada para aplicaciones web y móviles modernas que aprovecha un esquema JSON flexible.
- Node.js: Un entorno JavaScript open-source para ejecutar código JavaScript del lado del servidor.
- Databases: Repositorio para guardar y manejar colecciones de datos.
- Cloud: Acceso a recursos informáticos y de tecnología de la información a través de Internet.
Utiliza el botón Deploy to IBM Cloud
O crea el servicio y correlo de manera local.
Si no tienes aún una cuenta de IBM Cloud, puedes crearla aquí.
- Presiona el botón
Deploy to IBM Cloud
La toolchain utiliza GitHub para su control de fuentes. Es posible que se le solicite que autentique la toolchain para que puedas utilizarla en tu cuenta. La toolchain clonará este repositorio y lo utilizará para desplegar la app
- En el apartado de Toolchains, da clic en
Delivery Pipeline
para mirar como se despliega la app. Una vez desplegada, puedes visualizar la app dando clic enView app
.
- Para ver la app y los servicios creados y configurados en este Recipe, utiliza el IBM Cloud dashboard. El nombre de la app lo podrás editar en la toolchain. Los siguientes servicios serán creados y, para identificarlos de una manera más fácil puedes nombrarlos de la siguiente manera utilizando estos prefijos:
- wso-nlu
- wso-cloudant
- Ingresa a https://cloud.ibm.com/dashboard/apps/
- Localiza y da clic en la app recién creada
- Selecciona
Runtime
en en menú izquierdo - Selecciona el apartado de
Environment Variables
que está en el centro de la página - Desplazate hacia el apartado de
User defined variables
que se encuentra más abajo - Haz clic en
add
. - ESTE PASO ES EXTREMADAMENTE IMPORTANTE. Asegurate de escribir el nombre de la variable env EXACTAMENTE COMO SE MUESTRA, de no hacerlo, la app no funcionará. Desplazate hacia arriba hasta que veas el apartado
VCAP_SERVICES
. Entonces podrás ver el apartadocloudantNoSQLDB
y debajo de el el apartadourl
. En el apartado deName
, escribe elCLOUDANT_URL
, y debajo de el campoValue
, pega laurl
de la seccióncloudantNoSQLDB
en el apartado deVCAP_SERVICES
.
- 🚧🚧🚧 EL GIF DE ARRIBA ESTÁ DESACTUALIZADO. EN LUGAR DE NLU_USERNAME tienes que escribir una iam_apikey🚧🚧🚧 Repite el paso 6 pero ahora en el apartado de name, escribe la
iam_apikey
que se encuentra en el apartadocredential
del servicionatural-language-understanding
en la secciónVCAP_SERVICES
y obtén el valor deapikey
. - Da clic en
save
. - Todo listo! . Da clic en
visit App URL
en la parte de arriba de la página para interactuar con la app. Solo copia y pega el url de un producto de Amazon en la app, y da clic en la lupa y voilà! Watson te dará insigts de tu producto.
$ git clone https://github.com/IBM/watson-second-opinion
$ cd watson-second-opinion/
$ npm install
Crea el siguiente servicio:
Una vez el servicio esté creado, da clic en el, y después da clic en Service credentials
en la esquina superior izquierda de la página. Despues da clic en el apartado New credential
y después en add
. Para la Cloudant NoSQL DB
, guarda el valor en la casilla url
. Para el servicio de Natural Language Understanding
guarda el valor en el apartado de iam_apikey
.
Después de correr el comando npm install
de el paso 2, necesitamos definir 3 variables de ambiente que obtuvimos en el paso 4. Corre los siguientes comandos para establecer esas variables (tus usernames / passwords / url serán diferentes):
$ export CLOUDANT_URL=https://f9d9e9d9-8b3f-4625-a425-7a8bbd57aeaf-bluemix:f6f4f68665aa1b6b7821ca0117302353427eb643306d3d2652bc867768bc4c80@f9d9e9d9-8b3f-4625-a425-7a8bbd57hdsf-bluemix.cloudant.com
$ export IAM_APIKEY=xJLkOtKCXISqQHwjfdRBb99u2r-5sJ7n_sEsfsTJXZiJ
Corre la app iniciando Node.
$ node app.js
Ve a http://localhost:4000/
en tu navegador, y podrás observar la UI de Watson Second Opinion.
Encuentra un producto en Amazon que te interese utilizar, cópia el URL de la página de producto y pegala en la app, da cloc en 🔍. Después de que el servicio de NLU termine de procesar todas las reviews, la app mostrará el sentimiento general y las entidades principales encontradas:
Listo! Ahora puedes correr Watson Second Opinion en tu máquina!.
This code pattern is licensed under the Apache Software License, Version 2. Separate third party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the Developer Certificate of Origin, Version 1.1 (DCO) and the Apache Software License, Version 2.