Motore di ricerca di prodotti intelligente per l'e-commerce

Servizio di Azure AI Bot
Ricerca di intelligenza artificiale di Azure
Servizi di intelligenza artificiale di Azure
database SQL di Azure
Servizio app di Azure

Questo scenario di esempio illustra in che modo l'uso di un servizio di ricerca dedicato può aumentare drasticamente la pertinenza dei risultati della ricerca per i clienti dei siti di e-commerce.

Architettura

Diagramma che mostra una panoramica dell'architettura dei componenti di Azure coinvolti in un motore di ricerca intelligente dei prodotti per l'e-commerce.

Scaricare un file di Visio di questa architettura.

Workflow

Questo scenario illustra una soluzione di e-commerce in cui i clienti possono eseguire ricerche all'interno di un catalogo prodotti.

  1. I clienti passano all'applicazione Web di e-commerce da qualsiasi dispositivo.
  2. Il catalogo prodotti viene gestito in un database SQL di Azure per l'elaborazione transazionale.
  3. Ricerca di intelligenza artificiale di Azure usa un indicizzatore di ricerca per mantenere aggiornato automaticamente l'indice di ricerca tramite il rilevamento delle modifiche integrato.
  4. Le query di ricerca del cliente vengono scaricate nel servizio di ricerca di intelligenza artificiale, che elabora la query e restituisce i risultati più rilevanti.
  5. Come alternativa all'esperienza di ricerca basata sul Web, i clienti possono anche usare un bot di conversazione nei social media o direttamente un assistente digitale per cercare prodotti e perfezionare le query di ricerca e i risultati in modo incrementale.
  6. Facoltativamente, i clienti possono usare la funzionalità set di competenze per applicare l'intelligenza artificiale per un'elaborazione ancora più intelligente.

Componenti

  • app Azure Servizio: App Web ospita applicazioni Web che consentono la scalabilità automatica e la disponibilità elevata senza dover gestire l'infrastruttura.
  • database SQL di Azure è un servizio gestito di database relazionale per utilizzo generico in Microsoft Azure che supporta strutture come dati relazionali, JSON, spaziali e XML.
  • Ricerca di intelligenza artificiale è una soluzione cloud che offre un'esperienza di ricerca avanzata su contenuti privati, eterogenei nelle applicazioni Web, per dispositivi mobili e aziendali.
  • Azure AI servizio Bot offre strumenti per creare, testare, distribuire e gestire bot intelligenti.
  • I servizi di intelligenza artificiale di Azure consentono di usare algoritmi intelligenti per visualizzare, ascoltare, parlare, comprendere e interpretare le esigenze degli utenti tramite metodi naturali di comunicazione.

Alternative

  • È possibile usare funzionalità di ricerca nel database, ad esempio tramite la ricerca full-text di SQL Server, ma in questo caso l'archivio transazionale elabora anche le query (aumentando la necessità di potenza di elaborazione) e le funzionalità di ricerca all'interno del database sono più limitate.
  • È possibile ospitare Apache Lucene open source (in cui la ricerca di intelligenza artificiale è compilata) in Azure Macchine virtuali, ma si torna alla gestione dell'infrastruttura distribuita come servizio (IaaS) e non traggono vantaggio dalle numerose funzionalità offerte da Ricerca di intelligenza artificiale su Lucene.
  • È anche possibile prendere in considerazione la distribuzione di Elasticsearch da Azure Marketplace, che è un prodotto di ricerca alternativo e in grado di eseguire un prodotto di ricerca da un fornitore di terze parti, ma anche in questo caso si esegue un carico di lavoro IaaS.

Altre opzioni per il livello dati includono:

  • Azure Cosmos DB : database multimodello distribuito a livello globale di Microsoft. Azure Cosmos DB offre una piattaforma per eseguire altri modelli di dati, ad esempio MongoDB, Cassandra, dati Graph o una semplice archiviazione tabelle. Ricerca di intelligenza artificiale supporta anche l'indicizzazione diretta dei dati da Azure Cosmos DB.

Dettagli dello scenario

