Em um post recente, a Amazon anunciou a disponibilização do Alexa Skills Kit (ASK) com novo modelo de voz, português Brasil, para desenvolvedores. O Alexa é um serviço de voz da Amazon, baseado em nuvem com um ASR, e o cérebro por trás de milhares de dispositivos da Amazon e de terceiros que possuem integração com a Alexa.
As skills que os desenvolvedores criarem e forem certificadas para a publicação, estarão disponíveis para os clientes quando a Alexa for lançada oficialmente no Brasil.
ASR: uma base para a tecnologia de voz
O reconhecimento automático de fala (ASR - automatic speech recognition) é uma tecnologia que converte palavras faladas em texto. Com o ASR, a tecnologia de voz pode detectar sons falados e reconhecê-los como palavras, permitindo que os computadores finalmente nos entendam através da forma mais natural de comunicação: a fala.
Para uma conversa parecer natural, as respostas acontecem em milissegundos. As tecnologias de voz aproveitam a computação em nuvem para dividir o áudio gravado em texto que os computadores podem atuar instantaneamente.
Para treinar o algoritmo a conhecer melhor os sotaques e diferenciar os termos, a política de privacidade da Amazon admite usar conversas da Alexa para treinar o reconhecimento vocal, mas não deixa claro se há outras pessoas escutando o que os usuários dizem.
Usando essa base de tecnologia de voz, é possível criar novas habilidades (skills) para a Alexa com o uso do Alexa Skills Kit, que permite aos desenvolvedores aproveitar o conhecimento da Amazon no campo do design de voz.
Criando novas skills para a Alexa
Um Alexa skill inclui uma interface de usuário de voz, ou VUI. Essa interface entende as intenções do cliente e um serviço back-end processa as intenções e orienta à Alexa como responder.
Para desenvolver uma skill foi disponibilizado o ASK. O ASK é uma coleção de APIs e ferramentas de autoatendimento que facilitam e agilizam para o desenvolvedor a criação de novos recursos ou skills com acionamento por voz.
Ao desenvolver uma skill não é necessário ter experiência com reconhecimento de voz ou compreensão da linguagem natural, pois faz parte do trabalho da Alexa ouvir, entender e processar a solicitação do usuário, para então responder.
A documentação técnica, disponível apenas em inglês, no momento, explica como criar uma skill para a Alexa nos diversos idiomas abrangentes, incluindo inglês dos EUA, da Índia, do Reino Unido, do Canadá, italiano, espanhol da Espanha e do México, e agora, português do Brasil.
As maioria das skills criadas podem ser armazenadas e hospedadas no AWS Lambda gratuitamente, e caso haja cobranças é possível solicitar créditos promocionais da AWS. A gratuidade é apenas para o primeiro milhão de chamadas no mês.
É possível usar as seguintes APIs para fornecer diferentes tipos de experiencia:
- API personalizada - criar um modelo de interação personalizado que permita aos clientes pedir pizza, procurar informações e mais;
- API de notícias - ampliar o alcance dos feeds existentes, fornecendo conteúdo novo aos clientes por meio de clipes de áudios pré gravados ou atualizações de texto em fala;
- API de vídeo - cria experiências que permitem aos clientes encontrarem e consumirem facilmente conteúdos de vídeo em dispositivos sem invocar uma skill específica;
- API de música - permitir que o cliente transmita seu catálogo de musicas em qualquer dispositivo com Alexa integrado;
- API de listas - permite que os usuários criem e gerenciem suas listas de compras e/ou tarefas, ou criem suas próprias listas para qualquer finalidade ou ocasião;
- API de smart home - desenvolver habilidades que permitem o controle sem mãos de praticamente qualquer recurso em qualquer dispositivo inteligente, incluindo luzes, termostatos, câmeras, smart TVs e muito mais.
- API de Echo Buttons - controla e recebe dados dos Echo Buttons para criar jogos de múltipla escolha, quebra-cabeças de sequência e muito mais;
- API para Business - criar e implantar habilidades para o local de trabalho, usando o contexto ativado por local para automatizar tarefas administrativas e de ajuda.
Para criar, gerenciar, testar e publicar as skills a Amazon disponibiliza o ASK Developer Console, nele também é possível acessar análises do uso da skill pelos usuários.
Outra ferramenta que a Amazon disponibiliza é o Alexa Skills Kit de linha de comando (ASK CLI) uma ferramenta que gerencia suas habilidades e recursos relacionados ao Alexa, como as funções do AWS Lambda. Com o ASK CLI é possível ter acesso à API de gerenciamento de habilidades, que permite gerenciar as habilidades da Alexa programaticamente. Para usar o ASK CLI, a Amazon disponibilizou um tutorial em sua página.
O ASK toolkit é uma extensão para o Visual Studio, tornando mais fácil desenvolver e implantar habilidades da Alexa. Fornecendo recursos como geração de snippets de código, validação de esquema JSON e detecção de recursos por meio do Command Palette no VS Code. O ASK toolkit usa a interface de linha de comando ASK (CLI).
A Amazon disponibilizou em seu repositório no GitHub alguns dos principais recursos para iniciar o desenvolvimento das skills. As linguagens mais usadas são: JavaScript, Python, Java, C++, TypeScript, Node.js entre outras.
No dia 2 de maio será apresentada uma conferência gratuita on-line para desenvolvedores que desejam criar e lançar skills para Alexa, o "Alexa Live". O conteúdo do webinar foi desenvolvido para atender a todos os níveis de experiência de desenvolvedores com 4 trilhas principais. Para participar é preciso se registrar.
A Alexa possui integrações com hardwares, como o Echo da própria Amazon, e outras fabricantes, como a Bose, LG, Intelbras e Philips Hue. Outros fabricantes que desejarem desenvolver produtos integrados com a Alexa, no mercado nacional, podem solicitar acesso antecipado a prévia para desenvolvedores do Alexa Voice Service (somente convidados).
Para maiores informações a Amazon Alexa mantém sempre atualizado seu blog.