一堆发票、银行流水、KYC 表单、税务文件堆在桌上,你需要的只是把它们变成数据库里整齐的 JSON。
传统方案要么让你手写正则表达式、做模板匹配,要么针对每个供应商的格式专门训练模型,再不然就是花钱买商业 API。
现在开源社区给出了新解法:Zipstack 推出的 Unstract,直接用大语言模型(LLM)处理。你只需把文档扔进去,它就能吐出结构化的 JSON。

核心思路很简单:用自然语言描述你需要提取哪些字段,剩下的交给 LLM 处理。
适用场景
财务、保险、医疗、KYC/合规——任何需要从非结构化文档里提取数据的团队,都可以用它。
如何使用
Prompt Studio 是核心入口。你写一段提示词,定义好提取的 schema,例如 发票总金额、发票日期、供应商名称,然后点几下就能跑起来。

支持 PDF、图片、扫描件,甚至手写体(最终效果取决于所用 LLM 的能力)。输出是干净的 JSON,可以直接塞进数据库。
部署方式
- API 部署:发一个 REST 请求,拿 JSON 回来。
- ETL 管道:从文件夹拉取文档,处理完自动写入数据仓库。
- MCP 服务器:对接 Claude 等 AI 代理。
- n8n 节点:直接插入现有自动化流程。
支持的 LLM 和数据源
Unstract 几乎兼容市面上所有主流 LLM:OpenAI、Anthropic、AWS Bedrock、Gemini、Mistral,甚至本地跑的 Ollama……
数据输出目标也覆盖全面:S3、GCS、Snowflake、BigQuery、PostgreSQL、MySQL 等。
架构速览
来看看它内部的组件构成:
┌────────────────────────────────────────────────────────────┐
│ Unstract │
├─────────────┬─────────────┬─────────────┬──────────────────┤
│ Frontend │ Backend │ Worker │ Platform Service │
│ (React) │ (Django) │ (Celery) │ (FastAPI) │
├─────────────┴─────────────┴─────────────┴──────────────────┤
│ Cache (Redis) │
├────────────────────────────────────────────────────────────┤
│ Message Queue (RabbitMQ) │
├────────────────────────────────────────────────────────────┤
│ Database (PostgreSQL) │
├────────────────────────────────────────────────────────────┤
│ LLM Adapters │ Vector DBs │ Text Extractors │
│ (OpenAI, etc.) │ (Qdrant, etc.) │ (LLMWhisperer) │
└────────────────────────────────────────────────────────────┘
快速启动(5 分钟)
git clone https://github.com/Zipstack/unstract.git
cd unstract
./run-platform.sh
跑起来后浏览器访问 http://frontend.unstract.localhost,用户名和密码都是 unstract。
还在用正则从 PDF 里一行一行扒数据?试试 Unstract 吧。更多有趣的开源项目,欢迎来 云栈社区 逛逛。
仓库地址:https://github.com/Zipstack/unstract
|