sparrow

从文档和图片中一键提取结构化数据,驱动自动化流程。

sparrow 是一个专注于结构化数据提取、指令调用和智能体工作流的开源框架,结合了传统机器学习、大语言模型和视觉大模型的能力。它解决的核心问题是让开发者能够轻松地从非结构化数据(如文档、图片)中提取出符合特定 schema 的字段,并支持将提取结果直接用于触发后续的自动化指令或智能体决策。项目提供了一套简洁的 API 和配置化 schema 定义方式,支持多种模型后端(如 OpenAI、本地模型),并内置了数据校验、错误处理和重试机制,帮助用户构建可靠的数据管道。其亮点在于将视觉信息(如表格、票据)与文本语义结合,实现多模态信息抽取,同时支持流式处理和批量任务,适用于知识库构建、表单自动化、客服工单解析等场景。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 5224
维护状态 较活跃
是否开源
定价模式 free

项目数据

分类开源模型
开发团队katanaml
所属国家
定价模式free
价格说明开源项目,GPL-3.0许可,可自行部署使用,无付费版本。
访问状态
是否开源
开源协议GPL-3.0
主要语言Python
技术栈/模型agentic-ai,computer-vision,documentai,huggingface-transformers,llm,machinelearning,vllm
GitHub 星标★ 5224
30天Star增速
HF 下载量
上线时间2022-01-08 00:00:00
最近更新2026-09-21 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数4

使用教程

难度:进阶 约 20 分钟 部署方式:本地安装 6 步

环境要求

  • Python 3.12.10(README 指定版本)
  • pyenv(用于安装和切换 Python 版本)
  • pip(安装 Python 依赖)
  • macOS 处理 PDF 需安装 poppler

安装与启动步骤

  1. 1安装 Python 3.12.10

    用 pyenv 安装 3.12.10 并设为全局版本,保证后续依赖兼容。

    pyenv install 3.12.10
    pyenv global 3.12.10
  2. 2克隆并进入目录

    拉取 sparrow 源码,进入 sparrow-ml/llm 目录,后续命令都在此执行。

    git clone https://github.com/katanaml/sparrow.git
    cd sparrow/sparrow-ml/llm
  3. 3安装解析依赖

    在该目录下根据 requirements_sparrow_parse.txt 安装 Sparrow Parse 所需依赖。

    pip install -r requirements_sparrow_parse.txt
  4. 4安装 poppler

    macOS 处理 PDF 需要 poppler,用 Homebrew 安装;非 macOS 用户可跳过此步。

    brew install poppler
  5. 5启动 API 服务

    在 sparrow-ml/llm 目录运行 api.py,指定 8002 端口启动服务。

    python api.py --port 8002
  6. 6修复 mlx 安装失败

    若 mlx-vlm 安装失败,先升级 pip,再禁用缓存重新安装该包。

    pip install --upgrade pip
    pip install mlx-vlm --no-cache-dir

关键配置

配置项必填说明示例
--port启动 api.py 时指定 API 服务监听端口8002
--crop-size图像裁剪尺寸,显存不足时可开启以降低占用100

如何确认成功

执行 pdftoppm -h 能看到帮助信息;再用 curl http://localhost:8002/health 检查服务是否正常响应。

常见问题

Q:mlx-vlm 安装失败怎么办?

A:README 给出的办法是先执行 pip install --upgrade pip,然后运行 pip install mlx-vlm --no-cache-dir 重新安装。

Q:pip install 报 AttributeError: 'NoneType' object has no attri

A:README 将该报错列为已知安装问题,可先按 mlx 修复流程升级 pip 并禁用缓存重装依赖;注意确认使用的是 Python 3.12.10。

Q:PDF 处理相关命令不可用怎么办?

A:macOS 需安装 poppler:brew install poppler,安装后用 pdftoppm -h 验证是否可用。

Q:提示显存或内存不足怎么办?

A:改用更小或 MoE 模型、加 --crop-size 100 开启图像裁剪,或逐页处理 PDF 而非整份文件。

Q:模型加载失败如何排查?

A:先确认服务已运行:curl http://localhost:8002/health,若端口不通说明 api.py 未启动或端口被占用。

注意事项

  • 服务在本机自行运行,README 强调不依赖外部云 API 调用。
  • Python 版本必须按 README 使用 3.12.10,通过 pyenv 管理。
  • 处理 PDF 依赖 poppler,macOS 用 Homebrew 安装。
  • 大文件或多页 PDF 建议逐页处理或开启裁剪,降低显存压力。

核心亮点

  • 支持视觉+文本多模态提取,能处理扫描件和表格。
  • schema 配置灵活,可自定义字段和校验规则。
  • 内置重试和错误处理,提升数据提取的稳定性。

不足之处

  • 依赖外部 LLM API,离线部署成本高。
  • 文档和社区尚在建设中,上手资料有限。

适用场景

  • 自动化处理发票、合同等票据信息录入。
  • 从网页或 PDF 中抽取实体关系构建知识图谱。
  • 在 RPA 流程中作为智能数据解析模块。

替代项目

unstructured、LlamaIndex、LangChain

项目介绍

sparrow 是计算机视觉领域的开源项目,由 katanaml 开发,2022 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(5,224)位列前 9%,在计算机视觉分类的 446 个项目里位列前 9%。

近 41 天,它的 GitHub 星标从 5,194 增加到 5,224,净增 30。

项目保持着较活跃的维护节奏,最近一次代码更新于 2026-09-21。GPL-3.0许可,可自行部署使用,无付费版本。

它主要面向的使用场景是:自动化处理发票、合同等票据信息录入。同类可对比的替代方案包括 unstructured、LlamaIndex、LangChain。

同类项目推荐

modlens 开源

给纯文本编码代理装上眼睛,粘贴图片即刻获得结构化视觉证据。

The first vision plugin for DeepSeek Harness, and the vision bridge for every text-o···

★ 4019 2026-08-19
opencv 开源

开箱即用的视觉算法库,搞定图像视频处理与识别

Open Source Computer Vision Library

★ 90930 2026-08-10
OpenCVTutorials 开源

中文 OpenCV 教程,从入门到实战,边看边跑代码

OpenCV-Python4.1 中文文档

★ 1430 2026-08-20
DEIMv2 开源

用DINOv3做实时检测,又快又准,直接落地。

[DEIMv2] Real Time Object Detection Meets DINOv3

★ 2046 2026-08-14