Delen via


Question Answering - Get Answers

Beantwoord de opgegeven vraag met behulp van uw Knowledge Base.

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

URI-parameters

Name In Vereist Type Description
Endpoint
path True

string

Ondersteund Cognitive Services-eindpunt (bijvoorbeeld https://.api.cognitiveservices.azure.com).

api-version
query True

string

Client-API-versie.

deploymentName
query True

string

De naam van de specifieke implementatie van het project dat moet worden gebruikt.

projectName
query True

string

De naam van het project dat moet worden gebruikt.

Aanvraagbody

Name Type Description
answerSpanRequest

ShortAnswerOptions

De voorspellingsfunctie antwoordbereik configureren.

confidenceScoreThreshold

number

Minimumdrempelscore voor antwoorden, waarde varieert van 0 tot 1.

context

KnowledgeBaseAnswerContext

Contextobject met eerdere QnA-gegevens.

filters

QueryFilters

QnA's filteren op basis van opgegeven metagegevenslijst en Knowledge Base bronnen.

includeUnstructuredSources

boolean

(Optioneel) Vlag om query's over ongestructureerde bronnen in te schakelen.

qnaId

integer

De exacte QnA-id die moet worden opgehaald uit de Knowledge Base, heeft dit veld prioriteit boven de vraag.

question

string

Vraag van de gebruiker om een query uit te voeren op de Knowledge Base.

rankerType

RankerKind

Type ranker dat moet worden gebruikt.

top

integer

Maximum aantal antwoorden dat moet worden geretourneerd voor de vraag.

userId

string

Unieke id voor de gebruiker.

Antwoorden

Name Type Description
200 OK

AnswersResult

Een geslaagd antwoord om antwoorden te krijgen van Knowledge Base.

Other Status Codes

ErrorResponse

Foutreactie.

Beveiliging

AADToken

Dit zijn de Azure Active Directory OAuth2-stromen . In combinatie met op rollen gebaseerd toegangsbeheer van Azure kan het worden gebruikt om de toegang tot Azure Maps REST API's te beheren. Op rollen gebaseerd toegangsbeheer van Azure wordt gebruikt om toegang tot een of meer Azure Maps resourceaccount of subresources aan te wijzen. Elke gebruiker, groep of service-principal kan toegang krijgen via een ingebouwde rol of een aangepaste rol die bestaat uit een of meer machtigingen voor Azure Maps REST API's.

Als u scenario's wilt implementeren, raden we u aan om verificatieconcepten te bekijken. Samengevat biedt deze beveiligingsdefinitie een oplossing voor het modelleren van toepassingen via objecten die toegangsbeheer kunnen hebben voor specifieke API's en bereiken.

Notities

  • Deze beveiligingsdefinitie vereist het gebruik van de x-ms-client-id header om aan te geven tot welke Azure Maps resource de toepassing toegang aanvraagt. Dit kan worden verkregen via de Beheer-API van Maps.

De Authorization URL is specifiek voor het azure-exemplaar van de openbare cloud. Onafhankelijke clouds hebben unieke autorisatie-URL's en Azure Active Directory-configuraties. * Op rollen gebaseerd toegangsbeheer van Azure wordt geconfigureerd vanuit het Azure-beheervlak via Azure Portal, PowerShell, CLI, Azure SDK's of REST API's. * Gebruik van de Azure Maps Web SDK maakt configuratie van een toepassing mogelijk voor meerdere gebruiksscenario's.

  • Momenteel ondersteunt Azure Active Directory v1.0 of v2.0 werk, school en gasten, maar geen persoonlijke accounts.

Type: oauth2
Stroom: implicit
Autorisatie-URL: https://login.microsoftonline.com/common/oauth2/authorize

Bereiken

Name Description
https://cognitiveservices.azure.com/.default https://cognitiveservices.azure.com/.default

Ocp-Apim-Subscription-Key

Een abonnementssleutel voor een taalserviceresource.

Type: apiKey
In: header

Voorbeelden

Successful query

Voorbeeldaanvraag

POST {Endpoint}/language/:query-knowledgebases?projectName=proj1&deploymentName=production&api-version=2023-04-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
}

Voorbeeldrespons

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

Definities

Name Description
AnswersOptions

Parameters om een query uit te voeren op een Knowledge Base.

AnswerSpan

Answer Span-object van QnA.

AnswersResult

Vertegenwoordigt een lijst met antwoorden op vragen.

enable

Voorspelling van antwoordbereik in- of uitschakelen.

Error

Het foutobject.