La ricerca è il meccanismo principale attraverso il quale i clienti trovano e acquistano prodotti, rendendo essenziale che i risultati della ricerca siano rilevanti per la finalità della query di ricerca e che l'esperienza di ricerca end-to-end corrisponda a quella dei giganti della ricerca fornendo risultati quasi istantanei, analisi linguistica, corrispondenza della posizione geografica, filtro, facet, completamento automatico e evidenziazione dei risultati.

Si supponga di un'applicazione Web di e-commerce tipica con i dati del prodotto archiviati in un database relazionale, ad esempio SQL Server o database SQL. Le query di ricerca vengono spesso gestite all'interno del database usando LIKE query o funzionalità di ricerca full-text. Usando invece ricerca di intelligenza artificiale, si libera il database operativo dall'elaborazione delle query ed è possibile iniziare facilmente a sfruttare le funzionalità difficili da implementare che offrono ai clienti la migliore esperienza di ricerca possibile. Inoltre, poiché la ricerca di intelligenza artificiale è un componente PaaS (Platform as a Service), non è necessario preoccuparsi di gestire l'infrastruttura o diventare un esperto di ricerca.

Potenziali casi d'uso

Questa soluzione è ottimizzata per il settore della vendita al dettaglio.

Gli altri casi d'uso pertinenti includono:

  • Ricerca di presentazioni immobiliari o negozi nelle vicinanze della posizione fisica dell'utente (per le strutture e il settore immobiliare).
  • Ricerca di articoli in un sito di notizie o ricerca di risultati sportivi, con una preferenza più elevata per informazioni più recenti (per i settori sportivi, multimediali e di intrattenimento).
  • Ricerca in archivi di grandi dimensioni per organizzazioni incentrate sui documenti, ad esempio responsabili politici e notai.

In ultima analisi, qualsiasi applicazione con funzionalità di ricerca può trarre vantaggio da un servizio di ricerca dedicato.

Considerazioni

Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di set di principi guida che possono essere usati per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Framework ben progettato di Microsoft Azure.

Scalabilità

Il piano tariffario del servizio di ricerca di intelligenza artificiale viene usato principalmente per la pianificazione della capacità perché definisce lo spazio di archiviazione massimo che si ottiene e il numero di partizioni e repliche di cui è possibile effettuare il provisioning. Le partizioni consentono di indicizzare più documenti e ottenere velocità effettiva di scrittura più elevate, mentre le repliche offrono più query al secondo (QPS) e disponibilità elevata.

È possibile modificare dinamicamente il numero di partizioni e repliche, ma non è possibile modificare il piano tariffario. È quindi consigliabile considerare attentamente il livello corretto per il carico di lavoro di destinazione. Se è comunque necessario modificare il livello, è necessario effettuare il provisioning di un nuovo servizio side-by-side e ricaricare gli indici, a questo punto è possibile puntare le applicazioni al nuovo servizio.

Disponibilità

Ricerca di intelligenza artificiale offre un contratto di servizio di disponibilità del 99,9% per le letture (ovvero l'esecuzione di query) se si dispone di almeno due repliche e per gli aggiornamenti (ovvero l'aggiornamento degli indici di ricerca) se sono presenti almeno tre repliche. Pertanto, è consigliabile effettuare il provisioning di almeno due repliche se si vuole che i clienti possano eseguire ricerche in modo affidabile e tre se le modifiche effettive all'indice devono essere considerate anche operazioni a disponibilità elevata.

Se è necessario apportare modifiche di rilievo all'indice senza tempi di inattività (ad esempio, modifica dei tipi di dati, eliminazione o ridenominazione dei campi), l'indice dovrà essere ricompilato. Come per la modifica del livello di servizio, questo significa creare un nuovo indice, ripopolarlo con i dati e quindi aggiornare le applicazioni esistenti in modo che puntino al nuovo indice.

Sicurezza

Ricerca di intelligenza artificiale è conforme a molti standard di sicurezza e privacy dei dati, quindi è possibile usarlo nella maggior parte dei settori.

