2026年6月25日
Kreuzberg:给 RAG 和 Agent 准备资料,可以少一点“格式地狱”
做 RAG、知识库或文档型 Agent 时,真正麻烦的往往不是模型,而是前面那一步:PDF、Office、图片、邮件、音视频、代码仓库各有各的格式,抽出来的文本还要能给 LLM 稳定使用。Kreuzberg 是一个以 Rust 为核心的文档智能框架,目标就是把多种文件转成干净、结
做 RAG、知识库或文档型 Agent 时,真正麻烦的往往不是模型,而是前面那一步:PDF、Office、图片、邮件、音视频、代码仓库各有各的格式,抽出来的文本还要能给 LLM 稳定使用。Kreuzberg 是一个以 Rust 为核心的文档智能框架,目标就是把多种文件转成干净、结构化、可用于 AI 流程的内容。它最近更新活跃,已经不只是“文档解析库”,还把 CLI、REST API、MCP Server 和多语言绑定放到了一起,值得做 AI 应用的人关注。
📌 这个项目是干什么的
- 定位:面向 AI / RAG / Agent 流程的文档解析与结构化抽取框架。
- 适合谁:做企业知识库、文档问答、资料入库、代码智能分析、多模态资料处理的开发者。
- 解决什么问题:把 PDF、Office、图片、网页、邮件、压缩包、音视频和代码等资料,统一抽取成文本、表格、元数据、转写稿或代码结构信息。
- 当前成熟度:GitHub 仓库持续更新,最新 release 为
v5.0.0-rc.13;但 5.0 仍处于 RC 阶段,生产环境要先小范围验证。
🔍 为什么值得关注
- 它把“文档进入 AI 系统”这件事做成基础设施。
很多团队一开始会用几个独立解析库拼起来:PDF 一个方案,OCR 一个方案,网页再一个方案。Kreuzberg 的思路是用一个 Rust core 承接解析能力,再通过 Python、Node.js、Rust、Go、Java、C# 等绑定给不同工程栈使用。对团队来说,价值不只是“能解析”,而是减少多语言、多服务之间行为不一致的问题。
- 不只服务 RAG,也服务 Agent 工作流。
官方 README 明确提供库、CLI、REST API 和 MCP Server 四种使用方式。也就是说,它既可以嵌进后端文档处理链路,也可以作为 MCP 工具接到 Claude Desktop、Cursor 等客户端里,让 Agent 在需要时调用文档抽取能力。对于正在搭 Agent 工具箱的团队,这比单纯的离线解析脚本更方便。
- 格式覆盖面广,但要克制使用。
项目宣称支持 96 种文件格式、306 种编程语言的代码智能,并包含 OCR、Whisper 转写、chunking、语言检测、embedding、结构化 LLM 抽取等能力。这个覆盖面很诱人,但也意味着真实效果会强依赖你的文件类型、语言、OCR 质量和运行环境。更稳妥的方式,是先拿自己的典型样本测试,而不是直接把它当成万能入口。
🧪 谁适合试,怎么开始
如果你正在做文档问答、企业资料入库、Agent 读文件、AI 搜索或代码仓库分析,可以优先试一下。
最短路径可以从 Python 或 Node.js 开始:Python 侧官方给出 pip install kreuzberg / uv add kreuzberg,Node.js 侧是 npm install @kreuzberg/node。如果只是验证效果,先用 CLI 或 Docker 跑几类真实文件,看抽取文本、表格和元数据是否稳定;如果准备接 Agent,再看官方 MCP integration guide。
建议先验证三件事:
- 你的核心文件格式是否在支持列表内;
- 中文、表格、扫描件、复杂 PDF 的抽取质量是否可接受;
- 输出结果是否方便进入后续 chunk、embedding 和检索链路。
⚠️ 使用提醒
- Kreuzberg 使用 Elastic License 2.0,不是宽松的 MIT / Apache-2.0;如果要做托管服务或商业集成,务必先看许可证限制。
- 最新 5.0 release 仍是 RC 标签,适合评估和小范围试点,生产链路不要跳过回归测试。
- OCR、音频转写、VLM OCR 等能力可能引入额外依赖、模型或运行成本,别只看 README 的功能列表,要按自己的数据集测。