17 repositorios
Techniques for processing multiple documents simultaneously to increase throughput.
Distinct from Batch Processing: Candidates focus on cloud orchestration or web endpoints; this is a core architectural text-processing optimization.
Explore 17 awesome GitHub repositories matching software engineering & architecture · Batch Document Processing. Refine with filters or upvote what's useful.
CodeMirror 5 is a browser-based code editor and extensible UI component. It functions as a syntax highlighting engine and a programmable text surface, providing a professional coding experience embedded within web pages. The project is distinguished by its ability to act as a collaborative text editor, synchronizing document changes across multiple users in real time. It also includes a dedicated Vim emulation layer that implements modal keyboard interactions, motions, and operators. The system covers broad capability areas including language support for autocompletion and error analysis, co
Buffers multiple document changes into a single view update to optimize rendering performance and prevent screen flicker.
This project is a PDF data extraction tool and document preprocessor designed to convert PDF files into structured formats such as Markdown, JSON, and HTML. It functions as an OCR document parser for scanned files, an accessibility automator for generating PDF/UA compliant metadata, and a loader for AI orchestration frameworks like LangChain. The software distinguishes itself through specialized handling of complex document elements, including the conversion of mathematical formulas into LaTeX and the generation of natural-language descriptions for charts and images. It utilizes recursive seg
Processes multiple PDF files in a single execution to increase throughput and reduce startup overhead.
Canopy is the official Go implementation of a blockchain node that runs a recursive network architecture, enabling new blockchains to launch as dependent layers that can later graduate into fully independent security roots. The project provides a hybrid consensus mechanism that combines Byzantine fault-tolerant Proof-of-Stake with Verifiable-Delay Functions, delivering instant finality while protecting against long-range attacks through trustless chain age verification. Validators secure multiple chains simultaneously through restaking, where a single bonded stake serves as collateral across t
Groups multiple state read or write operations into a single call for efficiency during transaction processing.
A fast, helpful, and open-source document parser
Processes entire directories of documents efficiently with a single command, reusing the parsing engine.
pdf2htmlEX is a tool that converts PDF documents into HTML while preserving the original text, fonts, and layout. It uses CSS positioning and font embedding to replicate the PDF's appearance in a browser, producing output that works without JavaScript. The tool can generate a single self-contained HTML file with all resources embedded, or split the document into separate HTML files per page for individual loading and navigation. The converter offers extensive control over the output, including the ability to embed fonts directly into the HTML using base64-encoded Data URIs, or keep them as se
Converts multiple PDF pages or documents with configurable output settings and resource management.
Kreuzberg is a document extraction engine that converts PDFs, Office files, images, and over 90 other formats into clean, structured text and metadata. It is built around a compiled Rust core that can be used as a native library, a command-line tool, a REST API server, or a WebAssembly module for browser-based processing. The system is designed to run entirely on self-hosted infrastructure, with no data leaving the user's environment. What distinguishes Kreuzberg is its breadth of integration surfaces and its pipeline architecture. It exposes extraction capabilities through native bindings fo
Processes multiple documents concurrently with 2-5x throughput gains via parallelization.
Stanza is a Python natural language processing library designed for tokenization, lemmatization, and dependency parsing across many human languages using neural models. It provides a neural processing pipeline that converts raw text into structured linguistic data objects, alongside a specialized analyzer for extracting medical insights from clinical and biomedical language. The project includes a wrapper that connects Python scripts to Java-based natural language processing tools and remote annotation servers. This enables a bridge for extracting linguistic annotations and analysis data from
Processes multiple documents simultaneously using delimiters to increase total throughput and execution speed.
pkuseg-python is a Chinese word segmentation toolkit and natural language processing library. It provides specialized models for splitting Chinese text into words across various domains, including news, medical, and web content, and includes a tool for assigning grammatical parts of speech tags to segmented words. The library allows for the training of custom segmentation models using annotated datasets and supports the integration of user-defined dictionaries to ensure specialized terminology is recognized correctly. It employs a multi-threaded execution engine to process large volumes of Ch
Distributes text segmentation tasks across multiple CPU cores to increase processing throughput for large file volumes.
Unstract is an unstructured data extraction system and ETL pipeline orchestrator that uses large language models to convert documents, images, and scans into structured JSON. It provides a document extraction API for integrating these capabilities into external automation tools and includes a Model Context Protocol server to connect AI agents to structured information retrieval. The system ensures data accuracy through a verification tool featuring dual-model verification and human-in-the-loop review with coordinate-based document highlighting. It utilizes natural language extraction schemas
Allows submitting multiple files in a single API call for independent, high-throughput automated data extraction.
Loro is a conflict-free replicated data type (CRDT) framework and collaborative state engine designed for building real-time collaborative applications. It provides a distributed data synchronizer that enables multiple users to edit shared documents and complex nested structures—such as maps, lists, trees, and counters—with automatic state convergence without requiring a central server. The project distinguishes itself through a versioned document store that supports branching, forking, and merging via a directed acyclic graph of causal operation history. It enables advanced version control c
Groups multiple operations into a single commit with metadata for history grouping.
Grobid es un sistema de aprendizaje automático diseñado para transformar publicaciones académicas y científicas en PDF a XML estructurado. Funciona como un analizador de PDF a XML y extractor de metadatos académicos, identificando y normalizando títulos, autores, afiliaciones y referencias bibliográficas de trabajos de investigación. El sistema utiliza un segmentador de documentos de aprendizaje profundo para dividir los PDF sin procesar en regiones funcionales y emplea un resolvedor de referencias bibliográficas para hacer coincidir las citas con registros externos para el enriquecimiento de metadatos y la resolución de DOI. Admite una canalización completa de entrenamiento de modelos de aprendizaje automático, lo que permite la generación de corpus de entrenamiento anotados, reentrenamiento de modelos y la exportación de binarios de modelos. El proyecto cubre una amplia gama de capacidades de extracción, incluyendo el análisis de encabezados de documentos, estructuración del cuerpo del texto completo y la identificación de entidades específicas del dominio como información de financiación y citas de patentes. También proporciona herramientas de análisis espacial para la extracción de cuadros delimitadores y mapeo de coordenadas para sincronizar etiquetas semánticas con el diseño original del PDF. La aplicación se puede desplegar a través de imágenes contenedorizadas e incluye utilidades de línea de comandos para el procesamiento por lotes multiproceso de grandes colecciones de documentos.
Processes large volumes of PDF files simultaneously using multi-threaded clients to increase throughput.
sChandra is a document processing platform that converts images, PDFs, Word documents, spreadsheets, and other formats into structured output such as HTML, Markdown, or JSON while preserving layout. It can also extract specific data fields from invoices, contracts, or reports using user-defined JSON schemas, with citations back to source locations. The service supports form filling in PDF and image documents, document generation from Markdown, and extraction of tracked changes from Word files. The platform distinguishes itself with pipeline-based processing chains that combine multiple proces
Processes multiple documents in a single batch to improve throughput and reduce per-document overhead.
Chonkie es una librería de fragmentación de texto (chunking) diseñada para pipelines de generación aumentada por recuperación (RAG). Funciona como un divisor de texto semántico y pipeline de ingesta RAG, transformando texto sin procesar en segmentos incrustados para su almacenamiento en bases de datos vectoriales. El proyecto se distingue por estrategias de división especializadas, incluyendo un divisor de código basado en AST para preservar límites lógicos en el código fuente y un divisor de texto semántico que utiliza modelos de embedding para determinar límites basados en el significado. También proporciona un ingestor de bases de datos vectoriales para automatizar la generación de embeddings y su exportación a varios almacenes. La librería cubre una amplia gama de capacidades, incluyendo el análisis de documentos mediante OCR y extracción de markdown, una variedad de métodos de división como conteo de tokens y segmentación jerárquica, y orquestación de flujos de trabajo a través de pipelines reutilizables. Admite una amplia gama de integraciones de almacenes vectoriales, incluyendo Qdrant, Milvus, Weaviate y Elasticsearch, así como la exportación de datos a JSON y datasets de Hugging Face. Los usuarios pueden ejecutar estas operaciones a través de una interfaz de línea de comandos o desplegar el sistema como un servicio API contenerizado.
Handles multiple documents in a single operation to efficiently produce chunks for large collections.
Abogen is a text-to-speech audiobook generator that transforms digital documents and subtitle files into audiobooks. It utilizes language models to perform text normalization, rewriting contractions and punctuation to produce more natural speech synthesis. The system features a voice profile mixer that blends multiple voice models using adjustable weight ratios to create personalized synthetic voices. It also includes an automated export system that sends completed audio files and metadata to a remote Audiobookshelf server via a web API. The project manages the end-to-end audiobook productio
Implements a system for queuing multiple documents for sequential processing with individual settings.
docetl is an AI-powered document ETL tool and map-reduce orchestrator designed to transform large collections of unstructured documents into structured, queryable tables using language models. It provides a declarative pipeline framework for extracting, cleaning, and transforming data from sources such as PDFs and text files into predefined schemas. The project distinguishes itself through a semantic data integration suite that enables joining datasets and resolving duplicate entities based on embedding-based similarity. It includes an interactive prompt playground for developing and optimizi
Reduces API request counts by processing multiple documents in a single call using custom batch prompts.
zotero-pdf2zh is a translation system and Zotero plugin designed to convert academic PDF papers into target languages using large language model APIs and machine translation services. It functions as an LLM document translator that integrates directly into Zotero libraries to process research documents. The tool distinguishes itself by generating bilingual PDFs with parallel layouts for side-by-side comparison of original and translated text. It also includes a mobile layout optimizer that crops double-column PDFs and stacks them vertically to improve readability on narrow screens. The syste
Implements an asynchronous queue to process multiple document translation requests simultaneously.
Ben.Demystifier is a .NET library that transforms raw stack traces into modern C# 7+ syntax. It reads compiler-generated frames produced by async methods, iterators, lambdas, local functions, and generic types, then rewrites them to match the original source code, making exception call stacks and debug output immediately readable. The library resolves common compiler artifacts such as MoveNext frames back into their original async method or iterator names, shows declaring method names and ordinals for lambdas and local functions instead of generated identifiers, and displays resolved generi
Processes multiple stack trace entries in a single pass to minimise memory allocations.