IA generativa (GenAI)

CodeLab: Criando um aplicativo RAG com o Couchbase Capella Model Services e o LangChain

Neste tutorial, você aprenderá a criar um geração aumentada por recuperação (RAG) aplicativo usando Serviços de IA do Couchbase para armazenar dados, gerar incorporação usando modelos de incorporação e inferência LLM. Criaremos um sistema RAG que:

  1. Ingere artigos de notícias do Conjunto de dados da BBC News.
  2. Gera embeddings de vetores usando o NVIDIA NeMo Retriever modelo via Capella Model Services.
  3. Armazena e indexa esses vetores em Couchbase Capella.
  4. Realiza pesquisa semântica para recuperar o contexto relevante.
  5. Gera respostas usando o Mistral-7B LLM hospedado na Capella.

Você pode encontrar o código-fonte do notebook para este CodeLab aqui.

Por que os serviços de IA do Couchbase?

Os serviços de IA do Couchbase fornecem:

  • API de inferência e incorporação de LLM: Acesse LLMs populares (ou seja, Llama 3) e modelos de incorporação diretamente por meio do Capella, sem gerenciar chaves ou infraestrutura de API externas.
  • Plataforma unificada: Aproveite o banco de dados, a vetorização, a pesquisa e o modelo em um só lugar.
  • Pesquisa vetorial integrada: Realize pesquisas semânticas diretamente em seus dados JSON com latência de milissegundos.

Configuração dos serviços de IA do Couchbase

Criar um cluster no Capella

  1. Faça login em Couchbase Capella.
  2. Crie um novo cluster ou use um já existente. Observe que o cluster precisa executar a versão mais recente do Couchbase Server 8.0, que inclui os serviços Data, Query, Index e Eventing.
  3. Crie um balde.
  4. Crie um escopo e uma coleção para os dados.

Habilitar serviços de IA

  1. Navegue até a seção AI Services (Serviços de IA) da Capella na interface do usuário.
  2. Implante os modelos de embeddings e LLM.
    • Você precisa iniciar uma incorporação e um LLM para essa demonstração na mesma região que o cluster do Capella onde os dados serão armazenados.
    • Para que essa demonstração funcione bem, você precisa implantar um LLM que tenha recursos de chamada de ferramentas, como mistralai/mistral-7b-instruct-v0.3. Para embeddings, você pode escolher um modelo como o nvidia/llama-3.2-nv-embedqa-1b-v2.
  3. Anote o URL do endpoint e gere chaves de API.

Para obter mais detalhes sobre o lançamento de modelos de IA, você pode ler o documentação oficial.

Pré-requisitos

Antes de começarmos, verifique se você tem o Python 3.10+ instalado.

Etapa 1: Instalar dependências

Precisamos do SDK do Couchbase, das integrações do LangChain e da biblioteca de conjuntos de dados.

Etapa 2: Configuração e conexão

Começaremos conectando-nos ao nosso cluster do Couchbase. Também precisamos configurar os endpoints para o Capella Model Services.

Observação: Os Capella Model Services são compatíveis com o formato da API OpenAI, portanto, podemos usar o padrão langchain-openai apontando-a para o nosso ponto de extremidade do Capella.

Etapa 3: Configurar a estrutura do banco de dados

Precisamos garantir que nosso bucket, escopo e coleção existam para armazenar os dados de notícias.

Etapa 4: Carregando o índice de pesquisa vetorial do Couchbase

A pesquisa semântica exige uma maneira eficiente de recuperar documentos relevantes com base na consulta de um usuário. É nesse ponto que o Couchbase Vector Search, anteriormente conhecido como serviço Full-Text Search (FTS), entra em ação. Nesta etapa, carregamos a definição do Vector Search Index de um arquivo JSON, que especifica como o índice deve ser estruturado. Isso inclui os campos a serem indexados, as dimensões dos vetores e outros parâmetros que determinam como o mecanismo de pesquisa processa as consultas com base na similaridade dos vetores.

Etapa 5: inicializar modelos de IA

Aqui está a mágica: inicializamos o modelo de incorporação usando Aberturas do OpenAIEmbeddings mas aponte-o para o Capella. Os serviços de IA do Couchbase fornecem pontos de extremidade compatíveis com OpenAI que são usados pelos agentes. Para os embeddings, estamos usando o pacote LangChain OpenAI, pois ele é usado em associação com a integração LangChain Couchbase.

Etapa 6: ingestão de dados

Carregamos o conjunto de dados da BBC News e o ingerimos no Couchbase. O CouchbaseSearchVectorStore lida automaticamente com a geração de embeddings usando nosso modelo definido e armazenando-os.

Etapa 7: Criar a cadeia RAG

Agora, criamos o pipeline do RAG. Inicializamos o LLM (novamente apontando para o Capella) e o conectamos ao nosso recuperador de armazenamento de vetores.

Etapa 8: Executar consultas

Vamos testar nosso RAG.

Exemplo de saída:

Resposta: Pep Guardiola expressou preocupação e frustração com a forma recente do Manchester City. Ele declarou: “Não sou bom o suficiente. Eu sou o chefe... tenho que encontrar soluções”. Ele reconheceu os problemas defensivos e a falta de confiança da equipe.

Conclusão

Neste tutorial, você aprendeu a:

  1. Vetorizar dados usando o Couchbase.
  2. Use os serviços de IA do Couchbase para embeddings e LLM.
  3. Implementar o RAG com o Couchbase Vector Search.

A plataforma de banco de dados unificada do Couchbase cria aplicativos avançados de IA que podem gerar conteúdo de alta qualidade e com reconhecimento de contexto.

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Laurent Doguin

Laurent é um nerd metaleiro que mora em Paris. Em sua maior parte, ele escreve código em Java e texto estruturado em AsciiDoc, e frequentemente fala sobre dados, programação reativa e outras coisas que estão na moda. Ele também foi Developer Advocate do Clever Cloud e do Nuxeo, onde dedicou seu tempo e experiência para ajudar essas comunidades a crescerem e se fortalecerem. Atualmente, ele dirige as Relações com Desenvolvedores na Couchbase.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.