Partilhar via


Question Answering - Get Answers

Responde à pergunta especificada usando sua base de conhecimento.

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

Parâmetros do URI

Name Em Necessário Tipo Description
Endpoint
path True

string

Ponto de extremidade dos Serviços Cognitivos suportados (por exemplo, https://.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 do Pedido

Name Necessário Tipo Description
Ocp-Apim-Subscription-Key True

string

Corpo do Pedido

Name Tipo Description
answerSpanRequest

ShortAnswerOptions

Para configurar o recurso de previsão de extensão de resposta.

confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

Pontuação mínima para respostas, o valor varia de 0 a 1.

context

KnowledgeBaseAnswerContext

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

filters

QueryFilters

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

includeUnstructuredSources

boolean

(Opcional) Sinalizador para habilitar a Consulta sobre Fontes Não Estruturadas.

qnaId

integer (int32)

ID QnA exato para buscar na base de conhecimento, este campo tem prioridade sobre a pergunta.

question

string

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

rankerType

RankerKind

Tipo de ranker a utilizar.

top

integer (int32)

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

userId

string

Identificador exclusivo para o usuário.

Respostas

Name Tipo Description
200 OK

AnswersResult

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

Other Status Codes

ErrorResponse

Resposta de erro.

Segurança

Ocp-Apim-Subscription-Key

Tipo: apiKey
Em: header

Exemplos

Successful query

Pedido de amostra

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 da amostra

{
  "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

Name Description
AnswersOptions

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

AnswerSpan

Objeto de extensão de resposta do QnA.

AnswersResult

Representa a lista de respostas às perguntas.

enable

Habilite ou desabilite a previsão de Extensão 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 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

Encontre QnAs que estão associados à lista fornecida de metadados.

MetadataRecord

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

QueryFilters

filtra a base de dados de conhecimento.

RankerKind

Tipo de ranker a utilizar.

ShortAnswerOptions

Para configurar o recurso de previsão de extensão de resposta.

AnswersOptions

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

Name Tipo Description
answerSpanRequest

ShortAnswerOptions

Para configurar o recurso de previsão de extensão de resposta.

confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

Pontuação mínima para respostas, o valor varia de 0 a 1.

context

KnowledgeBaseAnswerContext

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

filters

QueryFilters

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

includeUnstructuredSources

boolean

(Opcional) Sinalizador para habilitar a Consulta sobre Fontes Não Estruturadas.

qnaId

integer (int32)

ID QnA exato para buscar na base de conhecimento, este campo tem prioridade sobre a pergunta.

question

string

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

rankerType

RankerKind

Tipo de ranker a utilizar.

top

integer (int32)

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

userId

string

Identificador exclusivo para o usuário.

AnswerSpan

Objeto de extensão de resposta do QnA.

Name Tipo Description
confidenceScore

number (double)

minimum: 0
maximum: 1

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

length

integer (int32)

A extensão da resposta.

offset

integer (int32)

O intervalo de resposta é deslocado desde o início da resposta.

text

string

Texto previsto da extensão da resposta.

AnswersResult

Representa a lista de respostas às perguntas.

Name Tipo Description
answers

KnowledgeBaseAnswer[]

Representa a lista Resultado da Resposta.

enable

Habilite ou desabilite a previsão de Extensão de Resposta.

Valor Description
True

Error

O objeto de erro.

Name Tipo Description
code

ErrorCode

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

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 por humanos do erro.

target

string

O alvo do erro.

ErrorCode

Código de erro legível por humanos.

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

ErrorResponse

Resposta de erro.

Name Tipo Description
error

Error

O objeto de erro.

InnerErrorCode

Código de erro legível por humanos.

Valor Description
AzureCognitiveSearchNotFound
AzureCognitiveSearchThrottling
ExtractionFailure
InvalidParameterValue
InvalidRequest
KnowledgeBaseNotFound

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.

Name Tipo Description
code

InnerErrorCode

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

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

Alvo de erro.

KnowledgeBaseAnswer

Representa a resposta da base de conhecimento.

Name Tipo Description
answer

string

Texto da resposta.

answerSpan

AnswerSpan

Objeto de extensão de resposta do QnA com relação à pergunta do usuário.

confidenceScore

number (double)

minimum: 0
maximum: 1

Pontuação de confiança da 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 a perguntas.

questions

string[]

Lista de perguntas associadas à resposta.

source

string

Fonte do resultado QnA.

KnowledgeBaseAnswerContext

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

Name Tipo Description
previousQnaId

integer (int32)

Resultado anterior da resposta QnA ID.

previousUserQuery

string

Consulta de usuário anterior.

KnowledgeBaseAnswerDialog

Caixa de diálogo associada à Resposta.

Name Tipo Description
isContextOnly

boolean

Para marcar se um prompt é relevante apenas com uma pergunta anterior ou não. Se verdadeiro, não inclua este QnA como resultado de pesquisa para consultas sem contexto; caso contrário, se false, ignora o contexto e inclui este QnA no resultado da pesquisa.

prompts

KnowledgeBaseAnswerPrompt[]

Lista de prompts associados à resposta.

KnowledgeBaseAnswerPrompt

Solicite uma resposta.

Name 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 QnA correspondente ao prompt.

LogicalOperationKind

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

Valor Description
AND
OR

MetadataFilter

Encontre QnAs que estão associados à lista fornecida de metadados.

Name Tipo Default value 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.

Name Tipo Description
key

string

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

value

string

Metadata Value do dicionário de metadados usado no QnA.

QueryFilters

filtra a base de dados de conhecimento.

Name Tipo Default value Description
logicalOperation

LogicalOperationKind

AND

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

metadataFilter

MetadataFilter

Encontre QnAs que estão associados à lista fornecida de metadados.

sourceFilter

string[]

Encontre QnAs que estão associados a qualquer uma das fontes fornecidas na base de dados de conhecimento.

RankerKind

Tipo de ranker a utilizar.

Valor Description
Default

Classificador padrão.

QuestionOnly

Pergunta apenas ranker.

ShortAnswerOptions

Para configurar o recurso de previsão de extensão de resposta.

Name Tipo Description
confidenceScoreThreshold

number (double)

minimum: 0
maximum: 1

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

enable

enable

Habilite ou desabilite a previsão de Extensão de Resposta.

topAnswersWithSpan

integer (int32)

minimum: 1
maximum: 10

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