Partilhar via


Registro de entidade para integração de compreensão da linguagem coloquial

Este artigo discute a adição de entidades de CLU (compreensão da linguagem coloquial) aos copilotos do Copilot Studio. As entidades são compostas pelos seguintes tipos de dados boolianos, de cadeia de caracteres e numéricos. Para obter mais informações, consulte Tipos de dados. Na maioria dos casos, você pode usar entidades predefinidas para seus projetos. Se você quiser usar tipos de entidade de CLU com resoluções JSON personalizadas, os exemplos de esquema a seguir são fornecidos como referência.

Para configurar seu ambiente para mapear entidades de CLU para copilotos do Copilot Studio, consulte Introdução à integração de compreensão da linguagem coloquial.

Os seguintes tipos de dados estão disponíveis para mapear entidades de CLU:

  • BooleanDatatype: Choice.Boolean
  • StringDatatype: Geography.Location, Regex , List, General.Event, General.Organization, Phone Number, IpAddress, Person.Name, Phone Number, URL
  • NumberDatatype: Number

Observação

As entidades compostas (entidades com vários componentes) são mapeadas para StringDatatype.

Tabela de esquema

Você pode usar código JSON de exemplo para registrar entidades para os copilotos que criar. As entidades são resolvidas para tipos de dados complexos. Você pode mapear manualmente entidades de CLU para tipos de dados do Copilot Studio, copiando e colando os blocos de código JSON a seguir para a entidade relevante.

Idade

{
    "unit": "Year",
    "value": 10
}

Moeda

{
    "unit": "Egyptian pound",
    "ISO4217": "EGP",
    "value": 30
}

Temperatura

{
    "unit": "Fahrenheit",
    "value": 88
}

Ordinal

{
    "offset": "3",
    "relativeTo": "Start",
    "value": "3"
}

Dimensões

{
    "unit": "KilometersPerHour",
    "value": 24
}

Tipos de entidade dateTime CLU

DateTime é um tipo de entidade especial que altera a resolução retornada com base nos tipos de entrada do usuário recebidos.

Os exemplos a seguir demonstram como configurar entidades para tipos distintos de declarações de data e hora. Você pode criar seus próprios mapeamentos, com base nesses exemplos, dependendo do tipo de resultado que espera que os usuários do copiloto forneçam.

Date

Exemplo de entrada: 1º de janeiro de 1995

{
    "dateTimeSubKind": "Date",
    "timex": "1995-01-01",
    "value": "1995-01-01"
}

DateTime (ano)

Exemplo de entrada: Voltarei em 12 de abril

{
    "dateTimeSubKind": "Date",
    "timex": "XXXX-04-12",
    "value": "2022-04-12"
}

DatetimeRange (duração)

Exemplo de entrada: Estarei fora entre 3 e 12 de setembro.

{
    "resolutionKind": "TemporalSpan",
    "timex": "(XXXX-09-03,XXXX-09-12,P9D)",
    "duration": "P9D",
    "begin": "2022-09-03",
    "end": "2022-09-12"
}

DatetimeRange (conjunto)

Exemplo de entrada: Toda terça-feira

{ 
    "resolutionKind": "DateTime",
    "dateTimeSubKind": "Set",
    "timex": "XXXX-WXX-2",
    "value": "not resolved"
}

Datetime (desde)

Exemplo de entrada: Estou fora desde agosto

{
    "resolutionKind": "TemporalSpan",
    "timex": "XXXX-08",
    "begin": "2022-08-01",
    "modifier": "Since"
}

Hora

Exemplo de entrada: São sete e meia

{
    "resolutionKind": "DateTime",
    "dateTimeSubKind": "Time",
    "timex": "T07:30",
    "value": "07:30:00"
}