A IA generativa teve um impacto imediato e enorme no desenvolvimento de software. Os desenvolvedores de software adotaram ferramentas generativas de IA que ajudam na codificação e estão trabalhando arduamente para construir eles próprios aplicativos generativos de IA. Os bancos de dados podem ajudar, especialmente bancos de dados rápidos, escaláveis e multimodelos, como o SingleStore.
Na conferência inaugural SingleStore Now, a SingleStore anunciou várias inovações focadas em IA com os desenvolvedores em mente. Isso inclui pesquisa híbrida SingleStore, serviço de computação, Notebooks e Elegance SDK. Dado o impacto que a IA e os LLMs estão tendo sobre os desenvolvedores, faz sentido mergulhar nas maneiras como essas inovações facilitam o desenvolvimento de aplicações de IA.
Pesquisa híbrida SingleStore
Se você trabalha com IA ou LLMs de alguma forma, sabe que os bancos de dados vetoriais se tornaram muito mais populares devido à sua capacidade de ajudá-lo a pesquisar as n representações mais próximas dos dados com os quais está trabalhando. Você pode então usar esses resultados da pesquisa para fornecer contexto adicional ao seu LLM para tornar as respostas mais precisas. O SingleStoreDB oferece suporte a funções vetoriais e pesquisa de vetores há vários anos, mas os aplicativos generativos de IA exigem que você pesquise entre milhões ou bilhões de incorporações de vetores em milissegundos, o que fica difícil usando k-Nearest Neighbor (kNN) em enormes conjuntos de dados.
A pesquisa híbrida adiciona a pesquisa de vizinho mais próximo aproximado (ANN) como uma opção adicional à pesquisa k-vizinho mais próximo (kNN) já existente. A principal diferença entre ANN e kNN está no nome: aproximado vs. mais próximo. Os testes iniciais mostram que a RNA é muito mais rápida para pesquisa vetorial, levando seus casos de uso de IA de rápido para tempo real. A pesquisa vetorial em tempo real garante que seus aplicativos respondam instantaneamente às consultas, mesmo quando os dados acabam de ser gravados no banco de dados.
A pesquisa híbrida usa uma série de técnicas para tornar suas funções de pesquisa mais eficientes, ou seja, arquivo invertido (FIV) com quantização de produto (PQ). Com a fertilização in vitro com PQ, você pode reduzir os tempos de construção do seu índice e, ao mesmo tempo, melhorar as taxas de compactação e o consumo de memória das suas pesquisas de vetores. Além da fertilização in vitro com PQ, a pesquisa híbrida adiciona a abordagem hierárquica de mundo pequeno navegável (HNSW) para permitir pesquisas de índice vetorial de alto desempenho usando alta dimensionalidade.
Com a pesquisa híbrida, você pode combinar todas essas novas abordagens de indexação, juntamente com a pesquisa de texto completo, para combinar semântica híbrida (semelhança vetorial) e pesquisa lexical/por palavra-chave em uma consulta.
Abaixo você pode ver um exemplo de uso de pesquisa híbrida. Para visualizar o código em seu contexto mais amplo, confira o caderno completo em SingleStore Spaces.
hyb_query = 'Articles about Aussie captures' hyb_embedding = model.encode(hyb_query) # Create the SQL statement. hyb_statement = sa.text(''' SELECT title, description, genre, DOT_PRODUCT(embedding, :embedding) AS semantic_score, MATCH(title, description) AGAINST (:query) AS keyword_score, (semantic_score + keyword_score) / 2 AS combined_score FROM news.news_articles ORDER BY combined_score DESC LIMIT 10 ''') # Execute the SQL statement. hyb_results = pd.DataFrame(conn.execute(hyb_statement, dict(embedding=hyb_embedding, query=hyb_query))) hyb_results
A consulta acima encontra as pontuações médias das pesquisas semânticas e de palavras-chave, combina-as e classifica os artigos de notícias por esta pontuação calculada. Ao remover a complexidade extra de realizar pesquisas lexicais/de palavras-chave e semânticas separadamente, a pesquisa híbrida simplifica o código do seu aplicativo.
A implementação dessas novas estratégias de indexação pelo SingleStore também nos permite incorporar rapidamente novas estratégias à medida que elas se tornam disponíveis, garantindo que seu aplicativo sempre terá o melhor desempenho quando apoiado pelo SingleStoreDB.
Serviço de computação SingleStore
Ao trabalhar com conjuntos de dados extremamente grandes, uma das melhores coisas que você pode fazer para manter o desempenho e o custo sob controle é realizar o trabalho de computação o mais próximo possível dos dados. O serviço de computação SingleStore permite implantar recursos de computação (CPUs e GPUs) para cargas de trabalho de IA, aprendizado de máquina ou ETL (extrair, transformar, carregar) junto com seus dados. Com o serviço de computação, os clientes do SingleStore podem usar esses novos recursos de computação para executar seus próprios modelos de aprendizado de máquina ou outro software de uma forma que lhes permita ter o contexto completo de seus dados corporativos, sem se preocupar com desempenho e custo de saída.
Combinando o serviço de computação com o serviço de trabalho (visualização privada), você pode agendar trabalhos SQL e Python de dentro dos Notebooks SingleStore para processar seus dados, treinar ou ajustar um modelo de aprendizado de máquina ou realizar outro trabalho complexo de transformação de dados. Se sua empresa atualiza frequentemente o ajuste fino de seu modelo de IA ou LLM, agora você pode fazer isso de maneira programada, usando plataformas de computação otimizadas que ficam próximas aos seus dados.
Cadernos SingleStore
Muitos engenheiros e cientistas de dados se sentem confortáveis trabalhando com Jupyter Notebooks, documentos hospedados, interativos e compartilháveis nos quais você pode escrever e executar blocos de código, intercalados com documentação, e visualizar dados. O que muitas vezes falta em um ambiente Jupyter são conexões nativas com seus bancos de dados e funcionalidades SQL.
Com o anúncio da disponibilidade geral dos Notebooks SingleStore, o SingleStore facilita a exploração, visualização e colaboração com seus dados e colegas em tempo real. Começar a usar os Notebooks SingleStore é extremamente simples:
- Comece sua avaliação gratuita do SingleStoreDB Cloud
- Conclua o processo de integração
- Implantar um espaço de trabalho
No painel de navegação à esquerda, você verá Notebooks. Clique no sinal de mais ao lado de Cadernos e preencha os detalhes. Se você pretende compartilhar este bloco de notas com seus colegas, escolha Compartilhado em Local. Defina o idioma padrão da célula para o idioma que você usará principalmente no notebook e clique em criar.
Observação: você também pode escolher um dos modelos ou selecionar na galeria, se quiser ver a aparência de um Notebook.
Para um exemplo prático, importei um notebook da galeria chamado “Introdução ao DataFrames no SingleStoreDB”. Este caderno orienta você no processo de uso pandas
DataFrames para aproveitar melhor a natureza distribuída do SingleStoreDB.
Quando você seleciona o espaço de trabalho e banco de dados na parte superior do notebook, ele atualizará o connection_url
variável para que você possa conectar-se e trabalhar com seus dados de forma rápida e fácil.
Neste notebook, usamos um comando simples, conn = ibis.singlestoredb.connect()
, para criar uma conexão com o banco de dados. Não precisa mais se preocupar em montar a string de conexão, removendo mais uma coisa do complexo processo de prototipagem de algo usando seus dados.
Em Notebooks, basta selecionar o botão Play próximo a cada célula para executar esse bloco de código. Na captura de tela acima, estamos importando pacotes ibis
e pandas
.
SingleStore Notebooks é uma plataforma extremamente poderosa que permitirá criar protótipos de aplicativos, realizar análises de dados e repetir rapidamente tarefas que você pode precisar executar usando seus dados armazenados dentro do SingleStoreDB. Essa prototipagem rápida é uma maneira extremamente eficaz de ver como você pode implementar IA, LLMs ou outros métodos de big data em seu negócio.
Não deixe de conferir o SingleStore Spaces para ver uma grande amostra de Notebooks que mostram tudo, desde correspondência de imagens até a construção de aplicativos LLM que usam geração aumentada de recuperação (RAG) em seus próprios dados.
Elegância de loja única
SingleStore Elegance é um pacote NPM projetado para ajudar os desenvolvedores do React a construir rapidamente aplicativos sobre o SingleStoreDB usando conexões SingleStore Kai ou MySQL com o banco de dados. Com o lançamento do Elegance, nunca houve melhor momento para desenvolver um aplicativo de IA apoiado pelo SingleStoreDB.
Elegance oferece um SDK poderoso que cobre vários recursos:
- Pesquisa vetorial
- Conclusões de bate-papo
- Incorporação e geração de arquivos de CSV ou PDF
- Consultas SQL e agregadas
- Suporte para conexão de banco de dados SQL e Kai
- Controladores Node.js e ganchos React prontos para uso
Começar com um aplicativo de demonstração é tão simples quanto seguir algumas etapas simples:
- Clone este repositório:
git clone https://github.com/singlestore-labs/elegance-sdk-app-books-chat.git
- Cadastre-se no SingleStoreDB.
- Crie um banco de dados: books_chat_mysql.
- Crie um arquivo .env atualizado com base no arquivo .env.sample no repositório.
- Instale as dependências:
npm i
- Inicie o aplicativo:
sh ./scripts/start.sh
- Abra seu navegador: http://localhost:3000.
Se preferir começar do zero e construir algo por conta própria, você pode começar com um simples npm install @singlestore/elegance-sdk
e siga as etapas de nossa página de pacotes em npmjs.com.
Em tempo real, agora mesmo
O cenário empresarial está a mudar rapidamente com a integração da IA e dos LLMs, fazendo com que quase todos avaliem se devem ou não implementar alguma forma de IA. Muitas empresas já estão montando POCs. Esses lançamentos mostram que o SingleStore está 100% focado na construção de análises em tempo real e banco de dados de IA que fornece as ferramentas necessárias para construir seus aplicativos de forma rápida e eficiente, colocando seus projetos de IA e LLM no mercado com mais rapidez.
Isso encerra as inovações de IA que surgiram do SingleStore Now. Caso não tenha conseguido comparecer pessoalmente ao evento, você poderá assistir a todas as sessões sob demanda.
Wes Kennedy é o principal evangelista da SingleStore, onde cria conteúdo, ambientes de demonstração e vídeos e se aprofunda nas maneiras pelas quais podemos atender os clientes onde eles estão. Ele tem uma formação diversificada em tecnologia, abrangendo tudo, desde engenheiro de virtualização, engenheiro de vendas até marketing técnico.
–
Generative AI Insights oferece um local para líderes de tecnologia – incluindo fornecedores e outros colaboradores externos – explorarem e discutirem os desafios e oportunidades da inteligência artificial generativa. A seleção é ampla, desde aprofundamentos tecnológicos até estudos de caso e opiniões de especialistas, mas também subjetiva, com base em nosso julgamento de quais tópicos e tratamentos servirão melhor ao público tecnicamente sofisticado do InfoWorld. A InfoWorld não aceita material de marketing para publicação e reserva-se o direito de editar todo o conteúdo contribuído. Contato [email protected].