O que é fragmentação agêntica?

Autores

Ivan Belcic

Staff writer

Cole Stryker

Staff Editor, AI Models

IBM Think

Fragmentação agêntica é o uso de inteligência artificial (IA) para segmentar entradas de texto longas em blocos menores e semanticamente coerentes conhecidos como fragmentos. Enquanto muitas estratégias tradicionais de fragmentação tendem a usar fragmentos de tamanho fixo ao dividir o texto, a fragmentação agêntica segmenta dinamicamente o texto com base no contexto.

Os grandes modelos de linguagem (LLMs) não conseguem processar uma grande sequência de entrada baseada em texto em sua totalidade. A janela de contexto de um modelo de processamento de linguagem natural (NLP) determina a quantidade máxima de conteúdo que o modelo pode receber, mantendo a compreensão contextual. Os sistemas de aprendizado de máquina (ML) usam técnicas de fragmentação para dividir documentos em partes que se encaixam na janela de contexto do LLM.

As mais recentes tendências em IA, trazidas a você por especialistas

Receba insights selecionados sobre as notícias mais importantes (e intrigantes) sobre IA. Inscreva-se no nosso boletim informativo semanal Think. Consulte a Declaração de privacidade da IBM.

Agradecemos a você! Você se inscreveu.

Sua assinatura será entregue em inglês. Você encontrará um link para cancelar a assinatura em cada boletim informativo. Você pode gerenciar suas assinaturas ou cancelar a assinatura aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

Fragmentação e RAG

O desenvolvimento da geração aumentada de recuperação (RAG)— conectando LLMs a fontes de dados externas — exigiu a criação de sistemas de fragmentação. Os sistemas de RAG surgiram para ajudar a combater o problema das alucinações: quando os LLMs forneciam respostas que não refletiam resultados ou informações do mundo real.

Os sistemas de RAG ajudam os LLMs a gerar respostas mais precisas e úteis, combinando-os com bases de conhecimento adicionais. Em muitos casos, as bases de conhecimento da RAG são bancos de dados de vetores contendo documentos que dão ao LLM conectado acesso ao conhecimento específico do domínio. O embedding de modelos converte documentos em vetores matemáticos, então faz o mesmo para consultas de usuários.

O sistema de RAG encontra embeddings dentro de seu banco de dados de vetores, que representam informações relevantes e correspondem à consulta do usuário. Em seguida, o LLM usa os dados recuperados para fornecer aos usuários respostas mais relevantes e precisas.

No entanto, devido às limitações da janela de contexto, o LLM não consegue processar um único documento de uma só vez. A fragmentação surgiu como a solução. Ao dividir um documento em partes, o LLM pode encontrar partes fragmentos em tempo real e, ao mesmo tempo, manter a compreensão contextual.

AI Academy

Torne-se um especialista em IA

Adquira conhecimento para priorizar os investimentos em IA que estimulam o crescimento dos negócios. Comece a usar hoje mesmo a nossa AI Academy sem custo e lidere o futuro da IA na sua organização.

Outros métodos de fragmentação

A fragmentação agêntica permite que os LLMs criem fragmentos significativos que os ajudam a fornecer respostas melhores, como com o caso de uso da RAG. Alguns métodos de fragmentação também levam em consideração a semântica, enquanto outros dividem os documentos em fragmentos menores de comprimento fixo.

Outros métodos de fragmentação incluem:

Fragmentação de tamanho fixo

A estratégia de fragmentação mais simples, a fragmentação de tamanho fixo, divide o texto em blocos do mesmo tamanho, com base em uma contagem predefinida de caracteres ou tokens. Um token é a quantidade mínima de texto que o LLM pode processar, geralmente uma palavra ou parte de uma.

Para evitar a quebra de frases, muitas implementações de fragmentação de tamanho fixo incluem uma funcionalidade que repete o final de um fragmento no início do próximo. A fragmentação de tamanho fixo é simples e leve em termos de computação, mas é rígida — ela não pode levar em conta a densidade do conteúdo ou a estrutura do documento e pode criar fragmentos semanticamente incoerentes.

Fragmentação recursiva

A fragmentação recursiva usa uma lista hierárquica de separadores de texto predefinidos para dividir o texto de uma maneira que provavelmente seja mais coerente. Os separadores incluem estruturas que ocorrem naturalmente, como parágrafos, frases ou palavras. Em um documento de codificação do Python, os separadores podem incluir definições de classe e função.

Em comparação com a fragmentação de tamanho fixo, a fragmentação recursiva cria fragmentos mais coerentes seguindo as separações que ocorrem naturalmente no texto. O uso de markdown também pode ajudar o algoritmo de fragmentação, ou fragmentador, a descobrir onde fazer as divisões. RecursiveCharacterTextSplitter é um fragmentador popular disponível no LangChain.

Mas, se o texto não tiver separadores claros, os algoritmos de fragmentação recursiva não saberão onde criar novos fragmentos. A fragmentação recursiva também tem um uso mais intensivo de recursos computacionais do que a fragmentação de tamanho fixo.

Fragmentação semântica

A fragmentação semântica usa modelos de embedding para criar representações matemáticas de cada frase. Em seguida, o algoritmo de fragmentação cria fragmentos de frases semanticamente semelhantes, criando um novo fragmento que detecta uma mudança na semântica. A fragmentação semântica é atribuída a Greg Kamradt, que discutiu a técnica no Github.1

