クエリレスポンスとレスポンスタイプ - Amazon Kendra

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

クエリレスポンスとレスポンスタイプ

Amazon Kendra は、さまざまなクエリレスポンスとレスポンスタイプをサポートします。

クエリレスポンス

クエリ API を呼び出すと、検索結果に関する情報を返します。結果はオブジェクトのQueryResultItem配列 () になりますResultItems。各 QueryResultItem には、結果の概要が含まれます。クエリの結果に関連付けられたドキュメント属性が含まれます。

概要情報

概要情報は、結果のタイプによって異なります。いずれの場合も、検索条件に一致するドキュメントテキストが含まれます。また、アプリケーションの出力で検索テキストを強調表示表示するために使用できる強調表示情報も含まれます。例えば、検索条件が what is the height of the Space Needle? の場合、概要情報には、height および space needle の単語のテキストロケーションが含まれます。レスポンスタイプに関する情報については、クエリレスポンスとレスポンスタイプ を参照してください。

ドキュメント属性

各結果には、クエリに一致するドキュメントのドキュメント属性が含まれます。一部の属性は、DocumentIdDocumentTitle、および DocumentUri のような事前定義がされています。その他は、独自に定義するカスタム属性です。ドキュメント属性を使用して、Query API からのレスポンスをフィルタリングできます。例えば、特定の作成者に書かれたドキュメントまたは特定のバージョンのドキュメントのみが必要な場合があります。詳細については、「フィルタリングとファセット検索」を参照してください。ドキュメント属性は、ドキュメントをインデックスに追加するときに指定します。詳細については、「Custom fields or attributes」を参照してください。

次に、クエリ結果の JSON コードのサンプルを示します。DocumentAttributes および AdditionalAttributes のドキュメント属性に注意してください。

{ "QueryId": "query-id", "ResultItems": [ { "Id": "result-id", "Type": "ANSWER", "AdditionalAttributes": [ { "Key": "AnswerText", "ValueType": "TEXT_WITH_HIGHLIGHTS_VALUE", "Value": { "TextWithHighlightsValue": { "Text": "text", "Highlights": [ { "BeginOffset": 55, "EndOffset": 90, "TopAnswer": false } ] } } } ], "DocumentId": "document-id", "DocumentTitle": { "Text": "title" }, "DocumentExcerpt": { "Text": "text", "Highlights": [ { "BeginOffset": 0, "EndOffset": 300, "TopAnswer": false } ] }, "DocumentURI": "uri", "DocumentAttributes": [], "ScoreAttributes": "score", "FeedbackToken": "token" }, { "Id": "result-id", "Type": "ANSWER", "Format": "TABLE", "DocumentId": "document-id", "DocumentTitle": { "Text": "title" }, "TableExcerpt": { "Rows": [{ "Cells": [{ "Header": true, "Highlighted": false, "TopAnswer": false, "Value": "value" }, { "Header": true, "Highlighted": false, "TopAnswer": false, "Value": "value" }, { "Header": true, "Highlighted": false, "TopAnswer": false, "Value": "value" }, { "Header": true, "Highlighted": false, "TopAnswer": false, "Value": "value" }] }, { "Cells": [{ "Header": false, "Highlighted": false, "TopAnswer": false, "Value": "value" }, { "Header": false, "Highlighted": false, "TopAnswer": false, "Value": "value" }, { "Header": false, "Highlighted": true, "TopAnswer": true, "Value": "value" }, { "Header": false, "Highlighted": false, "TopAnswer": false, "Value": "value" ]} }], "TotalNumberofRows": number }, "DocumentURI": "uri", "ScoreAttributes": "score", "FeedbackToken": "token" }, { "Id": "result-id", "Type": "DOCUMENT", "AdditionalAttributes": [], "DocumentId": "document-id", "DocumentTitle": { "Text": "title", "Highlights": [] }, "DocumentExcerpt": { "Text": "text", "Highlights": [ { "BeginOffset": 74, "EndOffset": 77, "TopAnswer": false } ] }, "DocumentURI": "uri", "DocumentAttributes": [ { "Key": "_source_uri", "Value": { "StringValue": "uri" } } ], "ScoreAttributes": "score", "FeedbackToken": "token", } ], "FacetResults": [], "TotalNumberOfResults": number }

レスポンスのタイプ

Amazon Kendra は 3 種類のクエリレスポンスを返します。

  • 回答 (表の回答を含む)

  • ドキュメント

  • 質問と回答

レスポンスのタイプは、 QueryResultItem オブジェクトのTypeレスポンスフィールドで返されます。

回答

Amazon Kendra はレスポンスで 1 つ以上の質問の回答を検出しました。Factoid とは、誰が、何を、いつ、どこで、の質問に対するレスポンスです。例えば「Where is the nearest service center to me?」では、 Amazon Kendra はクエリに最も一致するインデックス内のテキストを返します。テキストは AnswerText フィールドにあり、レスポンステキスト内の検索条件の強調表示情報を含みます。AnswerText は、強調表示されたテキストを含むドキュメント全体の抜粋を含み、DocumentExcerpt は、切り捨てられた (290 文字) のドキュメントの抜粋と強調表示されたテキストを含みます。

