Ricevere suggerimenti di completamento automatico in Amazon CloudSearch - Amazon CloudSearch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Ricevere suggerimenti di completamento automatico in Amazon CloudSearch

Questa sezione descrive come configurare i suggeritori in modo da recuperare i suggerimenti. I suggerimenti sono possibili risposte a una query di ricerca incompleta: ti consentono di visualizzare le corrispondenze probabili prima che gli utenti finiscano di digitare le query. In Amazon CloudSearch, i suggerimenti si basano sul contenuto di un particolare campo di testo. Quando richiedi suggerimenti, Amazon CloudSearch trova tutti i documenti i cui valori nel campo suggester iniziano con la stringa di query specificata: l'inizio del campo deve corrispondere alla stringa di query per essere considerata una corrispondenza. I dati restituiti includono il valore del campo e l'ID del documento per ogni corrispondenza. Puoi configurare i suggeritori in modo da rilevare le corrispondenze esatte della stringa di query oppure le corrispondenze approssimative della stringa (corrispondenza parziale) per correggere gli errori tipografici e ortografici.

Per ulteriori informazioni sull'API di suggerimento, consultare Suggerimento nell'Search API.

Configurazione dei suggestori per Amazon CloudSearch

Quando si configura un suggeritore, è necessario specificare il nome del campo di testo per cercare possibili corrispondenze e un nome univoco per il suggeritore. I campi utilizzati per i suggerimenti devono essere inclusi nei risultati. Solo i primi 512 byte di dati nel campo di testo vengono utilizzati per generare suggerimenti.

I nomi dei suggeritori devono iniziare con una lettera e avere una lunghezza compresa tra 3 e 64 caratteri. I caratteri consentiti sono: a-z (minuscole), 0-9 e _ (carattere di sottolineatura). Il nome del suggeritore viene specificato nella stringa di query quando recuperi i suggerimenti, perciò è preferibile usare nomi brevi. Il nome score è riservato e non può essere utilizzato come nome di suggeritore.

I suggeritori supportano due opzioni:

  • FuzzyMatching—Puoi impostare il livello di sfocatura consentito quando suggerisci corrispondenze per una stringa su zero, basso o alto. "none" indica che la stringa specificata viene considerata come un prefisso esatto. "low" indica che i suggerimenti devono essere diversi dalla stringa specificata di non oltre un carattere. "high" indica che i suggerimenti possono essere diversi di un massimo di due caratteri. Il valore predefinito è none.

  • SortExpression—È possibile configurare questa espressione per calcolare un punteggio per ogni suggerimento per controllare come vengono ordinati. I punteggi vengono arrotondati all'intero più vicino, con un limite minimo di 0 e uno massimo di 2^31-1. Il punteggio di rilevanza di un documento non viene calcolato per i suggerimenti, pertanto le espressioni di ordinamento non possono fare riferimento al valore _score. Per ordinare i suggerimenti utilizzando un campo numerico o un'espressione esistente, è sufficiente che specifichi il nome del campo o dell'espressione. Se per il suggeritore nessuna espressione è configurata, i suggerimenti vengono elencati in ordine alfabetico. Tieni presente che, nelle richieste di ricerca o in altre espressioni, non è possibile fare riferimento a un'espressione definita in un suggeritore. Se desideri utilizzare un'espressione per altri scopi, aggiungila alla configurazione del tuo dominio e fai riferimento a essa con il suo nome a partire dal suggeritore. Per ulteriori informazioni sulle espressioni, consulta Configurazione di espressioni.

Se desideri ottenere suggerimenti da più campi di testo, devi definire un suggeritore per ogni campo e inviare richieste di suggerimento separate per recuperare le corrispondenze da ogni suggeritore. Puoi configurare un massimo di dieci suggeritori. I suggeritori consumano una notevole quantità di memoria e spazio su disco, in particolare se usi campi di origine con molto testo e imposti sul livello alto la corrispondenza parziale (fuzzy).

Suggerimento

