Este projeto é um agente de conversação que aproveita o conceito Langchain, OpenAi API e o conceito de trapo (geração de recuperação de recuperação). O agente foi projetado para ler longos documentos em PDF, extrair vários componentes, como texto, imagens e tabelas e armazená -los em um banco de dados vetorial para recuperação eficiente durante as conversas com os usuários.
Processamento em PDF : O agente é capaz de analisar e extrair informações de documentos longos em PDF.
Extração multimodal : extrai texto, imagens e tabelas de PDFs para um entendimento abrangente.
Banco de dados vetorial : utiliza um banco de dados vetorial para armazenar e recuperar informações com eficiência.
Conversational IA : implementa o conceito de RAG para aprimorar as interações conversacionais com os usuários.
Usaremos não estruturados para analisar imagens, texto e tabelas de documentos (PDFs).
Usaremos o Retriever multi-vetor com o Chroma para armazenar texto e imagens brutos, juntamente com seus resumos para recuperação.
Usaremos o GPT-4V para o resumo de imagens (para recuperação), bem como a síntese de respostas finais da revisão de junção de imagens e textos (ou tabelas).
Langchain <- Visite aqui para entender a instalação de Langchain
API OpenAI <- Instruções para configurar e usar API OpenAI.
Chroma DB <- Instruções para configurar e usar o banco de dados vetorial.
Forneça caminho para o PDF de origem
Altere o prompt_text de acordo com suas necessidades.
Substitua suas perguntas na linha de consulta.
O agente usará as informações armazenadas para respostas inteligentes.
Recuperação
A recuperação é realizada com base na semelhança com os resumos de imagens, bem como os pedaços de texto. Isso requer alguma consideração cuidadosa, porque a recuperação da imagem pode falhar se houver pedaços de texto concorrentes. Para mitigar isso, produzo pedaços de texto maiores (4K token) e os resumo para a recuperação.
Tamanho da imagem
A qualidade da síntese de respostas parece ser sensível ao tamanho da imagem, como esperado. Farei EVALS em breve para testar isso com mais cuidado.
Este projeto está licenciado sob a licença do MIT.