openjev-MLX / README.md
abhishekgahlot's picture
Licence: CC BY-NC 4.0 weights, commercial contact, licence files
a9dcc20 verified
|
Raw History Blame Contribute Delete
2.76 kB
---
license: cc-by-nc-4.0
base_model: openjev/openjev
tags:
- decision-model
- zero-shot-classification
- agents
- mlx
- apple-silicon
---
# OpenJev, MLX 8-bit (Apple silicon, text only)
The language model of [OpenJev](https://huggingface.co/openjev/openjev) converted for Apple silicon with mlx-lm (8-bit, group size 64), about 27 GB. Everything about the model, the API and the results is in the main card; this page says what this build is, how it was checked and how to run it.
**
**Text only.** The converter keeps the language model and drops the vision tower, so this build answers questions about text, JSON and DOM, not screenshots.
## Measured, not assumed
The same frozen 10,000 text questions, the same helper code, the same fixed calibration, on a Mac (M5 Max):
| test | 16-bit model as served on an H100 | this MLX build on a Mac |
|---|---|---|
| 10,000 text questions, 34 public sources | 84.03% (8,403) | 84.03% (8,403); 72 questions each way, 95% interval −0.24 to +0.22 points |
1.5% of individual answers change between the two (150 of 10,000), in both directions. The rule fixed before the run was "no more than 0.5 points below the served model"; it passes. Speed on the M5 Max was about 0.3 s for a short text decision (the run took 80 minutes for 10,000 questions, one at a time).
## Run it
```bash
uv venv mlx --python 3.12
uv pip install --python mlx/bin/python "mlx==0.32.2" "mlx-lm==0.31.3" \
"transformers==5.17.0" "openai==3.16.2" "huggingface-hub==1.32.0"
# Download the text-only weights and the two helper files.
mlx/bin/hf download openjev/openjev-MLX --revision ddbabafe9fbf296d767a91ad99717752530a3927 --local-dir openjev-MLX
mlx/bin/hf download openjev/openjev helper/shim.py helper/shim_mlx.py \
--revision 1c341f65bfe5d50fdb935c71e9739c9e0938d6c4 --local-dir openjev-api
TOKENIZER=openjev-MLX SHIM_MODEL=openjev-MLX \
READOUT_T=0.85 READOUT_NOUL_T=1.829074 READOUT_NOUL_BIAS=0 \
READOUT_TARGETED=1 READOUT_INSTR_STYLE=pyrepr SHIM_STAGGER=1 \
mlx/bin/python openjev-api/helper/shim_mlx.py \
--helper openjev-api/helper/shim.py --model openjev-MLX --port 3000
```
Then call `http://localhost:3000/v1/systemone` exactly as the main card describes. `shim_mlx.py` swaps only the helper's model client for an MLX one; prompts, option layout, readout and calibration are the helper's own code.
## Licence
Weights: CC BY-NC 4.0 (research and non-commercial use), the same as the main repository. For a commercial licence, email [support@loopai.com](mailto:support@loopai.com). Helper and serving files: Apache 2.0. The licence texts and the base model's attribution are in `LICENSE`, `LICENSE-APACHE-2.0` and `NOTICE`.
OpenJev is an independent project, not affiliated with TypeSafe; Jev is their product.