Motor de busca de produtos inteligente para comércio eletrónico

Serviço de Bot do Azure AI
Azure AI Search
Azure AI services
Azure SQL Database
Azure App Service

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

Arquitetura

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

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de Trabalho

Este cenário abrange uma solução de comércio eletrónico onde os clientes podem pesquisar através de um catálogo de produtos.

  1. Os clientes acedem à aplicação web de comércio eletrónico a partir 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 automaticamente seu índice de pesquisa atualizado 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ção nas redes sociais ou diretamente de assistentes digitais para pesquisar produtos e refinar incrementalmente sua consulta de pesquisa e resultados.
  6. Opcionalmente, os clientes podem usar o recurso de conjunto de habilidades para aplicar inteligência artificial para um processamento ainda mais inteligente.

Componentes

  • O Serviço de Aplicativo do Azure - Aplicativos Web hospeda aplicativos Web que permitem 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 dados relacionais, JSON, espacial e XML.
  • O AI Search é uma solução em nuvem que fornece uma experiência de pesquisa rica em conteúdo privado e heterogêneo em aplicativos web, móveis e corporativos.
  • O Serviço de Bot de IA do Azure fornece ferramentas para criar, testar, implantar e gerenciar bots inteligentes.
  • Os serviços de IA do Azure permitem-lhe utilizar algoritmos inteligentes para ver, ouvir, falar, compreender e interpretar as suas necessidades de utilizador através 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, mas seu armazenamento transacional também processa consultas (aumentando a necessidade de poder de processamento) e os recursos de pesquisa dentro do banco de dados são mais limitados.
  • Você pode hospedar o Apache Lucene de código aberto (no qual a Pesquisa de IA é criada) em Máquinas Virtuais do Azure, mas depois volta a gerenciar a infraestrutura como serviço (IaaS) e não se beneficia dos muitos recursos que a Pesquisa de IA fornece além do Lucene.
  • Você também pode considerar a implantação do Elasticsearch do Azure Marketplace, que é um produto de pesquisa alternativo e capaz de um fornecedor terceirizado, mas também neste caso você está executando uma carga de trabalho IaaS.

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

  • Azure Cosmos DB - Base de dados multimodelo distribuída globalmente pela Microsoft. O Azure 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 direta dos dados do Azure Cosmos DB.

Detalhes do cenário

A pesquisa é o principal mecanismo através do qual os clientes encontram e, em última análise, compram produtos, tornando essencial que os resultados da pesquisa sejam relevantes para a intenção da consulta de pesquisa e que a experiência de pesquisa de ponta a ponta corresponda à dos gigantes da pesquisa, fornecendo resultados quase instantâneos, análise linguística, correspondência de geolocalização, filtragem, facetagem, preenchimento automático e realce de cliques.

Imagine um aplicativo Web típico de comércio eletrônico 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 geralmente são tratadas dentro do banco de dados usando LIKE consultas ou recursos de pesquisa de texto completo. Ao usar o AI Search em vez disso, você libera seu banco de dados operacional do processamento de consultas e pode facilmente começar a aproveitar esses recursos difíceis de implementar que fornecem aos seus clientes a melhor experiência de pesquisa possível. Além disso, como a Pesquisa de IA é um componente de plataforma como serviço (PaaS), você não precisa se preocupar em gerenciar a infraestrutura ou se tornar um especialista em pesquisa.

Potenciais casos de utilização

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

Outros casos de uso relevantes incluem:

  • Encontrar anúncios imobiliários ou lojas perto da localização física do utilizador (para as instalações e setor imobiliário).
  • Pesquisar artigos em um site de notícias ou procurar resultados esportivos, com maior preferência por informações mais recentes (para as indústrias de esportes, mídia e entretenimento).
  • Pesquisa em grandes repositórios de organizações centradas em documentos, como formuladores de políticas e notários.

Em última análise, qualquer aplicação que tenha alguma forma de funcionalidade de pesquisa pode beneficiar de um serviço de pesquisa dedicado.

Considerações

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

Escalabilidade

O nível de preço do serviço 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 você pode provisionar. As partições permitem indexar mais documentos e obter taxas de transferência de gravação mais altas, enquanto as réplicas fornecem mais consultas por segundo (QPS) 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ço. Portanto, você deve considerar cuidadosamente a camada certa para sua carga de trabalho de destino. Se você precisar alterar a camada de qualquer maneira, precisará provisionar um novo serviço lado a lado e recarregar seus índices lá, momento em que você pode apontar seus aplicativos para o novo serviço.

Disponibilidade

O AI Search fornece um SLA (Service Level Agreement, contrato de nível de serviço) de 99,9% de disponibilidade para leituras (ou seja, consultas) se você tiver pelo menos duas réplicas e para atualizações (ou seja, atualização dos índices de pesquisa) se tiver pelo menos três réplicas. Portanto, você deve provisionar pelo menos duas réplicas se quiser que seus clientes possam pesquisar de forma confiável e três se as alterações reais no índice também devem 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 reconstruído. Semelhante à alteração da camada de serviço, isso significa criar um novo índice, preenchê-lo novamente com os dados e, em seguida, atualizar 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 ao Microsoft Entra ID. 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 administração, especialmente se um dispositivo de usuário final, como um script executado em um navegador da Web, executar a pesquisa.

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

Relevância da pesquisa

O sucesso do seu aplicativo de comércio eletrônico depende em grande parte da relevância dos resultados de pesquisa para seus clientes. Ajustar cuidadosamente seu serviço de pesquisa para fornecer resultados ideais com base na pesquisa do usuário ou confiar na análise de tráfego de pesquisa para entender os padrões de pesquisa do seu cliente permite que você tome decisões com base em dados.

As formas típicas de ajustar o seu serviço de pesquisa incluem:

  • Usar perfis de pontuação para influenciar a relevância dos resultados da pesquisa, por exemplo, com base em qual campo correspondeu à consulta, quão recentes são os dados e a distância geográfica para o usuário.
  • Usando analisadores de linguagem fornecidos pela Microsoft que usam uma pilha avançada de processamento de linguagem natural para interpretar melhor as consultas.
  • Usando analisadores personalizados para garantir que seus produtos sejam encontrados corretamente, especialmente se você quiser pesquisar informações não baseadas em idiomas, como a marca e o modelo de um produto.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Para explorar o custo de execução desse cenário, todos os serviços mencionados anteriormente são pré-configurados na calculadora de custos. Para ver como o preço mudaria para seu caso de uso específico, altere as variáveis apropriadas para corresponder ao seu uso esperado.

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

  • Pequeno: esse perfil usa um único Standard S1 aplicativo Web para hospedar o site, a camada gratuita do serviço Azure AI Bot, um único Basic serviço de pesquisa e um Standard S2 banco de dados SQL.
  • Médio: esse perfil dimensiona o aplicativo Web para duas instâncias da Standard S3 camada, atualiza o serviço de pesquisa para uma Standard S1 camada e usa um Standard S6 banco de dados SQL.
  • Grande: esse perfil usa quatro instâncias de um Premium P2V2 aplicativo Web, atualiza o serviço de Bot do Azure AI para a Standard S1 camada (com 1.000.000 mensagens em canais Premium) e usa duas unidades do serviço de pesquisa e um Premium P6 banco de Standard S3 dados SQL.

Implementar este cenário

Para implantar uma versão desse cenário, você pode seguir este tutorial passo a passo que fornece um aplicativo de exemplo .NET que executa um site de busca de emprego. Ele demonstra a maioria dos recursos de pesquisa de IA discutidos até agora.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

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

Próximos passos

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

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