Cómo lanzar un producto VUI en una semana sin conocimiento técnico

Read in English How to launch an Alexa Skill in a week with no technical knowledge

“Alexa abre Yo me quedo en casa”: Guía completa de los pasos que di para lanzar la Skill “Yo me quedo en casa” en 7 países.

Ahora que todo empieza poco a poco a volver a la normalidad, o por lo menos a que la humanidad pueda volver a pasar alguna hora al día fuera de casa, os cuento el experimento que lancé al principio de la pandemia del COVID-19 en Alexa.

El experimento es un buen ejemplo de diseño de producto, de éxitos, fracasos y aprendizajes, pero sobre todo una demostración de que podemos construir un proyecto de VUI (o voice user interface) con cierto impacto, en poco tiempo y sin tener conocimiento técnico.

En este post os cuento el por qué del proyecto “Alexa, abre Yo me quedo en casa”, los detalles de cómo lo hice, lo lancé y los resultados que obtuve.

Contexto temporal del producto “Yo me quedo en casa”

El 14 de marzo se decretó en España el estado de alarma, confinando a toda la población en sus casas. Cinco días después, el 19 de marzo publiqué en el marketplace de Alexa la Skill “Yo me quedo en casa”, con actividades para hacer en casa y luchar contra el aburrimiento. Cuatro días después la Skill estaba también online en México, EEUU, India, Canadá, Australia y Reino Unido, con el nombre “Stay Home” en los países angloparlantes.

imagen consola desarrollo de la skill stay home en varios países

¿Por qué una skill de entretenimiento para el coronavirus?

El 9 de marzo la población española nos dimos cuenta de que íbamos a seguir los mismos pasos de otros países y desde ese día la comunidad tech empezó a organizarse para dar solución a los nuevos problemas a los que nos íbamos a enfrentar. En esos días participé en varios foros con ideas fantásticas, muchas de las cuales se convirtieron en algunos de los proyectos que acabaron viendo la luz.

La mayoría de esos proyectos se centraban en los estragos médicos y organizativos derivados del impacto del coronavirus, intentando conseguir una mayor relevancia y un mayor cambio sobre la población. Por mi parte, opté por una vía lateral, que no salvaría al mundo, pero que aliviaría un problema derivado de la emergencia sanitaria: luchar contra el aburrimiento.

Íbamos a estar encerrados en casa 24 horas al día sin nada que hacer. El aburrimiento podía parecer un problema menor, pero como hemos vivido, las horas de un día pueden ser muy largas.

fotografía en blanco y negro de un niño asomado a la ventana
Photo by Jeff Hendricks on Unsplash

¿Cómo definí el MVP de “Yo me quedo en casa”?

Soluciones al problema del aburrimiento hay miles, por lo que mi proyecto podía tener mil caras, así que me puse dos condiciones:

  • Evitar el uso de pantallas, las cuales iban a dominar de forma natural un gran porcentaje de nuestro tiempo.
  • Desarrollarlo de forma autónoma y en poco tiempo. La situación se iba a alargar más de las dos semanas inicialmente anunciadas, pero era probable que pasados dos meses el proyecto tuviera menos sentido.

El altavoz de Alexa me ayudaba con la primera premisa. Para satisfacer la segunda acudí a uno de los formatos que mejor suelen funcionar en este dispositivo: dar ideas diarias del tema que sea. A nivel nacional e internacional son ejemplo de éxito experiencias, como “La pregunta del día”, “La curiosidad del día”, “La historia del día”… La recomendación de actividad del día parecía tener un encaje perfecto.

Si quieres ver otros diseños de interfaces de voz te recomiendo que eches un ojo a este proyecto que hice para una Skill de Alexa para aprender inglés o este otro para consultar la agenda escolar.

¿De dónde sacar el contenido?

Uno de los problemas más habituales en el desarrollo de interfaces conversacionales viene de la capacidad de generar contenido interesante para ser servido. La generación de contenido es un proceso complejo tanto por la ideación del mismo (que puede ser similar al trabajo de un guionista para cine o radio), como por su producción, que dependiendo del caso puede requerir de estudios de grabación, equipos, actores… (si os interesa esa parte os recomiendo hablar con Madelón Lánchez y su productora Magic Tales).

Para resolver el problema de la producción, me decidí por utilizar consejos cortos, donde no es tan importante el uso de un narrador y las voces generadas con TTS pueden ser suficientes y el uso de efectos sonoros que rompieran con la monotonía de la voz automática.

Para la redacción del contenido, busqué en internet ideas ya creadas para realizar en casa y encontré la maravillosa idea de estación Bambalina. Dos emails después tenía el consentimiento de Celia, su autora, para usar su lista de ideas en mi pequeño proyecto.

imagen con ideas para pasar el confinamiento

Cómo desarrollar tu skill de Alexa sin saber programar