A fragmentação semântica tem reconhecimento de contexto, construindo fragmentos em torno do fluxo natural e do significado semântico do documento. Quando o tópico muda, um novo fragmento é criado. No entanto, podem surgir problemas quando os parágrafos discutem vários tópicos ou se o limite de fragmentação não estiver definido corretamente para o tipo e a estrutura do documento.

A fragmentação semântica tem um uso computacional mais intenso do que a fragmentação recursiva e de tamanho fixo e requer modelos avançados para identificar o conteúdo semântico no texto.

Como funciona a fragmentação agêntica?

A fragmentação agântica é um exemplo de automação agêntica: o uso de agentes de IA para automatizar um fluxo de trabalho. Nesse caso, o fluxo de trabalho que está sendo automatizado de forma inteligente é o processo de determinar como dividir um documento em fragmentos menores que se encaixam na janela de contexto de um LLM.

IA agêntica refere-se ao uso de sistemas de IA para tomar decisões autônomas e agir sem intervenção humana. Com a fragmentação agêntica, o agente age por conta própria para determinar como separar o texto e rotular os fragmentos.

A fragmentação agêntica se baseia em outros métodos de fragmentação para criar seções sobrepostas e divisão recursiva. Em seguida, aplica IA generativa (IA gen) para rotular cada fragmento com metadados para facilitar a recuperação da RAG.

A fragmentação agêntica ainda está em fase exploratória. Os criadores compartilham e discutem suas abordagens no GitHub. Muitas vezes, eles são construídos com a linguagem de codificação Python usando frameworks de LLMs, como Llamaindex e Langchain, juntamente com LLMs de código aberto disponíveis no Huggingface. 

Um fluxo de trabalho de IA típico para fragmentação agêntica pode conter estas etapas:

1. Preparação do texto

Usando ferramentas de automação inteligente, o texto é extraído do documento de origem, como um PDF, e limpo. A limpeza de texto envolve a remoção de elementos supérfluos, como números de página e rodapés, para que o LLM receba apenas texto bruto.

2. Divisão do texto

Algoritmos de fragmentação recursiva dividem o texto em pequenos fragmentos para evitar a fragmentação de frases. Assim como a fragmentação semântica, a fragmentação agêntica divide dinamicamente o texto com base no significado, na estrutura e na consciência de contexto usando a técnica de sobreposição de fragmentos.

3. Rotulagem de fragmentos

LLMs, como o GPT da OpenAI, processam, combinam e enriquecem os fragmentos. Fragmentos menores são combinados em fragmentos maiores, que mantêm a coerência semântica. O LLM enriquece cada fragmento com metadados que incluem um título e um resumo do conteúdo do fragmento. Os metadados gerados auxiliam os usos posteriores, como com sistemas de RAG agênticos.

4. Embedding

Cada fragmento é convertido em um embedding e armazenado em um banco de dados de vetores. Os modelos de recuperação consultam o banco de dados, usam pesquisa semântica para encontrar fragmentos com metadados relevantes e os incluem nos prompts para o LLM no sistema de RAG.

A configuração prompt_template no LangChain determina o prompt de entrada dado ao LLM. Saiba mais sobre como otimizar a fragmentação da RAG com o LangChain e o watsonx.ai.

Benefícios da fragmentação agêntica

Em comparação com os métodos tradicionais de fragmentação, o dinamismo e a rotulagem de metadados da fragmentação agêntica a tornam perfeita para a implementação da RAG. Os benefícios incluem:

  • Recuperação eficiente: os títulos e resumos gerados por IA para cada fragmento de dados podem ajudar os sistemas de RAG a encontrar informações relevantes mais rapidamente em conjuntos de dados conectados.

  • Respostas precisas: a fragmentação semanticamente coerente com metadados gerados por IA pode ajudar os sistemas de RAG a aumentar as respostas geradas com dados relevantes para obter respostas melhores.

  • Flexibilidade: a fragmentação orientada por IA pode lidar com uma ampla gama de tipos de documentos. Os sistemas de fragmentação agêntica podem se integrar a vários LLMs e cadeias de RAG para acompanhar o crescimento e a expansão do projeto.

  • Preservação de conteúdo: os sistemas de fragmentação agêntica se baseiam em métodos de fragmentação anteriores para criar fragmentos que preservam o significado e a coerência semânticos.

Soluções relacionadas
Agentes de IA para empresas

Crie, implemente e gerencie assistentes e agentes de IA potentes que automatizam fluxos de trabalho e processos com a IA generativa.

    Explore o watsonx Orchestrate
    Soluções de agentes de IA da IBM

    Construa o futuro do seu negócio com soluções de IA em que você pode confiar.

    Explore soluções de agentes de IA
    Serviços de IA do IBM® Consulting

    Os serviços de IA da IBM Consulting ajudam a reinventar a forma como as empresas trabalham com IA para gerar transformação.

    Explore os serviços de inteligência artificial
    Dê o próximo passo

    Se você optar por personalizar aplicativos e habilidades criados previamente ou criar e implementar serviços agênticos personalizados usando um estúdio de IA, a plataforma IBM watsonx tem aquilo de que você precisa.

    Explore o watsonx Orchestrate Explore o watsonx.ai