Por dentro da tecnologia – Resolvendo a busca multilíngue e semântica

Internacional
Com Zhen Fang, Diretor Internacional
O chefe de Internacional, Zhen Fang, se junta ao CEO David Baszucki para discutir como estamos trabalhando para oferecer uma experiência verdadeiramente localizada a todos os usuários do Roblox ao redor do mundo. Da tradução de idiomas às opções de pagamento e ao conteúdo culturalmente relevante, eles explorarão como nossa plataforma está se adaptando à nossa comunidade cada vez mais internacional.
Qual é o maior desafio técnico que sua equipe está enfrentando?
Até cerca de um ano atrás, a pesquisa do Roblox usava um sistema lexical para corresponder os resultados às buscas dos usuários, o que significa que se concentrava exclusivamente na correspondência de texto. Mas os comportamentos de pesquisa estão mudando rapidamente e essa abordagem não é mais suficiente para fornecer conteúdo relevante aos usuários. Ao mesmo tempo, alguns usuários do Roblox podem usar grafias incorretas em suas consultas. Portanto, precisamos ser capazes de sugerir resultados que correspondam ao que eles estão procurando, o que significa entender a intenção deles.
Outro grande problema na pesquisa é a falta de dados de treinamento em vários idiomas. Antes da pesquisa semântica, nosso primeiro passo era utilizar traduções automáticas dentro do sistema Roblox. Indexávamos as traduções e, em seguida, fazíamos uma correspondência de texto. Mas isso não é suficiente para sempre mostrar aos usuários conteúdo relevante. Por isso, adotamos uma técnica de ML mais avançada chamada modelo aluno-professor: o professor aprende com nossa maior fonte de contexto para qualquer cenário específico.
O inglês é o idioma mais usado no Roblox, e é por isso que aprendemos o máximo possível de relações semânticas em inglês — o modelo professor — e, em seguida, transferimos esse conhecimento para o modelo aluno, estendendo-o a outros idiomas. Isso nos ajuda a resolver esse problema, mesmo que não tenhamos muitos dados em determinados idiomas. Isso levou a um aumento de 15% nas jogadas originadas de pesquisas no Japão.
Recentemente, temos trabalhado para oferecer melhor suporte a consultas fora do nosso catálogo, como “đua xe (corrida)”. Mas os usuários estão enviando com mais frequência consultas longas e de formato livre, como: “Ei, lembro de ter jogado um jogo em que havia um dragão e uma garota lutando contra ele. Você pode me ajudar a encontrar isso?” Isso apresenta mais desafios técnicos e continuamos aprimorando nossos sistemas nesse sentido.
Quais são algumas das abordagens inovadoras para incorporar mais contexto e pesquisa semântica?
Criamos um sistema de pesquisa híbrido que combina a pesquisa lexical com técnicas e modelos de ML, utilizando pesquisa semântica e a compreensão da intenção da consulta. Estamos evoluindo continuamente nossos sistemas para desenvolver a compreensão do contexto, lidar com consultas complexas e retornar conteúdo relevante.
A magia da pesquisa semântica está nas incorporações, que são representações ricas de uma variedade de sinais que obtemos de toda a Roblox. Por exemplo, estamos incorporando sinais como dados demográficos do usuário, a consulta do usuário, sua duração ou quais são seus aspectos únicos.
Também analisamos sinais de conteúdo, como experiências, itens de avatar e engajamento — com que frequência esse jogo foi jogado, quantos usuários ele teve e de quantos países? Há também aspectos como monetização e retenção, bem como metadados como o título, a descrição ou o criador de uma experiência. Passamos tudo isso por uma arquitetura baseada em BERT e em transformadores e usamos um Perceptron Multicamadas no final para gerar embeddings, que se tornam nossa fonte de verdade.
Outra inovação é nosso sistema interno de pesquisa por similaridade. Quando alguém faz uma consulta de pesquisa, recuperamos as incorporações intimamente relacionadas e as classificamos para garantir que sejam relevantes para o que o usuário está procurando. Em seguida, retornamos os resultados aos usuários.
Quais são algumas das principais coisas que você aprendeu ao realizar esse trabalho técnico?
Cada idioma apresenta seu próprio desafio. E, especialmente com a pesquisa, precisamos entender o que os usuários em diferentes partes do mundo estão procurando para que possamos mostrar a eles os resultados mais relevantes. Temos que entender diferentes elementos linguísticos. Por exemplo, transformadores pré-treinados têm sido essenciais para compreender os múltiplos dialetos do japonês.
Em segundo lugar, os padrões de consultas de pesquisa têm mudado bastante e precisamos evoluir continuamente nossa pilha de tecnologia para acompanhar essas mudanças. Ao mesmo tempo, precisamos informar nossos usuários sobre o que é possível em nossa plataforma, pois eles podem não perceber isso. Por exemplo, poderíamos dizer aos nossos usuários que a pesquisa suporta coisas como consultas livres (como jogos de corrida ou jogos populares de comida) e que ela entende o que as pessoas estão procurando e pode retornar resultados apropriados.
Com qual valor da Roblox sua equipe mais se identifica?
Ter uma visão de longo prazo é fundamental para nossa equipe e é uma das razões pelas quais adoro trabalhar na Roblox.
Um exemplo da minha equipe é nossa pilha de tecnologia, que consiste em nossos sistemas de busca baseados em ML e NLP — busca semântica, autocompletar e correção ortográfica usando grandes modelos pré-treinados.
Nós a construímos pensando na reutilização em diferentes tipos de pesquisas feitas por nossas dezenas de milhões de usuários ativos diários. Isso significa que podemos inserir um tipo diferente de dados (por exemplo, itens de avatar em vez de experiências), e ela deve funcionar com alterações mínimas.
Incorporamos a pesquisa semântica para experiências e a compartilhamos com outros setores, como o Marketplace, e eles conseguiram simplesmente adotar a arquitetura existente. Não é perfeitamente plug-and-play, mas com alguns ajustes, podemos adaptá-la a diferentes casos de uso.
O que mais te empolga em relação ao rumo que a Roblox e sua equipe estão tomando?
A pesquisa é a única interface onde os usuários expressam sua intenção explícita. E isso significa que é essencial entender o que eles querem e fornecer os resultados mais relevantes. Por isso, é realmente empolgante para mim trabalhar para entender essa intenção e educar nossos usuários sobre o que é possível, às vezes até antes que o usuário perceba.
Um usuário em qualquer país pode fazer uma pergunta e nós podemos oferecer exatamente o que ele quer e o que é mais relevante para ele. Isso gera confiança, o que, por sua vez, melhora a retenção. É empolgante para mim assumir o desafio de melhorar a pesquisa para construir essa confiança e ajudar a Roblox a atingir nossa meta de ter um bilhão de usuários.