Invece di configurare i suggeritori per l'uso di tutte le possibilità da tutti i documenti, prova a indicizzare le 1.000 o 10.000 query più popolari e configurare i suggeritori per utilizzarle. Puoi memorizzare le query in un CloudSearch indice Amazon separato o in un campo utilizzato solo per i suggerimenti.

Il modo più semplice per definire i suggeritori è tramite la pagina Suggesters nella console Amazon CloudSearch . Puoi anche definire i suggeritori utilizzando gli SDK AWS o AWS CLI.

Importante

Dopo aver aggiunto un suggeritore al tuo dominio di ricerca, devi eseguire l'indicizzazione prima di utilizzarlo per recuperare i suggerimenti. Mano a mano che aggiungi ed elimini documenti, devi ricreare periodicamente l'indice per aggiornare i suggerimenti. I suggerimenti non rifletteranno i documenti aggiunti o eliminati finché non chiami IndexDocuments.

Configurazione dei suggestori tramite la console Amazon CloudSearch

Puoi aggiungere, aggiornare ed eliminare facilmente i suggerimenti tramite la CloudSearch console Amazon.

Per aggiungere un suggeritore
  1. Apri la CloudSearch console Amazon all'indirizzo https://console.aws.amazon.com/cloudsearch/home.

  2. Nel riquadro di navigazione a sinistra, scegli Domains (Domini).

  3. Scegli il nome del dominio per aprirne la configurazione.

  4. Vai alla scheda Opzioni di ricerca avanzate.

  5. Nel riquadro Suggesters, scegli Aggiungi suggeritori.

  6. Inserisci un nome per il nuovo suggeritore.

  7. Per il campo Sorgente, specifica il campo di testo da utilizzare per i suggerimenti.

  8. Per includere suggerimenti che correggano errori ortografici o di battitura minori, imposta Fuzzy matching su Basso o Alto. Impostando l'opzione su bassa, i suggerimenti includono i termini diversi di un solo carattere dalla stringa di query dell'utente. Impostandola su alta, i suggerimenti includono i termini diversi fino a due caratteri.

  9. Per controllare l'ordinamento dei suggerimenti, inserisci un'espressione numerica nel campo Ordina espressione. L'espressione può essere semplicemente il nome del campo numerico che desideri utilizzare per ordinare i suggerimenti, il nome di un'espressione esistente o qualsiasi espressione valida. Per ulteriori informazioni sulle espressioni, consulta Configurazione di espressioni.

  10. Fai clic su Salva modifiche.

  11. Quando hai finito di configurare i suggerimenti per il tuo dominio di ricerca, devi reindicizzare il dominio prima di poterli utilizzare. Per eseguire l'indicizzazione, vai alla dashboard del dominio e scegli Azioni, Esegui indicizzazione.

Configurazione dei suggeritori con AWS CLI

Puoi aggiungere o aggiornare i suggeritori con il comando aws cloudsearch define-suggester. Per rimuovere un suggeritore, utilizza aws cloudsearch delete-suggester.

