laya-rust
Pure-Rust Laya inference on candle for CPU, Metal or CUDA, with a CLI and a local web console showing close calls.
Overview
laya-rust provides Rust inference for Laya on candle with no Python, torch or ONNX export step, running on CPU, Metal or CUDA. You download the Apache-2.0 Laya checkpoint (about 847 MB, ungated) or its multilingual or typed-decisions variants, which share the same layout; the README recommends the fine-tuned typed-decisions variant as the default for typed decisions.
The CLI takes a state file and a questions JSON file and prints Jev-shaped output: a choice with probabilities and confidence, a score with legend, distribution and confidence, and a noul probability, plus Laya's act-probability field and token usage. A feature-gated web console serves a single page with input on the left and the decision on the right, showing each answer's verdict, probability, confidence and the runner-up so close calls are visible. It is aimed at developers who want a small, dependency-light Rust binary for Laya.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which department should handle this ticket? | billing · technical · sales |
| Score | How urgent is this ticket? | not urgent · low · normal · high · critical outage |
| Yes / no | Does this need a human? | — |
How it works
- Download Laya weights from Hugging Face
- Build with cargo
- Run the CLI with a state file and questions JSON
- Or serve the local web console
Strengths
- No Python or ONNX step
- CPU, Metal and CUDA support
- Console highlights close calls via the runner-up
Caveats
- Manual weight download
- Personal project without published benchmarks in the excerpt
Getting started
Download the weights, cargo build --release, then ./target/release/laya --state-file examples/ticket.txt --questions examples/questions.json.At a glance
- Type
- Model
- Status
- beta
- Language
- Rust
- Runtime
- candle CLI and local web console
- Has code
- yes
Use cases and integrations
How curated lists describe it
Pure-Rust inference for Laya on candle: ModernBERT-large with its RL decision head, no Python at serving time.
MrJev/awesome-jev
Frequently asked questions
Which checkpoint should I use?
The README suggests the fine-tuned typed-decisions variant.
Does it need Python?
No, it is pure Rust on candle.
Which hardware does it support?
CPU, Apple Metal and CUDA.
Related projects
Docker service exposing local Laya, Von, a CLM head or hosted Jev through one TypeSafe-compatible HTTP and MCP endpoint.
MCP serverbetaPythonConverts open Jev reproductions (Laya, Kev, NanoJev, PlayJev) to INT8 ONNX for offline CPU decisions at about 15.6 ms per question.
ServicebetaPythonNative Go runtime serving Gemma 4 12B as a Jev-like decision model with hand-tuned PTX kernels and no CGo or CUDA toolkit.
ProjectbetaGoGo harness for System One models: hosted Jev, open Kev in-process via llama.cpp, and Cloudflare Clef, with typed helpers and a CLI.
ServicebetaGoGo gateway exposing the Jev /v1/systemone contract over ordinary LLM backends by reading single-token label logprobs.
ServicebetaGoRuns Intern-Decision-0.8B on Apple Silicon behind a local /v1/systemone endpoint that accepts screenshots for agent decisions.
ServicebetaPython