Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Einen Index durchsuchen
Sie können Dokumente nach ihren Attributen oder Facetten durchsuchen, ohne eine Suchabfrage eingeben zu müssen. Amazon Kendra
Index Browse kann Ihren Benutzern helfen, Dokumente zu finden, indem sie einen Index frei durchsuchen, ohne eine bestimmte Abfrage im Hinterkopf zu haben. Dies hilft Ihren Benutzern auch dabei, einen Index als Ausgangspunkt für ihre Suche umfassend zu durchsuchen.
Die Indexsuche kann nur für die Suche nach einem Dokumentattribut oder einer Facette mit einem Sortiertyp verwendet werden. Mit der Indexsuche können Sie nicht einen gesamten Index durchsuchen. Wenn der Abfragetext fehlt, werden Sie Amazon Kendra nach einem Dokumentattributfilter oder einer Facette und einem Sortiertyp gefragt.
Um das Durchsuchen von Indizes mithilfe der Abfrage-API zu ermöglichen, müssen Sie AttributeFilteroder Facet und angeben. SortingConfiguration Um das Durchsuchen von Indizes in der Konsole zu ermöglichen, wählen Sie im Navigationsmenü unter Indizes Ihren Index aus und wählen Sie dann die Option, Ihren Index zu durchsuchen. Drücken Sie im Suchfeld zweimal die Eingabetaste. Wählen Sie die Dropdownliste Suchergebnisse filtern aus, um einen Filter auszuwählen, und wählen Sie die Dropdownliste Sortieren aus, um einen Sortierungstyp auszuwählen.
Im Folgenden finden Sie ein Beispiel für das Durchsuchen eines Index nach Dokumenten in der Sprache Spanisch in absteigender Reihenfolge des Erstellungsdatums des Dokuments.
- CLI
-
aws kendra query \
--index-id "index-id" \
--attribute-filter '{
"EqualsTo":{
"Key": "_language_code",
"Value": {
"StringValue": "es"
}
}
}' \
--sorting-configuration '{
"DocumentAttributeKey": "_created_at",
"SortOrder": "DESC"
}'
- Python
-
import boto3
kendra = boto3.client("kendra")
# Must include the index ID, the attribute filter, and sorting configuration
response = kendra.query(
IndexId = "index-id",
AttributeFilter = {
"EqualsTo": {
"Key": "_language_code",
"Value": {
"StringValue": "es"
}
}
},
SortingConfiguration = {
"DocumentAttributeKey": "_created_at",
"SortOrder": "DESC"})
print("\nSearch results|Resultados de la búsqueda: \n")
for query_result in response["ResultItems"]:
print("-------------------")
print("Type: " + str(query_result["Type"]))
if query_result["Type"]=="ANSWER" or query_result["Type"]=="QUESTION_ANSWER":
answer_text = query_result["DocumentExcerpt"]["Text"]
print(answer_text)
if query_result["Type"]=="DOCUMENT":
if "DocumentTitle" in query_result:
document_title = query_result["DocumentTitle"]["Text"]
print("Title: " + document_title)
document_text = query_result["DocumentExcerpt"]["Text"]
print(document_text)
print("------------------\n\n")
- Java
-
package com.amazonaws.kendra;
import software.amazon.awssdk.services.kendra.KendraClient;
import software.amazon.awssdk.services.kendra.model.QueryRequest;
import software.amazon.awssdk.services.kendra.model.QueryResult;
import software.amazon.awssdk.services.kendra.model.QueryResultItem;
public class SearchIndexExample {
public static void main(String[] args) {
KendraClient kendra = KendraClient.builder().build();
QueryRequest queryRequest = QueryRequest.builder()
.withIndexId("index-id")
.withAttributeFilter(AttributeFilter.builder()
.withEqualsTo(DocumentAttribute.builder()
.withKey("_language_code")
.withValue(DocumentAttributeValue.builder()
.withStringValue("es")
.build())
.build())
.build())
.withSortingConfiguration(SortingConfiguration.builder()
.withDocumentAttributeKey("_created_at")
.withSortOrder("DESC")
.build())
.build());
QueryResult queryResult = kendra.query(queryRequest);
for (QueryResultItem item : queryResult.getResultItems()) {
System.out.println("----------------------");
System.out.println(String.format("Type: %s", item.getType()));
switch (item.getType()) {
case QueryResultType.QUESTION_ANSWER:
case QueryResultType.ANSWER:
String answerText = item.getDocumentExcerpt().getText();
System.out.println(answerText);
break;
case QueryResultType.DOCUMENT:
String documentTitle = item.getDocumentTitle().getText();
System.out.println(String.format("Title: %s", documentTitle));
String documentExcerpt = item.getDocumentExcerpt().getText();
System.out.println(String.format("Excerpt: %s", documentExcerpt));
break;
default:
System.out.println(String.format("Unknown query result type: %s", item.getType()));
}
System.out.println("-----------------------\n");
}
}
}