Dela via


Fördefinierade API

Den anpassade frågan som besvarar det fördefinierade API :et ger dig möjlighet att besvara frågor baserat på ett textavsnitt utan att behöva skapa projekt, underhålla fråge- och svarspar eller medföra kostnader för underutnyttjad infrastruktur. Den här funktionen tillhandahålls som ett API och kan användas för att uppfylla fråge- och svarsbehov utan att behöva lära dig mer om svar på anpassade frågor.

Med en användarfråga och ett text-/passageblock returnerar API:et ett svar och ett exakt svar (om det är tillgängligt).

Exempel på API-användning

Anta att du har ett eller flera textblock som du vill få svar på en viss fråga från. Normalt skulle du ha varit tvungen att skapa så många källor som antalet textblock. Men nu med det fördefinierade API:et kan du fråga textblocken utan att behöva definiera innehållskällor i ett projekt.

Några andra scenarier där det här API:et kan användas är:

  • Du utvecklar en e-bokläsarapp för slutanvändare, som gör att de kan markera text, ange en fråga och hitta svar över ett markerat textavsnitt.
  • Ett webbläsartillägg som gör att användarna kan ställa en fråga om innehållet som för närvarande visas på webbläsarsidan.
  • En hälsorobot som tar frågor från användare och ger svar baserat på det medicinska innehåll som roboten identifierar som mest relevant för användarfrågan.

Nedan visas ett exempel på en exempelbegäran:

Exempelbegäran

POST https://{Unique-to-your-endpoint}.api.cognitive.microsoft.com/language/:query-text

Exempelfråga över ett enda textblock

Begärandetext

{
  "parameters": {
    "Endpoint": "{Endpoint}",
    "Ocp-Apim-Subscription-Key": "{API key}",
    "Content-Type": "application/json",
    "api-version": "2021-10-01",
    "stringIndexType": "TextElements_v8",
    "textQueryOptions": {
      "question": "how long it takes to charge surface?",
      "records": [
        {
          "id": "1",
          "text": "Power and charging. It 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."
        },
        {
          "id": "2",
          "text": "You 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."
        }
      ],
      "language": "en"
    }
  }
}

Exempelsvar

I begärandetexten ovan frågar vi över ett enda textblock. Ett exempelsvar som tas emot för ovanstående fråga visas nedan,

{
"responses": {
    "200": {
      "headers": {},
      "body": {
        "answers": [
          {
            "answer": "Power and charging. It 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.",
            "confidenceScore": 0.93,
            "id": "1",
            "answerSpan": {
              "text": "two to four hours",
              "confidenceScore": 0,
              "offset": 28,
              "length": 45
            },
            "offset": 0,
            "length": 224
          },
          {
            "answer": "It 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.",
            "confidenceScore": 0.92,
            "id": "1",
            "answerSpan": {
              "text": "two to four hours",
              "confidenceScore": 0,
              "offset": 8,
              "length": 25
            },
            "offset": 20,
            "length": 224
          },
          {
            "answer": "It can take longer if you’re using your Surface for power-intensive activities like gaming or video streaming while you’re charging it.",
            "confidenceScore": 0.05,
            "id": "1",
            "answerSpan": null,
            "offset": 110,
            "length": 244
          }
        ]
      }
    }
  }

Vi ser att flera svar tas emot som en del av API-svaret. Varje svar har en specifik konfidenspoäng som hjälper dig att förstå svarets övergripande relevans. Svarsintervallet representerar om ett potentiellt kort svar också har identifierats. Användare kan använda den här konfidenspoängen för att avgöra vilka svar som ska ges som svar på frågan.

Fördefinierade API-gränser

API-anropsgränser

Om du behöver använda större dokument än vad gränsen tillåter kan du dela upp texten i mindre textsegment innan du skickar dem till API:et. I det här sammanhanget är ett dokument en definierad enskild sträng med texttecken.

Dessa tal representerar anropsgränserna per enskild API:

  • Antal dokument: 5.
  • Maximal storlek på ett enskilt dokument: 5 120 tecken.
  • Maximalt tre svar per dokument.

Språkkoder som stöds

Följande språkkoder stöds av fördefinierat API. Dessa språkkoder är i enlighet med ISO 639-1-kodstandarden.

Språkkod Språk
af Afrikaans
vara Amhariska
ar Arabiska
som Assamesiska
Az Azerbajdzjanska
ba Basjkiriska
be Vitryska
bg Bulgariska
Bn Bengali
ca Katalanska, Valencia
ckb Centralkurdiska
cs Tjeckiska
Cy Walesiska
da Danska
de Tyska
el Grekiska, moderna (1453–)
en Engelska
eo Esperanto
es Spanska, kastiliansk
et Estniska
eu Baskiska
fa Persiska
fi Finska
fr Franska
Ga Iriska
gl Galiciska
Gu Gujarati
he Hebreiska
hi Hindi
tim Kroatiska
hu Ungerska
hy Armeniska
id Indonesiska
är Isländska
it Italienska
ja Japanska
Ka Georgiska
kk Kazakiska
kilometer Centrala Khmer
Kn Kannada
ko Koreanska
Ky Kirghiz, Kirgizistan
la Latin
Lo Laotiska
lt Litauiska
lv Lettiska
mk Makedonska
Ml Malayalam
Mn Mongoliska
Hr Marathi
ms Malajiska
mt Maltesiska
min Burmesiska
ne Nepali
nl Nederländska, flamländska
nn Norska (nynorsk)
nej Norska
eller Odia
Pa Punjabi, Panjabi
pl Polska
PS Pashto, Pushto
pt Portugisiska
ro Rumänska
ru Ryska
sa Sanskrit
Sd Sindhi
Si Sinhala, Singalesiska
sk Slovakiska
sl Slovenska
sq Albanska
sr Serbiska
sv Svenska
sw Swahili
ta Tamilska
te Telugu
Tg Tadzjikiska
th Thailändska
Tl Tagalog
tr Turkiska
Tt Tatariska
Ug Uigurer, uigurer
uk Ukrainska
ur Urdu
uz Uzbekiska
vi Vietnamesiska
Yi Jiddisch
zh Kinesiska

Fördefinierad API-referens

Gå till den fullständiga fördefinierade API-exempeldokumentationen för att förstå de indata- och utdataparametrar som krävs för att anropa API:et.