Ir para o conteúdo principal
Varejo e bens de consumo

Recomendações de produtos baseadas em senso comum utilizando Grandes Modelos de Linguagem

por Avinash Sooriyarchchi, Sam Sawyer, Colton Peltier e Bryan Smith

Uma imagem de glossário para IA generativa, apresentando vários termos e conceitos relacionados à tecnologia.

Confira nossos Aceleradores de Solução de LLM para Varejo para mais detalhes e para baixar os notebooks.

As recomendações de produtos são um recurso essencial da experiência moderna do cliente. Quando os usuários retornam a um site com o qual já interagiram antes, eles esperam ser recebidos por recomendações relacionadas a essas interações anteriores que os ajudem a retomar de onde pararam. Quando os usuários interagem com um item específico, esperam que alternativas semelhantes e relevantes sejam sugeridas para ajudá-los a encontrar o item ideal para atender às suas necessidades. E à medida que os itens são colocados no carrinho, os usuários esperam que produtos adicionais sejam sugeridos para complementar e aprimorar a experiência geral de compra. Quando feitas corretamente, essas recomendações de produtos não apenas facilitam a jornada de compra, mas também fazem com que o cliente se sinta reconhecido e compreendido pelo estabelecimento comercial.

Embora existam muitas abordagens diferentes para gerar recomendações de produtos, a maioria dos sistemas de recomendação em uso hoje depende de padrões históricos de interação entre produtos e clientes, aprendidos por meio da aplicação de técnicas sofisticadas em grandes coleções de dados específicos do varejista. Esses sistemas são surpreendentemente robustos em reforçar padrões aprendidos a partir de engajamentos bem-sucedidos de clientes, mas às vezes precisamos romper com esses padrões históricos para oferecer uma experiência diferente.

Considere o cenário em que um novo produto foi lançado e há apenas um número limitado de interações em nossos dados. Os recomendadores que exigem conhecimento aprendido a partir de inúmeros engajamentos de clientes podem falhar em sugerir o produto até que dados suficientes sejam acumulados para apoiar uma recomendação.

Ou considere outro cenário em que um único produto atrai uma atenção desproporcional. Nesse cenário, o recomendador corre o risco de cair na armadilha de sempre sugerir esse único item devido à sua enorme popularidade, em detrimento de outros produtos viáveis no portfólio.

Para evitar esses e outros desafios semelhantes, os varejistas podem incorporar uma tática que emprega padrões amplamente reconhecidos de associação de produtos com base no conhecimento comum. Assim como um vendedor prestativo, esse tipo de recomendador poderia examinar os itens nos quais o cliente parece ter interesse e sugerir itens adicionais que pareçam se alinhar com o caminho ou caminhos que essas combinações de produtos possam indicar.

Como usar um Large Language Model para fazer recomendações

Considere o cenário em que um cliente compra cachecóis, gorros e luvas de inverno. Claramente, esse cliente está se preparando para um passeio no frio. Digamos que o varejista tenha introduzido recentemente meias de lã grossas e botas de inverno em seu portfólio de produtos. Enquanto outros recomendadores podem ainda não perceber a associação desses itens com aqueles que o cliente está navegando devido à falta de interações nos dados históricos, o conhecimento comum vincula esses itens.

Esse tipo de conhecimento costuma ser capturado por grandes modelos de linguagem (LLMs), treinados em grandes volumes de texto geral. Nesse texto, luvas e botas podem ser diretamente vinculadas por pessoas que calçam ambos os itens antes de sair ao ar livre e associadas a conceitos como “frio”, “neve” e “inverno”, que fortalecem a relação e atraem outros itens relacionados.

Quando o LLM é questionado sobre quais outros itens poderiam estar associados a um cachecol, gorro e luvas, todo esse conhecimento, capturado em bilhões de parâmetros internos, é usado para sugerir uma lista priorizada de itens adicionais que provavelmente serão de interesse. (Figura 1)

Figura 1. Itens adicionais sugeridos pelo LLM Llama2-70b dado o interesse de um cliente em cachecóis, gorros e luvas de inverno
">

A beleza dessa abordagem é que não estamos limitados a pedir ao LLM que considere apenas os itens no carrinho de forma isolada. Podemos reconhecer que um cliente que compra esses itens de inverno no sul do Texas pode ter um determinado conjunto de preferências que difere de um cliente que compra esses mesmos itens no norte de Minnesota e incorporar essa informação geográfica ao prompt do LLM. Também podemos incorporar informações sobre campanhas promocionais ou eventos para incentivar o LLM a sugerir itens associados a esses esforços. Novamente, de forma muito semelhante a um atendente de loja, o LLM pode equilibrar uma variedade de entradas para chegar a um conjunto de recomendações significativo e relevante.

