Resumen

Integrar servicios de inteligencia artificial a una aplicación web puede parecer complejo, pero con el SDK de Watson Personality Insights y unas pocas líneas de código el proceso se simplifica enormemente. A continuación se explica paso a paso cómo construir una aplicación que analiza la personalidad de un usuario a partir de texto, cómo interpretar las preferencias de consumo y cómo publicarla en IBM Cloud usando Cloud Foundry.

¿Cómo se configura el SDK de Personality Insights en Node.js?

El punto de partida es el archivo app.js. En la línea ocho se importa el SDK asignando a una variable la versión tres de Personality Insights [0:18]. Después se crea un nuevo objeto con las credenciales necesarias:

  • Fecha de versión del servicio.
  • Usuario, que en este caso es API key.
  • Password, donde se coloca la misma API key obtenida desde las credenciales del servicio en IBM Cloud [1:08].

Este flujo es muy semejante al que se usa con cURL, solo que ahora todo queda encapsulado en código JavaScript. La aplicación utiliza Express para el backend y archivos estáticos en una carpeta pública para el frontend [1:24].

¿Qué parámetros recibe el método profile?

Se construye una variable llamada profile params con la siguiente estructura [1:34]:

  • content: el texto que el usuario escribe en el formulario.
  • content type: texto plano.
  • consumption preferences: activado en true para obtener preferencias de consumo, un parámetro opcional que no se había usado en la demostración con cURL [2:05].
  • content language y accept language: idioma de entrada y de respuesta.
  • raw scores: activado para recibir los puntajes completos, sin recortes [2:24].

Con estos parámetros se ejecuta personalityInsights.profile(), que envía la información al servicio y devuelve un callback con los resultados o un error [2:30].

¿Cómo se estructura la respuesta en el frontend?

Un archivo externo llamado estructurador se encarga de transformar el JSON completo en pares simples de nombre de personalidad y percentil [0:38]. Al frontend solo se envían los primeros cinco aspectos de personalidad, mientras que en la terminal se imprimen todos los datos ya formateados [2:46].

La aplicación corre localmente en el puerto 8080 [3:10].

¿Qué revelan las preferencias de consumo sobre un usuario?

Cuando se analizan las respuestas del formulario — nombre, edad, superpoder, importancia de la honestidad, mayor logro, entre otras preguntas — el servicio devuelve no solo los Big Five, valores y necesidades, sino también las preferencias de consumo [5:20].

Estos indicadores son valores entre cero y uno que reflejan comportamientos como:

  • Propiedad al comprar automóviles: si al usuario le importa el costo de mantenimiento o solo el precio de compra [5:38].
  • Seguridad y comodidad en la ropa: qué atributos valora más al vestirse [5:58].
  • Influencia de la publicidad en línea: un dato clave para saber si se puede impactar al usuario con anuncios digitales [6:22].
  • Compras impulsivas, comer fuera, actividades de tiempo libre y preocupación por el medio ambiente [6:44].

Con esta información es posible realizar segmentación de usuarios de forma automatizada. Por ejemplo, si un usuario responde positivamente a la publicidad en línea pero no a redes sociales, la estrategia se orienta a anuncios en las páginas que frecuenta [6:30].

¿Cómo se publica la aplicación en IBM Cloud con Cloud Foundry?

El despliegue requiere un archivo manifest.yml que funciona como un script secuencial [3:22]. Los campos esenciales son:

  • applications: identificador del bloque.
  • path: directorio desde donde se envía.
  • Memoria asignada.
  • Nombre de la aplicación.
  • random-route: genera una URL única para evitar conflictos de dominio [3:48].

El proceso completo se resume en tres comandos [7:28]:

  1. ibmcloud login — autenticación con correo y contraseña.
  2. ibmcloud target --cf — enlace dinámico que asocia la región actual como destino de despliegue, por ejemplo Estados Unidos Sur [8:10].
  3. ibmcloud cf push — sube la aplicación leyendo el manifest [8:50].

Al finalizar, se obtiene una ruta pública con tres strings aleatorios donde la aplicación queda accesible, idéntica a la versión local [9:18].

Si estás pensando en aplicar este tipo de análisis de personalidad en procesos de recursos humanos, marketing personalizado o experiencia de usuario, comparte en los comentarios cómo lo implementarías en tu día a día.