rhymeas/Mavery-Geselle-2B-MLX-4bit
Mavery App · Geselle 2B
Mavery App's stronger bilingual on-device model for turning spoken drafts into finished text.
Built for Mavery App — the Mac app that turns spoken thoughts into text wherever you are writing.
Geselle reads raw German, English and mixed-language ASR transcripts and returns cleaner text: fewer fillers and false starts, resolved self-corrections, stronger sentence structure, better punctuation, and useful formatting without translating away the speaker's language.
This is the model for the difficult part after speech recognition. The ASR hears the words; Geselle tries to understand which version the speaker actually meant and how the result should read.
audio → ASR such as Parakeet or Whisper → Mavery Geselle → protected final textWhy Geselle exists
Generic instruct models can polish text, but dictation cleanup is a narrower job. The model must edit boldly enough to remove a discarded phrase while staying conservative around names, numbers, negations, quotations and intentional repetition.
Geselle was trained for that tradeoff. It is Mavery's higher-capacity local tier for:
- German and English dictation cleanup
- Denglisch and other natural language switching without forced translation
- explicit self-corrections and abandoned starts
- repetitions, stutters and filler removal
- punctuation, capitalization, sentence boundaries and list-friendly structure
- local processing on Apple silicon
It outputs cleaned text only. It is not a chat assistant and not an audio model.
What the job looks like
These examples describe the intended cleanup behavior. Exact output still depends on the prompt and transcript produced by your ASR.
Development result
On Mavery's frozen 50-case bilingual development panel, Geselle with its short prompt produced 44/50 accepted raw outputs and 46/50 after an experimental content guard. The same warm model run measured 1,043 ms median and 1,828 ms p95 for generation on the development Mac, excluding model loading, audio, ASR and insertion.
That is a strong development result, not a claim of 92% universal dictation accuracy. The cases are known development material, and the guard was research code rather than this model alone. We publish both the result and its boundary because cleanup quality only matters when the complete pipeline preserves what the speaker meant.
Choose your Mavery model
Quickstart with MLX
pip install mlx-lmfrom mlx_lm import load, generate
from mlx_lm.sample_utils import make_sampler
MODEL = "rhymeas/Mavery-Geselle-2B-MLX-4bit"
SYSTEM = (
"Clean up dictation. Apply clear spoken self-corrections; keep quotations "
"and examples literal. Otherwise preserve wording and language. Output text only."
)
RAW = "The meeting is Thursday at ten no wait make that eleven and Mavery stays Mavery"
model, tokenizer = load(MODEL)
messages = [
{"role": "system", "content": SYSTEM},
{"role": "user", "content": f"[TEXT TO PROCESS]\n{RAW}\n[END TEXT]"},
]
prompt = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=False,
)
print(generate(
model,
tokenizer,
prompt=prompt,
sampler=make_sampler(temp=0.0),
max_tokens=192,
verbose=False,
))Use greedy decoding and disable thinking. Preserve the raw transcript and put a content check after the model when names, numbers or exact quotations matter.
Training data
The internal LIRA data package contains 26,669 reviewed rows split into 18,683 training, 3,993 development, and 3,993 locked evaluation rows. It covers German, English, mixed-language dictation, self-corrections, repetitions, fillers, punctuation, preservation cases, names, numbers, negations, and quoted text. Geselle also received targeted refinement on repair and preservation cases.
The dataset itself is not included in this repository. Private dictations were not uploaded. We publish the split sizes and evaluation boundary so the model's training scale is visible without presenting internal material as an open benchmark.
Built for Mavery App
Geselle is based on Qwen3.5-2B, fine-tuned for Mavery App's post-ASR cleanup task and exported for MLX. It is a hybrid artifact: a 4-bit affine base with selected adapted projections kept unquantized to preserve the trained behavior.
This repository contains the real trained Geselle artifact used by Mavery App. It is not a renamed vanilla Qwen model.
Limits
Geselle can still make destructive edits. Quotations, negations, names, numbers and ambiguous restarts deserve independent protection. It may also be slower than a deterministic cleanup path, especially during first load. Test the complete ASR → cleanup → guard → insertion route on your own language mix before deployment.
Training data and private dictations are not included in this repository.
Learn more and download the Mac app at mavery.app.
Artifact
- Base:
Qwen/Qwen3.5-2B - Format: MLX safetensors
- Precision: hybrid 4-bit affine base, group size 64, with selected adapted projections unquantized
- Weight SHA-256:
196cdac8dc6ad4ff134ac55ba8bec4e76c7090fb5d99ba3a490841e68f9852e6 - Languages trained for this use: German and English
License
Apache 2.0. See LICENSE and NOTICE. Mavery App fine-tuned and exported the model from Qwen3.5; retain the applicable notices when redistributing it.
