Amaretto 3B

Amaretto 3B is a fine-tuned language model by AmarettoLabs, built for literary writing and writing assistance. It is fine-tuned from Ministral 3 3B Instruct using QLoRA.

The Amaretto line is designed to run on everyday hardware. Amaretto 3B is the lightest model in the family — well-suited for constrained devices, edge deployments, and local use.

Website: amaretto.ai · Contact: hello@amarettolabs.com


What it's good at

  • Literary prose — scene writing, character voice, emotional interiority
  • Writing assistance — editing, tone adjustment, conciseness, clarity, line editing
  • Continuation — picking up a passage and extending it in the same register
  • Style transfer — shifting a piece between registers (formal ↔ casual, journalistic ↔ personal)

Intended use

Amaretto 3B is a general-purpose writing companion. It works out of the box with no system prompt. For the strongest literary output, you can use the system prompt it was trained with:

You are a skilled literary fiction writer. Write with precision,
emotional depth, and a strong sense of voice. Favor showing over telling.
Use plain, direct language — avoid similes, forced comparisons, and
decorative imagery.

You can replace or extend this prompt for your own use case.


Usage

With llama.cpp / Ollama (GGUF)

GGUF quantized versions are available in this repository:

File Size Notes
amaretto-3b-Q8_0.gguf ~3.6 GB Near-lossless; recommended where memory allows
amaretto-3b-Q5_K_M.gguf ~2.4 GB Strong quality on everyday hardware
amaretto-3b-Q4_K_M.gguf ~2.1 GB Smallest recommended quantization
llama-cli -m amaretto-3b-Q8_0.gguf \
  --ctx-size 4096 \
  -sys "You are a skilled literary fiction writer." \
  -p "Write the opening of a scene where a woman returns to her childhood home."

Sampling: --temp 0.8 --min-p 0.1 works well for creative writing. min-p sampling is recommended over top-k/top-p — it noticeably reduces token-level glitches on small models.

With transformers

from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "AmarettoLabs/Amaretto-3B"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="auto", device_map="auto")

messages = [
    {"role": "system", "content": "You are a skilled literary fiction writer. Write with precision, emotional depth, and a strong sense of voice."},
    {"role": "user", "content": "Write the opening of a scene where a woman returns to her childhood home after many years away."},
]

input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True).to(model.device)
output = model.generate(input_ids, max_new_tokens=512, temperature=0.8, do_sample=True)
print(tokenizer.decode(output[0][input_ids.shape[-1]:], skip_special_tokens=True))

Training details

Property Value
Base model mistralai/Ministral-3-3B-Instruct-2512
Method QLoRA (4-bit NF4)
Framework Unsloth + TRL SFTTrainer
LoRA rank / alpha 16 / 16
Epochs 2
Sequence length 2048
Training examples ~14,300
Eval loss 1.671

Training data consists of semi-synthetic and full-synthetic literary prose examples, writing assistance examples (editing, tone, clarity, continuation).

The base model is multimodal (3.4B language model + 0.4B vision encoder). Amaretto 3B's fine-tuning targets text only; vision capability is not a focus of this release.


Limitations

  • Optimized for English prose; other languages are not a focus
  • A 3B-class model has clear knowledge and reasoning limits — it is a writing tool, not a factual reference
  • The model may occasionally ignore system prompt instructions on complex or conflicting requests
  • Outputs can reflect biases present in the base model and training data

About AmarettoLabs

AmarettoLabs is a small independent group based in California, USA, specializing in small language models and AI on the edge. The Amaretto line is released free and open.

Website: amaretto.ai · Contact: hello@amarettolabs.com


License

This model is released under the Apache 2.0 License, inherited from the base model. Base model: Ministral 3 3B by Mistral AI.

Downloads last month
762
Safetensors
Model size
4B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for AmarettoLabs/Amaretto-3B

Quantized
(42)
this model
Quantizations
2 models