Compartilhar via


Question Answering - Get Answers

Responde à pergunta especificada usando seu 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://.api.cognitiveservices.azure.com).

api-version
query True

string

Versão de 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

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

context

KnowledgeBaseAnswerContext

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

filters

QueryFilters

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

includeUnstructuredSources

boolean

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

qnaId

integer

ID de QnA exata para buscar do base de dados de conhecimento, esse campo tem prioridade sobre a pergunta.

question

string

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

rankerType

RankerKind

Tipo de classificador a ser usado.

top

integer

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 de base de dados de conhecimento.

Other Status Codes

ErrorResponse

Resposta de erro.

Segurança

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

Exemplos

Successful query

Sample Request

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
}

Sample Response

{
  "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 um base de dados de conhecimento.

AnswerSpan

Objeto de intervalo de resposta de QnA.

AnswersResult

Representa a lista de respostas às 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 base de dados de conhecimento resposta.

KnowledgeBaseAnswerContext

Objeto de contexto com informações anteriores da 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 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 um base de dados de conhecimento.

Nome Tipo Description
answerSpanRequest

ShortAnswerOptions

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

confidenceScoreThreshold

number

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

context

KnowledgeBaseAnswerContext

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

filters

QueryFilters

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

includeUnstructuredSources

boolean

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

qnaId

integer

ID de QnA exata para buscar do base de dados de conhecimento, esse campo tem prioridade sobre a pergunta.

question

string

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

rankerType

RankerKind

Tipo de classificador a ser usado.

top

integer

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 de QnA.

Nome Tipo Description
confidenceScore

number

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

length

integer

O comprimento do intervalo de respostas.

offset

integer

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 às perguntas.

Nome Tipo Description
answers

KnowledgeBaseAnswer[]

Representa a lista Resultado da Resposta.

enable

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

Nome Tipo Description
True

Boolean

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 homem do erro.

target

string

O destino do erro.

ErrorCode

Código de erro legível por humanos.

Nome Tipo Description
AzureCognitiveSearchIndexLimitReached

string

AzureCognitiveSearchIndexNotFound

string

AzureCognitiveSearchNotFound

string

AzureCognitiveSearchThrottling

string

Forbidden

string

InternalServerError

string

InvalidArgument

string

InvalidRequest

string

NotFound

string

OperationNotFound

string

ProjectNotFound

string

ServiceUnavailable

string

TooManyRequests

string

Unauthorized

string

ErrorResponse

Resposta de erro.

Nome Tipo Description
error

Error

O objeto de erro.

InnerErrorCode

Código de erro legível por humanos.

Nome Tipo Description
AzureCognitiveSearchNotFound

string

AzureCognitiveSearchThrottling

string

ExtractionFailure

string

InvalidParameterValue

string

InvalidRequest

string

KnowledgeBaseNotFound

string

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

KnowledgeBaseAnswer

Representa base de dados de conhecimento resposta.

Nome Tipo Description
answer

string

Texto da resposta.

answerSpan

AnswerSpan

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

confidenceScore

number

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

dialog

KnowledgeBaseAnswerDialog

Caixa de diálogo associada à Resposta.

id

integer

ID do resultado do QnA.

metadata

object

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

questions

string[]

Lista de perguntas associadas à resposta.

source

string

Origem do resultado de QnA.

KnowledgeBaseAnswerContext

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

Nome Tipo Description
previousQnaId

integer

Resultado da resposta anterior QnA ID.

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 esse 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

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

displayText

string

Texto exibido para representar um prompt de pergunta de acompanhamento.

qnaId

integer

ID de QnA correspondente ao prompt.

LogicalOperationKind

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

Nome Tipo Description
AND

string

OR

string

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 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 fornecidas no base de dados de conhecimento.

RankerKind

Tipo de classificador a ser usado.

Nome Tipo Description
Default

string

Classificador padrão.

QuestionOnly

string

Classificador somente de perguntas.

ShortAnswerOptions

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

Nome Tipo Description
confidenceScoreThreshold

number

A pontuação de limite mínimo necessária para incluir um intervalo de respostas, o valor varia de 0 a 1.

enable

enable

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

topAnswersWithSpan

integer

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