Compartilhar via


Question Answering - Get Answers

Responde à pergunta especificada usando sua base de dados de conhecimento.

POST {Endpoint}/language/:query-knowledgebases?projectName={projectName}&deploymentName={deploymentName}&api-version=2021-10-01

Parâmetros de URI

Nome Em Obrigatório Tipo Description
Endpoint
path True

string

Ponto de extremidade dos Serviços Cognitivos com suporte (por exemplo, https://< resource-name.api.cognitiveservices.azure.com>).

api-version
query True

string

Versão da API do cliente.

deploymentName
query True

string

O nome da implantação específica do projeto a ser usado.

projectName
query True

string

O nome do projeto a ser usado.

Cabeçalho da solicitação

Nome Obrigatório Tipo Description
Ocp-Apim-Subscription-Key True

string

Corpo da solicitação

Nome Tipo Description
answerSpanRequest

ShortAnswerOptions

Para configurar o recurso de previsão de intervalo de respostas.

confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

A pontuação mínima do limite para respostas, o valor varia de 0 a 1.

context

KnowledgeBaseAnswerContext

Objeto de contexto com informações anteriores do QnA.

filters

QueryFilters

Filtrar QnAs com base em determinada lista de metadados e fontes de base de dados de conhecimento.

includeUnstructuredSources

boolean

(Opcional) Sinalizador para habilitar a consulta em fontes não estruturadas.

qnaId

integer (int32)

A ID exata de QnA a ser buscada na base de dados de conhecimento, esse campo tem prioridade sobre a questão.

question

string

Pergunta do usuário para consultar na base de dados de conhecimento.

rankerType

RankerKind

Tipo de classificador a ser usado.

top

integer (int32)

Número máximo de respostas a serem retornadas para a pergunta.

userId

string

Identificador exclusivo para o usuário.

Respostas

Nome Tipo Description
200 OK

AnswersResult

Uma resposta bem-sucedida para obter respostas da base de dados de conhecimento.

Other Status Codes

ErrorResponse

Resposta de erro.

Segurança

Ocp-Apim-Subscription-Key

Tipo: apiKey
Em: header

Exemplos

Successful query

Solicitação de exemplo

POST {Endpoint}/language/:query-knowledgebases?projectName=proj1&deploymentName=production&api-version=2021-10-01


{
  "question": "how long it takes to charge surface?",
  "top": 3,
  "userId": "sd53lsY=",
  "confidenceScoreThreshold": 0.2,
  "context": {
    "previousQnaId": 9,
    "previousUserQuery": "Where are QnA Maker quickstarts?"
  },
  "rankerType": "Default",
  "filters": {
    "metadataFilter": {
      "metadata": [
        {
          "key": "category",
          "value": "api"
        },
        {
          "key": "editorial",
          "value": "chitchat"
        }
      ],
      "logicalOperation": "AND"
    },
    "sourceFilter": [
      "filename1.pdf",
      "https://www.wikipedia.org/microsoft"
    ],
    "logicalOperation": "AND"
  },
  "answerSpanRequest": {
    "enable": true,
    "confidenceScoreThreshold": 0.2,
    "topAnswersWithSpan": 1
  },
  "includeUnstructuredSources": true
}

Resposta de exemplo

{
  "answers": [
    {
      "questions": [
        "Power and charging"
      ],
      "answer": "Power and charging**\n\nIt takes two to four hours to charge the Surface Pro 4 battery fully from an empty state. It can take longer if you’re using your Surface for power-intensive activities like gaming or video streaming while you’re charging it.\n\nYou can use the USB port on your Surface Pro 4 power supply to charge other devices, like a phone, while your Surface charges. The USB port on the power supply is only for charging, not for data transfer. If you want to use a USB device, plug it into the USB port on your Surface.",
      "confidenceScore": 0.65,
      "id": 20,
      "source": "surface-pro-4-user-guide-EN.pdf",
      "metadata": {
        "category": "api",
        "editorial": "chitchat"
      },
      "dialog": {
        "isContextOnly": false,
        "prompts": [
          {
            "displayOrder": 1,
            "qnaId": 23,
            "displayText": "prompt1"
          },
          {
            "displayOrder": 2,
            "qnaId": 36,
            "displayText": "prompt2"
          }
        ]
      },
      "answerSpan": {
        "text": "two to four hours",
        "confidenceScore": 0.3,
        "offset": 33,
        "length": 50
      }
    },
    {
      "questions": [
        "Charge your Surface Pro 4"
      ],
      "answer": "**Charge your Surface Pro 4**\n\n1.  Connect the two parts of the power cord.\n\n2.  Connect the power cord securely to the charging port.\n\n3.  Plug the power supply into an electrical outlet.",
      "confidenceScore": 0.32,
      "id": 13,
      "source": "surface-pro-4-user-guide-EN.pdf"
    }
  ]
}

Definições

Nome Description
AnswersOptions

Parâmetros para consultar uma base de dados de conhecimento.

AnswerSpan

Objeto de intervalo de resposta do QnA.

AnswersResult

Representa a lista de respostas a perguntas.

enable

Habilitar ou desabilitar a previsão do Período de Resposta.

Error

O objeto de erro.

ErrorCode

Código de erro legível por humanos.

ErrorResponse

Resposta de erro.

InnerErrorCode

Código de erro legível por humanos.

InnerErrorModel

Um objeto que contém informações mais específicas sobre o erro. De acordo com as diretrizes da API do Microsoft One - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

KnowledgeBaseAnswer

Representa a resposta da base de dados de conhecimento.

KnowledgeBaseAnswerContext

Objeto de contexto com informações anteriores do QnA.

KnowledgeBaseAnswerDialog

Caixa de diálogo associada à Resposta.

KnowledgeBaseAnswerPrompt

Solicite uma resposta.

LogicalOperationKind

Defina como 'OR' ou 'AND' para usar a operação lógica correspondente.

MetadataFilter

Localize QnAs associadas à lista de metadados fornecida.

MetadataRecord

Objeto para fornecer o par de valores de chave para cada metadados.

QueryFilters

filtra sobre a base de dados de conhecimento.

RankerKind

Tipo de classificador a ser usado.

ShortAnswerOptions

Para configurar o recurso de previsão de intervalo de respostas.

AnswersOptions

Parâmetros para consultar uma base de dados de conhecimento.

Nome Tipo Description
answerSpanRequest

ShortAnswerOptions

Para configurar o recurso de previsão de intervalo de respostas.

confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

A pontuação mínima do limite para respostas, o valor varia de 0 a 1.

context

KnowledgeBaseAnswerContext

Objeto de contexto com informações anteriores do QnA.

filters

QueryFilters

Filtrar QnAs com base em determinada lista de metadados e fontes de base de dados de conhecimento.

includeUnstructuredSources

boolean

(Opcional) Sinalizador para habilitar a consulta em fontes não estruturadas.

qnaId

integer (int32)

A ID exata de QnA a ser buscada na base de dados de conhecimento, esse campo tem prioridade sobre a questão.

question

string

Pergunta do usuário para consultar na base de dados de conhecimento.

rankerType

RankerKind

Tipo de classificador a ser usado.

top

integer (int32)

Número máximo de respostas a serem retornadas para a pergunta.

userId

string

Identificador exclusivo para o usuário.

AnswerSpan

Objeto de intervalo de resposta do QnA.

Nome Tipo Description
confidenceScore

number (double)

minimum: 0
maximum: 1

A pontuação prevista de intervalo de respostas varia de 0 a 1.

length

integer (int32)

O comprimento do intervalo de respostas.

offset

integer (int32)

O deslocamento do intervalo de respostas desde o início da resposta.

text

string

Texto previsto do intervalo de respostas.

AnswersResult

Representa a lista de respostas a perguntas.

Nome Tipo Description
answers

KnowledgeBaseAnswer[]

Representa a lista de resultados da resposta.

enable

Habilitar ou desabilitar a previsão do Período de Resposta.

Valor Description
True

Error

O objeto de erro.

Nome Tipo Description
code

ErrorCode

Um de um conjunto definido pelo servidor de códigos de erro.

details

Error[]

Uma matriz de detalhes sobre erros específicos que levaram a esse erro relatado.

innererror

InnerErrorModel

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

message

string

Uma representação legível pelo ser humano do erro.

target

string

O destino do erro.

ErrorCode

Código de erro legível por humanos.

Valor Description
InvalidRequest
InvalidArgument
Unauthorized
Forbidden
NotFound
ProjectNotFound
OperationNotFound
AzureCognitiveSearchNotFound
AzureCognitiveSearchIndexNotFound
TooManyRequests
AzureCognitiveSearchThrottling
AzureCognitiveSearchIndexLimitReached
InternalServerError
ServiceUnavailable

ErrorResponse

Resposta de erro.

Nome Tipo Description
error

Error

O objeto de erro.

InnerErrorCode

Código de erro legível por humanos.

Valor Description
InvalidRequest
InvalidParameterValue
KnowledgeBaseNotFound
AzureCognitiveSearchNotFound
AzureCognitiveSearchThrottling
ExtractionFailure

InnerErrorModel

Um objeto que contém informações mais específicas sobre o erro. De acordo com as diretrizes da API do Microsoft One - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Nome Tipo Description
code

InnerErrorCode

Um de um conjunto definido pelo servidor de códigos de erro.

details

object

Detalhes do erro.

innererror

InnerErrorModel

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

message

string

Mensagem de erro.

target

string

Destino de erro.

KnowledgeBaseAnswer

Representa a resposta da base de dados de conhecimento.

Nome Tipo Description
answer

string

Texto da resposta.

answerSpan

AnswerSpan

Objeto de intervalo de resposta do QnA em relação à pergunta do usuário.

confidenceScore

number (double)

minimum: 0
maximum: 1

Pontuação de confiança de resposta, o valor varia de 0 a 1.

dialog

KnowledgeBaseAnswerDialog

Caixa de diálogo associada à Resposta.

id

integer (int32)

ID do resultado do QnA.

metadata

object

Metadados associados à resposta, úteis para categorizar ou filtrar respostas de pergunta.

questions

string[]

Lista de perguntas associadas à resposta.

source

string

Origem do resultado de QnA.

KnowledgeBaseAnswerContext

Objeto de contexto com informações anteriores do QnA.

Nome Tipo Description
previousQnaId

integer (int32)

A ID de QnA do resultado da resposta superior da curva anterior.

previousUserQuery

string

Consulta de usuário anterior.

KnowledgeBaseAnswerDialog

Caixa de diálogo associada à Resposta.

Nome Tipo Description
isContextOnly

boolean

Para marcar se um prompt é relevante apenas com uma pergunta anterior ou não. Se for true, não inclua este QnA como resultado da pesquisa para consultas sem contexto; caso contrário, se for falso, ignorará o contexto e incluirá esse QnA no resultado da pesquisa.

prompts

KnowledgeBaseAnswerPrompt[]

Lista de prompts associados à resposta.

KnowledgeBaseAnswerPrompt

Solicite uma resposta.

Nome Tipo Description
displayOrder

integer (int32)

Índice do prompt – usado na ordenação dos prompts.

displayText

string

maxLength: 200

Texto exibido para representar um prompt de pergunta de acompanhamento.

qnaId

integer (int32)

ID de QnA correspondente ao prompt.

LogicalOperationKind

Defina como 'OR' ou 'AND' para usar a operação lógica correspondente.

Valor Description
AND
OR

MetadataFilter

Localize QnAs associadas à lista de metadados fornecida.

Nome Tipo Valor padrão Description
logicalOperation

LogicalOperationKind

AND

Operação usada para unir filtros de metadados.

metadata

MetadataRecord[]

Objeto para fornecer o par de valores de chave para cada metadados.

MetadataRecord

Objeto para fornecer o par de valores de chave para cada metadados.

Nome Tipo Description
key

string

Chave de metadados do dicionário de metadados usado no QnA.

value

string

Valor de metadados do dicionário de metadados usado no QnA.

QueryFilters

filtra sobre a base de dados de conhecimento.

Nome Tipo Valor padrão Description
logicalOperation

LogicalOperationKind

AND

Operação lógica usada para unir o filtro de metadados com o filtro de origem.

metadataFilter

MetadataFilter

Localize QnAs associadas à lista de metadados fornecida.

sourceFilter

string[]

Localize QnAs associadas a qualquer uma das fontes da base de dados de conhecimento fornecida.

RankerKind

Tipo de classificador a ser usado.

Valor Description
Default

Classificador padrão.

QuestionOnly

Classificador somente de perguntas.

ShortAnswerOptions

Para configurar o recurso de previsão de intervalo de respostas.

Nome Tipo Description
confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

Pontuação mínima de limite necessária para incluir um intervalo de resposta, o valor varia de 0 a 1.

enable

enable

Habilitar ou desabilitar a previsão do Período de Resposta.

topAnswersWithSpan

integer (int32)

minimum: 1
maximum: 10

Número de respostas principais a serem consideradas para previsão de intervalo de 1 a 10.