Amazon Kendra はドキュメントごとに 1 つの回答のみを返します。これは、最も高い信頼度を持つ回答です。ドキュメントから複数の回答を返すには、ドキュメントを複数のドキュメントに分割する必要があります。

{ 'AnswerText': { 'TextWithHighlights': [ { 'BeginOffset': 271, 'EndOffset': 279, 'TopAnswer': False }, { 'BeginOffset': 481, 'EndOffset': 489, 'TopAnswer': False }, { 'BeginOffset': 547, 'EndOffset': 555, 'TopAnswer': False }, { 'BeginOffset': 764, 'EndOffset': 772, 'TopAnswer': False } ], 'Text': 'Asynchronousoperationscan\n''alsoprocess\n''documentsthatareinPDF''format.UsingPDFformatfilesallowsyoutoprocess''multi-page\n''documents.\n''Forinformationabouthow''AmazonTextractrepresents\n''documentsasBlockobjects, ''seeDocumentsandBlockObjects.\n''\n''\n''\n''Forinformationaboutdocument''limits, seeLimitsinAmazonTextract.\n''\n''\n''\n''TheAmazonTextractsynchronous''operationscanprocessdocumentsstoredinanAmazon\n''S3Bucketoryoucanpass''base64encodedimagebytes.\n''Formoreinformation, see''CallingAmazonTextractSynchronousOperations.''Asynchronousoperationsrequireinputdocuments\n''tobesuppliedinanAmazon''S3Bucket.' }, 'DocumentExcerpt': { 'Highlights': [ { 'BeginOffset': 0, 'EndOffset': 300, 'TopAnswer': False } ], 'Text': 'Asynchronousoperationscan\n''alsoprocess\n''documentsthatareinPDF''format.UsingPDFformatfilesallowsyoutoprocess''multi-page\n''documents.\n''ForinformationabouthowAmazon''Textractrepresents\n''' }, 'Type': 'ANSWER' }

ドキュメント

Amazon Kendra は、検索語に一致するドキュメントのランク付けされたドキュメントを返します。ランキングは、 が検索結果の精度に Amazon Kendra 持っている信頼度に基づいています。一致するドキュメントに関する情報は、 で返されますQueryResultItem。これにはドキュメントのタイトルが含まれます。この抜粋には、検索テキストの強調表示情報と、ドキュメント内の一致するテキストのセクションが含まれています。一致するドキュメントの URI は、SourceURI ドキュメント属性にあります。次のサンプル JSON は、一致するドキュメントのドキュメント概要を示しています。

{ 'DocumentTitle': { 'Highlights': [ { 'BeginOffset': 7, 'EndOffset': 15, 'TopAnswer': False }, { 'BeginOffset': 97, 'EndOffset': 105, 'TopAnswer': False } ], 'Text': 'AmazonTextractAPIPermissions: Actions, \n''Permissions, andResourcesReference-''AmazonTextract' }, 'DocumentExcerpt': { 'Highlights': [ { 'BeginOffset': 68, 'EndOffset': 76, 'TopAnswer': False }, { 'BeginOffset': 121, 'EndOffset': 129, 'TopAnswer': False } ], 'Text': '...LoggingandMonitoring\tMonitoring\n''\tCloudWatchMetricsforAmazonTextract\n''\tLoggingAmazonTextractAPICallswithAWSCloudTrail\n''\tAPIReference\tActions\tAnalyzeDocument\n''\tDetectDocumentText\n''\tGetDocumentAnalysis...' }, 'Type': 'DOCUMENT' }

質問と回答

質問と回答のレスポンスは、 がインデックス内のよくある質問の 1 つ Amazon Kendra と一致すると返されます。レスポンスには、一致する質問と回答が QueryResultItemフィールドに含まれます。また、クエリ文字列で検出されたクエリ条件の強調表示情報も含まれます。次の JSON は、質問と回答のレスポンスを示しています。レスポンスには質問のテキストが含まれていることに注意してください。

{ 'AnswerText': { 'TextWithHighlights': [ ], 'Text': '605feet' }, 'DocumentExcerpt': { 'Highlights': [ { 'BeginOffset': 0, 'EndOffset': 8, 'TopAnswer': False } ], 'Text': '605feet' }, 'Type': 'QUESTION_ANSWER', 'QuestionText': { 'Highlights': [ { 'BeginOffset': 12, 'EndOffset': 18, 'TopAnswer': False }, { 'BeginOffset': 26, 'EndOffset': 31, 'TopAnswer': False }, { 'BeginOffset': 32, 'EndOffset': 38, 'TopAnswer': False } ], 'Text': 'whatistheheightoftheSpaceNeedle?' } }

質問と回答のテキストをインデックスに追加する方法の詳細については、「Creating FAQ」を参照してください。