Spaces:
Sleeping
Sleeping
Библиотека извлечения и сборки документов
Библиотека для извлечения структурированной информации из документов и их последующей сборки.
Основные компоненты
- Destructurer: Разбивает документ на чанки и связи между ними, а также извлекает дополнительные сущности
- Builder: Собирает документ из чанков и связей
- Entity: Базовый класс для всех сущностей (Document, Chunk, Acronym и т.д.)
- Link: Класс для представления связей между сущностями
- ChunkingStrategy: Интерфейс для различных стратегий чанкинга
- TablesProcessor: Процессор для извлечения таблиц из документа
Установка
pip install -e .
Использование
from ntr_text_fragmentation.core import Destructurer, Builder
from ntr_fileparser import ParsedDocument
# Пример использования Destructurer с обработкой таблиц
document = ParsedDocument(...)
destructurer = Destructurer(
document=document,
strategy_name="fixed_size",
process_tables=True
)
entities = destructurer.destructure()
# Пример использования Builder
builder = Builder(document)
builder.configure({"chunking_strategy": "fixed_size"})
reconstructed_document = builder.build()
Модули
Core
Основные классы для работы с документами:
- Destructurer: Разбивает документ на чанки и другие сущности
- Builder: Собирает документ из чанков и связей
Chunking
Различные стратегии разбиения документа на чанки:
- FixedSizeChunkingStrategy: Разбиение на чанки фиксированного размера
Additors
Дополнительные обработчики для извлечения сущностей:
- TablesProcessor: Извлекает таблицы из документа и создает для них сущности
Models
Модели данных для представления сущностей и связей:
- LinkerEntity: Базовый класс для всех сущностей и связей
- DocumentAsEntity: Представление документа как сущности
- TableEntity: Представление таблицы как сущности