

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.

# Vorschläge für Abfragen
<a name="query-suggestions"></a>

**Anmerkung**  
Die Funktionsunterstützung variiert je nach Indextyp und verwendeter Such-API. Informationen darüber, ob diese Funktion für den von Ihnen verwendeten Indextyp und die Such-API unterstützt wird, finden Sie unter [Indextypen](https://docs.aws.amazon.com/kendra/latest/dg/hiw-index-types.html).

Amazon Kendra Mit *Abfragevorschlägen* können Ihre Benutzer ihre Suchanfragen schneller eingeben und sie bei der Suche unterstützen.

Amazon Kendra schlägt Anfragen vor, die für Ihre Benutzer relevant sind, und zwar auf der Grundlage einer der folgenden Kriterien:
+ Beliebte Abfragen im Abfrageverlauf oder im Abfrageprotokoll
+ Der Inhalt von Feldern/Attributen des Dokuments

Sie können Ihre Präferenz für die Verwendung des Abfrageverlaufs oder der Dokumentfelder festlegen, indem Sie entweder auf `QUERY` oder setzen `SuggestionTypes` `DOCUMENT_ATTRIBUTES` und dann aufrufen. [https://docs.aws.amazon.com/kendra/latest/APIReference/API_GetQuerySuggestions.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_GetQuerySuggestions.html) Amazon Kendra Verwendet standardmäßig den Abfrageverlauf als Grundlage für Vorschläge. Wenn sowohl der Abfrageverlauf als auch die Dokumentfelder beim Aufrufen aktiviert sind [https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html)und Sie Ihre `SuggestionTypes` Präferenz für die Verwendung von Dokumentfeldern nicht festgelegt haben, wird der Abfrageverlauf Amazon Kendra verwendet.

Wenn Sie die Konsole verwenden, können Sie Abfragevorschläge entweder auf dem Abfrageverlauf oder auf Dokumentfeldern basieren. Sie wählen zuerst Ihren Index aus und wählen dann im Navigationsmenü unter Erweiterungen **die Option** **Abfragevorschläge** aus. Wählen Sie dann **Abfragevorschläge konfigurieren** aus. Nachdem Sie Abfragevorschläge konfiguriert haben, werden Sie zu einer Suchkonsole weitergeleitet, in der Sie entweder die **Felder **Abfrageverlauf** oder Dokument** im rechten Bereich auswählen und eine Suchabfrage in die Suchleiste eingeben können.

Standardmäßig werden Abfragevorschläge, die den Abfrageverlauf und die Dokumentfelder verwenden, beide ohne zusätzliche Kosten aktiviert. Sie können diese Art von Abfragevorschlägen jederzeit mithilfe der `UpdateQuerySuggestionsConfig` API deaktivieren. Um Abfragevorschläge zu deaktivieren, die auf dem Abfrageverlauf basieren, stellen Sie `DISABLED` beim Aufrufen `Mode` auf ein`UpdateQuerySuggestionsConfig`. Um auf Dokumentfeldern basierende Abfragevorschläge `AttributeSuggestionsMode` zu deaktivieren, stellen Sie `INACTIVE` in der Konfiguration der Dokumentfelder auf ein und rufen Sie dann auf`UpdateQuerySuggestionsConfig>`. Wenn Sie die Konsole verwenden, können Sie Abfragevorschläge in den **Einstellungen für Abfragevorschläge** deaktivieren.

Bei Abfragevorschlägen wird nicht zwischen Groß- und Kleinschreibung unterschieden. Amazon Kendra wandelt das Abfragepräfix und die vorgeschlagene Abfrage in Kleinbuchstaben um, ignoriert alle einfachen und doppelten Anführungszeichen und ersetzt mehrere Leerzeichen durch ein einzelnes Leerzeichen. Amazon Kendra entspricht allen anderen Sonderzeichen, wie sie sind. Amazon Kendra zeigt keine Vorschläge an, wenn ein Benutzer weniger als zwei Zeichen oder mehr als 60 Zeichen eingibt.

**Topics**
+ [Fragen Sie Vorschläge mithilfe des Abfrageverlaufs ab](#query-suggestions-history)
+ [Fragen Sie Vorschläge mithilfe von Dokumentfeldern ab](#query-suggestions-doc-fields)
+ [Sperren Sie bestimmte Abfragen oder dokumentieren Sie Feldinhalte aus Vorschlägen](#query-suggestions-blocklist)

## Fragen Sie Vorschläge mithilfe des Abfrageverlaufs ab
<a name="query-suggestions-history"></a>

**Anmerkung**  
Die Funktionsunterstützung variiert je nach Indextyp und verwendeter Such-API. Informationen darüber, ob diese Funktion für den von Ihnen verwendeten Indextyp und die Such-API unterstützt wird, finden Sie unter [Indextypen](https://docs.aws.amazon.com/kendra/latest/dg/hiw-index-types.html).

**Topics**
+ [Einstellungen für die Auswahl von Abfragen für Vorschläge](#query-suggestions-history-settings)
+ [Vorschläge löschen und gleichzeitig den Abfrageverlauf beibehalten](#query-suggestions-history-clear)
+ [Keine Vorschläge verfügbar](#query-suggestions-history-none)

Sie können wählen, ob Sie Abfragen vorschlagen möchten, die für Ihre Benutzer relevant sind, und zwar auf der Grundlage häufig verwendeter Abfragen im Abfrageverlauf oder im Abfrageprotokoll. Amazon Kendra verwendet alle Abfragen, nach denen Ihre Benutzer suchen, und lernt aus diesen Abfragen, um Ihren Benutzern Vorschläge zu unterbreiten. Amazon Kendra schlägt Benutzern beliebte Abfragen vor, wenn sie mit der Eingabe ihrer Anfrage beginnen. Amazon Kendra schlägt eine Abfrage vor, wenn das Präfix oder die ersten Zeichen der Abfrage mit dem übereinstimmen, was der Benutzer als Abfrage eingibt.

Ein Benutzer beginnt beispielsweise mit der Eingabe der Abfrage „bevorstehende Ereignisse“. Amazon Kendra hat aus dem Abfrageverlauf erfahren, dass viele Benutzer viele Male nach „bevorstehende Ereignisse 2050“ gesucht haben. Der Benutzer sieht, dass „bevorstehende Ereignisse 2050“ direkt unter seiner Suchleiste angezeigt werden, wodurch seine Suchabfrage automatisch vervollständigt wird. Der Benutzer wählt diesen Abfragevorschlag aus und das Dokument „Neue Ereignisse: Was passiert in 2050“ wird in den Suchergebnissen angezeigt.

Sie können angeben, wie geeignete Abfragen Amazon Kendra ausgewählt werden, um Ihren Benutzern vorzuschlagen. Sie können beispielsweise angeben, dass ein Abfragevorschlag von mindestens 10 eindeutigen Benutzern (Standard ist drei) durchsucht worden sein muss, dass er innerhalb der letzten 30 Tage durchsucht wurde und dass er keine Wörter oder Ausdrücke aus Ihrer [Sperrliste](https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html#query-suggestions-blocklist) enthält. Amazon Kendra erfordert, dass eine Abfrage mindestens ein Suchergebnis hat und mindestens ein Wort mit mehr als vier Zeichen enthält.

### Einstellungen für die Auswahl von Abfragen für Vorschläge
<a name="query-suggestions-history-settings"></a>

Sie können die folgenden Einstellungen für die Auswahl von Abfragen für Vorschläge mithilfe der [https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html)API konfigurieren:
+ **Modus** — Abfragevorschläge, die den Abfrageverlauf verwenden, sind entweder `ENABLED` oder`LEARN_ONLY`. Amazon Kendra aktiviert standardmäßig Abfragevorschläge. `LEARN_ONLY`deaktiviert Abfragevorschläge. Ist diese Option deaktiviert, lernt Amazon Kendra weiterhin Vorschläge, unterbreitet Benutzern jedoch keine Abfragevorschläge.
+ **Zeitfenster für die Abfrageprotokollierung** — Gibt an, wie aktuell Ihre Abfragen in Ihrem Zeitfenster für die Abfrageprotokollierung sind. Das Zeitfenster ist ein ganzzahliger Wert für die Anzahl der Tage vom aktuellen Tag bis zu den vergangenen Tagen.
+ **Abfragen ohne Benutzerinformationen — Wählen** Sie diese Option aus, `TRUE` um alle Abfragen einzubeziehen, oder legen Sie fest, `FALSE` dass nur Abfragen mit Benutzerinformationen eingeschlossen werden. Sie können diese Einstellung verwenden, wenn Ihre Suchanwendung Benutzerinformationen wie die Benutzer-ID enthält, wenn ein Benutzer eine Abfrage ausgibt. Standardmäßig filtert diese Einstellung keine Abfragen heraus, wenn den Abfragen keine spezifischen Benutzerinformationen zugeordnet sind. Sie können diese Einstellung jedoch verwenden, um nur Vorschläge zu unterbreiten, die auf Abfragen basieren, die Benutzerinformationen enthalten.
+ **Eindeutige Benutzer** — Die Mindestanzahl an eindeutigen Benutzern, die eine Abfrage durchsuchen müssen, um sie Ihren Benutzern vorschlagen zu können. Diese Zahl ist ein ganzzahliger Wert.
+ Anzahl der **Abfragen** — Eine Abfrage muss mindestens so oft durchsucht werden, dass sie Ihren Benutzern vorgeschlagen werden kann. Diese Zahl ist ein ganzzahliger Wert.

Diese Einstellungen wirken sich darauf aus, wie Abfragen als beliebte Abfragen ausgewählt werden, um sie Ihren Benutzern vorzuschlagen. Wie Sie Ihre Einstellungen anpassen, hängt von Ihren spezifischen Bedürfnissen ab, zum Beispiel:
+ Wenn Ihre Benutzer in der Regel durchschnittlich einmal pro Monat suchen, können Sie die Anzahl der Tage im Zeitfenster für das Abfrageprotokoll auf 30 Tage festlegen. Mit dieser Einstellung erfassen Sie die meisten der letzten Abfragen Ihrer Benutzer, bevor sie im Zeitfenster veraltet sind.
+ Wenn nur eine geringe Anzahl Ihrer Abfragen Benutzerinformationen enthält und Sie keine Abfragen vorschlagen möchten, die auf einer kleinen Stichprobengröße basieren, können Sie Abfragen so einrichten, dass sie alle Benutzer einbeziehen.
+ Wenn Sie beliebte Abfragen so definieren, dass sie von mindestens 10 eindeutigen Benutzern und mindestens 100 Mal durchsucht werden, legen Sie die eindeutigen Benutzer auf 10 und die Anzahl der Abfragen auf 100 fest.

**Warnung**  
Ihre Änderungen an den Einstellungen werden möglicherweise nicht sofort wirksam. Sie können die Änderungen an den Einstellungen mithilfe der [https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html)API verfolgen. Die Zeit, bis Ihre aktualisierten Einstellungen wirksam werden, hängt von den von Ihnen vorgenommenen Aktualisierungen und der Anzahl der Suchanfragen in Ihrem Index ab. Amazon Kendra aktualisiert die Vorschläge automatisch alle 24 Stunden, nachdem Sie eine Einstellung geändert oder eine [Sperrliste](https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html#query-suggestions-blocklist) angewendet haben.

------
#### [ CLI ]

**Um Abfragevorschläge abzurufen**

```
aws kendra get-query-suggestions \
 --index-id {{index-id}} \
 --query-text "query-text" \
 --suggestion-types '["QUERY"]' \
 --max-suggestions-count 1 // If you want to limit the number of suggestions
```

**Um Abfragevorschläge zu aktualisieren**

Um beispielsweise das Zeitfenster für das Abfrageprotokoll und die Mindestanzahl der Suchvorgänge für eine Abfrage zu ändern, gehen Sie wie folgt vor:

```
aws kendra update-query-suggestions-config \
 --index-id {{index-id}} \
 --query-log-look-back-window-in-days 30 \
 --minimum-query-count 100
```

------
#### [ Python ]

**Um Abfragevorschläge abzurufen**

```
import boto3
from botocore.exceptions import ClientError

kendra = boto3.client("kendra")

print("Get query suggestions.")

# Provide the index ID
index_id = "index-id"

# Provide the query text
query_text = "query"

# Provide the query suggestions type
query_suggestions_type = "QUERY"


# If you want to limit the number of suggestions
num_suggestions = 1
 
try:
    query_suggestions_response = kendra.get_query_suggestions(
        IndexId = index_id,
        QueryText = query_text,
        SuggestionTypes = query_suggestions_type,
        MaxSuggestionsCount = num_suggestions
    )

    # Print out the suggestions you received
    if ("Suggestions" in query_suggestions_response.keys()) {
        for (suggestion: query_suggestions_response["Suggestions"]) {
            print(suggestion["Value"]["Text"]["Text"]);
        }
    }
   
except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

**Um Abfragevorschläge zu aktualisieren**

Um beispielsweise das Zeitfenster für das Abfrageprotokoll und die Mindestanzahl der Suchvorgänge für eine Abfrage zu ändern, gehen Sie wie folgt vor:

```
import boto3
from botocore.exceptions import ClientError
import pprint
import time

kendra = boto3.client("kendra")

print("Updating query suggestions settings/configuration for an index.")

# Provide the index ID
index_id = "index-id"

# Configure the settings you want to update
minimum_query_count = 100
query_log_look_back_window_in_days = 30

try:
    kendra.update_query_suggestions_config(
        IndexId = index_id,
        MinimumQueryCount = minimum_query_count,
        QueryLogLookBackWindowInDays = query_log_look_back_window_in_days
    )

    print("Wait for Amazon Kendra to update the query suggestions.")

    while True:
        # Get query suggestions description of settings/configuration
        query_sugg_config_response = kendra.describe_query_suggestions_config(
            IndexId = index_id
        )
        
        # If status is not UPDATING, then quit
        status = query_sugg_config_response["Status"]
        print(" Updating query suggestions config. Status: " + status)
        if status != "UPDATING":
            break
        time.sleep(60)

except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

------

### Vorschläge löschen und gleichzeitig den Abfrageverlauf beibehalten
<a name="query-suggestions-history-clear"></a>

**Anmerkung**  
Die Funktionsunterstützung variiert je nach Indextyp und verwendeter Such-API. Informationen darüber, ob diese Funktion für den von Ihnen verwendeten Indextyp und die Such-API unterstützt wird, finden Sie unter [Indextypen](https://docs.aws.amazon.com/kendra/latest/dg/hiw-index-types.html).

Sie können Abfragevorschläge mithilfe der [https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html)API löschen. Durch das Löschen von Vorschlägen werden nur vorhandene Abfragevorschläge gelöscht, nicht die Abfragen im Abfrageverlauf. Wenn Sie Vorschläge löschen, Amazon Kendra lernt es neue Vorschläge auf der Grundlage neuer Abfragen, die dem Abfrageprotokoll seit dem Löschen der Vorschläge hinzugefügt wurden.

------
#### [ CLI ]

**Um Abfragevorschläge zu löschen**

```
aws  kendra clear-query-suggestions \
 --index-id {{index-id}}
```

------
#### [ Python ]

**Um Abfragevorschläge zu löschen**

```
import boto3
from botocore.exceptions import ClientError

kendra = boto3.client("kendra")

print("Clearing out query suggestions for an index.")

# Provide the index ID
index_id = "index-id"

try:
    kendra.clear_query_suggestions(
        IndexId = index_id
    )

    # Confirm last cleared date-time and that there are no suggestions
    query_sugg_config_response = kendra.describe_query_suggestions_config(
        IndexId = index_id
    )
    print("Query Suggestions last cleared at: " + str(query_sugg_config_response["LastClearTime"]));
    print("Number of suggestions available from the time of clearing: " + str(query_sugg_config_response["TotalSuggestionsCount"]));
        
except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

------

### Keine Vorschläge verfügbar
<a name="query-suggestions-history-none"></a>

Wenn Sie keine Vorschläge für eine Anfrage sehen, kann das einen der folgenden Gründe haben:
+ Ihr Index enthält nicht genügend Abfragen, aus denen Amazon Kendra Sie lernen könnten.
+ Ihre Einstellungen für Abfragevorschläge sind zu streng, was dazu führt, dass die meisten Abfragen aus den Vorschlägen herausgefiltert werden.
+ Sie haben vor Kurzem Vorschläge gelöscht und benötigen Amazon Kendra immer noch Zeit, bis sich neue Abfragen angesammelt haben, um neue Vorschläge zu sammeln.

Sie können Ihre aktuellen Einstellungen mithilfe der [https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html)API überprüfen.

## Fragen Sie Vorschläge mithilfe von Dokumentfeldern ab
<a name="query-suggestions-doc-fields"></a>

**Topics**
+ [Einstellungen für die Auswahl von Feldern für Vorschläge](#query-suggestions-doc-fields-settings)
+ [Benutzersteuerung in Dokumentfeldern](#query-suggestions-doc-fields-user-control)

Sie können wählen, ob Sie anhand des Inhalts von Dokumentfeldern Abfragen vorschlagen möchten, die für Ihre Benutzer relevant sind. Anstatt den Abfrageverlauf zu verwenden, um andere beliebte relevante Abfragen vorzuschlagen, können Sie Informationen verwenden, die in einem Dokumentfeld enthalten sind und für die automatische Vervollständigung der Abfrage nützlich sind. Amazon Kendra sucht in Feldern, die auf eingestellt sind, nach `Suggestable` relevantem Inhalt, der eng mit der Anfrage Ihres Benutzers übereinstimmt. Schlägt Ihrem Benutzer diesen Inhalt dann Amazon Kendra vor, wenn er mit der Eingabe seiner Anfrage beginnt.

Wenn Sie beispielsweise das Titelfeld angeben, auf dem Vorschläge basieren sollen, und ein Benutzer beginnt, die Abfrage „Wie Amazon Ken... Amazon Kendra 'könnte der relevanteste Titel „Wie funktioniert“ vorgeschlagen werden, um die Suche automatisch zu vervollständigen. Der Nutzer sieht „So Amazon Kendra funktioniert“ direkt unter seiner Suchleiste und vervollständigt seine Suchabfrage automatisch. Der Benutzer wählt diesen Abfragevorschlag aus und das Dokument „So Amazon Kendra funktioniert“ wird in den Suchergebnissen angezeigt.

Sie können den Inhalt eines beliebigen Dokumentfeldes `String` und `StringList` -typs verwenden, um eine Abfrage vorzuschlagen, indem Sie das Feld `Suggestable` als Teil Ihrer Feldkonfiguration für Abfragevorschläge auf festlegen. Sie können auch eine [Blockliste](https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html#query-suggestions-blocklist) verwenden, sodass vorgeschlagene Dokumentfelder, die bestimmte Wörter oder Ausdrücke enthalten, Ihren Benutzern nicht angezeigt werden. Sie können eine Blockliste verwenden. Die Sperrliste gilt unabhängig davon, ob Sie Abfragevorschläge so einrichten, dass sie den Abfrageverlauf oder die Dokumentfelder verwenden.

### Einstellungen für die Auswahl von Feldern für Vorschläge
<a name="query-suggestions-doc-fields-settings"></a>

Sie können die folgenden Einstellungen für die Auswahl von Dokumentfeldern für Vorschläge konfigurieren, indem Sie die [https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsConfig.html)API verwenden [https://docs.aws.amazon.com/kendra/latest/APIReference/API_AttributeSuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_AttributeSuggestionsConfig.html)und aufrufen, um die Einstellungen auf Indexebene zu aktualisieren:
+ **Modus für Feld-/Attributvorschläge** — Abfragevorschläge, die Dokumentfelder verwenden, sind entweder oder. `ACTIVE` `INACTIVE` Amazon Kendra aktiviert standardmäßig Abfragevorschläge.
+ **Suggestible Felder/Attribute — Die Feldnamen oder Feldschlüssel, auf denen Vorschläge** basieren sollen. Diese Felder müssen als Teil der `TRUE` Feldkonfiguration auf für `Suggestable` gesetzt werden. Sie können die Feldkonfiguration auf Abfrageebene überschreiben und gleichzeitig die Konfiguration auf Indexebene beibehalten. Verwenden Sie die [GetQuerySuggestions](https://docs.aws.amazon.com/kendra/latest/APIReference/API_GetQuerySuggestions.html)API, um Änderungen `AttributeSuggestionConfig` auf Abfrageebene vorzunehmen. Diese Konfiguration auf Abfrageebene kann nützlich sein, um schnell mit der Verwendung verschiedener Dokumentfelder zu experimentieren, ohne die Konfiguration auf Indexebene aktualisieren zu müssen.
+ **Zusätzliche Felder/Attribute** — Die zusätzlichen Felder, die Sie in die Antwort auf einen Abfragevorschlag aufnehmen möchten. Diese Felder werden verwendet, um zusätzliche Informationen in der Antwort bereitzustellen, sie werden jedoch nicht als Grundlage für Vorschläge verwendet.

**Warnung**  
Ihre Änderungen an den Einstellungen werden möglicherweise nicht sofort wirksam. Sie können die Änderungen an den Einstellungen mithilfe der [https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsConfig.html)API verfolgen. Die Zeit, bis Ihre aktualisierten Einstellungen wirksam werden, hängt von den Aktualisierungen ab, die Sie vornehmen. Amazon Kendra aktualisiert die Vorschläge automatisch alle 24 Stunden, nachdem Sie eine Einstellung geändert oder eine [Sperrliste](https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html#query-suggestions-blocklist) angewendet haben.

------
#### [ CLI ]

Um Abfragevorschläge abzurufen und die Konfiguration der Dokumentfelder auf Abfrageebene zu überschreiben, anstatt die Konfiguration auf Indexebene ändern zu müssen.

```
aws kendra get-query-suggestions \
 --index-id {{index-id}} \
 --query-text "query-text" \
 --suggestion-types '["DOCUMENT_ATTRIBUTES"]' \
 --attribute-suggestions-config '{"SuggestionAttributes":'["field/attribute key 1", "field/attribute key 2"]', "AdditionalResponseAttributes":'["response field/attribute key 1", "response field/attribute key 2"]'}' \
 --max-suggestions-count 1 // If you want to limit the number of suggestions
```

**Um Abfragevorschläge zu aktualisieren**

Um beispielsweise die Konfiguration der Dokumentfelder auf Indexebene zu ändern:

```
aws kendra update-query-suggestions-config \
 --index-id index-id \
 --attribute-suggestions-config '{"SuggestableConfigList": '[{"SuggestableConfig": "_document_title", "Suggestable": true}]', "AttributeSuggestionsMode": "ACTIVE"}'
```

------
#### [ Python ]

Um Abfragevorschläge abzurufen und die Konfiguration der Dokumentfelder auf Abfrageebene zu überschreiben, anstatt die Konfiguration auf Indexebene ändern zu müssen.

```
import boto3
from botocore.exceptions import ClientError

kendra = boto3.client("kendra")

print("Get query suggestions.")

# Provide the index ID
index_id = "index-id"

# Provide the query text
query_text = "query"

# Provide the query suggestions type
query_suggestions_type = "DOCUMENT_ATTRIBUTES"

# Override fields/attributes configuration at query level
configuration = {"SuggestionAttributes":
    '["field/attribute key 1", "field/attribute key 2"]', 
      "AdditionalResponseAttributes":
          '["response field/attribute key 1", "response field/attribute key 2"]'
          }

# If you want to limit the number of suggestions
num_suggestions = 1

try:
    query_suggestions_response = kendra.get_query_suggestions(
        IndexId = index_id,
        QueryText = query_text,
        SuggestionTypes = [query_suggestions_type],
        AttributeSuggestionsConfig = configuration,
        MaxSuggestionsCount = num_suggestions
    )

    # Print out the suggestions you received
    if ("Suggestions" in query_suggestions_response.keys()) {
        for (suggestion: query_suggestions_response["Suggestions"]) {
            print(suggestion["Value"]["Text"]["Text"]);
        }
    }
   
except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

**Um Abfragevorschläge zu aktualisieren**

Um beispielsweise die Konfiguration der Dokumentfelder auf Indexebene zu ändern:

```
import boto3
from botocore.exceptions import ClientError
import pprint
import time

kendra = boto3.client("kendra")

print("Updating query suggestions settings/configuration for an index.")

# Provide the index ID
index_id = "index-id"

# Configure the settings you want to update at the index level
configuration = {"SuggestableConfigList": 
    '[{"SuggestableConfig": "_document_title", "Suggestable": true}]', 
       "AttributeSuggestionsMode": "ACTIVE"
       }

try:
    kendra.update_query_suggestions_config(
        IndexId = index_id,
        AttributeSuggestionsConfig = configuration
    )

    print("Wait for Amazon Kendra to update the query suggestions.")

    while True:
        # Get query suggestions description of settings/configuration
        query_sugg_config_response = kendra.describe_query_suggestions_config(
            IndexId = index_id
        )
        
        # If status is not UPDATING, then quit
        status = query_sugg_config_response["Status"]
        print(" Updating query suggestions config. Status: " + status)
        if status != "UPDATING":
            break
        time.sleep(60)

except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

------

### Benutzersteuerung in Dokumentfeldern
<a name="query-suggestions-doc-fields-user-control"></a>

Sie können die Benutzerkontextfilterung auf die Dokumentfelder anwenden, auf denen Sie Abfragevorschläge basieren möchten. Dadurch werden Dokumentfeldinformationen basierend auf dem Benutzer- oder Gruppenzugriff auf Dokumente gefiltert. Beispielsweise durchsucht ein Praktikant das Unternehmensportal und hat keinen Zugriff auf ein streng geheimes Unternehmensdokument. Aus diesem Grund werden dem Praktikanten keine Suchanfragen angezeigt, die auf dem Titel des streng geheimen Dokuments oder einem anderen Eingabefeld basieren.

Sie können Ihre Dokumente mit einer Zugriffskontrollliste (ACL) indexieren, in der festgelegt wird, welchen Benutzern und Gruppen Zugriff auf welche Dokumente gewährt wird. Anschließend können Sie die Benutzerkontextfilterung auf die Felder Ihrer Dokumente anwenden, um Abfragevorschläge zu erhalten. Die Benutzerkontextfilterung, die derzeit für Ihren Index festgelegt ist, ist dieselbe Benutzerkontextfilterung, die auf Ihre Konfiguration der Dokumentfelder für Abfragevorschläge angewendet wurde. Die Benutzerkontextfilterung ist Teil der Konfiguration Ihrer Dokumentfelder. Sie verwenden den [https://docs.aws.amazon.com/kendra/latest/APIReference/API_AttributeSuggestionsConfig.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_AttributeSuggestionsConfig.html)und -Aufruf [https://docs.aws.amazon.com/kendra/latest/APIReference/API_GetQuerySuggestions.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_GetQuerySuggestions.html).

## Sperren Sie bestimmte Abfragen oder dokumentieren Sie Feldinhalte aus Vorschlägen
<a name="query-suggestions-blocklist"></a>

Eine *Blockliste* Amazon Kendra verhindert, dass Ihren Benutzern bestimmte Abfragen vorgeschlagen werden. Eine Blockliste ist eine Liste von Wörtern oder Ausdrücken, die Sie von Abfragevorschlägen ausschließen möchten. Amazon Kendra schließt Abfragen aus, die eine exakte Übereinstimmung mit den Wörtern oder Ausdrücken in der Blockliste enthalten.

Sie können eine Sperrliste verwenden, um sich vor anstößigen Wörtern oder Ausdrücken zu schützen, die häufig in Ihrem Abfrageverlauf oder in Dokumentfeldern vorkommen und die als Vorschläge ausgewählt werden Amazon Kendra könnten. Eine Sperrliste kann auch Amazon Kendra verhindern, dass Abfragen vorgeschlagen werden, die Informationen enthalten, die noch nicht veröffentlicht oder angekündigt werden können. Beispielsweise fragen Ihre Benutzer häufig nach einer bevorstehenden Veröffentlichung eines potenziellen neuen Produkts. Sie möchten das Produkt jedoch nicht vorschlagen, da Sie noch nicht bereit sind, es zu veröffentlichen. Sie können Anfragen, die den Produktnamen und Produktinformationen enthalten, aus Vorschlägen ausschließen.

Mithilfe der API können Sie eine Sperrliste für Abfragen erstellen. [https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateQuerySuggestionsBlockList.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateQuerySuggestionsBlockList.html) Sie fügen jedes Blockwort oder jede Wortgruppe in eine separate Zeile in einer Textdatei ein. Anschließend laden Sie die Textdatei in Ihren Amazon S3 S3-Bucket hoch und geben den Pfad oder Speicherort der Datei an Amazon S3. Amazon Kendra unterstützt derzeit nur die Erstellung einer Blockliste.

Sie können die Textdatei mit Ihren blockierten Wörtern und Ausdrücken in Ihrem Amazon S3 Bucket ersetzen. Verwenden Sie die [https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsBlockList.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateQuerySuggestionsBlockList.html)API Amazon Kendra, um die Blockliste zu aktualisieren.

Verwenden Sie die [https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsBlockList.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeQuerySuggestionsBlockList.html)API, um den Status Ihrer Blockliste abzurufen. `DescribeQuerySuggestionsBlockList`kann Ihnen auch andere nützliche Informationen zur Verfügung stellen, z. B. die folgenden: 
+ Wann wurde Ihre Sperrliste zuletzt aktualisiert
+ Wie viele Wörter oder Ausdrücke befinden sich in Ihrer aktuellen Blockliste
+ Hilfreiche Fehlermeldungen beim Erstellen einer Blockliste

Sie können die [https://docs.aws.amazon.com/kendra/latest/APIReference/API_ListQuerySuggestionsBlockLists.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_ListQuerySuggestionsBlockLists.html)API auch verwenden, um eine Liste mit Zusammenfassungen von Blocklisten für einen Index abzurufen.

Verwenden Sie die [DeleteQuerySuggestionsBlockList](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DeleteQuerySuggestionsBlockList.html)API, um Ihre Blockliste zu löschen.

Ihre Aktualisierungen der Blockliste werden möglicherweise nicht sofort wirksam. Sie können Aktualisierungen mithilfe der `DescribeQuerySuggestionsBlockList` API verfolgen.

------
#### [ CLI ]

**Um eine Blockliste zu erstellen**

```
aws kendra create-query-suggestions-block-list \
 --index-id {{index-id}} \
 --name "block-list-name" \
 --description "block-list-description" \
 --source-s3-path "Bucket=bucket-name,Key=query-suggestions/block_list.txt" \
 --role-arn {{role-arn}}
```

**Um eine Blockliste zu aktualisieren**

```
aws kendra update-query-suggestions-block-list \
 --index-id {{index-id}} \
 --name "new-block-list-name" \
 --description "new-block-list-description" \
 --source-s3-path "Bucket=bucket-name,Key=query-suggestions/new_block_list.txt" \
 --role-arn {{role-arn}}
```

**Um eine Blockliste zu löschen**

```
aws kendra delete-query-suggestions-block-list \
 --index-id {{index-id}} \
 --id {{block-list-id}}
```

------
#### [ Python ]

**Um eine Blockliste zu erstellen**

```
import boto3
from botocore.exceptions import ClientError
import pprint
import time

kendra = boto3.client("kendra")

print("Create a query suggestions block list.")

# Provide a name for the block list
block_list_name = "block-list-name"
# Provide an optional description for the block list
block_list_description = "block-list-description"
# Provide the IAM role ARN required for query suggestions block lists
block_list_role_arn = "role-arn"

# Provide the index ID
index_id = "index-id"

s3_bucket_name = "bucket-name"
s3_key = "query-suggestions/block_list.txt"
source_s3_path = {
    'Bucket': s3_bucket_name,
    'Key': s3_key
}

try:
    block_list_response = kendra.create_query_suggestions_block_list(
        Description = block_list_description,
        Name = block_list_name,
        RoleArn = block_list_role_arn,
        IndexId = index_id,
        SourceS3Path = source_s3_path
    )

    print(block_list_response)

    block_list_id = block_list_response["Id"]

    print("Wait for Amazon Kendra to create the block list.")

    while True:
        # Get block list description
        block_list_description = kendra.describe_query_suggestions_block_list(
            Id = block_list_id,
            IndexId = index_id
        )
        # If status is not CREATING, then quit
        status = block_list_description["Status"]
        print("Creating block list. Status: " + status)
        if status != "CREATING":
            break
        time.sleep(60)
        
except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

**Um eine Blockliste zu aktualisieren**

```
import boto3
from botocore.exceptions import ClientError
import pprint
import time
                        
kendra = boto3.client("kendra")
                        
print("Update a block list for query suggestions.")

# Provide the block list name you want to update
block_list_name = "new-block-list-name"
# Provide the block list description you want to update
block_list_description = "new-block-list-description"
# Provide the IAM role ARN required for query suggestions block lists
block_list_role_arn = "role-arn"

# Provide the block list ID
block_list_id = "block-list-id"
# Provide the index ID
index_id = "index-id"
                        
s3_bucket_name = "bucket-name"
s3_key = "query-suggestions/new_block_list.txt"
source_s3_path = {
'Bucket': s3_bucket_name,
'Key': s3_key
}
                        
try:
    kendra.update_query_suggestions_block_list(
        Id = block_list_id,
        IndexId = index_id,
        Description = block_list_description,
        Name = block_list_name,
        RoleArn = block_list_role_arn,
        SourceS3Path = source_s3_path
    )
                        
    print("Wait for Amazon Kendra to update the block list.")
                        
    while True:
        # Get block list description
        block_list_description = kendra.describe_query_suggestions_block_list(
            Id = block_list_id,
            IndexId = index_id
        )
        # If status is not UPDATING, then the update has finished 
        status = block_list_description["Status"]
        print("Updating block list. Status: " + status)
        if status != "UPDATING":
            break
        time.sleep(60)
                        
except ClientError as e:
print("%s" % e)
                        
print("Program ends.")
```

**Um eine Blockliste zu löschen**

```
import boto3
from botocore.exceptions import ClientError

kendra = boto3.client("kendra")

print("Delete a block list for query suggestions.")

# provide the block list ID
query_suggestions_block_list_id = "query-suggestions-block-list-id"
# Provide the index ID
index_id = "index-id"

try:
    kendra.delete_query_suggestions_block_list(
        Id = query_suggestions_block_list_id,
        IndexId = index_id
    )

except ClientError as e:
        print("%s" % e)

print("Program ends.")
```

------