Implemente a geração aumentada de recuperação usando o Oracle Integration

A geração aumentada de recuperação (RAG) é um poderoso padrão de implementação de IA generativa que aprimora modelos generativos incorporando informações corporativas por meio de mecanismos de recuperação de dados sem treinamento adicional de modelo. A RAG permite otimizar a saída de um grande modelo de linguagem (LLM) com informações direcionadas sem modificar o próprio modelo subjacente; essas informações direcionadas podem ser mais atualizadas do que o LLM e podem ser específicas de uma organização e setor específicos. Isso permite que o sistema GenAI forneça respostas mais contextualmente apropriadas aos prompts e baseie essas respostas em dados extremamente atuais.
A RAG ajuda os LLMs a dar melhores respostas porque:
  • É uma técnica de inteligência artificial relativamente nova que pode melhorar a qualidade do GenAI, permitindo que os LLMs acessem recursos de dados adicionais sem novo treinamento.
  • Os modelos RAG criam repositórios de conhecimento com base nos próprios dados da organização, e esses repositórios podem ser continuamente atualizados para ajudar o GenAI a fornecer respostas oportunas e contextuais.
  • Chatbots e outros sistemas de conversação que usam processamento de linguagem natural podem se beneficiar muito de RAG e GenAI.
  • A implementação de RAG requer tecnologias como bancos de dados vetoriais, que permitem a codificação rápida de novos dados e pesquisas com esses dados para alimentar o LLM.

Arquitetura

Essa arquitetura de referência mostra como você pode implementar uma estrutura RAG usando técnica de pesquisa semântica para responder a uma consulta de usuário em dados corporativos usando plataforma de integração low-code ou no-code, como serviços do Oracle Integration (OIC).

Nesta arquitetura, o Oracle Cloud Infrastructure Generative AI é usado para criar incorporações e gerar respostas/respostas otimizadas ou úteis com base nos dados corporativos específicos do contexto. O Oracle Autonomous Database 23ai é usado para armazenar as incorporações de vetores, criar índices e permitir fazer uma pesquisa semântica com base na similaridade ou na distância, em vez da pesquisa baseada em palavras-chave. O OCI Functions é usado para executar um chunking de documentos ou dados corporativos usando os pacotes python padrão LangChain. Os serviços da OIC lidam com todo o processo de orquestração e automação, desde o recebimento dos dados corporativos até o armazenamento/consulta desses dados como incorporações de vetores e geram respostas específicas de contexto otimizado e criativo para as consultas do usuário de forma real ou quase em tempo real.

Os diagramas a seguir ilustram dois processos suportados por essa arquitetura de referência:
  • Processo de recuperação:


    Veja a seguir a descrição da rag-oic.png
    Descrição da ilustração rag-oic.png

    rag-oic-oracle.zip

    Nesse processo, ocorre o seguinte:

    1. Os dados corporativos ou da empresa são recebidos para o serviço Retriever do Oracle Integration em vários formatos, como PDF, TXT, CSV, XML, JSON etc., por meio de REST, Arquivo ou sFTP ou qualquer outro protocolo.
    2. O serviço Retriever divide os documentos ou dados usando o OCI Functions.
    3. O serviço Retriever obtém as incorporações de vetores para cada bloco de dados chamando o serviço OCI Generative AI Embedding usando modelos de incorporação como Cohere ou outros.
    4. Por fim, o serviço Retriever armazena essas incorporações no Oracle Autonomous Database 23ai junto com os dados divididos.
  • Processo de Aumento e Geração:


    Veja a seguir a descrição da rag-oic-aug-gen.png
    Descrição da ilustração rag-oic-aug-gen.png

    rag-oic-aug-gen-oracle.zip

    Nesse processo, ocorre o seguinte:

    1. Os usuários corporativos ou da empresa por meio de aplicativos front-end fazem consultas ou perguntas sobre dados da empresa, como políticas, RH, vendas, histórico de compras, relatórios financeiros, problemas etc.
    2. O serviço Generate do OIC recebe os dados da consulta e chama o serviço Augment de sua integração local para obter o contexto dessa consulta.
    3. O serviço de Aumento da OIC, uma vez chamado, chama o serviço de Incorporação da OCI Generative AI para obter as incorporações vetoriais dos dados da consulta.
    4. O serviço Augment da OIC obtém o contexto armazenado no Oracle Autonomous Database 23ai, com base na pesquisa semântica das incorporações do vetor de dados de consulta. O contexto recuperado é enviado de volta como resposta ao serviço Gerar.
    5. O serviço Gerar, com o contexto e a consulta recebidos, chama o serviço Geração do OCI Generative AI para gerar a resposta apropriada.
    6. Por fim, o serviço Gerar responde com a resposta gerada ao usuário.

