Mecanismo de pesquisa de produto inteligente para comércio eletrônico

Serviço de Bot da IA do Azure
Azure AI Search
Serviços de IA do Azure
Banco de Dados SQL do Azure
Serviço de aplicativo do Azure

Esse cenário de exemplo mostra como o uso de um serviço de pesquisa dedicado pode aumentar drasticamente a relevância dos resultados da pesquisa para seus clientes de comércio eletrônico.

Arquitetura

Diagrama que mostra uma visão geral da arquitetura dos componentes do Azure envolvidos em um mecanismo inteligente de pesquisa de produtos para comércio eletrônico.

Baixe um Arquivo Visio dessa arquitetura.

Workflow

Este cenário aborda uma solução de comércio eletrônico em que os clientes podem pesquisar em um catálogo de produtos.

  1. Os clientes navegam até o aplicativo Web de comércio eletrônico por meio de qualquer dispositivo.
  2. O catálogo de produtos é mantido em um Banco de Dados SQL do Azure para processamento transacional.
  3. O Azure AI Search usa um indexador de pesquisa para manter seu índice de pesquisa atualizado automaticamente por meio do controle de alterações integrado.
  4. As consultas de pesquisa do cliente são descarregadas para o serviço AI Search, que processa a consulta e retorna os resultados mais relevantes.
  5. Como alternativa a uma experiência de pesquisa baseada na Web, os clientes também podem usar um bot de conversa em mídias sociais ou diretamente de assistentes digitais para pesquisar produtos e refinar a consulta de pesquisa e os resultados de forma incremental.
  6. Opcionalmente, os clientes podem usar o recurso de conjunto de habilidades para aplicar inteligência artificial e tornar o processamento ainda mais inteligente.

Componentes

  • Os Serviço de Aplicativos do Azure - Aplicativos Web hospedam os aplicativos Web, permitindo o dimensionamento automático e alta disponibilidade sem a necessidade de gerenciar a infraestrutura.
  • O Banco de Dados SQL do Azure é um serviço gerenciado de banco de dados relacional de uso geral no Microsoft Azure que dá suporte a estruturas como XML, JSON, espacial e dados relacionais.
  • O AI Search é uma solução de nuvem que oferece uma experiência de pesquisa avançada para conteúdo privado e heterogêneo em aplicativos Web, móveis e empresariais.
  • O Serviço de Bot de IA do Azure fornece ferramentas para compilar, testar, implantar e gerenciar bots inteligentes.
  • Os Serviços de IA do Azure permitem usar algoritmos inteligentes para ver, ouvir, falar, entender e interpretar as necessidades do usuário por meio de métodos naturais de comunicação.

Alternativas

  • Você pode usar recursos de pesquisa no banco de dados, por exemplo, por meio da pesquisa de texto completo do SQL Server. Porém, nesse caso, o repositório transacional também processa consultas (aumentando a necessidade de capacidade de processamento) e os recursos de pesquisa no banco de dados são mais limitados.
  • Você pode hospedar o software livre Apache Lucene (no qual o Azure AI Search se baseia) em Máquinas Virtuais do Azure, mas então você volta a gerenciar a infraestrutura como serviço (IaaS) e não se beneficia dos muitos recursos que o AI Search oferece além do Lucene.
  • Você também pode considerar a implantação de Elasticsearch do Azure Marketplace, que é um produto de pesquisa alternativo e eficaz de um fornecedor de terceiros, mas, também nesse caso, executa uma carga de trabalho de IaaS.

Outras opções para a camada de dados incluem:

  • Azure Cosmos DB: banco de dados multimodelo globalmente distribuído da Microsoft. O Cosmos DB fornece uma plataforma para executar outros modelos de dados, como MongoDB, Cassandra, dados do Graph ou armazenamento de tabela simples. O AI Search também dá suporte à indexação de dados diretamente do Azure Cosmos DB.

Detalhes do cenário

A pesquisa é o mecanismo principal por meio do qual os clientes encontram e, em última análise, compram produtos. Portanto, é essencial que os resultados da pesquisa sejam relevantes para a intenção de consulta de pesquisa e que a experiência de pesquisa de ponta a ponta corresponda à dos gigantes de pesquisa, fornecendo resultados quase instantâneos, análise linguística, correspondência de localização geográfica, filtragem, facetas, preenchimento automático, realce de ocorrências, etc.

Imagine um aplicativo Web de comércio eletrônico típico, com dados de produtos armazenados em um banco de dados relacional como o SQL Server ou o Banco de Dados SQL. As consultas de pesquisa normalmente são tratadas no banco de dados usando consultas do LIKE ou recursos de Pesquisa de Texto Completo. Usando o AI Search em vez disso, você libera seu banco de dados operacional do processamento de consultas e pode facilmente começar a tirar proveito de recursos de implementação difícil que fornecem aos clientes a melhor experiência de pesquisa possível. Além disso, como o AI Search é um componente de PaaS (plataforma como serviço), você não precisa se preocupar em gerenciar a infraestrutura ou se tornar um especialista em pesquisa.

Possíveis casos de uso

Esta solução é otimizada para o setor de varejo.

Outros casos de uso relevantes incluem:

  • Como localizar listagens de imóveis ou lojas próximas à localização física do usuário (para as instalações e o setor imobiliário).
  • Como pesquisar artigos em um site de notícias ou procurar resultados esportivos, com maior preferência por informações mais recentes (para os setores de esportes, mídia e entretenimento).
  • Como pesquisar em grandes repositórios de organizações centradas em documentos como criadores de políticas e notários.

