Laya on MLX
laya-mlx is an independent MLX port of Laya that runs the original weights on the Apple Silicon GPU with no PyTorch or Transformers runtime. It keeps upstream prompt formatting, calibration and output schema, and it is the base for many Mac demos, agents and benchmarks.
140 projects
jev-context-rot
casperkwok
Reproduces an experiment comparing context sensitivity in Jev, Laya and Decider models
LayaService
wj1313677
Serves the Laya decision model through a local REST API using MLX on Apple Silicon
classifier-laya
josecruset
A local browser interface for testing Laya-MLX typed-decision models on Apple Silicon
jev-vs-laya
Cognition-Forge
Compares Jev and Laya variants across typed-decision tasks
laya-universal
abusuraihsakhri
Provides cross-platform inference utilities for Laya checkpoints using ONNX Runtime and MLX
laya-browser
Benny93
Uses a local Laya model to resolve plain-English selectors in browser automation
laya-vs-jev
alilibx
Benchmarks open-weight Laya models against TypeSafe Jev on labelled datasets
laya-mlx-voxel
yuxino
Builds voxel reliefs by using Laya-MLX to choose extrusion depths from image pixel statistics
dino-jump
ozbillwang
A browser runner game uses Laya scores to evaluate jump, duck, and run actions
TetrisGame_Laya
RehmanaliMomin
Plays Tetris by using a fine-tuned Laya model to choose piece rotations and drop columns
laya-local-http-server
ratheesh-aot
Serves the Laya typed-decision model through a local HTTP API using MLX or PyTorch
laya-vs-jev-traffic
ameeetgaikwad
Compares local Laya and cloud Jev in a real-time traffic-control simulation
laya-fine-tune-bn-eco-voice
nafi-ullah
Fine-tunes multilingual Laya for typed decisions in a Bangla e-commerce voice agent
nlaut
benkya
Runs natural-language browser tests with deterministic, vision-model, and Laya-based judgments
cut
harshpreet931
Uses Laya to label and cut unnecessary lines from posts in a browser or local app
laya-steering-lab
Hantlowt
Tests methods for specializing frozen Laya models and benchmarks their accuracy and runtime
laya-first-look
cvranjith
Explores base Laya checkpoints locally on Apple M4 and reports informal behavior and latency measurements
ghosthand
ameerhmz
A local macOS voice and computer-use agent uses Laya for typed decisions
reflex-engine
chenshuai9101
A Python toolkit collects, calibrates, and automates routine decisions using local Laya
@gabedsam01/decision-maker
gabedsam01
Provides typed decisions for AI agents through a Pi adapter and local Laya or hosted Jev
Install
Requirements from the laya-mlx README: Apple Silicon, Python 3.11+, macOS 14+.
pip install laya-mlx
Pre-converted FP16 checkpoints are on Hugging Face: aac6fef/laya-mlx, aac6fef/laya-multilingual-mlx and aac6fef/laya-typed-decisions-mlx. You can also load the original convaiinnovations/laya IDs.
Router and CLI
The port includes the upstream language router and presets:
from laya_mlx import Router, triage_questions
router = Router(dtype="float16", max_loaded=2)
result = router.predict({"message": "发票被重复扣款,请退款。"}, triage_questions())
print(result["routing"]) # multilingual
For the terminal demo, where Laya plays Snake:
pip install 'laya-mlx[demo]'
hf download aac6fef/laya-multilingual-mlx
laya-snake
Reported numbers
On an M3 Max, FP16, one short question: 13.42 ms P50 for the 421M English model and 7.39 ms for the 322M multilingual model. The README states that all three checkpoints matched the upstream answer on 63/63 validation questions in FP32 and FP16. That measures port fidelity, not task accuracy.
Projects built on laya-mlx
- laya-ultrafast: a port of browser-use/jev-ultrafast that makes browser decisions locally.
- laya-mcp (wsargent): an MCP server with triage, guard, moderation and email tools.
- laya-fast: adds Neural Engine execution next to the MLX GPU.
- laya-jev-lab and jev-laya-benchmark: independent Jev comparisons that use laya-mlx as the Laya side.
- laya-vs-jev: Laya and Jev playing Chrome's T-Rex game side by side.
Caveats
This is not an official Convai Innovations release. Training and fine-tuning stay in the upstream project. BF16 can be requested but is not part of the published validation.
More ways to use Laya