TheoLeeCJ/SemIf-OpenJev

Semantic ifs from open models, on a 3090 at home. Independent; not affiliated with Jev or TypeSafe.

View on GitHub ↗Jump to charts ↓

TheoLeeCJ/SemIf-OpenJev has 4.5k+ stars and 350+ forks on GitHub, is written in Python, and was last pushed on Sep 23, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 37 minutes ago
Added to GitGenius on September 21st, 2026
Created on September 16th, 2026
Open Issues & Pull Requests: 48 (+0)
GitHub issues: Enabled
Number of forks: 358
Total Stargazers: 4,845 (+0)
Total Subscribers: 15 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 0.3 hours
Mean response time: 4.4 hours
90th percentile: 12.9 hours
Tracked items: 3

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 13
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 0 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

SemIf is a tool for making semantic decisions from open language models running locally on consumer hardware.

The problem it solves is that agent systems often need to make small runtime decisions—routing, retries, evidence validation—by asking a language model, only to immediately parse the generated text back into a boolean or categorical choice. This wastes the model's generation capacity on text that software will discard. SemIf reproduces the interface pattern of Jev, a closed TypeSafe service for semantic decisions, but using open models. Instead of generating and parsing text, it reads typed option probabilities directly from the model's logits, skipping the answer sentence and decoding overhead entirely.

The tool suits projects where you control the hardware and want to avoid cloud dependencies or waitlists for decision-making services. It runs on a single GPU—the README demonstrates it on a 3090—and also supports Apple Silicon via MLX and CPU-only inference via llama.cpp. The baseline approach works with frozen 4B models and includes temperature calibration per workload. If you need semantic decisions embedded in agent loops and prefer local execution to external APIs, this is a direct alternative to closed services. The README does not compare it to other open-source decision frameworks.

The project accepts contributions across multiple backends and model variants. Recent work added PyTorch and MPS support for Apple Silicon, integrated a Qwen 27B variant with committed evidence, and implemented per-workload temperature calibration. The tool maintains deterministic prompt construction so that scores remain consistent across backends, with explicit documentation of where quantized weights or different evaluation paths may introduce small numerical differences. Each decision result includes typed scores, timing, model revision, and a prompt hash for reproducibility.