Per aggiungere o aggiornare un suggeritore
  • Esegui il comando aws cloudsearch define-suggester. Puoi specificare la configurazione del suggeritore in formato JSON con l'opzione --suggester. La configurazione del suggeritore deve essere racchiusa tra virgolette e per tutte le virgolette all'interno della configurazione deve essere utilizzato il carattere di escape barra rovesciata. Per il formato della configurazione del suggeritore, vedi define-suggester nel Command Reference. AWS CLI Ad esempio, il comando seguente configura un suggeritore denominato mysuggester per la restituzione di suggerimenti basati sul campo title .

    aws cloudsearch define-suggester --domain-name movies --suggester "{\"SuggesterName\": \"mysuggester\", \"DocumentSuggesterOptions\": {\"SourceField\":\"title\"}}" { "Suggester": { "Status": { "PendingDeletion": false, "State": "RequiresIndexDocuments", "CreationDate": "2014-06-26T17:26:43Z", "UpdateVersion": 27, "UpdateDate": "2014-06-26T17:26:43Z" }, "Options": { "DocumentSuggesterOptions": { "SourceField": "title" }, "SuggesterName": "mysuggester" } } }

    Puoi utilizzare l'opzione --fuzzy-matching per includere suggerimenti che correggano lievi errori ortografici o di battitura. I valori validi per la corrispondenza parziale sono none, low e high. (Il valore di default è none.) Impostando l'opzione su low, i suggerimenti includeranno i termini diversi di un solo carattere dalla stringa di query dell'utente. Impostandola su high, i suggerimenti includeranno i termini diversi fino a due caratteri. Ad esempio, il seguente comando configura mysuggester per includere suggerimenti che differiscono dalla stringa di query degli utenti di un solo carattere:

    aws cloudsearch --name mysuggester --source title --fuzzy-matching low

    Puoi utilizzare l'opzione --sort-expression per controllare il modo in cui vengono ordinati i suggerimenti restituiti. Per l'ordinamento, puoi utilizzare qualsiasi espressione valida (spesso si tratterà semplicemente del nome di un campo numerico o di un'espressione predefinita). Ad esempio, per ordinare i suggerimenti restituiti da mysuggester in base al valore nel campo year, specifica:

    aws cloudsearch define-suggester --name mysuggester --source title --fuzzy-matching low --sort-expression year
Per eliminare un suggeritore.
  • Esegui il comando aws cloudsearch delete-suggester e specifica l'opzione --name. Ad esempio, per eliminare mysuggester:

    aws cloudsearch delete-suggester --name mysuggester --delete

Configurazione dei suggeritori con gli SDK AWS

Gli SDK AWS (eccetto gli SDK Android e iOS) supportano tutte le CloudSearch azioni Amazon definite nell'API di CloudSearch configurazione di Amazon, tra cui. DefineSuggester Per ulteriori informazioni sull'installazione e sull'uso degli SDK AWS, consulta Centro Sviluppatori AWS.

Recupero dei suggerimenti in Amazon CloudSearch

Puoi recuperare i suggerimenti inviando le richieste alla risorsa suggest sull'endpoint di ricerca di un dominio tramite HTTP GET. Per esempio:

http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch. amazonaws.com/2013-01-01/suggest?q=oce&suggester=mysuggester

Nella richiesta, devi specificare la versione API e la stringa di query deve essere codificata in formato URL. Le dimensioni massime di una richiesta di suggerimento è 8190 byte, inclusi metodo HTTP, URI e versione del protocollo.

La risorsa suggest supporta quattro parametri:

  • q: stringa per la quale vuoi ottenere i suggerimenti.

  • suggester: nome del suggeritore che vuoi utilizzare.

  • size—Il numero di suggerimenti da recuperare. Per impostazione predefinita, vengono restituiti i primi dieci suggerimenti. (I suggerimenti vengono ordinati in base all'espressione di ordinamento definita nel suggeritore. Se non è definita alcuna espressione di ordinamento nel suggeritore, i suggerimenti vengono ordinati in ordine alfabetico.)

  • format—Il tipo di contenuto della risposta, o. json xml Per impostazione predefinita, i suggerimenti vengono restituiti in formato JSON.

I parametri q e suggester devono essere specificati. Non vengono restituiti suggerimenti se richiedi suggerimenti per una stringa vuota. I parametri size e format sono facoltativi.

L'esempio seguente ottiene i suggerimenti per la stringa oce in base ai contenuti del campo title.

http://search-imdb2-m2brrr7ex7z6sqhgwsjdmcuvd4.us-east-1.cloudsearch.amazonaws.com/2013-01-01/suggest?q=oce&suggester=title { "status": { "rid": "646f5s0oDAr8pVk=", "time-ms": 2 }, "suggest": { "query": "oce", "found": 3, "suggestions": [{ "suggestion": "Ocean's Eleven", "score": 0, "id": "tt0054135" }, { "suggestion": "Ocean's Thirteen", "score": 0, "id": "tt0496806" }, { "suggestion": "Ocean's Twelve", "score": 0, "id": "tt0349903" } ] } }