Models / 0.8B v3

Jev-Style 0.8B v3: local text classification

Jev-Style 0.8B v3 is the package’s default text decision model. Ask yes/no, multiple-choice, and ordered-score questions on your own machine.

Try the HF demo ↗Run locally ↓View on GitHub ↗

Open weights · Apache-2.0 · Examples for jev-style 0.6.0

0.8Bparameters
25,600request token limit
Text + JSONsupported inputs

A small starting point for text workflows

Use the 0.8B release to explore ticket classification, intent routing, and other defined choices before committing to a larger model. A request can contain several typed questions about one shared text or JSON input.

BuildUse onPublished weight sizes
PyTorch / safetensorsCUDA, CPU, Apple MPS1.50 GB
MLXApple silicon1.50 GB bf16 / 0.80 GB 8-bit
GGUFMatching llama.cpp scorer1.52 GB F16 / 0.81 GB Q8_0 / 0.53 GB Q4_K_M

Allow additional memory for the runtime and inputs. The 0.53 GB figure is the Q4_K_M weight file size, not the default download or total memory requirement.

Start the default release

Use Python 3.10 or newer in a virtual environment. Install the backend for your machine, then keep the server running in this terminal.

bash
# Apple silicon
python -m pip install "jev-style[mlx]"

# Linux, Windows, or an Intel Mac: use this instead
# python -m pip install "jev-style[torch]"

jev-style serve --release 0.8b

The first run downloads the model. Once it is ready, open the local Playground. Run the Python examples in a second terminal with the same environment.

On Apple silicon, jev-style serve --release 0.8b --precision 8bit selects the smaller MLX 8-bit weights. On CPU, use the PyTorch installation and jev-style serve --release 0.8b --backend torch --device cpu.

Ask about a customer message

Run this in a second terminal. It prints the actual selected label, probabilities, and confidence from your server.

python
import json
from jev_style import JevStyle, choice

with JevStyle(base_url="http://127.0.0.1:8765") as model:
    result = model.decide(
        "My parcel has not arrived. Can you check the tracking?",
        {"team": choice("Which team should handle this request?", {
            "billing": "Charges and invoices",
            "shipping": "Parcels, delivery, and tracking",
            "account": "Account access and settings",
        })},
    )
print(json.dumps(result["answers"]["team"], indent=2))

Compare on the task you care about

The published model card reports 64.1% on the 231 public JevBench v1.4.1 items, 68.2% on Banking77, and 75.5% on zero-shot tweet_topic. These datasets test different tasks. Training covers 19 languages; the project reports evaluation across 51 languages.

Short requests using MLX on an M1 Max are reported at approximately 0.15–0.2 seconds after the first call. That is a specific warm-run example, not a promise for every machine or input. Read the model card for protocols and measure your own dataset before choosing an automation threshold.

Keep the limits visible

This release accepts text and JSON, with a total request limit of 25,600 tokens. It does not read images or generate free-form explanations. Use 2B v4 with PyTorch for image questions.

GGUF weights require the release’s jev-score decision scorer. Loading the weights into a generic Ollama, LM Studio, or llama.cpp text-generation workflow does not produce these decision outputs. Use the documented backend setup.

Probability calibration can change across domains. Preserve a review path for ambiguous or unfamiliar inputs and validate each language and class relevant to your application.