ErrorCode

Door mensen leesbare foutcode.

ErrorResponse

Foutreactie.

InnerErrorCode

Door mensen leesbare foutcode.

InnerErrorModel

Een object met specifiekere informatie over de fout. Volgens de Richtlijnen voor Microsoft One API: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

KnowledgeBaseAnswer

Vertegenwoordigt Knowledge Base antwoord.

KnowledgeBaseAnswerContext

Contextobject met eerdere QnA-gegevens.

KnowledgeBaseAnswerDialog

Dialoogvenster dat is gekoppeld aan Answer.

KnowledgeBaseAnswerPrompt

Vragen om een antwoord.

LogicalOperationKind

Stel in op 'OR' of 'AND' voor het gebruik van de bijbehorende logische bewerking.

MetadataFilter

Zoek QnA's die zijn gekoppeld aan de opgegeven lijst met metagegevens.

MetadataRecord

Object om het sleutelwaardepaar voor elke metagegevens op te geven.

QueryFilters

filtert op Knowledge Base.

RankerKind

Type ranker dat moet worden gebruikt.

ShortAnswerOptions

De voorspellingsfunctie antwoordbereik configureren.

AnswersOptions

Parameters om een query uit te voeren op een Knowledge Base.

Name Type Description
answerSpanRequest

ShortAnswerOptions

De voorspellingsfunctie antwoordbereik configureren.

confidenceScoreThreshold

number

Minimumdrempelscore voor antwoorden, waarde varieert van 0 tot 1.

context

KnowledgeBaseAnswerContext

Contextobject met eerdere QnA-gegevens.

filters

QueryFilters

QnA's filteren op basis van opgegeven metagegevenslijst en Knowledge Base bronnen.

includeUnstructuredSources

boolean

(Optioneel) Vlag om query's over ongestructureerde bronnen in te schakelen.

qnaId

integer

De exacte QnA-id die moet worden opgehaald uit de Knowledge Base, heeft dit veld prioriteit boven de vraag.

question

string

Vraag van de gebruiker om een query uit te voeren op de Knowledge Base.

rankerType

RankerKind

Type ranker dat moet worden gebruikt.

top

integer

Maximum aantal antwoorden dat moet worden geretourneerd voor de vraag.

userId

string

Unieke id voor de gebruiker.

AnswerSpan

Answer Span-object van QnA.

Name Type Description
confidenceScore

number

Voorspelde score van antwoordbereik, waarde varieert van 0 tot 1.

length

integer

De lengte van het antwoordbereik.

offset

integer

De verschuiving van de antwoordbereik vanaf het begin van het antwoord.

text

string

Voorspelde tekst van antwoordbereik.

AnswersResult

Vertegenwoordigt een lijst met antwoorden op vragen.

Name Type Description
answers

KnowledgeBaseAnswer[]

Vertegenwoordigt de lijst met antwoordresultaten.

enable

Voorspelling van antwoordbereik in- of uitschakelen.

Name Type Description
True

Boolean

Error

Het foutobject.

Name Type Description
code

ErrorCode

Een van een door de server gedefinieerde set foutcodes.

details

Error[]

Een matrix met details over specifieke fouten die tot deze gerapporteerde fout hebben geleid.

innererror

InnerErrorModel

Een object met specifiekere informatie dan het huidige object over de fout.

message

string

Een door mensen leesbare weergave van de fout.

target

string

Het doel van de fout.

ErrorCode

Door mensen leesbare foutcode.

Name Type Description
AzureCognitiveSearchIndexLimitReached

string

AzureCognitiveSearchIndexNotFound

string

AzureCognitiveSearchNotFound

string

AzureCognitiveSearchThrottling

string

Conflict

string

Forbidden

string

InternalServerError

string

InvalidArgument

string

InvalidRequest

string

NotFound

string

OperationNotFound

string

ProjectNotFound

string

QuotaExceeded

string

ServiceUnavailable

string

Timeout

string

TooManyRequests

string

Unauthorized

string

Warning

string

ErrorResponse

Foutreactie.

Name Type Description
error

Error

Het foutobject.

InnerErrorCode

Door mensen leesbare foutcode.

Name Type Description
AzureCognitiveSearchNotFound

string

AzureCognitiveSearchThrottling

string

EmptyRequest

string

ExtractionFailure

string

InvalidCountryHint

string

InvalidDocument

string

InvalidDocumentBatch

string

InvalidParameterValue

string

InvalidRequest

string

InvalidRequestBodyFormat

string

KnowledgeBaseNotFound

string

MissingInputDocuments

string

ModelVersionIncorrect

string

UnsupportedLanguageCode

string

InnerErrorModel

Een object met specifiekere informatie over de fout. Volgens de Richtlijnen voor Microsoft One API: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
code

InnerErrorCode

Een van een door de server gedefinieerde set foutcodes.

details

object

Foutdetails.

innererror

InnerErrorModel

Een object met specifiekere informatie dan het huidige object over de fout.

message

string

Foutbericht.

target

string

Foutdoel.

KnowledgeBaseAnswer

Vertegenwoordigt Knowledge Base antwoord.

Name Type Description
answer

string

Antwoordtekst.

answerSpan

AnswerSpan

Beantwoord het span-object van QnA met betrekking tot de vraag van de gebruiker.

confidenceScore

number

Betrouwbaarheidsscore van antwoord, waarde varieert van 0 tot 1.

dialog

KnowledgeBaseAnswerDialog

Dialoogvenster dat is gekoppeld aan Answer.

id

integer

Id van het QnA-resultaat.

metadata

object

Metagegevens die aan het antwoord zijn gekoppeld, zijn handig om vragen te categoriseren of te filteren.

questions

string[]

Lijst met vragen die zijn gekoppeld aan het antwoord.

source

string

Bron van QnA-resultaat.

KnowledgeBaseAnswerContext

Contextobject met eerdere QnA-gegevens.

Name Type Description
previousQnaId

integer

Vorige beurt bovenste antwoord resultaat QnA ID.

previousUserQuery

string

Vorige gebruikersquery.

KnowledgeBaseAnswerDialog

Dialoogvenster dat is gekoppeld aan Answer.

Name Type Description
isContextOnly

boolean

Markeren of een prompt alleen relevant is voor een eerdere vraag of niet. Als dit waar is, neemt u deze QnA niet op als zoekresultaat voor query's zonder context; anders, indien onwaar, negeert context en neemt deze QnA op in het zoekresultaat.

prompts

KnowledgeBaseAnswerPrompt[]

Lijst met prompts die zijn gekoppeld aan het antwoord.

KnowledgeBaseAnswerPrompt

Vragen om een antwoord.

Name Type Description
displayOrder

integer

Index van de prompt : gebruikt bij het ordenen van de prompts.

displayText

string

Tekst die wordt weergegeven om een prompt voor een vervolgvraag weer te geven.

qnaId

integer

QnA-id die overeenkomt met de prompt.

LogicalOperationKind

Stel in op 'OR' of 'AND' voor het gebruik van de bijbehorende logische bewerking.

Name Type Description
AND

string

OR

string

MetadataFilter

Zoek QnA's die zijn gekoppeld aan de opgegeven lijst met metagegevens.

Name Type Default value Description
logicalOperation

LogicalOperationKind

AND

Bewerking die wordt gebruikt om metagegevensfilters samen te voegen.

metadata

MetadataRecord[]

Object om het sleutelwaardepaar voor elke metagegevens op te geven.

MetadataRecord

Object om het sleutelwaardepaar voor elke metagegevens op te geven.

Name Type Description
key

string

Metagegevenssleutel uit metagegevenswoordenlijst die wordt gebruikt in de QnA.

value

string

Metagegevenswaarde uit metagegevenswoordenlijst die wordt gebruikt in de QnA.

QueryFilters

filtert op Knowledge Base.

Name Type Default value Description
logicalOperation

LogicalOperationKind

AND

Logische bewerking die wordt gebruikt om het metagegevensfilter samen te voegen met het bronfilter.

metadataFilter

MetadataFilter

Zoek QnA's die zijn gekoppeld aan de opgegeven lijst met metagegevens.

sourceFilter

string[]

Zoek QnA's die zijn gekoppeld aan een van de opgegeven lijst met bronnen in Knowledge Base.

RankerKind

Type ranker dat moet worden gebruikt.

Name Type Description
Default

string

Standaardrangschikking.

QuestionOnly

string

Vraag alleen ranker.

ShortAnswerOptions

De voorspellingsfunctie antwoordbereik configureren.

Name Type Description
confidenceScoreThreshold

number

Minimumdrempelscore die is vereist om een antwoordbereik op te nemen, waarde varieert van 0 tot 1.

enable

enable

Voorspelling van antwoordbereik in- of uitschakelen.

topAnswersWithSpan

integer

Het aantal belangrijkste antwoorden dat in aanmerking moet worden genomen voor bereikvoorspelling van 1 tot 10.