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 服务器运行。