Introducing Lin-1

Small models that write Rust that compiles.

Open code models trained only on Rust that compiled and passed its tests. Small enough to run on your own machine.

lin-1-locus

    
0%HumanEval-Rust pass@10, Locus 4B
0%MBPP-Rust pass@10, Locus 4B
0BEpsilon Preview, ahead of models 3–4× its size
Models

The Lin-1 family

Open weights under Apache 2.0. Safetensors for Transformers and vLLM, GGUF for llama.cpp and Ollama.

Benchmarks

How Lin-1 compares

Rust versions of HumanEval and MBPP. Generated code is compiled and run against the reference tests.

Lindot Temper Other open models
ModelSizeHumanEval p@1 / p@10MBPP p@1 / p@10HoldoutLBPP

Holdout: our private set of 1,726 Rust tasks with tests that no model was trained on. LBPP: Rust split of Less Basic Python Problems (129 tasks). Holdout and LBPP were run only for Lindot and Temper models.

Approach

Only code that runs

Small models copy what they see, so everything they see has to work.

01

Curate

Permissively licensed Rust from Stack-Edu and Strandset-Rust. Kept only if it compiles and passes its own unit tests.

02

Decontaminate

Every sample is checked for 12-gram overlap with all benchmarks we report. Matches are dropped.

03

Reinforce

Reinforcement learning with one reward: the code compiles and hidden tests pass. Used for Epsilon Preview.

vllm serve LindotAI/Lin-1-Locus --max-model-len 8192
llama-cli -hf LindotAI/Lin-1-Locus -p "Write a Rust LRU cache with tests"