Em última análise, qualquer aplicativo que tenha alguma funcionalidade de pesquisa poderá se beneficiar de um serviço de pesquisa dedicado.

Considerações

Estas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Escalabilidade

A camada de preço do serviço do Azure AI Search é usado principalmente para planejamento de capacidade, pois define o armazenamento máximo que você obtém e quantas partições e réplicas pode provisionar. Partições permitem que você indexe mais documentos e obtenha taxas de transferência de gravação mais altas, enquanto réplicas fornecem mais QPS (Consultas por Segundo) e Alta Disponibilidade.

Você pode alterar dinamicamente o número de partições e réplicas, mas não é possível alterar o nível de preços. Portanto, você deve considerar cuidadosamente a camada certa para sua carga de trabalho de destino. Se precisar alterar a camada mesmo assim, você precisará provisionar um novo serviço lado a lado e recarregar os índices, podendo então apontar seus aplicativos no novo serviço.

Disponibilidade

O Azure AI Search fornece um Acordo de Nível de Serviço (SLA) de 99,9% de disponibilidade para leituras (ou seja, consultas) se você tem pelo menos duas réplicas e para atualizações(ou seja, atualização dos índices de pesquisa) se você tem pelo menos três réplicas. Portanto, você deverá provisionar pelo menos duas réplicas se quiser que seus clientes possam pesquisar de maneira confiável e três se alterações reais no índice também precisarem ser consideradas operações de alta disponibilidade.

Se houver necessidade de fazer alterações significativas no índice sem tempo de inatividade (por exemplo, alterar tipos de dados, excluir ou renomear campos), o índice precisará ser recriado. Assim como ocorre com a alteração da camada de serviço, isso significa criar um novo índice, populá-lo novamente com os dados e atualizando seus aplicativos para apontar para o novo índice.

Segurança

O AI Search é compatível com muitos padrões de segurança e privacidade de dados, para que você possa usá-lo na maioria dos setores.

Para proteger o acesso ao serviço, você pode usar o RBAC (controle de acesso baseado em função) do Azure ou conectar-se com chaves de API.

Recomendamos que você use o RBAC do Azure porque ele usa funções do Azure, que se integram à ID do Microsoft Entra. Ao usar funções do Azure, você também pode usar métodos de autenticação sem senha, como identidades gerenciadas para recursos do Azure.

As chaves de API incluem chaves de administrador, que fornecem acesso total para todas as operações de conteúdo, e chaves de consulta, que fornecem acesso somente leitura à coleção de documentos de um índice de pesquisa. Você deve configurar aplicativos que não precisam atualizar o índice para usar uma chave de consulta e não uma chave de administrador, especialmente se um dispositivo do usuário final, como um script em execução em um navegador da Web, realizar a pesquisa.

Você também pode proteger o acesso ao serviço do AI Search no nível da rede, expondo-o por meio de um ponto de extremidade privado.

Relevância de pesquisa

O êxito de seu aplicativo de comércio eletrônico depende em grande parte da relevância dos resultados da pesquisa para seus clientes. Ajuste cuidadosamente o serviço de pesquisa para fornecer resultados ideais com base na pesquisa de usuário ou recorra a análise de tráfego de pesquisa, para entender os padrões de pesquisa do cliente e tomar decisões com base nos dados.

Maneiras comuns de ajustar o serviço de pesquisa:

  • Usar perfis de pontuação para influenciar a relevância dos resultados da pesquisa, por exemplo, com base em qual campo corresponde à consulta, até que ponto os dados são recentes, a distância geográfica até o usuário etc.
  • Usar analisadores de idioma fornecidos pela Microsoft, que usam uma pilha de NLP (Processamento de Linguagem Natural) avançada para interpretar melhor as consultas.
  • Usar analisadores personalizados garantir que seus produtos sejam encontrados corretamente, sobretudo se você deseja pesquisar informações não baseadas em linguagem, como marca e modelo de um produto.

Otimização de custo

A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Para explorar o custo de executar esse cenário, todos os serviços mencionados anteriormente são pré-configurados na calculadora de custos. Para ver como o preço será alterado no seu caso de uso específico, altere as variáveis apropriadas para que correspondam ao uso esperado.

Considere estes exemplos de perfis de custo com base na quantidade de tráfego que você espera processar:

  • Pequeno: neste perfil, usamos um único aplicativo Web Standard S1 para hospedar o site, a camada gratuita do Serviço de Bot de IA do Azure, um único serviço de pesquisa Basic e um Banco de Dados SQLStandard S2.
  • Médio: dimensionamos o aplicativo Web para duas instâncias da camada Standard S3, atualizando o Serviço de Pesquisa para uma camada Standard S1 e usando um Banco de Dados SQLStandard S6.
  • Grande: no maior perfil, usamos quatro instâncias de um aplicativo Web Premium P2V2, atualizamos o serviço de Bot do Azure para a camada Standard S1 (com 1 milhão de mensagens nos canais Premium), usamos duas unidades do serviço de pesquisa Standard S3 e um Banco de Dados SQLPremium P6.

Implantar este cenário

Para implantar uma versão desse cenário, é possível seguir este tutorial passo a passo que fornece um aplicativo de exemplo .NET que executa um site de pesquisa de trabalho. Ele demonstra a maioria dos recursos do AI Search discutidos até agora.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas

Para saber mais sobre o AI Search, visite o centro de documentação ou confira os exemplos.

Para saber mais sobre outros componentes do Azure, consulte estes recursos: