Conteúdo
- Bootcamp de IA
- Inteligência Artificial na Prática
- Objetivo
- Arquitetura Proposta
- Serviços Utilizados
- Configuração do Ambiente
- Execução dos Notebooks
- Visualização do resultado no Power Apps
Solução para classificar ligações telefônicas e extrair informações das mesmas utilizando serviços do Azure.
Serviço | Documentação |
---|---|
Azure Storage - Blob | https://docs.microsoft.com/pt-br/azure/storage/blobs/ |
Cognitive Services - Speech | https://docs.microsoft.com/pt-br/azure/cognitive-services/speech-service/ |
Cognitive Services - LUIS | https://docs.microsoft.com/pt-br/azure/cognitive-services/luis/ |
Cognitive Search | https://docs.microsoft.com/pt-br/azure/search/ |
Power Apps | https://docs.microsoft.com/pt-br/powerapps/search/ |
Nessa etapa, serão apresentadas as configurações do ambiente para ser possível implantar a arquitetura prospota apresentada acima.
-
No portal do Azure, selecione Resource groups na lista de serviços do Azure.
-
Na lista abaixo de Resource groups, selecione + Add.
-
Na aba Basics, preencha as informações abaixo:
Project details:
- Subscription: Selecione a subscrição que está utilizando para esse workshop.
- Resource group: Digite
hands-on-lab-SUFFIXO
como nome do seu grupo de recursos, onde SUFFIXO é o seu apelido, iniciais, ou outro valor para garantir um nome único.
Resource details:
- Region: Selecione a região que está utilizando para realizar esse workshop.
-
Selecione Review + Create.
-
Na aba Review + create, confirme se há uma mensagem de Validation passed e então clique em Create.
Nessa tarefa, você provisionará um serviço de armazemento do Azure, onde você irá armazenar os audios de ligações telefonicas e o resultado das transcrições das mesmas.
-
No portal do Azure, clique em Show portal menu no canto superior direito e escolha +Create a resource do menu.
-
Busque por storage e selecione Storage Account.
-
Clique em Create.
-
Na aba Basics, preencha as informações abaixo:
Project details:
- Subscription: Selecione a subscrição que está utilizando para esse workshop.
- Resource group: Selecione o resoruce group hands-on-lab-SUFFIX na lista.
Instance details:
-
Na aba Review + create, confirme se há uma mensagem de Validation passed e então clique em Create.
Nessa etapa iremos preencher o arquivo config\config_example.yml com as configurações necessárias para acessar o Azure Storage.
-
Na barra de busca, busque por storage e selecione Storage accounts:
<img src="media/azure-find-storage.png" alt="Find Storage Accounts"
title="Find Storage Accounts" width="50%" />
-
Clique no storage account criado anteriormente storageSUFFIX.
-
No diretório config local abra o arquivo config.yml e preencha as seguintes informações:
-
Acesse Keys and Endpoints:
- storage_name: Copie o valor de Storage account name
- conn_string: Copie os dados de key1 ou key2
-
Acesse Shared access signature:
- sas_token: No campo Allowed resource types selecione Service, Container e Object, selecione uma data até finalizar o workshop, clique em Generate SAS and connection string e por fim, copie o SAS token no campo sas_token entre aspas simples.
Example:
#################################################################################### # # Azure Storage - Blob # #################################################################################### azure_storage: container_name: audios storage_name: storageSUFFIX conn_string: hgrtweterwtetrrtrr sas_token: '?fjdfkshnshtuioi45r4t2rt1r'
-
Nessa tarefa, será provisionado o serviço de Fala do Azure (Cognitive Services - Speech) para realizar as transcrições dos áudios.
-
No portal do Azure, clique em Show portal menu no canto superior direito e escolha +Create a resource do menu.
-
Busque por speech no Azure Marketplace list selecione Speech clique em Create e em seguida Create novamente.
-
Na aba Create, preencha as informações abaixo:
Project details:
- Subscription: Selecione a subscrição que está utilizando para esse workshop.
- Resource group: Selecione o resoruce group hands-on-lab-SUFFIX na lista.
Instance Details:
-
Na aba Review + create, confirme se há uma mensagem de Validation passed e então clique em Create.
Nessa etapa iremos preencher o arquivo config\config_example.yml com as configurações necessárias para acessar o Cognitive Services Speech.
-
No diretório config local abra o arquivo config.yml e preencha as seguintes informações:
- Acesse Keys and Endpoints:
- speech_key: Copie os dados de KEY 1 ou KEY 2
- speech_region: Copie os dados de Location
- Acesse Keys and Endpoints:
Exemplo:
####################################################################################
#
# Cognitive Services - Speech
#
####################################################################################
speech:
speech_key: 029kdsjdhsdjkds8d81cb
speech_region: westus2
speech_language: pt-br
Nessa tarefa, será provisionado o serviço de Reconhecimento Vocal (Cognitive Services - LUIS) para realizar a classificação dos áudios.
-
No portal do Azure, clique em Show portal menu no canto superior direito e escolha +Create a resource no menu.
-
Busque por luis no Azure Marketplace list selecione Language Understanding clique em Create e em seguida Create novamente.
-
Na aba Create, preencha as informações abaixo:
Create Options: Authoring
Project details:
- Subscription: Selecione a subscrição que está utilizando para esse workshop.
- Resource group: Selecione o resoruce group hands-on-lab-SUFFIX na lista.
- Name: Forneça um nome único para essa instância: luis-SUFFIX.
Authoring Resource:
-
Na aba Review + create, confirme se há uma mensagem de Validation passed e então clique em Create.
Nessa etapa iremos preencher o arquivo config\config_example.yml com as configurações necessárias para acessar o Cognitive Services LUIS.
-
No diretório config local abra o arquivo config.yml e preencha as seguintes informações:
- Acesse Keys and Endpoints:
- auth_name: Copie o nome do serviço
- auth_key: Copie os dados de KEY 1 ou KEY 2
- auth_region: Copie os dados de Location
Exemplo:
#################################################################################### # # Cognitive Services - Language Understanding (LUIS) # #################################################################################### luis_authoring: auth_name: luis-rnv-auth auth_key: 116b8645454545451b9a40 auth_region: westus
- Acesse Keys and Endpoints:
Nessa tarefa, será provisionado o Cognitive Search para realizar a busca dos áudios.
-
No portal do Azure, clique em Show portal menu no canto superior direito e escolha +Create a resource do menu.
-
Busque por search no Azure Marketplace list selecione Azure Cognitive Search clique em Create e em seguida Create novamente.
-
Na aba Create, preencha as informações abaixo:
Create Options: Authoring
Project details:
- Subscription: Selecione a subscrição que está utilizando para esse workshop.
- Resource group: Selecione o resoruce group hands-on-lab-SUFFIX na lista.
Authoring Resource:
-
Na aba Review + create, confirme se há uma mensagem de Validation passed e então clique em Create.
Nessa etapa iremos preencher o arquivo config\config_example.yml com as configurações necessárias para acessar o Cognitive Services LUIS.
-
No diretório config local abra o arquivo config.yml e preencha as seguintes informações:
- Acesse Keys:
- service_name: Copie o nome do serviço
- admin_key: Copie os dados de Primary admin key ou Secondary admin key
Exemplo:
#################################################################################### # # Cognitive Search # #################################################################################### search: service_name: search-rnv admin_key: 1169B1dfggdfgdfDC485277 index_name: audios-rnv api_version: '?api-version=2020-06-30'
- Acesse Keys:
Nessa etapa será criada uma aplicação do LUIS via código realizando os seguintes passos:
- Criar as classes (intents)
- Adicionar Intenções
- Adicionar Entidades
- Adicionar a base de treino (utterances)
- Treinar o modelo
- Implantar um endpoint do modelo
Observação: Também seria possível criar através do portal do LUIS.
Para realizar as atividades acima acessar o primeiro notebook: 1_create_luis
Nessa etapa será realizado a transcrições dos áudios através da API Search do Cognitive Services integrada ao modelo do LUIS criado na tarefa anterior.Para isso será realizado os seguintes passos:
- Transcrever os áudios com o Speech e LUIS
- Resumir resultado das classificações
- Salvar as transcrições
Para realizar as atividades acima acessar o segundo notebook: 2_speech_plus_luis
Nessa etapa tanto os áudios quanto as transcrições serão salvas no Azure Storage. Para isso será realizado os seguintes passos:
- Criação dos Containers
- Upload dos Áudios e Transcrições
- Checar os arquivos
Para realizar as atividades acima acessar o segundo notebook: 2_speech_plus_luis
Nessa etapa será realizado a criação do índice do Azure Search, e em seguida, a criação do documento json que irá popular o conteúdo do índice para possibilitar a busca dos audios. Para isso será realizado os seguintes passos:
- Criação do índice do Azure Search
- Criação do documento JSON do Azure Search
- Upload do documento JSON no Azure Search
Para realizar as atividades acima acessar o primeiro notebook: 3_search
Nessa etapa será criado um app (front-end) para que os resultados da busca dos áudios sejam visualizados. Essa integração é do Azure Search com o PowerApps.
-
Primeiramente é necessário criar um custom connector e para cria-lo, por favor siga o seguinte tutorial: Tutorial: Consultar um índice do Cognitive Search por meio do Power Apps
-
A parte do select, para esse app não é necessária somente a configuração do Search, api-version e Content-Type conforme print abaixo:
-
Posteriormente, é necessário a criação de um canvas para efetivamente fazer a visualização das palavras chaves e retornar a busca com os áudios. Para criar um canvas, siga o mesmo tutorial acima na parte 3-Visualize results: