Se você é um usuário frequente do ChatGPT, sabe a tendência que ele tem de se perder no que é conhecido como alucinações. Uma grande coleção de palavras estatisticamente corretas que não têm base na realidade. Alguns meses atrás, uma solicitação sobre o uso do Apache Cassandra para modelos de linguagem grande (LLMs) e LangChain resultou em uma resposta curiosa. O ChatGPT relatou que Cassandra não era apenas uma boa escolha de ferramenta ao criar LLMs, mas a OpenAI usava Cassandra com uma biblioteca Python licenciada pelo MIT chamada CassIO.
Entramos na toca do coelho e, por meio de mais sugestões, o ChatGPT descreveu muitos detalhes sobre como o CassIO foi usado. Inclusive incluía alguns exemplos de código e um site. Pesquisas subsequentes não encontraram nenhuma evidência de CassIO fora das respostas do ChatGPT, mas a semente foi plantada. Se essa biblioteca não existisse, ela precisava existir, e começamos a trabalhar nela logo depois.
Melhor alucinação de todos os tempos.
O verdadeiro Cassio pode se levantar?
Qual foi essa grande ideia que o ChatGPT (e, por associação, o OpenAI) inspirou? Uma ótima biblioteca Python permite que os desenvolvedores façam mais com menos. DataStax e Anant combinaram forças no desenvolvimento
A força da CassIO está em seu agnosticismo em relação a estruturas de IA específicas. Ele não se preocupa com os detalhes específicos de implementação de interfaces como
Integração com LangChain
Um módulo de memória para LLMs que usa Cassandra para armazenamento, que pode lembrar as trocas recentes em uma interação de chat ou até mesmo manter um resumo de toda a conversa passada.
Um recurso para armazenar em cache as respostas do LLM no Cassandra, economizando assim latência e tokens sempre que possível. Injeção automática de dados do Cassandra em um prompt ou em uma conversa mais longa do LLM.
Suporte para "parcialização" de prompts, deixando alguma entrada não especificada para fornecimento futuro.
Injeção automática de dados de um
Celebração loja de recursos (potencialmenteapoiado por Cassandra ) em um prompt.
Esses componentes trabalham juntos para agilizar o processo de incorporação de dados em prompts e garantir uma interação suave entre o LLM e o banco de dados.
Integração com pesquisa vetorial
A inclusão de
- Um cache de respostas LLM que não dependem da frase exata de uma consulta.
- Um "índice semântico" que pode armazenar uma base de conhecimento e recuperar partes relevantes para construir a melhor resposta para uma determinada pergunta. Esta ferramenta pode ser adaptada para atender a muitas necessidades específicas e pode ser configurada para recuperar diversas informações para maximizar o fluxo de informações reais para a resposta.
- Um elemento de "memória semântica" para interações de bate-papo LLM, que pode recuperar trocas passadas relevantes, mesmo que tenham ocorrido em um passado distante.
A combinação de CassIO e LangChain continua a expandir e refinar esses recursos ao longo do tempo para atender às necessidades em constante evolução do gerenciamento de LLM. O estado da arte atual está no encadeamento de prompts para obter respostas mais precisas dos LLMs. Em um artigo recente descrevendo uma técnica chamada
Próximo prompt: O que está por vir para CassiIO
Como uma ferramenta em evolução, o CassIO está crescendo rapidamente, com novos desenvolvimentos e atualizações adicionados com frequência. No momento da escrita, CassIO suporta LangChain, com LlamaIndex em breve. O objetivo de longo prazo deste projeto é oferecer suporte à memória de alta escala para agentes autônomos de IA, como o
Um próximo campo de treinamento, “
Quem sabe como a história julgará este momento? Foi um vazamento de informações internas da OpenAI? Ou, pensando um pouco mais sombriamente, este é o primeiro passo da IA para fazer os humanos cumprirem suas ordens? De qualquer forma, os desenvolvedores agora têm uma biblioteca simples de usar para acessar a escala quase infinita do Cassandra ao entrar no mundo da IA generativa.
O ChatGPT nos deu um presente, então o que você vai construir com isso? Vou mergulhar na pesquisa de vetores em um próximo webinar (registre-se
Por Patrick McFadin, DataStax
Patrick McFadin é coautor do livro da O'Reilly 'Managing Cloud Native Data on Kubernetes'. Ele atualmente trabalha na DataStax em relações com desenvolvedores e como colaborador do projeto Apache Cassandra. Patrick trabalhou como evangelista-chefe para Apache Cassandra (ele também é um committer Cassandra recém-formado!) e como consultor para DataStax, onde se divertiu construindo algumas das maiores implantações em produção.