Como conectar as recomendações aos produtos disponíveis

Mas como relacionamos as sugestões gerais de produtos fornecidas pelo LLM de volta aos itens específicos em nosso catálogo de produtos? Os LLMs treinados em conjuntos de dados publicamente disponíveis normalmente não têm conhecimento dos itens específicos no portfólio de produtos de um varejista, e treinar um modelo desse tipo com informações específicas do varejista consome muito tempo e tem um custo proibitivo.

A solução para esse problema é relativamente simples. Usando um modelo de embedding leve, como um dos muitos modelos de código aberto disponíveis gratuitamente online, podemos traduzir as informações descritivas e outros metadados de cada um de nossos produtos no que é conhecido como embeddings. (Figura 2)

Figura 2. Um embedding altamente abreviado para a descrição do produto associada a um par de botas de inverno produzido usando o modelo all-MiniLM-L6-v2.

O conceito de embedding é um pouco técnico, mas, em poucas palavras, é uma representação numérica do texto e de como ele mapeia um conjunto de conceitos e relações reconhecidos encontrados em um determinado idioma. Dois itens conceitualmente semelhantes entre si, como as botas de inverno gerais e as específicas Acme Troopers que permitem ao usuário caminhar por ruas cobertas de neve ou por trilhas de montanha no conforto de cabedais de lona e couro impermeáveis para resistir ao pior do inverno, teriam representações numéricas muito semelhantes quando passados por um LLM apropriado. Se calcularmos a diferença matemática (distância) entre os embeddings associados a cada item, descobriremos que haveria relativamente pouca separação entre eles. Isso indicaria que esses itens estão intimamente relacionados.

Para colocar esse conceito em prática, tudo o que precisaríamos fazer é converter todas as nossas descrições de produtos e metadados específicos em embeddings e armazená-los em um índice pesquisável, o que costuma ser chamado de vector store. À medida que o LLM faz recomendações gerais de produtos, traduzimos cada uma delas em seus próprios embeddings e pesquisamos no vector store os itens mais relacionados, fornecendo itens específicos em nosso portfólio para apresentar ao nosso cliente. (Figura 3)

Figura 3. Fluxo de trabalho conceitual para fazer recomendações de produtos específicas usando um LLM
">

Como consolidar a solução com a Databricks

O padrão de recomendador apresentado aqui pode ser uma excelente adição ao conjunto de recomendadores usados pelas organizações em cenários onde o conhecimento geral de associações de produtos pode ser aproveitado para fazer sugestões úteis aos clientes. Para tirar a solução do papel, as organizações devem ter a capacidade de acessar um grande modelo de linguagem, bem como um modelo de embedding leve, e reunir a funcionalidade de ambos com suas próprias informações proprietárias. Feito isso, a organização precisa da capacidade de transformar todos esses ativos em uma solução que possa ser facilmente integrada e dimensionada em toda a gama de interfaces voltadas para o cliente onde essas recomendações são necessárias.

Por meio da Databricks Data Intelligence Platform, as organizações podem enfrentar cada um desses desafios por meio de um ambiente único, consistente e unificado que torna a implementação e a implantação fáceis e econômicas, mantendo a privacidade dos dados. Com o novo recurso de AI Search da Databricks, os desenvolvedores podem aproveitar um armazenamento de vetores integrado com fluxos de trabalho adjacentes que garantem que os embeddings armazenados nele estejam atualizados. Por meio das novas Foundation Model APIs, os desenvolvedores podem acessar uma ampla variedade de grandes modelos de linguagem proprietários e de código aberto com configuração mínima. E por meio dos recursos aprimorados de Model Serving, o fluxo de trabalho de recomendação de ponta a ponta pode ser empacotado para implantação atrás de um endpoint aberto e seguro que permite a integração na mais ampla variedade de aplicações modernas.

Mas não acredite apenas na nossa palavra. Veja você mesmo. Em nosso acelerador de solução mais recente, criamos um recomendador de produtos baseado em LLM que implementa o padrão mostrado aqui e demonstra como esses recursos podem ser combinados para ir do conceito à implantação operacionalizada. Todo o código está disponível gratuitamente, e convidamos você a explorar essa solução em seu ambiente como parte do nosso compromisso de ajudar as organizações a maximizar o potencial de seus dados.

Baixe os notebooks

(Esta publicação no blog foi traduzida utilizando ferramentas baseadas em inteligência artificial) Publicação original

Receba os posts mais recentes na sua caixa de entrada

Assine nosso blog e receba os posts mais recentes diretamente na sua caixa de entrada.