Per proteggere l'accesso al servizio, è possibile usare il controllo degli accessi in base al ruolo di Azure o connettersi con le chiavi API.

È consigliabile usare il controllo degli accessi in base al ruolo di Azure perché usa i ruoli di Azure, che si integrano con Microsoft Entra ID. Quando si usano i ruoli di Azure, è anche possibile usare metodi di autenticazione senza password come le identità gestite per le risorse di Azure.

Le chiavi API includono chiavi di amministratore, che forniscono l'accesso completo per tutte le operazioni sul contenuto e chiavi di query, che forniscono l'accesso in sola lettura alla raccolta di documenti di un indice di ricerca. È consigliabile configurare applicazioni che non devono aggiornare l'indice per usare una chiave di query e non una chiave di amministrazione, soprattutto se un dispositivo dell'utente finale, ad esempio uno script in esecuzione in un Web browser, esegue la ricerca.

È anche possibile proteggere l'accesso ai servizio di ricerca di intelligenza artificiale a livello di rete esponendolo tramite un endpoint privato.

Pertinenza della ricerca

L'efficacia dell'applicazione di e-commerce dipende in larga misura dalla pertinenza dei risultati della ricerca forniti ai clienti. Ottimizzare attentamente il servizio di ricerca per offrire risultati ottimali in base alla ricerca degli utenti o affidarsi all'analisi del traffico di ricerca per comprendere i modelli di ricerca del cliente consente di prendere decisioni in base ai dati.

Ecco alcuni modi tipici per ottimizzare il servizio di ricerca:

  • Uso dei profili di punteggio per influenzare la pertinenza dei risultati della ricerca, ad esempio, in base al campo corrispondente alla query, alla frequenza dei dati e alla distanza geografica dell'utente.
  • Uso di analizzatori del linguaggio forniti da Microsoft che usano uno stack di elaborazione del linguaggio naturale avanzato per interpretare meglio le query.
  • Uso di analizzatori personalizzati per assicurarsi che i prodotti vengano trovati correttamente, soprattutto se si vuole eseguire la ricerca su informazioni non basate sul linguaggio, come marca e modello di un prodotto.

Ottimizzazione dei costi

L'ottimizzazione dei costi riguarda l'analisi dei modi per ridurre le spese non necessarie e migliorare l'efficienza operativa. Per altre informazioni, vedere Panoramica del pilastro di ottimizzazione dei costi.

Per esplorare il costo di esecuzione di questo scenario, tutti i servizi indicati in precedenza sono preconfigurati nel calcolatore dei costi. Per vedere come cambiano i prezzi per un caso d'uso specifico, modificare le variabili appropriate in modo che corrispondano all'utilizzo previsto.

Considerare questi profili di costo di esempio in base alla quantità di traffico che si prevede di gestire:

  • Small: questo profilo usa una singola Standard S1 app Web per ospitare il sito Web, il livello gratuito del servizio Azure AI Bot, un singolo Basic servizio di ricerca e un Standard S2 database SQL.
  • Medio: questo profilo aumenta le prestazioni dell'app Web a due istanze del Standard S3 livello, aggiorna il servizio di ricerca a un Standard S1 livello e usa un Standard S6 database SQL.
  • Grande: questo profilo usa quattro istanze di un'app Premium P2V2 Web, aggiorna il servizio Azure AI Bot al Standard S1 livello (con 1.000.000 messaggi nei canali Premium) e usa due unità del Standard S3 servizio di ricerca e un Premium P6 database SQL.

Distribuire lo scenario

Per distribuire una versione di questo scenario, è possibile seguire questa esercitazione dettagliata che fornisce un'applicazione di esempio .NET che esegue un sito Web di ricerca di processi. Illustra la maggior parte delle funzionalità di ricerca di intelligenza artificiale descritte finora.

Collaboratori

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai seguenti contributori.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi

Per altre informazioni su Ricerca di intelligenza artificiale, visitare il Centro documentazione o consultare gli esempi.

Per altre informazioni sugli altri componenti di Azure, vedere queste risorse: