File size: 1,103 Bytes
180b52e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
---
license: mit
library_name: programasweights
tags:
- onnx
- neural-programs
- prefix-tuning
---

# paw-interpreter-onnx

ONNX runtime models for ProgramAsWeights.

## Model Files

**Core (always downloaded):**
- `text_embeddings.onnx` - Text tokenizer embeddings
- `interpreter.onnx` - Main interpreter model
- `tokenizer/` - Fast tokenizer

**Optional (lazy loaded):**
- `image_encoder.onnx` - Image encoder (CLIP + projection) - only downloaded when using image inputs

## Usage

```python
import programasweights as paw

# Text-only program (no Pillow needed!)
fn = paw.function("abc123")
result = fn("Extract emails: [email protected]")

# With images (requires: pip install programasweights[images])
from PIL import Image
img = Image.open("photo.jpg")
result = fn("Count apples:", img)
```

## Installation

```bash
# Base install (text-only, ~70MB)
pip install programasweights

# With image support (~85MB)
pip install programasweights[images]
```

## Model Details

- Base model: Qwen2-0.5B
- Runtime: ONNX (lightweight, fast)
- Input: .paw files (prefix KV cache)
- Output: Generated text