Guia de RAG da IA de borda

O SDK AI Edge RAG fornece os componentes fundamentais para construir um pipeline de geração aumentada de recuperação (RAG) com a API LLM Inference. Um pipeline de RAG fornece aos LLMs acesso a dados fornecidos pelo usuário, que podem incluir informações atualizadas, sensíveis ou específicas do domínio. Com os recursos adicionais de recuperação de informações da RAG, os LLMs podem gerar respostas mais precisas e contextualizadas para casos de uso específicos.

O SDK RAG do AI Edge está disponível para Android e pode ser executado completamente no dispositivo. Comece a usar o SDK seguindo o guia do Android, que mostra uma implementação básica de um aplicativo de exemplo usando RAG.

Pipeline de RAG

A configuração de um pipeline de RAG com o SDK de RAG de IA na borda inclui as seguintes etapas principais:

  1. Importar dados: forneça os dados textuais que o LLM vai usar ao gerar saída.
  2. Dividir e indexar os dados: divida os dados em pequenos blocos para indexação em um banco de dados.
  3. Gerar embeddings: use um embedder para vetorizar os blocos e armazenar em um banco de dados de vetores.
  4. Recuperar informações: defina como as informações relevantes são identificadas e recuperadas para responder aos comandos do usuário. Para um determinado comando, o componente de recuperação pesquisa no banco de dados de vetores para identificar informações relevantes.
  5. Gerar texto com LLM: use um modelo de linguagem grande para gerar texto de saída com base nas informações recuperadas do banco de dados de vetores.

Módulos principais

O SDK de RAG de IA na borda oferece os seguintes módulos e APIs principais para o pipeline de RAG:

  • Modelos de linguagem: os modelos de LLM com API de solicitação aberta, local (no dispositivo) ou baseada em servidor. A API é baseada na interface LanguageModel.
  • Modelos de embeddings de texto: convertem texto estruturado e não estruturado em vetores de embeddings para pesquisa semântica. A API é baseada na interface Embedder.
  • Repositórios de vetores: armazenam os embeddings e metadados derivados de partes de dados. Ele pode ser consultado para receber trechos semelhantes ou correspondências exatas. A API é baseada na interface VectorStore.
  • Memória semântica: serve como um mecanismo de recuperação semântica para recuperar os principais k pedaços relevantes para uma determinada consulta. A API é baseada na interface SemanticMemory.
  • Divisão de texto em partes: divide os dados do usuário em partes menores para facilitar a indexação. A API é baseada na interface TextChunker.

O SDK oferece cadeias, que combinam vários componentes de RAG em um único pipeline. Você pode usar cadeias para orquestrar modelos de recuperação e consulta. A API é baseada na interface Chain. Para começar, teste a cadeia de recuperação e inferência ou a cadeia de recuperação.