Biblioteca Python que usa LLMs para transformar PDFs, imagens e outros documentos em objetos Pydantic validados, com classificação e divisão de documentos.
Unstructured-IO/unstructured
Biblioteca Python de código aberto que divide PDFs, HTML, Word, e-mails e outros documentos em elementos estruturados para pipelines de LLM.
- Estrelas
- 15,687
- Forks
- 1,383
- Issues abertas
- 340
- Último commit
- anteontem
O que é?
Unstructured é uma biblioteca Python de código aberto para ingestão e pré-processamento de documentos de imagem e texto, como PDFs, páginas HTML, arquivos Word e e-mails. Suas funções de particionamento detectam o tipo de arquivo e convertem o conteúdo em uma lista de elementos tipados (títulos, parágrafos, tabelas etc.), mais fáceis de fornecer a modelos de linguagem e sistemas de recuperação do que o texto bruto.
A biblioteca oferece um ponto de entrada genérico, partition(), que direciona cada arquivo para uma função específica do formato, e permite instalar apenas os extras necessários para determinados tipos de documento. Alguns formatos exigem dependências opcionais do sistema, como tesseract para OCR, poppler para PDFs e libreoffice para arquivos do MS Office. A telemetria é enviada por padrão, mas pode ser desativada com as variáveis de ambiente DO_NOT_TRACK ou SCARF_NO_ANALYTICS.
O projeto também oferece uma API Transform v2 hospedada, que gera resultados de maior qualidade, mas a biblioteca de código aberto é mantida como um componente gratuito.
Recursos principais
- 01Divide PDFs, HTML, Word, e-mails e outros formatos em elementos de documento tipados.
- 02Detecta automaticamente o tipo de arquivo e direciona os arquivos para funções de particionamento específicas de cada formato.
- 03Oferece suporte a OCR de imagens e PDFs digitalizados por meio do tesseract.
- 04Permite instalar dependências por tipo de documento usando extras opcionais, para mantê-las enxutas.
- 05Pode ser executada em um contêiner Docker com imagens multiplataforma.
Casos de uso
- Preparar documentos corporativos em blocos de texto limpos para geração aumentada por recuperação.
- Extrair tabelas e títulos de PDFs para análises de dados posteriores.
- Converter e-mails e arquivos do Office em JSON estruturado para pipelines de ingestão.
Início rápido
- 1
Baixe a imagem do Docker
docker pull downloads.unstructured.io/unstructured-io/unstructured:latest - 2
Inicie um contêiner a partir da imagem
docker run -dt --name unstructured downloads.unstructured.io/unstructured-io/unstructured:latest - 3
Instale o SDK do Python com suporte a todos os tipos de documento
pip install "unstructured[all-docs]" - 4
Divida um arquivo de e-mail de exemplo em Python
Antes de usar
- Alguns tipos de documento precisam de pacotes do sistema, como tesseract-ocr, poppler-utils ou libreoffice.
- A saída de maior qualidade é oferecida somente pela API paga Transform v2.
Em coleções
Tópicos
Perguntas frequentes
- O que é unstructured?
- Biblioteca Python de código aberto que divide PDFs, HTML, Word, e-mails e outros documentos em elementos estruturados para pipelines de LLM. Unstructured é uma biblioteca Python de código aberto para ingestão e pré-processamento de documentos de imagem e texto, como PDFs, páginas HTML, arquivos Word e e-mails. Suas funções de particionamento detectam o tipo de arquivo e convertem o conteúdo em uma lista de elementos tipados (títulos, parágrafos, tabelas etc.), mais fáceis de fornecer a modelos de linguagem e sistemas de recuperação do que o texto bruto.
- unstructured é gratuito? Qual é a licença?
- unstructured é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- unstructured ainda é mantido?
- Manutenção ativa. O último commit de unstructured foi em 6 de nov. de 2026.
- Para que posso usar unstructured?
- Preparar documentos corporativos em blocos de texto limpos para geração aumentada por recuperação. Extrair tabelas e títulos de PDFs para análises de dados posteriores. Converter e-mails e arquivos do Office em JSON estruturado para pipelines de ingestão.
- Como instalar unstructured?
- Baixe a imagem do Docker: docker pull downloads.unstructured.io/unstructured-io/unstructured:latest Inicie um contêiner a partir da imagem: docker run -dt --name unstructured downloads.unstructured.io/unstructured-io/unstructured:latest Instale o SDK do Python com suporte a todos os tipos de documento: pip install "unstructured[all-docs]" Divida um arquivo de e-mail de exemplo em Python
- Onde consigo unstructured?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Unstructured-IO/unstructured
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Parser de documentos open source que converte PDFs, arquivos do Office e imagens em Markdown ou JSON para fluxos de trabalho com LLMs e agentes.
Parser de documentos open source que converte PDFs, arquivos do Office, HTML e outros formatos em dados estruturados para pipelines de IA generativa.
Um parser de documentos que converte arquivos PDF, Word, PowerPoint, Excel e CSV em texto pronto para LLMs, buscando preservar o conteúdo.
API de inteligência documental auto-hospedada que transforma PDFs, arquivos do Office e imagens em chunks prontos para LLM, com análise de layout e OCR.
Modelo open source de OCR com visão e linguagem da Baidu, que processa documentos longos e PDFs com várias páginas e os converte em texto estruturado em uma única passada.