xberg-io/xberg
A polyglot document intelligence framework with a Rust core. Extract text, metadata, images, and structured information from PDFs, Office documents, images, and 98+ formats. Available for Rust, Python, Ruby, Java, Go, PHP, Elixir, C#, R, C, TypeScript (Node/Bun/Wasm/Deno)- or use via CLI, REST API, or MCP server.
解决的问题
现代数据流水线经常面临解析多样化文件格式的复杂性,范围涵盖从 PDF 和电子表格到音频文件和复杂的源代码。Xberg 提供了一个统一的引擎,无需开发人员手动组装碎片化的库或设置复杂的 OCR 流水线,即可提取干净、结构化的文本和元数据。
工作原理
Xberg 使用单个核心引擎在 98 种格式中执行智能 MIME 检测和提取。它支持多种处理模式,包括:
- Extraction: 将文档、图像、音频和代码转换为 Markdown 或 JSON 等结构化格式。
- OCR & Transcription: 使用 Tesseract、PaddleOCR 或 Whisper (via ONNX) 等后端处理视觉和音频内容。
- Code Intelligence: 利用 tree-sitter 对 306 种编程语言进行语法感知分块和符号提取。
- Enrichment: 提供 NER、摘要、翻译和表格提取。
- Deployment: 作为库(具有 15 种语言绑定)、CLI、REST API 或 MCP 服务器运行。
适用对象
- AI/LLM 开发人员: 构建需要语法感知代码分块或结构化文档摄取的 RAG 流水线。
- 数据工程师: 构建用于从海量文档存档中爬取、批量处理和提取数据的自动化流水线。
- 软件工程师: 通过高性能语言绑定将高级文档解析和 OCR 功能集成到现有应用程序中。
亮点
- 海量格式支持: 处理包括 Office 文档、图像、音频、视频和压缩包在内的 98 种格式。
- 多语言绑定: 原生支持 Rust, Python, Node.js, Go, Java, C#, Ruby, PHP, Elixir, Dart, Swift, Zig 和 WASM。
- RAG 就绪: 具有语法感知代码分块和内置的 embedding/reranking 支持。
- 灵活部署: 可以作为本地库、Docker 容器、REST API 或用于 Claude 或 Cursor 等 AI 助手的 MCP 服务器运行。