Skip to content
Open source · Local-first

An open-source Jev alternative that runs locally.

Describe your function in English. ProgramAsWeights compiles it into a reusable neural program that runs locally on your CPU.

pip install programasweights
email_triage.py
import programasweights as paw

# Compile English into a local function.
fn = paw.compile_and_load(
    "Classify if a message needs immediate attention or can wait"
)

# Runs locally — no internet, no API call from here on.
fn("Thesis defense moved to 3pm, need your signature today")
# Returns "immediate"

Compilation uses our hosted compiler. After the program and interpreter download, calls run locally without an external API.

Define the task once. Reuse it across inputs.

A larger compiler generates task-specific weights for a shared 0.6B interpreter. Only the small interpreter is needed to run your function.

Your own rules

Define your categories, extraction rules, and output format in English. Change the description to fit your application.

Local execution

Process inputs on your own CPU after the initial download. Your emails, documents, and logs stay on your machine.

Reusable programs

Save and share compiled functions. Load them again, apply them to new inputs, and combine them with ordinary code.

More than classification

Explore all demos →

These web demos use hosted inference. Use the Python SDK to run the downloaded programs locally.

Coming from Jev?

Both approaches put fuzzy judgments inside ordinary code. With PAW, you compile a task into a reusable program, then choose local execution or hosted inference. The code and model weights are public.

Jev’s API provides typed questions with probabilities and confidence information. PAW functions take text and return text, including labels, JSON, and extracted content. The APIs differ; PAW does not provide calibrated confidence scores.

Frequently asked questions

Do I need a GPU?

No. The standard interpreter is Qwen3-0.6B and runs on a CPU. The SDK also supports GPU acceleration.

Do I need training data?

No. The Standard compiler generates an adapter from your specification. Bring examples to test it. The Finetune compiler can synthesize training examples and further train the adapter for higher accuracy.

Can I use hosted inference instead?

Yes. Call the same public program through POST /api/v1/infer without downloading a model. Inputs are sent to our service in this mode. See the HTTP example.

How should I evaluate a program?

Test on representative examples, inspect mistakes, and refine the specification. Keep a separate test set for the final evaluation. See the recommended workflow.

Try the Playground.

Build a function, test it on your examples, and run it on your own hardware. The code, model weights, and papers are public.

Try the Playground