Zipstack /unstract

LLM-Driven Extraction of Unstructured Data — Built for API Deployments & ETL Pipeline Workflows

★ 7,409⑂ 750👁 44⑃ 1,760● 72▤ 618
PythonCreated 2024-02-21unstract.com
7,409
stars
+0+8+131
750
forks
44
watchers
1,760
prs
72
issues
618
releases
–
discussions

README

Unstract
  Turn Unstructured Documents into Structured Data
  
    Documentation |
    Enterprise
  
  
    
    
    
    
    
    
  
  
    
    
    
    
    
  
  
    
    
    
    
  


 What is Unstract?

Unstract uses LLMs to extract structured JSON from documents — PDFs, images, scans, you name it. Define what you want to extract using natural language prompts, and deploy as an API or ETL pipeline.

Built for teams in finance, insurance, healthcare, KYC/compliance, and much more.

 Current State vs. Unstract

| Task | Without Unstract | With Unstract |
|------|------------------|---------------|
| Schema definition | Write regex, build templates per vendor | Write a prompt once, handles variations |
| New document type | Days of development | Minutes in Prompt Studio |
| LLM integration | Build your own pipeline | Plug in any provider (OpenAI, Anthropic, Bedrock, Ollama) |
| Deployment | Custom infrastructure | ./run-platform.sh or managed cloud |
| Output | Unstructured text blobs | Clean JSON, ready for your database |

 ⭐ If Unstract helps you, star this repo!

 !Star Unstract

 ✨ Key Features

Prompt Studio — Define document extraction schemas with natural language. Docs →

!Prompt Studio

API Deployment — Send a document over REST API, get JSON back. Docs →

!API Deployment

ETL Pipeline — Pull documents from a folder, process them, load to your warehouse. Docs →

MCP Server — Connect to AI agents (Claude, etc.) via Model Context Protocol. Docs →

n8n Node — Drop into existing automation workflows. Docs →

 🚀 Quickstart (~5 mins)

 System Requirements & Prerequisites

- Linux or macOS (Intel or M-series)
- Docker & Docker Compose
- 8 GB RAM minimum
- Git

 Run Locally

bash
 Clone and start
git clone https://github.com/Zipstack/unstract.git
cd unstract
./run-platform.sh


That's it!

- Visit http://frontend.unstract.localhost in your browser
- Login with username: unstract password: unstract
- Start extracting data!

 📦 Other Deployment Options

 Docker Compose

bash
 Pull and run entire Unstract platform with default env config.
./run-platform.sh

 Pull and run docker containers with a specific version tag.
./run-platform.sh -v v0.1.0

 Upgrade existing Unstract platform setup by pulling the latest available version.
./run-platform.sh -u

 Upgrade existing Unstract platform setup by pulling a specific version.
./run-platform.sh -u -v v0.2.0

 Build docker images locally as a specific version tag.
./run-platform.sh -b -v v0.1.0

 Build docker images locally from working branch as current version tag.
./run-platform.sh -b -v current

 Display the help information.
./run-platform.sh -h

 Only do setup of environment files.
./run-platform.sh -e

 Only do docker images pull with a specific version tag.
./run-platform.sh -p -v v0.1.0

 Only do docker images pull by building locally with a specific version tag.
./run-platform.sh -p -b -v v0.1.0

 Upgrade existing Unstract platform setup with docker images built locally from working br

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON