A model that can hold a scene.
Born Writer is a focused attempt to make a 3B-active local model write, remember, react, and roleplay far above its running cost. Not “helpful assistant, but more poetic.” A real story engine.
SELECTED FOUNDATION
Qwen3.635B total / 3B activatedWorld memory
Story direction
Character performance
Line instinct
Small enough to own. Good enough to disappear into.
The objective is not benchmark-shaped eloquence. It is sustained belief: a model that understands the scene, preserves the player’s freedom, inhabits its cast, and writes the next turn with intent.
The scene remembers
A glass moved three turns ago stays moved. A lie is known only by the people who heard it. Consequences survive the next completion.
Characters push back
They have private wants, partial information, habits, and emotional momentum. They do not collapse into agreeable assistant voices.
The player remains the player
The model controls its world and cast, not the user’s thoughts, choices, dialogue, or body. Agency is measured turn by turn.
Something changes
Every response earns its length through revelation, pressure, choice, consequence, intimacy, reversal, or a useful breath before one.
The prose has a pulse
Sentence shape, silence, vocabulary, humour, mess, and specificity follow the scene and speaker—not a universal polished house style.
Its range is genuinely broad
Quiet realism, comedy, romance, horror, dark fiction, and consenting-adult scenes are trained as real registers, not bolted-on prompts.
The moat is not one magical dataset. It is the loop: stateful episodes → competing continuations → reactive judgment → human taste → executable feedback → on-policy distillation.
Qwen/Qwen3.6-35B-A3B
The 27B dense model is a strong ceiling, but it is a hard local product. The 35B-A3B stores roughly 35B parameters while activating about 3B per token: a better bet for responsive, consumer-scale inference, provided the tuning and quantisation stack survives its hybrid MoE architecture.
Official model card- Foundation
- Post-trained Qwen3.6; exact revision pinned per run
- Architecture
- 35B total / 3B active / 256 experts / 8 routed + 1 shared
- Context
- 262,144 tokens native; train short-first, evaluate long
- Licence
- Apache-2.0 open weights
- Why it can work
- Agentic substrate, long context, local-active footprint
- What can break
- Expert-target LoRA support, storage, KV cache, quant quality
One voice on the outside. A writers’ room underneath.
Training decomposes the task so every failure has an owner. Release recomposes the skills into one fast default model, with explicit tools only when they improve long-horizon state.
World memory
Tracks location, time, inventory, lore, secrets, planted details, and what each character can actually know.
State invariants + 20 / 50 / 100-turn recallStory direction
Reads the current dramatic pressure, opens or closes threads, and advances the scene without forcing a prewritten plot.
Plot movement + callback + tension rubricsCharacter performance
Maintains distinct motives, diction, emotional residue, relationships, and plausible reactions while preserving player agency.
CoSER + RPEval + blind character-ID testsLine instinct
Cuts generic model cadence, varies rhythm, chooses concrete detail, protects subtext, and edits without sanding away the voice.
Humanizer audit + editor preference arena+ validated state delta
+ open-thread updates
The reader gets story, not machinery.
The response is clean prose or dialogue. Planning labels, reward traces, judge notes, and model reasoning never leak into the scene.
The runtime gets a typed delta.
In agentic mode, the model proposes compact state operations. BornWorldEnv validates them before anything becomes canonical.
Context is curated, not endlessly appended.
Recent turns, immutable facts, active threads, character-local knowledge, and episodic summaries occupy separate memory lanes.
Use frontier models as specialists, not as a single synthetic oracle.
Each model receives a job matched to its strengths. We retain candidates, rejections, critiques, evidence spans, judge disagreement, and state transitions—not just the polished final answer.
Long-context world bibles, constraint-rich scenario states, causal checks, tool trajectories, and contradiction critiques.
Open-weight / hostedCandidate scene structures, conflict escalation, darker narrative pressure, reversals, and multi-specialist response drafts.
Aion APIHigh-volume alternate continuations and deliberate branch forks: advance, reveal, refuse, complicate, soften, or misdirect.
Aion APIExpressive multi-turn dialogue, character-card conditioning, example-message imitation, conversational pacing, and emotional reactions.
MiniMax / OpenRouterPairwise scene judgment, character and subtext critique, contradiction discovery, rubric repair, and difficult-case adjudication.
Claude APIIndependent high-volume ranking, evidence-span extraction, failure classification, and disagreement discovery.
OpenAI APIA first-party adaptation of the 29-pattern Humanizer workflow: voice calibration, draft audit, targeted rewrite, and a second-pass smell check.
Skill + rubricTwo judges. One rubric. No averaged-away disagreement.
- Both judges receive the same prior state, turn, candidates, and task-specific rubric.
- Each returns pairwise choice, reward vector, violations, evidence spans, and confidence as strict JSON.
- High-confidence agreement can scale. Disagreement, low confidence, and high-impact scenes route to a human.
- A weekly calibration set measures each judge against human choices. Weight changes are versioned like model changes.
Generate hard choices, not mountains of agreeable prose.
The useful training unit is an episode with state, branches, judgment, and consequence. A single ‘great answer’ teaches less than the nearby bad answers and the reasons they failed.
Multi-turn roleplay
Character cards, example messages, group scenes, branching dialogue, 20–100-turn episodes, relationship change, and consequence.
World-state trajectories
Before/after state, lore retrieval, knowledge boundaries, action resolution, clocks, inventory, callbacks, and recovery from contradictions.
Story craft
Openings, scene turns, tension curves, reveals, pacing, endings, outline-to-scene work, and continuation under dense constraints.
Human line editing
Draft → critique → rewrite pairs covering generic cadence, over-explanation, false profundity, vague language, cliché, and voice flattening.
Writing rehearsal
Creative and practical writing outside roleplay so specialisation does not destroy instruction following, revision, or general prose control.
Seed
Original scenario, character cards, state invariants, genre, and difficulty.
Branch
Teachers create materially different next-turn strategies, not paraphrases.
Stress
Inject temptations: easy cliché, user puppeting, lore conflict, repetition, dead scene.
Judge
Reactive pairwise rankings plus deterministic state and agency checks.
Adjudicate
Humans decide disagreements and repair the rubric when all candidates are weak.
Compile
Emit SFT rows, preferences, reward trajectories, and an immutable provenance record.
Every row can answer: what happened, who chose it, and why it won.
Keep visible prose separate from hidden training annotations. Hash the source prompt and provider configuration. Store per-candidate judgments so a later reward model can be rebuilt without regenerating the episode.
- Exact and semantic de-duplication across every split
- Role alternation, empty turn, and malformed-state checks
- Token, turn, genre, teacher, and maturity distributions
- Leakage search against all public and private evaluations
- Judge agreement, confidence, and source fingerprint reports
{
"episode_id": "bw_000184",
"split": "train",
"source": {
"kind": "commissioned | public | synthetic",
"teacher_ids": ["aion-3.0", "minimax-m2-her"],
"prompt_hash": "sha256:…",
"rights_manifest": "manifest://…"
},
"scenario": {
"character_cards": [],
"world_bible": {},
"style_register": "quiet-horror",
"maturity": "adult",
"hard_constraints": []
},
"messages": [],
"world_state_before": {},
"candidate": {
"visible_response": "…",
"state_delta": [],
"open_threads": []
},
"judgments": [{
"judge": "reactive-a",
"scores": {},
"violations": [],
"evidence_spans": [],
"confidence": 0.84
}],
"preference": {
"chosen_id": "candidate_03",
"rejected_id": "candidate_01",
"reason_tags": ["agency", "subtext", "continuity"]
}
}Writers and experienced roleplayers produce, branch, repair, and rank original episodes. This is the data that gives Born its own taste.
BUILDMore than one million dialogue lines across roughly 26,000 donated roleplay conversations; useful after provenance, privacy, persona, and quality review.
AUDITConfigurable role profiles spanning character, scene, emotion, and topic, plus a human-aligned roleplay reward-model methodology.
ADAPTReverse-synthesised character reasoning, role-think → act → speech structure, SFT plus RL, and strong long-form character evaluation.
ADAPTGenerate controlled bad drafts with one or more named prose failures, then collect minimal, voice-preserving repairs and human preferences.
BUILDBroad writing, literary preference, emotion, decisions, moral consistency, and in-character behaviour. Promotion tests—not training copy.
HOLD OUTSupervise the move. Prefer the better move. Reward the whole episode.
KAT-Coder’s transferable lesson is environmental: hard, reproducible trajectories and feedback beat vague scale. Born replaces the code sandbox with a typed, living narrative world.
Freeze the test before touching weights
Build BornWriterBench, the long-session simulator, and local performance harness. Run every comparison model with frozen prompts, context packs, sampling sweeps, and seeds.
A signed baseline report, failure taxonomy, private promotion split, and repeatable cost / latency measurements.
Teach excellent next turns
Train completion-only LoRA on accepted demonstrations and trajectories. Start at 8K sequences, then introduce 16K–32K episodes only after the clean short-context recipe wins.
Born Writer SFT beats base on character, agency, prose, and state tests without losing core instruction following.
Teach taste, not one judge’s taste
Use real candidate forks and repairs. Sonnet and Luna rank independently against an explicit rubric; confident agreements scale, disagreements go to trained human raters.
Preference win with no reward collapse into length, melodrama, bland positivity, or one synthetic voice.
Put the model inside a living scene
Roll out multi-turn episodes in BornWorldEnv. Reward state integrity, agency, character, plot movement, and human preference; penalise repetition, contradictions, and user puppeting.
The policy improves 20 / 50 / 100-turn outcomes and survives harness, prompt, genre, and judge randomisation.
Specialise, then unify
Train World, Director, Character, Humanizer, and mature-register experts as measurable research branches. Sample them on-policy, judge the candidates, and distil the winners back into one core.
A single default adapter carries the ensemble’s gains. Specialist adapters remain only where dynamic routing is measurably better.
Ship the local model people can actually run
Merge the promoted adapter into the exact pinned base; export BF16, FP8/NVFP4 where supported, and Q4/Q5 GGUF builds. Re-run the full arena after every quantisation.
A reproducible model card, adapter, merged weights, local packages, benchmark artifacts, and inference presets.
A controlled search, not one heroic run.
Qwen3.6 is a hybrid DeltaNet / attention MoE. The first technical task is a target-module and memory audit on the exact revision. Module names copied from an older dense Qwen are not a training plan.
- Base
- Qwen/Qwen3.6-35B-A3B post-trained; exact revision and chat template pinned
- Objective
- Assistant-completion-only SFT → pairwise DPO → environment-feedback RL
- Precision
- BF16 LoRA for main runs; 4-bit QLoRA only for recipe pilots or hard memory limits
- Initial context
- 8,192 tokens; graduate to 16K / 32K curriculum after short-context promotion
- LoRA search
- r 32 / 64; alpha 64 / 128; rsLoRA; dropout 0.05; freeze router by default
- Learning rate
- SFT 5e-6 / 8e-6 / 1e-5 ablation; DPO ≈2e-6; RL ≈5e-7–1e-6
- Schedule
- 3% warmup, cosine decay, 1 epoch first pass, max-grad-norm 0.3, frequent held-out gates
- Targets
- Audit Qwen3.6 named modules first; compare shared attention / DeltaNet targets against supported expert projections
- Selection
- Human arena + deterministic invariants + external benchmarks + local runtime; never loss alone
Branches are instruments. Core is the product.
Do not blindly merge popular roleplay LoRAs. An external adapter enters the tournament only when it matches the exact base revision and target modules, discloses its data and licence, and wins a blinded ablation. Otherwise we reproduce the useful method with first-party data.
The release candidate and default personality: roleplay, story craft, dialogue, revision, and natural prose.
Lore, state transitions, action resolution, character knowledge, timeline, and long-session recovery.
Narrative pressure, choice architecture, scene turns, subplots, callbacks, tension, and endings.
Voice calibration, line-level audit, specificity, rhythm, restraint, and minimal voice-preserving repair.
A measured adult and dark-fiction register with believable intimacy, emotion, tension, and the same agency and continuity standards.
First compare dynamic routing with linear / SVD and TIES / DARE merge grids. Merge only compatible adapters that already win alone; search weights on the private arena; reject every blend that hides a regression behind a higher aggregate. The preferred end-state is on-policy distillation into one Core, not a permanent stack of unexplained deltas.
The test suite is a world that notices.
Creative quality is open-ended; continuity and agency are not. BornWorldEnv turns the parts we can verify into executable state while learned and human rewards score the parts that require taste.
character_factsidentity · goals · injuries · possessions
knowledge_graphwho knows what · source · confidence
relationship_statetrust · tension · debt · intimacy
scene_stateplace · time · weather · entrances · exits
story_threadsopen · planted · escalated · resolved
boundary_stateuser controls · scene register · hard limits
Give the model a few sharp instruments.
get_state()Retrieve canonical facts relevant to the current turn.
search_lore()Find world-bible passages without flooding context.
resolve_action()Check preconditions, uncertainty, and consequences.
advance_clock()Move time and trigger scheduled or delayed events.
update_relationship()Apply evidence-backed relationship deltas.
commit_scene()Validate the proposed state delta after prose is ready.
Mixed rewards prevent beautiful nonsense and correct boredom.
Deterministic checks score state and format. RoleRM-style critics, reactive judges, and humans score character, story, and prose. Every reward component is logged separately and ablated before scaling RL.
State integrity
Facts, locations, inventory, time, knowledge, and state deltas remain valid.
Player agency
The model leaves the user’s interiority, dialogue, and choices to the user.
Character fidelity
Motives, voice, memory, relationships, and reactions remain character-specific.
Narrative progress
The turn changes pressure, knowledge, choice, relationship, or consequence.
Human preference
Blind pairwise preference from calibrated judges and human raters.
Line quality
Specificity, rhythm, subtext, restraint, and absence of repeated model tics.
Different dramatic actions, sampling seeds, and tool choices.
Curriculum from local consequence to delayed payoff.
Stops the policy learning one prompt shell or critic’s quirks.
Start simpler; add a value model only when reward variance demands it.
If it is unbelievable for its size, the evidence should be difficult to argue with.
Every claim is relative to the exact base, the best practical local peers, purpose-built roleplay systems, and frontier APIs. The same context, prompts, decoding grid, and seeds apply to all.
Qwen3.6-35B-A3B
Measures the value of every training stage.
Qwen3.6-27B
Tests whether 3B-active efficiency costs too much literary depth.
Gemma 4 26B-A4B
A same-purpose efficiency comparison, not merely another Qwen.
Aion 3.0 / Mini
Narrative structure, conflict, darker range, and multi-model generation.
MiniMax M2-her
Dialogue flow, persona adherence, example messages, and long-session preference.
Hy3
Long context, constraint inheritance, grounded state, and tool stability.
Claude Sonnet 5
High-quality writing and reactive evaluation ceiling.
GPT-5.6 Luna
High-volume quality / cost reference and independent ranking.
| Slice | What runs | Primary evidence |
|---|---|---|
| Immediate prose | Opening, continuation, dialogue, rewrite, critique | Blind pairwise preference; line-level failure tags |
| Character | Voice, motive, emotion, relationship, knowledge | CoSER, RPEval, character-ID and contradiction tests |
| Agency | Choice points, refusals, combat, romance, group scenes | User-action appropriation rate; human severity labels |
| Story | Pressure, turn, reveal, pacing, subtext, ending | LitBench / creative-writing suites + human story editors |
| World | Lore, inventory, clocks, geography, planted facts | Executable BornWorldEnv assertions |
| Long horizon | 20 / 50 / 100-turn episodes and context compression | Fact survival, thread closure, drift, repetition, recovery |
| Range | Realism, comedy, romance, horror, dark and mature fiction | Per-register win rates; no aggregate hiding weak genres |
| Local reality | Q4 / Q5 quality, RAM, VRAM, TTFT, tok/s, KV growth | Same hardware, same runtime, same context, five seeded runs |
No vibes-only release.
The point estimate can look impressive by accident. Release requires confidence intervals, slice-level results, raw outputs, error counts, and a local package that keeps the win.
≥55% point estimate and lower 95% confidence bound >50%
Point estimate ≥50% on the private roleplay-and-story arena
≥95% overall; no critical geography, identity, or knowledge-boundary regression
≤2% of eligible turns; zero severe pattern may be hidden by the average
≥90% seeded facts plus successful recovery when the user corrects state
≥90% blind speaker identification on multi-character scenes
Q4 loses <3% relative on deterministic gates and no more than 5 win-rate points
Merged adapter adds <5% latency; publish measured RAM / VRAM instead of a vague local claim
8K–16K practical context; test full-GPU and safe CPU offload.
16K–32K context target in llama.cpp / MLX, measured—not assumed.
Higher quality, larger KV cache, and room for runtime state tools.
Eight weeks to a decision, not eight weeks to a foregone conclusion.
RC0 ships only if it clears the gates. A failed phase still leaves a valuable artifact: a benchmark, a data engine, an environment, and a precise diagnosis of what the 3B-active base cannot yet carry.
Prove the starting line
Pin the base revision. Build 300 private prompts, 100 public development prompts, 60 long episodes, the state schema, and all competitor baselines.
Build the writers’ room
Teacher adapters, prompt families, branch generator, Humanizer transformations, provenance ledger, and judge JSON contract.
Commission the taste
Gold sessions and preference labels from writers / roleplayers; calibrate judges against human decisions and reject weak prompt families.
Run SFT ablations
Three controlled LoRA runs across target modules, rank, learning rate, and long-context mix. Promote exactly one.
Preference tune
15K–25K hard preference pairs from real model failures, DPO ablations, judge-bias audit, and blinded human arena.
Train inside the world
BornWorldEnv rollouts, harness randomisation, GRPO / PPO pilot, reward-ablation report, and long-horizon regression checks.
Unify the specialists
On-policy distillation from World, Director, Humanizer, and mature-register experts into the release core; optional adapter merge tournament.
Break it, package it, publish it
Red-team roleplay sessions, Q4 / Q5 exports, runtime presets, complete model and data cards, raw arena artifacts, and RC0 decision.
A small team with a real editorial centre.
- 1 training / inference engineer
- 1 data / evaluation engineer
- 2–4 paid writers and experienced roleplayers
- 1 release owner for provenance and reproducibility
- 1× 80 GB GPU for module audits and QLoRA pilots
- 2–4× H100 / H200 80 GB for BF16 LoRA SFT and DPO
- 4–8× high-memory GPUs for efficient RL rollout / train overlap
- On-demand teacher APIs and an OpenAI-compatible rollout pool
- Parquet / object storage plus a versioned metadata store
- Async generation queue, prompt registry, and cost ledger
- Human arena UI with blind randomisation and rater calibration
- Weights & Biases or MLflow plus immutable release reports
Everything needed to reproduce the winner—or the failure.
Raw commissioned data stays private. Manifests, schemas, configs, validation code, public evaluation prompts, aggregate reports, and release artifacts can be published.
foundry/born-writer/
├── configs/ # sft.yaml · dpo.yaml · rl.yaml
├── data/
│ ├── manifests/ # licences · hashes · source revisions
│ ├── curated/ # SFT · preferences · trajectories
│ └── evals/ # public dev · private promotion
├── env/
│ ├── state.py # typed world-state contract
│ ├── tools.py # lore · clock · action · relationship
│ └── rewards.py # deterministic + learned rewards
├── generation/ # teacher prompts · branching · judges
├── training/ # SFT · DPO · GRPO/PPO · distillation
├── evaluation/ # arena · long-session · local runtime
├── export/ # merge · quantise · verify · publish
└── reports/ # immutable run and release recordsBorn-Writer-Core LoRA
Exact base revision, target modules, config, hashes, and adapter weights.
Merged + local builds
BF16 release plus verified Q4 / Q5 and accelerated GPU packages.
BornWriterBench
Public development slice, private promotion record, arena code, and raw outputs.
BornWorldEnv
Typed state, narrative tools, deterministic validators, and reward components.
Data documentation
Source manifests, consent / rights records, transforms, statistics, and exclusions.
Inference recipe
OpenAI-compatible server, context presets, sampling profiles, and agentic RP mode.
Help train Born Writer. Get free frontier chat.
Open the anonymous model lab and send the same prompt to two hidden frontier systems. Vote which continuation should survive. Your scenes and preferences become training signal for the model above — and you get up to 100 free comparison prompts a day.
Primary sources behind the plan.
Model details and prices change. The implementation manifest must pin the exact version and re-check every source at run time. These links establish the methods and current candidates.
architecture, 35B / 3B-active design, 262K native context, serving, and licence
295B / 21B-active teacher, 256K context, multi-turn constraints, SFT + RL
Aion 3.0 and Mini collaborative storytelling systems
roleplay-first chat model and expanded message-role contract
human-like role reasoning, reverse synthesis, reward modelling, SFT, and RL
configurable roleplay data, benchmark design, and RoleRM
community-contributed, partially synthetic roleplay conversations
reproducible environments, execution feedback, hard trajectories, and on-policy distillation
29 named AI-writing patterns, voice calibration, and two-pass editing
six writing domains, 100 subdomains, and query-specific criteria
emotion, decisions, moral alignment, and in-character consistency
the two independent reactive-judge APIs in the proposed foundry
Can three active billion parameters make a hundred turns feel like one continuous life?