Prism logo

Prism Roleplay 1.5 Small

A quality-focused refinement of Prism Roleplay, blending real forum roleplay with two generations of synthetic craft data on Qwen3-8B


Overview

Prism Roleplay 1.5 Small is a character-roleplay and immersive-dialogue model, fine-tuned via LoRA on Qwen3-8B. Unlike v1 (pure synthetic mechanics-fixing) or the abandoned v1.5 experiment (real data used in bulk, which flattened prose quality toward the corpus average), this release is built around one idea: roleplay quality, not just mistake-fixing. Every training target — real or synthetic — has to clear an explicit prose-quality bar before it's allowed into the corpus.

Part of the Prism family of creative and roleplay models.

Training data

Three sources, each filtered independently, then mixed:

Source Description Kept / Total
Real lemonilia/Roleplay-Forums_2023-04 (public forum roleplay transcripts) 1,802 / ~14,000 (13%)
v1 synthetic Prism Roleplay 1's original craft-oriented synthetic set (GLM 5.2 + Nemotron-3-Nano) 2,175 / 3,500
v2 synthetic New synthetic data generated for this release — a mix of Nemotron-3-Ultra, Nemotron-3-Super, and Nemotron-3-Nano via NVIDIA NIM (GLM 5.2 was retired from NIM, HTTP 410, mid-run; NIM-only policy meant no paid-API substitute) 3,991 / 5,000

The quality gate: every assistant turn must be ≥230 words, ≥3 paragraphs, and contain dialogue (≥2 quote marks) to be kept. Only ~13% of the raw forum corpus survives this bar, which is deliberate — training on the unfiltered average is exactly what produced the abandoned v1.5's flat, thin prose (158 words / 1.1 paragraphs). Final corpus: 7,570 train / 398 validation examples, median target turn 254 words / 4.0 paragraphs.

Training

  • Base model: mlx-community/Qwen3-8B-4bit
  • Method: LoRA fine-tuning (rank 8, scale 20, 16 layers), 2,500 iterations total
  • Sequence length: 2,048 tokens
  • Validation: 100 batches per eval (raised from 20 after discovering the smaller sample made validation loss swing by ±0.4 purely from batch composition, not overfitting)

Evaluation — does it beat the base model?

The goal for this release was explicit: quality and formatting better than the base model, not just lower loss. A blind pairwise judge (nvidia/nemotron-3-super-120b-a12b, randomized presentation order so the judge never knows which side is which) compared Prism Roleplay 1.5 Small against untouched base Qwen3-8B across 16 varied scenes (occult, sci-fi, noir, fantasy, wartime, and more):

System Win rate vs. base Avg. words Avg. paragraphs Dialogue present Formatting defects
Base Qwen3-8B 210 4.2 100% 1
Prism Roleplay 1.5 Small 83% (10W–2L, 4 ties) 299 4.5 100% 1

Prism Roleplay 1.5 Small beats the base model on blind quality judgment while matching its clean dialogue presence and paragraph structure, with richer per-turn substance.

Formats available

This repo includes both:

Format File Notes
MLX (4-bit) model.safetensors + config For Apple Silicon via mlx-lm
GGUF (Q4_K_M) prism_roleplay_1_5_small_Q4_K_M.gguf For llama.cpp and compatible runtimes (LM Studio, Ollama, etc.)

Usage — MLX

from mlx_lm import load, generate

model, tokenizer = load("VertexAGI/prism-roleplay-1.5-small")

prompt = "You are a stoic mercenary with a hidden soft side, sitting in a candlelit tavern on a stormy night. The user just sat down across from you."
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)

response = generate(model, tokenizer, prompt=text, max_tokens=400)
print(response)

Usage — GGUF (llama.cpp)

Qwen3's chat template only suppresses its reasoning trace when the runtime explicitly signals non-thinking mode. mlx-lm does this automatically; with llama.cpp you need -rea off (or --reasoning off), otherwise the model will emit a visible <think>...</think> reasoning block before its in-character response:

llama-cli -hf VertexAGI/prism-roleplay-1.5-small -m prism_roleplay_1_5_small_Q4_K_M.gguf -st -rea off -sys "You are a skilled roleplay partner. Stay fully in character and write only your own character's actions, speech and interiority. Write in flowing prose with paragraph breaks, include dialogue, and never break character or address the reader." -p "You are a stoic mercenary with a hidden soft side, sitting in a candlelit tavern on a stormy night. The user just sat down across from you."

System prompt

For best results, use the system prompt the model was trained with:

You are a skilled roleplay partner. Stay fully in character and write only your own character's actions, speech and interiority. Write in flowing prose with paragraph breaks, include dialogue, and never break character or address the reader.

Limitations

This is an 8B-parameter model fine-tuned via LoRA on a moderately sized (~7,970-example) dataset. It inherits some stylistic tendencies from its teacher models and the source forum corpus, and very long multi-turn sessions may drift more than a full fine-tune would. Treat outputs as a strong starting point, not a guaranteed-perfect final one.

License

Apache 2.0, inherited from the Qwen3 base model.

Downloads last month
462
Safetensors
Model size
1B params
Tensor type
BF16
·
U32
·
MLX
Hardware compatibility
Log In to add your hardware

4-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for VertexAGI/prism-roleplay-1.5-small

Finetuned
Qwen/Qwen3-8B
Adapter
(3)
this model

Collection including VertexAGI/prism-roleplay-1.5-small