事前構築済み API
カスタム質問応答の事前構築済み API を使うと、プロジェクトを作成したり、質問と回答のペアをメンテナンスしたり、使用率が低いインフラストラクチャのコストを負担したりすることなく、テキストの一節に基づいた質問に回答することができます。 この機能は API として提供され、質問と回答に関するニーズを満たすために使用できます。カスタム質問応答に関する詳細を学習する必要はありません。
ユーザー クエリとテキストや文章のブロックを指定すると、API によって回答と正確な回答 (使用可能な場合) が返されます。
API の使用例
特定の質問に対する回答を取得したいテキストのブロックが 1 つ以上あるとします。 通常は、テキストのブロック数と同じ数のソースを作成する必要がありました。 しかし、事前構築済み API を使用すれば、プロジェクトでコンテンツ ソースを定義しなくても、テキスト ブロックに対してクエリを実行できます。
この API を使用できるその他のシナリオをいくつか次に示します。
- テキストを強調表示して、質問を入力すると、強調表示されたテキストの一節に対する回答の検索が行われる電子ブック リーダー アプリの開発。
- ブラウザー ページに現在表示されている内容について質問できるブラウザー拡張機能。
- ユーザーからクエリを受け取り、ユーザー クエリとの関連性が最も高いとボットによって識別された医療コンテンツに基づいて回答を提供する健康ボット。
要求のサンプルの例は次のとおりです。
要求のサンプル
POST https://{Unique-to-your-endpoint}.api.cognitive.microsoft.com/language/:query-text
1 つのテキスト ブロックに対するサンプル クエリ
要求本文
{
"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"
}
}
}
応答のサンプル
上の要求本文では、1 つのテキスト ブロックに対してクエリを実行します。 上のクエリに対して受信した応答のサンプルは次のとおりです。
{
"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
}
]
}
}
}
API 応答の一部として複数の回答が返されているのが確認できます。 各回答には、回答の全体的な関連度を理解するのに役立つ具体的な信頼度スコアが付けられています。 回答スパンは、有効な可能性がある短い回答も検出されたかどうかを表します。 ユーザーはこの信頼度スコアを利用して、クエリに応答して提供する回答を決定できます。
事前構築済み API の制限
API 呼び出しの制限
制限を超えるドキュメントを使用する必要がある場合は、テキストを小さなチャンクに分割してから API に送信することができます。 このコンテキストでは、ドキュメントはテキスト文字の定義済み単一文字列です。
これらの数値は、個々の API 呼び出しあたりの制限を表します。
- ドキュメントの数: 5。
- 1 つのドキュメントの最大サイズ: 5,120 文字。
- ドキュメントあたりの最大応答数は 3 です。
サポートされている言語コード
Prebuilt API では、次の言語コードがサポートされています。 これらの言語コードは、ISO 639-1 コード標準に準拠しています。
言語コード | Language |
---|---|
af | アフリカーンス語 |
am | アムハラ語 |
ar | アラビア語 |
as | アッサム語 |
az | アゼルバイジャン語 |
ba | バシキール語 |
be | ベラルーシ語 |
bg | ブルガリア語 |
bn | ベンガル語 |
ca | カタロニア語、バレンシア語 |
ckb | 中央クルド語 |
cs | チェコ語 |
cy | ウェールズ語 |
da | デンマーク語 |
de | ドイツ語 |
el | ギリシア語、現代語 (1453-) |
en | 英語 |
eo | エスペラント語 |
es | スペイン語、カスティリヤ |
et | エストニア語 |
eu | バスク語 |
fa | ペルシャ語 |
fi | フィンランド語 |
fr | フランス語 |
ga | アイルランド語 |
gl | ガリシア語 |
gu | グジャラート語 |
he | ヘブライ語 |
hi | ヒンディー語 |
時間 | クロアチア語 |
hu | ハンガリー語 |
hy | アルメニア語 |
ID | インドネシア語 |
is | アイスランド語 |
it | イタリア語 |
ja | 日本語 |
ka | ジョージア語 |
kk | カザフ語 |
km | 中央クメール語 |
kn | カンナダ語 |
ko | 韓国語 |
ky | キルギス |
la | ラテン語 |
lo | ラオス語 |
lt | リトアニア語 |
lv | ラトビア語 |
mk | マケドニア語 |
ml | マラヤーラム語 |
mn | モンゴル語 |
mr | マラーティー語 |
ms | マレー語 |
mt | マルタ語 |
my | ミャンマー語 |
ne | ネパール語 |
nl | オランダ語、フラマン語 |
nn | ノルウェー語ニーノシュク |
X | ノルウェー語 |
または | オディア語 |
pa | パンジャーブ語 |
pl | ポーランド語 |
ps | パシュトゥー語 |
pt | ポルトガル語 |
ro | ルーマニア語 |
ru | ロシア語 |
sa | サンスクリット語 |
sd | シンド語 |
si | シンハラ語、シンハラ人 |
sk | スロバキア語 |
sl | スロベニア語 |
sq | アルバニア語 |
sr | セルビア語 |
sv | スウェーデン語 |
sw | スワヒリ語 |
ta | タミル語 |
te | テルグ語 |
sg | タジク語 |
th | タイ語 |
tl | タガログ語 |
tr | トルコ語 |
tt | タタール語 |
ug | ウイグル語 |
uk | ウクライナ語 |
ur | ウルドゥ語 |
uz | ウズベク語 |
vi | ベトナム語 |
yi | イディッシュ語 |
zh | Chinese |
事前構築済み API のリファレンス
API の呼び出しに必要な入力と出力のパラメーターについては、完全な事前構築済み API のサンプルに関するドキュメントを参照してください。