RAG (Retrieval Augmented Generation) no Databricks
A geração aumentada por recuperação (RAG) é uma técnica poderosa que combina grandes modelos de linguagem (LLMs) com recuperação de dados tempo-real para gerar respostas mais precisas, atualizadas e contextualmente relevantes.
Esta abordagem é especialmente valiosa para responder a perguntas sobre informação proprietária, que muda com frequência ou específica do domínio.
O que é geração aumentada de recuperação?
Na forma mais simples, um agente RAG faz o seguinte:
- **Recuperação**: a solicitação do usuário é usada para consultar uma base de conhecimento externa, como um armazenamento vetorial, uma busca por palavras-chave ou um banco de dados SQL. O objetivo é obter dados de suporte para a resposta do LLM.
- Aumento : Os dados de apoio são combinados com a solicitação do usuário, frequentemente usando um padrão com formatação e instruções adicionais para o LLM, para criar um prompt.
- Geração : o prompt é passado para o LLM para gerar uma resposta à solicitação do usuário.
Benefícios do RAG
O RAG melhora os LLMs das seguintes maneiras:
- Conhecimento proprietário: o RAG pode incluir informações proprietárias não utilizadas inicialmente para treinar o LLM, como memorandos, e-mails e documentos para responder a perguntas específicas do domínio.
- Informações atualizadas: Uma aplicação RAG pode fornecer ao LLM informações de uma base de conhecimento atualizada.
- Citação de fontes: o RAG permite que os LLMs citem fontes específicas, permitindo que os usuários verifiquem a precisão factual das respostas.
- Segurança de dados e listas de controle de acesso (ACL): a etapa de recuperação pode ser projetada para recuperar seletivamente informações pessoais ou proprietárias com base nas credenciais do usuário.
Componentes do RAG
Uma aplicação RAG típica envolve várias etapas:
-
**Pipeline de dados**: pré-processar e indexar documentos, tabelas ou outros dados para recuperação rápida e precisa.
-
Cadeia RAG (Retrieval, Augmentation, Generation) : Chame uma série (ou cadeia) de os passos para:
- Compreender a pergunta do usuário.
- Recupere dados de suporte.
- Aumente o prompt com dados de suporte.
- Gerar uma resposta de um LLM usando o prompt aumentado.
-
Avaliação e monitoramento : Avaliar o aplicativo RAG para determinar sua qualidade, custo e latência para garantir que atenda aos seus requisitos de negócios.
-
Governança e LLMOps : Acompanhe e gerencie o ciclo de vida de cada componente, incluindo linhagem de dados e controles de acesso.
Tipos de dados RAG: estruturados e não estruturados
A arquitetura RAG pode funcionar com dados de suporte não estruturados ou estruturados. Os dados que você usa com RAG dependem do seu caso de uso.
Dados não estruturados: dados sem uma estrutura ou organização específica.
- PDFs
- Documentos do Google/Office
- Wikis
- Imagens
- Vídeos
Dados estruturados: dados tabulares organizados em linhas e colunas com um esquema específico, como tabelas em um banco de dados.
- Registros de clientes em um sistema de BI ou Data Warehouse
- Dados de transação de um banco de dados SQL
- Dados de APIs de aplicativos (por exemplo, SAP, Salesforce, etc.)
Avaliação e monitoramento
Avaliação e monitoramento ajudam a determinar se sua aplicação RAG atende aos requisitos de qualidade, custo e latência. A avaliação ocorre durante o desenvolvimento, enquanto o monitoramento acontece uma vez que a aplicação é implementada em produção.
RAG sobre dados não estruturados tem muitos componentes que afetam a qualidade. Por exemplo, alterações na formatação dos dados podem influenciar os fragmentos recuperados e a capacidade do LLM de gerar respostas relevantes. Portanto, é importante avaliar componentes individuais além do aplicativo como um todo.
Para obter mais informações, consulte Agent Evaluation (MLflow 2).
RAG no Databricks
O Databricks oferece uma plataforma de ponta a ponta para o desenvolvimento de RAG, incluindo:
- Pipelines de dados integrados com Delta Lake e Lakeflow Spark Declarative Pipelines
- Pesquisa de AI escalável com Databricks AI Search. (Databricks AI Search era anteriormente conhecido como Databricks Vector Search.)
- Servindo modelos e ferramentas de orquestração
- Avaliação de IA Generativa para melhorar o desempenho e a qualidade
- Monitoramento de Gen AI para aplicativos RAG implantados
- Governança e segurança integradas, consulte o Centro de Segurança e Confiança e o AI Gateway.
Próximos os passos
-
Saiba mais sobre pipelines de dados, um componente essencial para aplicativos RAG. Consulte Crie um pipeline de dados não estruturados para RAG
-
Use o AI Playground para prototipar seu próprio agente RAG. Consulte Começar: Consultar LLMs e prototipar agentes de AI sem código.
-
Use o Assistente de Conhecimento para criar um agente RAG como um chatbot em seus documentos e como um endpoint que você pode usar em aplicativos downstream. Consulte Use o Assistente de Conhecimento para criar um chatbot de alta qualidade para seus documentos.