El formato de este tipo de Skill es algo así como el ABC de las interfaces conversacionales. Estando en Amazon ya había experimentado con algún template de Skill por lo que sabía que arrancar era fácil, pero nunca había desarrollado nada con calidad de producción. Aún así han simplificado el proceso de creación y puedes tener tu skill en estos 5 pasos:

  1. Alta en https://developer.amazon.com/ y acceso a https://developer.amazon.com/alexa/console/ask
  2. Pulsa el botón de “Create new skill”. En la pantalla de creación: 
    • Pon nombre de invocación.
    • Elige idioma.
    • Selecciona “Custom”. Los otras opciones son otros formatos que no interesan ahora mismo.
    • Selecciona “Alexa-Hosted (node.js)”. Huelga decir que no sé de node (no hace falta para esto), y que elijo hosted porque me cuesta entender el proceso de crear tu propia lambda y esas cosas.
  3. Elige el template. La plataforma ofrece varios templates y tienes que elegir “Fact Skill”. Al hacerlo se empieza a configurar tu skill lo cual puede tardar hasta un minuto y acaba dando acceso a la plataforma de desarrollo.
  4. Añade tus textos. Haz clic en la pestaña de “Code”, doble click en “languageStrings.js”, busca en el chorro de código que aparece el bloque de español que empieza por “es: {“ y modifica el texto que aparece en rojo con lo que quieras, respetando la estructura de comas, llaves y demás. En el apartado de “FACTS” mete todas las propuestas de actividades durante la cuarentena. Cuando termines, haz click en “deploy”.
  5. Prueba tu Skill. Haz clic en la pestaña “Test”, selecciona “development” y escribe “abre + el nombre de invocación que has puesto a tu skill”. Et voilà! Tu skill está lista para testear y con un mínimo más de esfuerzo está para publicar.

imagen de la consola de desarrollo de Alexa

Cómo conseguir usuarios sin marketing en tu Skill de Alexa

La Skill nació con un problema relacionado con el nombre. “Yo me quedo en casa” ya era en ese momento un hashtag “oficial” socialmente y Alexa ya tenía una respuesta corporativa definida para ese tipo de peticiones, por lo que cualquier duda en el ASR no iba a dirigir a mi Skill. Además, durante cuatro semanas el nombre de invocación no funcionó como forma de activación de la Skill, por lo que su uso estuvo limitada a usuarios que de forma manual la activaron desde el marketplace. 

Con esa limitación solo me quedaba la opción de conseguir buenos resultados en la búsqueda en Amazon. Aún no existe una disciplina como tal, pero empiezan a surgir artículos que hablan de cómo optimizar las fichas de las skills para mejorar la conversión similares al trabajo de SEO y ASO. En este artículo Gabriel Aldamiz-Echevarría da muy buenas pistas de por dónde empezar. Si nadie se lo ha pedido, pido que se haga oficial el acrónimo ASSO para Alexa Skill Search Optimization.

Mi aproximación a este “ASSO” se basó en tres puntos principales:

  • Imagen que destaque visualmente frente al resto
  • Título
  • Uso de etiquetas relevantes

Sobre la imagen, busqué en el marketplace de Alexa los colores que más destacaban de las Skills actuales. Incluso testee con varias personas preguntándoles qué iconos les llamaban más la atención. El resultado fue: colores fuertes, especialmente flúor, y letras con mucho contraste. También parecían destacar nombres cortos, pero al no tener una marca reconocida para mí no era una opción.

Para el título barajé varios, pero básicamente me fijé en cuál era el hashtag más popular esos días en relación con el coronavirus. Si era algo muy presente en redes sociales, seguro que sería una búsqueda habitual. El ganador fue “#yomequedoencasa” que además sonaba bien y, aunque largo, era fácil de decir.

Para las etiquetas, tenía claro que me quería posicionar como una utilidad para un momento muy concreto. Aunque el contenido puede tener sentido todo el año, parece que es más relevante en esta época de encierro. Mi apuesta fue clara e incluí la keyword “coronavirus” entre las posibles para describir mi Skill. En el momento de su publicación, solo otra skill competía por esa palabra en el buscador de Skills de Amazon (la skill de Iberia) y a día de hoy tan solo hay dos más (una de informes de la Ser sobre el tema y otra de aplausos, también mía). La elección de “coronavirus” sobre otras, la basé en los resultados de Google Trends en ese momento.

gráfico de búsquedas en Google en marzo para los términos: coronavirus, covid y pandemia

Cómo lanzar tu Skill en varios países

Dependiendo de tu caso de uso, el lanzamiento en otros idiomas puede ser más o menos complicado. En mi caso, al no usar voces grabadas, solo necesitaba traducir todos mis consejos a los idiomas de los países en los que fuera a lanzar y actualizar la información en el mismo archivo “languageStrings.js” en el que incluí mis archivos en español.

Por rapidez e impacto limité los idiomas a inglés y español y evité palabras que pudieran ser complicadas en sus diferentes variantes. Eso me llevó a cambiar todas las veces que se hablaba de “coger” por sinónimos más agradables para México y EEUU. Para la parte en inglés conté con una persona nativa que me ayudara a usar frases más naturales (¡gracias Helen!).

Si hubiera querido ser más riguroso, a costa de complicar el MVP, hubiera tenido que contar una persona nativa para cada uno de los países. No es solo una cuestión de cambiar unas palabras por otras, sino que tendría que haber revisado estructuras enteras o incluso consejos que aplican en unos países y no en otros.

Más allá de eso, el lanzamiento en los diferentes países no tiene mucha más complicación que cambiar el archivo de marras (“languageStrings.js”), acceder a “Language Settings” en la consola, añadir todos los idiomas y países que quieras, hacer “Deploy” y comenzar el proceso de publicación.

Cómo entrenar y mantener el modelo de lenguaje de tu Skill de Alexa

Lo normal será que lances tu skill y que las cosas no vayan tan bien como esperabas, incluso en el caso de una Skill tan sencilla como esta. Aunque de primeras no lo sepas, vas a tener usuarios pidiendo cosas que nunca imaginaste y que por tanto no podías contemplar. No te preocupes ¡porque tiene arreglo!

En la pestaña de “Build”, verás a la izquierda una columna con un desplegable llamado “Intents”. Los intents son los responsables de agrupar las diferentes frases que un usuario te puede decir. Si no queremos que nuestra VUI se quede sin saber qué decir (o que diga lo primero que se le ocurra), tenemos que acceder a cada uno de esos intents y añadir más frases posibles que los usuarios pueden decir. Cuando se habla de entrenar el modelo con más frases (o Utterances) se trata solo de eso: añadir más frases para que el sistema sepa cómo interpretarlas y a dónde dirigirlas en el futuro.

Las frases a añadir nos las podemos inventar (basándonos en nuestro conocimiento del mundo), las podemos sacar de test que hagamos a usuarios, y sobre todo, de la sección “Intent History” que encontramos en el menú lateral de la izquierda. En “Intent History” encontraremos todas las frases que Alexa ha gestionado y sobre las que ha tenido dudas sobre cómo interpretar. Desde esta sección podremos indicar qué intent debe ser el que recoja cada una de esas frases dudosas.

panel desarrollo alexa en la sección intent Hitory

Resultados del proyecto

Los buenos:

  • La skill ha sido usada por 3.024 usuarios únicos, con un máximo de 162 usuarios el 4 de abril.
  • Esos usuarios han dicho un total de 20.065 utterances o frases a mi skill, lo que supone una media de 6,5 utterance por usuario, lo cual está muy bien.
  • 39 valoraciones en el marketplace, el 63% de ellas con un 4 o un 5, dejando el total en un 3,5 sobre 5.

Los malos:

  • Un 26% de las valoraciones tienen un 1 sobre 5. La mayoría son del principio del lanzamiento, cuando fallaban muchas utterance y muchos usuarios entraban en un bucle y no podían salir de la Skill.
  • La retención a 28 días es de un 9,10% lo cual es algo bajo.
  • El impacto de la Skill en los 5 países angloparlantes ha sido prácticamente nulo. Está claro que son mercados mucho más maduros, más competitivos y destacar es más difícil. También ha podido afectar el hecho de que el confinamiento no ha sido igual en todos los países.
  • La Skill es increíblemente estacional, con el relajamiento de las medidas de confinamiento los usuarios han empezado a bajar y auguro que tenderán a cero en las próximas semanas.

resultados de analytics en el panel de desarrollo de Alexa

Aprendizajes y conclusiones

Sacar un producto con impacto tiene más que ver con las ideas que con la complejidad. Actualmente se pueden hacer cosas muy interesantes en poco tiempo y sin grandes conocimientos técnicos.

Para resultados a corto plazo tiene que haber un constante replanteamiento entre coste y beneficio. Este proyecto, dedicándole más tiempo, habría obtenido resultados similares o tal vez algo mejores, pero se habría enfrentado igualmente a una decadencia paulatina. ¿Cuánto esfuerzo debes emplear en un proyecto que sabes que morirá en un tiempo más o menos determinado?

Lo que funciona en un país no tiene por qué funcionar en otro. Tampoco dentro de un mismo país funciona lo mismo dependiendo del idioma (En EEUU la versión en inglés de la skill tiene más usuarios que su versión en español). Cada versión de una skill necesita una adaptación al idioma de cada región, a su cultura y a la situación por la que esté pasando.

Si quieres lanzar tu propio proyecto y te has quedado con dudas de cualquiera de los apartados no dudes en preguntarme en los comentarios o en mi email: hola@jesusmartin.eu

 

Jesús

Soy Jesús Martín, y fui el diseñador de Alexa en Francia, Italia y España tras su lanzamiento en esos países. Me enamoré de la tecnología y de sus recovecos hace ya varios años y lo que voy descubriendo lo cuento en esta página.

 

4 thoughts on “Cómo lanzar un producto VUI en una semana sin conocimiento técnico

  1. Hola Jesús, Muchas Gracias por tus aportes. Te cuento que estoy metiéndome de lleno en el diseño de interfaces por voz y tus artículos son de muchisima ayuda. Tenes algun tip para combinar la utilización de vos con selección de muchas opciones, del 1 al 9 y que se pueda también utilizar la pantalla?
    Gracias y saludos!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *