IA generativa e modelos de linguagem grande (LLMs) estão gerando muita empolgação. Eles despertaram a imaginação do público em geral por causa de quão úteis podem ser quando solicitados para ajudar a escrever um texto. Mas para os desenvolvedores, eles são ainda mais revolucionários, porque simplificaram drasticamente a maneira como os aplicativos de IA podem ser criados. Vamos dar uma olhada no porquê.
Tradicionalmente, a maneira como você cria um aplicativo de IA tem sido um processo de quatro etapas:
O passo 3 é geralmente simples (embora
Não surpreendentemente, quando um domínio de problema requer uma equipe de PhDs para resolvê-lo com sucesso, será proibitivo em termos de custo e habilidade para todas as empresas, exceto algumas.
Uma razão pela qual todos estão tão empolgados com a IA generativa com LLMs é porque muitas vezes você pode resolver um problema "bem o suficiente" sem nenhuma das etapas acima. Com IA generativa, seu trabalho é:
É isso, realmente. Todo o resto são detalhes.
O detalhe mais importante: quais dados você fornece ao GPT na etapa 1? Você não pode jogar tudo nele; ele só pode lidar com tokens de 4k em GPT-3.5 ou até 32k em GPT-4, que é muito mais lento e mais caro.
A pesquisa vetorial permite que você pegue a consulta exata que você já criou para enviar ao GPT e jogue-a no seu banco de dados, onde você coloca tudo o que sabe sobre o cliente. A pesquisa vetorial responde literalmente "quais são os dados mais relevantes para esta consulta" sem nenhum esforço adicional de sua parte - é quase mágico.
(Acredito firmemente que a pesquisa de vetores deve ser um recurso do banco de dados principal do aplicativo e não um sistema separado, e é por isso que
Depois de ter seus dados mais relevantes e sua consulta, você os agrupa e faz uma chamada para OpenAI, obtém sua resposta e pronto. (Estou passando por cima de alguns desafios, como “
Portanto, um provedor de conteúdo de streaming usaria dados como: todas as sessões que Jonathan já passou com título, atores e categoria; quanto tempo ele assistiu; mais todos os metadados que podemos criar e, em seguida, desnormalize tudo em um único blob de texto e execute-o no codificador para obter um vetor.
E se fosse Netflix, seria super fácil, porque
Feito isso, você pode buscar as linhas relevantes do Cassandra com uma consulta como esta, where ? é uma variável de ligação para seu vetor de consulta que você obtém da mesma API de incorporação:
SELECT original_data_text FROM user_recommendation_data WHERE user_id = 'jonathan' ORDER BY embedding ANN OF ? LIMIT 20
Em seguida, você adiciona esses resultados ao prompt do LLM e … é isso. Agora você tem um sistema de recomendação que construiu em uma semana sem PhDs, apenas
Mas mesmo que você precise criar um modelo personalizado, os LLMs podem ajudar na geração de dados, rótulos e recursos para isso. Isso, porém, é assunto para outro artigo!
eu recomendo a leitura
Por Jonathan Ellis, DataStax