Conteúdo
- Bootcamp de AI
- 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 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 detais:
- 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 Fala do Azure (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 a base de treino (utterances)
- Treinar o modelo
- Implantar um endpoint do modelo para ser consumido pelo servico Speech.
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. Por fim, seus resultados serão salvos no Azure Storage. Para isso será realizado os seguintes passos:
- Acessar o Azure Storage
- Transcrever os áudios com o Speech e LUIS
- Resumir resultado das classificações
- Salvar as transcrições e classificações no Azure Storage
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 documents 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: