Quickstart: Compreensão da linguagem de conversação (pré-visualização)
Use este artigo para começar com a classificação de texto personalizado usando o Language Studio e a API REST. Siga estes passos para experimentar um exemplo.
Pré-requisitos
- Assinatura Azure - Crie uma gratuitamente.
Iniciar s.000 no Language Studio
Vá ao Language Studio e inscreva-se na sua conta Azure.
Na janela de recursos idiomas que aparece, encontre a sua subscrição Azure e escolha o seu recurso Idioma. Se não tiver um recurso, pode criar um novo.
Nota
Atualmente apenas os recursos com o nível de preços padrão (S) podem ser utilizados com o serviço de Language Understanding Conversacional.
Criar um projeto de conversação
Assim que tiver um recurso idioma associado à sua conta, crie um projeto de Language Understanding Conversacional. Neste arranque rápido, irá criar um projeto que pode identificar comandos para e-mail, tais como: ler e-mails de certas pessoas, apagar e-mails e anexar um documento a um e-mail.
No Language Studio, encontre a secção chamada Compreender a linguagem de conversação e selecione a compreensão da linguagem conversacional.
Isto irá levá-lo à página do projeto Conversations . Selecione Criar novo projeto. Selecione o projeto 'Conversação' e, em seguida, selecione Seguinte.
Em seguida, tem de fornecer os seguintes detalhes:
Valor | Descrição |
---|---|
Nome | Um nome para o seu projeto. |
Description | Descrição do projeto opcional. |
Linguagem primária do texto | A linguagem primária do seu projeto. Os seus dados de treino devem estar principalmente nesta língua. Para este arranque rápido, escolha inglês. |
Ativar várias línguas | Se gostaria de permitir que o seu projeto suportasse várias línguas ao mesmo tempo. Para este arranque rápido, ative esta opção. |
Uma vez feito, selecione Next e reveja os detalhes. Selecione criar projeto para concluir o processo. Deve agora ver o ecrã Build Schema no seu projeto.
Criar o esquema
Selecione o separador Intenções ou Entidades na página Build Schema e selecione Adicionar. Será solicitado um nome antes de concluir a criação da intenção ou entidade.
Criar três intenções com os seguintes nomes:
- Ler
- Eliminar
- Ligar
Criar três entidades com os seguintes nomes. Assim que criar a entidade, volte à página Build Schema sem adicionar detalhes à entidade:
- Remetente
- Nome de arquivo
- FileType
Ao selecionar a intenção, verá a página de tags, onde pode adicionar exemplos para intenções e rotulá-las com entidades.
Tag declarações
Na página de tags, vamos adicionar alguns exemplos às intenções. Selecione a intenção de Ler a partir da caixa de entrega que diz Select Intent.
Na caixa de texto que diz Escrever o seu exemplo e pressionar a entrar, escreva a frase "leia o e-mail de Carol" e prima para adicioná-la como um exemplo de expressão.
Arraste o cursor sobre a palavra "Carol" e selecione a entidade Remetente , para rotular "Carol" como entidade.
Adicione o resto destas declarações com as seguintes intenções e entidades.
Expressão | Intenção | Entidades |
---|---|---|
Leia o e-mail do John para mim. | Ler | "João": Remetente |
O que dizia o e-mail do Matt? | Ler | "Matt": Remetente |
Abra o e-mail de Blake | Ler | "Blake": Remetente |
Apague o meu último e-mail da Martha | Eliminar | "Martha": Remetente |
Apague isto | Eliminar | Sem entidades |
Remova este. | Eliminar | Sem entidades |
Mova isto para a pasta eliminada | Eliminar | Sem entidades |
Anexar o ficheiro excel chamado relatórios q1 | Ligar | "Excel": FileType, "Reportes q1" ->Nome de arquivo |
Anexar o ficheiro PowerPoint | Ligar | "PowerPoint": FileType |
Adicione o ficheiro PDF com o nome assinado contrato | Ligar | "PDF": FileType, "Contrato assinado": Nome de arquivo |
Quando terminar, selecione Guardar Alterações para guardar as expressões e etiquetas do projeto. O ícone ao lado do botão ficará verde quando as alterações forem guardadas. Em seguida, vá à página do Modelo de Comboio .
Treine o seu modelo e veja os seus detalhes
Selecione o modelo do comboio à esquerda do ecrã. Selecione Iniciar um trabalho de treino. Para treinar o seu modelo, precisa de fornecer um nome para o modelo. Escreva um nome como "v1" e pressione a tecla de entrada.
Nota
Se não marcar as expressões , só poderá treinar utilizando o conjunto de testes automaticamente de todas as opções de dados . Consulte as expressões de adicionar ao conjunto de testes definidos para obter mais informações.
Quando o trabalho de formação estiver concluído, o que pode demorar algum tempo, deverá ver o desempenho do modelo de saída na página de detalhes do modelo Ver .
Implemente o seu modelo
A partir da página do modelo Implementar à esquerda do ecrã, selecione Adicionar a implementação.
Na janela que aparece, dê um nome de implantação à sua implantação e, em seguida, atribua o seu modelo treinado a este nome de implantação e, em seguida, selecione Enviar.
Testar o seu modelo
Selecione o modelo de teste à esquerda do ecrã e selecione a ligação do modelo. Escreva a expressão "destrua este", e selecione Executar o teste.
Agora vê a intenção de topo como Delete sem entidades.
Pode testar outras expressões tais como:
- "anexar o meu ficheiro docx",
- "Leia o e-mail de Jason",
- "anexar o ficheiro PPT denominado demonstração CLU".
Também pode testar expressões noutras línguas, tais como as seguintes frases:
- "Joindre le fichier PDF" (em francês: "Anexar o ficheiro PDF"),
- "Lesen Sie die E-mail von Macy" (em alemão: "Leia o e-mail de Macy")
Pré-requisitos
- Assinatura Azure - Crie uma gratuitamente.
- A versão atual da CURL.
- Um recurso linguístico. Se não tiver um, pode criar um usando o portal do Azure. Se criar um novo recurso, clique no link, siga os passos e aguarde que seja implantado. Em seguida, clique em Ir para o recurso.
Obtenha as suas chaves de recursos e ponto final
Vá à página geral do seu recurso na portal do Azure.
A partir do menu do lado esquerdo, selecione Keys e Endpoint. Você usará o ponto final e a chave para os pedidos da API
Importar um projeto
Para começar, pode importar um CLU JSON para o serviço. O quickstart irá fornecer uma amostra JSON abaixo que configura um par de intenções e entidades para uma aplicação de e-mail chamada "EmailProject".
Crie um pedido DE POST utilizando o seguinte URL, cabeçalhos e corpo JSON para criar o seu projeto.
URL do Pedido
Utilize o seguinte URL ao criar o seu pedido de API. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/:import?api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
format |
clu |
Corpo
Use a seguinte amostra JSON como seu corpo.
{
"api-version": "2021-11-01-preview",
"metadata": {
"name": "EmailProject",
"description": "A test application",
"type": "Conversation",
"multilingual": true,
"language": "en-us",
"settings": {
}
},
"assets": {
"intents": [
{
"name": "Read"
},
{
"name": "Delete"
},
{
"name": "Attach"
}
],
"entities": [
{
"name": "Sender"
},
{
"name": "FileName"
},
{
"name": "FileType"
}
],
"examples": [
{
"text": "Open Blake's email",
"language": "en-us",
"intent": "Read",
"entities": [
{
"entityName": "Sender",
"offset": 5,
"length": 5
}
],
"dataset": "Train"
},
{
"text": "Add the PDF file with the name signed contract",
"language": "en-us",
"intent": "Attach",
"entities": [
{
"entityName": "FileType",
"offset": 8,
"length": 3
},
{
"entityName": "FileName",
"offset": 31,
"length": 15
}
],
"dataset": "Train"
},
{
"text": "Attach the PowerPoint file",
"language": "en-us",
"intent": "Attach",
"entities": [
{
"entityName": "FileType",
"offset": 11,
"length": 10
}
],
"dataset": "Train"
},
{
"text": "Attach the excel file called reports q1",
"language": "en-us",
"intent": "Attach",
"entities": [
{
"entityName": "FileType",
"offset": 11,
"length": 5
},
{
"entityName": "FileName",
"offset": 29,
"length": 10
}
],
"dataset": "Train"
},
{
"text": "Move this to the deleted folder",
"language": "en-us",
"intent": "Delete",
"entities": [],
"dataset": "Train"
},
{
"text": "Remove this one",
"language": "en-us",
"intent": "Delete",
"entities": [],
"dataset": "Train"
},
{
"text": "Delete this",
"language": "en-us",
"intent": "Delete",
"entities": [],
"dataset": "Train"
},
{
"text": "Delete my last email from Martha",
"language": "en-us",
"intent": "Delete",
"entities": [
{
"entityName": "Sender",
"offset": 26,
"length": 6
}
],
"dataset": "Train"
},
{
"text": "Read John's email for me",
"language": "en-us",
"intent": "Read",
"entities": [
{
"entityName": "Sender",
"offset": 5,
"length": 4
}
],
"dataset": "Train"
},
{
"text": "read the email from Carol",
"language": "en-us",
"intent": "Read",
"entities": [
{
"entityName": "Sender",
"offset": 20,
"length": 5
}
],
"dataset": "Train"
}
]
}
}
Comece a treinar o seu modelo
Depois de o seu projeto ter sido importado, pode começar a formar um modelo. Crie um pedido de POST utilizando o seguinte URL, cabeçalhos e corpo JSON para iniciar o treino.
URL do Pedido
Utilize o seguinte URL ao criar o seu pedido de API. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/:train?api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
Content-Type |
application/json |
Corpo do pedido
Utilize o seguinte objeto no seu pedido. O modelo será nomeado MyModel
assim que o treino estiver completo.
{
"modelLabel":"MyModel",
"RunVerification":True,
"evaluationOptions":
{
"type":"percentage",
"testingSplitPercentage":"30",
"trainingSplitPercentage":"70"
}
}
Chave | Valor | Exemplo |
---|---|---|
modelLabel |
O seu nome modelo. | MyModel |
RunVerification |
Valor booleano para executar validação no conjunto de teste. | True |
evaluationOptions |
Especifica opções de avaliação. | |
type |
Especifica o tipo de fichas. | conjunto ou percentagem |
testingSplitPercentage |
Campo inteiro necessário se type for percentagem. Especifica a divisão de testes. |
30 |
trainingSplitPercentage |
Campo inteiro necessário se type for percentagem. Especifica a divisão de treino. |
70 |
Assim que enviar o seu pedido de API, receberá uma 202
resposta indicando sucesso. Nos cabeçalhos de resposta, extraia o location
valor. Será formatado assim:
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/train/jobs/{JOB-ID}?api-version=2021-11-01-preview
JOB-ID
é usado para identificar o seu pedido, uma vez que esta operação é assíncronea. Você usará este URL no próximo passo para obter o estado de treino.
Obter Estado do Treino
Utilize o seguinte pedido GET para consultar o estado do processo de formação do seu modelo. Pode utilizar o URL que recebeu do passo anterior ou substituir os valores de espaços reservados abaixo pelos seus próprios valores.
URL do Pedido
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/train/jobs/{JOB-ID}?api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{JOB-ID} |
A identificação para localizar o estado de treino do seu modelo. Isto está no valor do location cabeçalho que recebeu no passo anterior. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
Corpo de Resposta
Assim que enviar o pedido, receberá a seguinte resposta. Continue a sondar este ponto final até que o parâmetro de estado mude para "ter sucesso".
{
"result":
{
"trainedModelLabel":"MyModel",
"trainStatus":{"percentComplete":0,"elapsedTime":null},
"evaluationStatus":{"percentComplete":0,"elapsedTime":null}
},
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Implemente o seu modelo
Uma vez concluído o treino, pode implementar o seu modelo de previsões.
Crie um pedido DEMS utilizando o seguinte URL, cabeçalhos e corpo JSON para começar a implementar um modelo de compreensão da linguagem de conversação.
URL do Pedido
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/deployments/production?api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
Content-Type |
application/json |
Corpo do Pedido
{
"trainedModelLabel":"MyModel",
"deploymentName":"production"
}
Assim que enviar o seu pedido de API, receberá uma 202
resposta indicando sucesso. Nos cabeçalhos de resposta, extraia o location
valor. Será formatado assim:
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/deployments/production/jobs/{JOB-ID}?api-version=2021-11-01-preview
JOB-ID
é usado para identificar o seu pedido, uma vez que esta operação é assíncronea. Você usará este URL no próximo passo para obter o estado de treino.
Obter Estado da Implementação
Utilize o seguinte pedido GET para consultar o estado do processo de implantação do seu modelo. Pode utilizar o URL que recebeu do passo anterior ou substituir os valores de espaços reservados abaixo pelos seus próprios valores.
URL do Pedido
{YOUR-ENDPOINT}/language/analyze-conversations/projects/EmailProject/deployments/production/jobs/{JOB-ID}?api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{JOB-ID} |
A identificação para localizar o estado de treino do seu modelo. Isto está no valor do location cabeçalho que recebeu no passo anterior. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
Corpo de Resposta
Assim que enviar o pedido, receberá a seguinte resposta. Continue a sondar este ponto final até que o parâmetro de estado mude para "ter sucesso".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Modelo de consulta
Assim que a implementação for bem sucedida, pode começar a consultar o seu projeto para previsões.
Crie um pedido DEMS utilizando o seguinte URL, cabeçalhos e corpo JSON para começar a implementar um modelo de compreensão da linguagem de conversação.
URL do Pedido
{YOUR-ENDPOINT}/language/:analyze-conversations?projectName=EmailProject&deploymentName=production&api-version=2021-11-01-preview
Marcador de posição | Valor | Exemplo |
---|---|---|
{YOUR-ENDPOINT} |
O ponto final para autenticar o seu pedido de API. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
Cabeçalhos
Utilize o seguinte cabeçalho para autenticar o seu pedido.
Chave | Valor |
---|---|
Ocp-Apim-Subscription-Key |
A chave do seu recurso. Utilizado para autenticar os seus pedidos de API. |
Content-Type |
application/json |
Corpo do Pedido
{
"query":"attach a docx file"
}
Corpo de Resposta
Assim que enviar o pedido, receberá a seguinte resposta para a previsão!
{
"query":"attach a docx file",
"prediction": {
"topIntent":"Attach",
"projectKind":"conversation",
"intents":[{"category":"Attach","confidenceScore":0.9998592},{"category":"Read","confidenceScore":0.00010551753},{"category":"Delete","confidenceScore":3.5209276E-05}],
"entities":[{"category":"FileType","text":"docx","offset":9,"length":4,"confidenceScore":1}]
}
}