Sparrow Document Intelligence Platform
Extract structured data from invoices, statements, and tables, and orchestrate agentic workflows with ML, LLMs, and Vision LLMs.
- Source repo
- katanaml/sparrow
- Stars
- ★ 5.2k
- Last updated
- 10d ago
- License
- GPL-3.0
- Primary language
- Python
- FA score
- 29/100 · Major gaps
At a glance
- How it runs
- Works with
- Portable with changes
- Cost
- Free software; you pay for model usage
- Setup effort
- High · needs real infrastructure
- You'll need
- Typical use
- Finance teams automate bank statement processing, extracting transactions and account summaries.
- Not a fit if
- Teams without a local NVIDIA or Apple Silicon GPU; CPU-only is slow
- Users wanting a quick setup without poppler and Python 3.12.10+
- Teams needing permissive licensing for closed-source commercial use
- Source review
- 29/100 · Major gaps 8 safety controls not found
What does this agent do, and when should you use it?
Sparrow is an API-first platform for enterprise document intelligence, offering structured data extraction, instruction processing, and workflow orchestration. It includes core components: Sparrow Parse (Vision LLM for JSON extraction), Sparrow Instructor (Text LLM for instructions), and Sparrow Agents (Prefect-powered workflow orchestration). The platform supports multiple backends, including MLX on Apple Silicon, vLLM on NVIDIA, Ollama, Hugging Face, and Mistral OCR cloud, all behind a consistent API. The Sparrow UI provides a web interface with drag-and-drop upload and real-time processing. The code is licensed under GPL-3.0, with commercial dual licensing available.
Sparrow accepts documents (PNG, JPG, multi-page PDFs) and JSON schemas via REST API, calls Vision LLMs (e.g., Qwen2.5-VL, Gemma 4) to extract structured data, and returns validated JSON. It supports instruction processing (e.g., arithmetic, document Q&A) via the Sparrow Instructor pipeline. Sparrow Agents orchestrate multi-step workflows, such as medical prescription processing, with visual monitoring via Prefect. The platform provides a CLI tool (sparrow.sh) and a Python API (api.py), with endpoints /inference and /instruction-inference. It offers extract hints and supports multiple backends including MLX, vLLM, and Mistral OCR.
- Finance teams automate bank statement processing, extracting transactions and account summaries.
- Accounts payable departments extract vendor, amount, and tax details from invoices and validate fields.
- Analysts extract table data from multi-page financial reports with page-level output.
- Insurance companies use workflow agents to process medical prescriptions with classification and extraction.
- Developers integrate document extraction into existing backends via REST API.
- Teams without local GPUs use Mistral OCR cloud backend for deployment.
How do you install or deploy this agent?
Install Python 3.12.10 (e.g., via pyenv). Clone the repository, then create a virtual environment and install dependencies: pip install -r requirements_sparrow_parse.txt (ensure sparrow-parse[mlx] on macOS, sparrow-parse on Linux/Windows). On macOS, run brew install poppler; on Ubuntu/Debian, sudo apt-get install poppler-utils. Start the server with python api.py (default port 8002).
How do you use this agent?
Use the CLI: ./sparrow.sh '[{"instrument_name":"str", "valuation":0}]' --pipeline "sparrow-parse" --options mlx --options mlx-community/Qwen2.5-VL-72B-Instruct-4bit --file-path "data/bonds_table.png". Or via REST: curl -X POST 'http://localhost:8002/api/v1/sparrow-llm/inference' -F 'query=[{"field_name":"str", "amount":0}]' -F 'pipeline=sparrow-parse' -F 'options=mlx,mlx-community/Qwen2.5-VL-72B-Instruct-4bit' -F '[email protected]'. For instructions, use /instruction-inference. See README examples and API docs (/api/v1/sparrow-llm/docs).
What are this agent's strengths and limitations?
- Multi-backend support (MLX, vLLM, Ollama, Mistral OCR) adapts to different hardware environments.
- Pluggable pipelines combine Vision LLM, Text LLM, and agent workflows.
- Built-in JSON schema validation and extraction hints improve accuracy.
- Includes web UI and monitoring dashboard for visualization and tracking.
- Requires specific Python version (3.12.10+) and system libraries like poppler, making setup complex.
- Needs local GPU (NVIDIA or Apple Silicon) for reasonable performance; CPU-only is slow.
- GPL-3.0 license may restrict commercial use; commercial license is paid.
- No documented Docker or Kubernetes deployment for large-scale production.
How does this agent compare with similar options?
The README does not mention direct alternatives, but by functionality, it competes with cloud document extraction services like Azure Document Intelligence or Amazon Textract, yet Sparrow emphasizes local deployment and pluggable backends.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Sparrow Document Intelligence Platform This agent | 29 · Major gaps | CLIFree + model costs | ★ 5.2k | 10d ago | Python | — |
| Hiring Agent Resume Scorer | 62 · Some gaps | CLIFree + model costs | ★ 7.3k | 14d ago | Python | — |
| Cube Core | 59 · Major gaps | Self-hosted serviceFreemium | ★ 21k | today | Rust | — |
| OpenBB Open Data Platform | 37 · Major gaps | Library / SDKFreemium | ★ 74k | today | Python | — |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: The repository provides no documentation on permission management, user confirmation, data flow transparency, sensitive data handling, dependency security, external effects, rollback, or source attribution. All trust criteria are unmet, hence score 0.
Evidence shows: README provides multiple examples and outputs, but no tests or verification results; self-consistency is based only on documentation, score 1. Dependency availability: lists multiple backends and dependencies, but no version pinning or integrity checks, score 1. Failure messages: no documentation on error handling or failure messages, score 0.
Evidence shows: README clearly identifies target audience (enterprise document intelligence) and multiple use cases (invoices, tables, bank statements), score 2. Capability boundaries: describes purposes of different pipelines, but no explicit limitations or boundaries, score 1. Trigger precision: provides CLI and API parameters, but no detailed trigger conditions, score 1. Environment fit: provides installation instructions for multiple platforms and hardware, score 2.
Evidence shows: README is well-structured with table of contents, installation, examples, etc., good information architecture, score 2. Install notes are detailed with platform-specific steps, score 2. Naming stability: version number mentioned in README, but no changelog, score 1. Examples and FAQ: multiple examples provided, but no FAQ, score 2. Known limitations: none mentioned, score 0. License is GPL-3.0, score 2. Versioning and changelog: no CHANGELOG file, score 0. Maintenance responsibility: no clear maintainer or contribution guidelines, score 1.
Evidence shows: Output is structured JSON, directly usable, score 2. Marginal value: provides multiple pipelines and features, but no comparison with existing solutions, score 2. Cost-benefit: no performance benchmarks or cost analysis, score 1.
Evidence shows: Claims in README are not supported by tests or benchmark data, score 1. Cross-source corroboration: no other sources to verify, score 0. Fact-inference separation: README does not clearly distinguish facts from inferences, score 1.
- Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
- Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
- Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
- Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
- Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
- Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
- Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
- Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
- The repository lacks any security or permission documentation; assess risks before deployment.
- Dependencies are not version-pinned, posing supply chain risks.
- No known limitations are documented, potentially hiding issues.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
Sparrow 0.6.0 Rebuilt Sparrow UI from Gradio to Next.js 16 + shadcn. Key improvements: - Process page — faster document upload and extraction workflow, JSON result viewer with syntax highlighting, inline summarization, example documents pre-loaded - Dashboard — real-time analytics with KPI cards, sparklines, inference timeline chart, model usage and country distribution - Feedback page — user feedback collection - Dark mode — system preference detection with manual toggle - Mobile support — fully responsive layout across all pagesView on GitHub ↗ -
Release notes excerpt
Sparrow 0.5.0 Structured Data Extraction with Local Vision AI 🚀 What's New New Model Lineup The inference model lineup has been redesigned for clarity and performance: - Standard mode — Ministral 3 14B: fast, reliable extraction for everyday documents - Tables Only mode — dots.ocr + Sparrow custom processing pipeline: specialized for complex structured table extraction using the dots.ocr → HTML → Sparrow Templates → JSON flow - Advanced mode — Gemma 4 31B Dense: maximum accuracy for demanding document types vLLM Backend — NVIDIA RTX 6000 Pro Support …View on GitHub ↗ -
Release notes excerpt
New MLX backend Improved Sparrow backend with upgraded MLX libs, new Mistral 3.2 model and improved UI.View on GitHub ↗