A OIC ajuda os clientes a automatizar o processo de RAG de ponta a ponta. Clientes ou empresas podem se beneficiar do uso de uma plataforma de integração low-code e no-code para implementar RAG em seus dados corporativos. A criação de RAG usando uma plataforma de baixo código e sem código permite o desenvolvimento e a entrada no mercado em horas ou dias, em vez de meses.

A arquitetura tem os seguintes componentes:

  • Autonomous Database

    O Oracle Autonomous Database é um ambiente de banco de dados totalmente gerenciado e pré-configurado que você pode usar para processamento de transações e cargas de trabalho de data warehousing. Você não precisa configurar nem gerenciar nenhum hardware, nem instalar nenhum software. O Oracle Cloud Infrastructure trata da criação do banco de dados, bem como do backup, da aplicação de patches, do upgrade e do ajuste do banco de dados.

  • Autonomous Transaction Processing

    O Oracle Autonomous Transaction Processing é um banco de dados independente, autoprotegido e autorreparável otimizado para cargas de trabalho de processamento de transações. Você não precisa configurar nem gerenciar nenhum hardware, nem instalar nenhum software. O Oracle Cloud Infrastructure trata da criação do banco de dados, bem como do backup, da aplicação de patches, do upgrade e do ajuste do banco de dados.

  • Serviço Functions

    O Oracle Cloud Infrastructure Functions é uma plataforma Functions-as-a-Service (FaaS) totalmente gerenciada, multitenant, altamente escalável e sob demanda. Ele é alimentado pelo mecanismo de código aberto do Fn Project. As funções permitem que você implante seu código e o chame diretamente ou acione-o em resposta a eventos. O Oracle Functions usa contêineres do Docker hospedados no Oracle Cloud Infrastructure Registry.

  • Integração

    O Oracle Integration é um serviço totalmente gerenciado que permite integrar seus aplicativos, automatizar processos, obter insight sobre seus processos de negócios e criar aplicativos visuais.

  • IA Generativa

    O Oracle Cloud Infrastructure Generative AI é um serviço da OCI totalmente gerenciado que fornece um conjunto de grandes modelos de linguagem (LLMs) de ponta e personalizáveis que cobrem uma ampla variedade de casos de uso para geração de texto, resumo, pesquisa semântica e muito mais. Use o playground para experimentar os modelos pré-treinos prontos para usar ou crie e hospede seus próprios modelos personalizados ajustados com base em seus próprios dados em clusters de IA dedicados.

  • Oracle Database 23ai

    O Oracle Database 23ai é a próxima versão de suporte de longo prazo do Oracle Database. Ele inclui mais de 300 novos recursos com foco em inteligência artificial (IA) e produtividade do desenvolvedor. Recursos como o AI Vector Search permitem que você aproveite uma nova geração de modelos de IA para gerar e armazenar vetores de documentos, imagens, som etc.; indexe-os e procure rapidamente por similaridade, aproveitando os recursos analíticos existentes do Oracle Database. Isso combinado com o já extenso conjunto de algoritmos de Aprendizado de Máquina permite que você crie rapidamente aplicativos sofisticados habilitados para IA. O Oracle Database 23ai também usa IA para otimizar muitas das principais funções de banco de dados para fazer estimativas mais precisas sobre tempos e custos de recursos.

Reconhecimentos

Autor: Pavan Rajalbandi