Instructions to use rawmodels/flint-roleplay-antislop with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use rawmodels/flint-roleplay-antislop with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="rawmodels/flint-roleplay-antislop")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("rawmodels/flint-roleplay-antislop") model = AutoModelForCausalLM.from_pretrained("rawmodels/flint-roleplay-antislop", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use rawmodels/flint-roleplay-antislop with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf rawmodels/flint-roleplay-antislop:Q4_K_M # Run inference directly in the terminal: llama cli -hf rawmodels/flint-roleplay-antislop:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf rawmodels/flint-roleplay-antislop:Q4_K_M # Run inference directly in the terminal: llama cli -hf rawmodels/flint-roleplay-antislop:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf rawmodels/flint-roleplay-antislop:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf rawmodels/flint-roleplay-antislop:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf rawmodels/flint-roleplay-antislop:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf rawmodels/flint-roleplay-antislop:Q4_K_M
Use Docker
docker model run hf.co/rawmodels/flint-roleplay-antislop:Q4_K_M
- Llama new
- LM Studio
- Jan
- vLLM
How to use rawmodels/flint-roleplay-antislop with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "rawmodels/flint-roleplay-antislop" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "rawmodels/flint-roleplay-antislop", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/rawmodels/flint-roleplay-antislop:Q4_K_M
- SGLang
How to use rawmodels/flint-roleplay-antislop with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "rawmodels/flint-roleplay-antislop" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "rawmodels/flint-roleplay-antislop", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "rawmodels/flint-roleplay-antislop" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "rawmodels/flint-roleplay-antislop", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Ollama
How to use rawmodels/flint-roleplay-antislop with Ollama:
ollama run hf.co/rawmodels/flint-roleplay-antislop:Q4_K_M
- Unsloth Desktop
- Docker Model Runner
How to use rawmodels/flint-roleplay-antislop with Docker Model Runner:
docker model run hf.co/rawmodels/flint-roleplay-antislop:Q4_K_M
- Lemonade
How to use rawmodels/flint-roleplay-antislop with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull rawmodels/flint-roleplay-antislop:Q4_K_M
Run and chat with the model
lemonade run user.flint-roleplay-antislop-Q4_K_M
List all available models
lemonade list
- Atomic Chat

RecursiveSI/flint(39.8B MoE, 256 experts top-6, ~2.5B active) post-trained with GRPO on antislop writing tasks, with a reward calibrated on reference texts. Same architecture, tokenizer and chat template as Flint.Files: BF16 safetensors (root) •
gguf/— BF16, Q8_0, Q4_K_M.
Summary
- Held-out antislop rubric score 4.92 → 5.90; calibrated reward 0.12 → 0.31 (n=24, Opus 5.5 judge).
- Roleplay, blind pairwise vs base: 28 wins / 22 losses / 14 ties (n=64). On 16 flirt scenes: 6 / 7 / 3.
- GGUF KLD to BF16: Q8_0 0.0077, Q4_K_M 0.050.
Content notice
Intended for fiction and character roleplay with adult characters. Safety behaviour is inherited from Flint and was not targeted by training. Roleplay output can include mature themes. Deploy it to end users with your own moderation layer, and comply with the Apache 2.0 License and the laws that apply to you.
Model details
| Base model | RecursiveSI/flint @ 2a247be |
| Architecture | FlintForCausalLM — 49 layers, hidden 2048, 32 query / 4 KV heads, MoE 256 experts top-6 + shared expert, sliding window 513 + full attention, per-head QK-norm and attention sinks |
| Modification | GRPO post-training, BF16 weights |
| Format | safetensors, BF16, 15 shards (79.6 GB) |
| GGUF | gguf/ — BF16 (79.6 GB), Q8_0 (44.1 GB), Q4_K_M (25.3 GB) |
| Chat format | Flint chat template; reasoning switched off with an empty <think></think> |
| Recommended for | Character roleplay, interactive fiction, casual creative writing, further post-training |
Superhuman antislop RL
GRPO (4 samples per prompt, lr 1e-5, KL β 0.04) on antislop tweet-continuation prompts.
Reward: each reply is scored by Claude Opus 5.5 against a per-task writing rubric. The score is calibrated on reference texts: a sigmoid fit to the score distribution of reference-model outputs per domain (calibrated-v1), so the reward measures improvement over typical model writing rather than the raw judge scale. Multiplied by a length factor.
Evaluation
All numbers are measured on these exact weights against the official RecursiveSI/flint, served identically
with vLLM (BF16, temperature 1.0, same prompts and seeds). Judge: Claude Opus 5.5.
Writing quality — held-out (24 prompts, higher = better)
| Metric | Base | This model | Δ |
|---|---|---|---|
| Rubric quality score (0-10) | 4.92 | 5.90 | +0.98 |
| Calibrated reward (0-1) | 0.12 | 0.31 | +0.19 |
Roleplay — blind pairwise, judged in both orders (a win must hold in both)
| Set | n | This model wins | Base wins | Tie |
|---|---|---|---|---|
| All scenes (24 held-out character cards + 8 custom scenes, × 2 seeds) | 64 | 28 | 22 | 14 |
| Custom romance / flirt scenes only | 16 | 6 | 7 | 3 |
On the run's absolute roleplay rubric the two are close (base 6.38, this model 6.13; n=24). Small samples, a single judge: read these as directional.
Quantization fidelity — KL divergence to this model's BF16 (lower = better)
| GGUF | Recipe | Mean KLD | Same top token |
|---|---|---|---|
| Q8_0 | experts Q8_0; embeddings, output, attention, shared experts, dense layers in BF16 | 0.0077 | 96% |
| Q4_K_M | bartowski's per-tensor Flint layout + imatrix | 0.050 | 90% |
For scale: Flint's own BF16 weights differ by KLD 0.0034 between CPU and GPU kernels in llama.cpp. Stock
llama-quantize presets lose 1.5-2x more than these files (Q8_0 0.0119, Q4_K_M 0.099).
Examples
Selected from the 6 custom-scene pairs (of 16) where the judge preferred this model in both orders.
Marigold, a teasing tea-shop witch
Scene. Marigold. Marigold is a 30-year-old witch who runs a crooked little tea shop: playful, teasing, perceptive, enjoys flustering customers, brews tea that reveals small truths. Scenario: {{user}} has come in for the third time this week, claiming it's for the tea.
User: I set down a few coins and avoid eye contact. Just the usual, please. The, um, chamomile.
| original flint | flint-roleplay-antislop |
|---|---|
|
|
Opus 5.5 (blind, both orders): B is the more charming and flirtatious of the two and leans on the truth-revealing tea premise with the 'tastes like confession' offer, while A has odd details (bus tub, mint smell implying teeth grinding), a slightly clichéd 'dripping with honeyed mischief', and a less coherent flow, though B's 'sipping and sipping' line is a bit muddled.
Countess Ysolde, a vampire at a masquerade
Scene. Countess Ysolde. Ysolde is a centuries-old vampire noblewoman (appears in her thirties): elegant, amused by mortals, dangerously charming, speaks in velvet understatement. Scenario: a candlelit masquerade ball; {{user}} has just asked her to dance, not knowing what she is.
User: I bow slightly and offer my hand. Forgive me, I don't usually do this, but you look like the only interesting person in this entire ballroom.
| original flint | flint-roleplay-antislop |
|---|---|
|
|
Opus 5.5 (blind, both orders): Reply A garbles its point of view by narrating from the user's 'my hand' while describing her in third person, and it assumes the user's gender; Reply B stays coherent and atmospheric, though its 'killed men' line is less understated than the card's velvet voice calls for.
Vivienne, a late-night jazz-club bartender
Scene. Vivienne. Vivienne is a 34-year-old bartender at a smoky late-night jazz club. Personality: slow-smiling, observant, dry humor, flirts like it's a card game she always wins, never says more than she has to. Scenario: closing time, rain outside, {{user}} is the last customer.
User: I slide my empty glass across the bar and don't make any move to leave. You know, you never told me your name. Three weeks of coming here and I still just call you 'the bartender' in my head.
| original flint | flint-roleplay-antislop |
|---|---|
|
|
Opus 5.5 (blind, both orders): Reply B keeps Vivienne's dry, card-game flirtation and ends on an inviting hook, while Reply A contradicts itself badly: she says 'Scott', claims she gave her name weeks ago, says 'I haven't' nonsensically, and accuses the user of running when they're plainly staying.
Captain Rhea Marlowe, pirate
Scene. Captain Rhea Marlowe. Rhea is a 36-year-old pirate captain: swaggering, quick-witted, generous to her crew, merciless in a negotiation, flirts as a form of intimidation. Scenario: {{user}}, a navy officer, has been brought aboard her ship in chains.
User: I lift my chin despite the shackles. You can threaten me all you like, Captain. I'm not telling you where the convoy sails.
| original flint | flint-roleplay-antislop |
|---|---|
|
|
Opus 5.5 (blind, both orders): B delivers a coherent, swaggering negotiation with flirtatious intimidation that fits Rhea's card, while A's logic is muddled (the ambush line and the 'bait' reveal contradict each other) and it writes the user's sensory experience.
Usage
transformers
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "rawmodels/flint-roleplay-antislop"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype=torch.bfloat16, device_map="auto")
messages = [
{"role": "system", "content": "You're Marigold, a 30-year-old witch who runs a crooked little tea shop: playful, teasing, perceptive."},
{"role": "user", "content": "*I set down a few coins and avoid eye contact.* Just the usual, please. The, um, chamomile."},
]
prompt = tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) + "<think></think>"
inputs = tok(prompt, return_tensors="pt", add_special_tokens=False).to(model.device)
out = model.generate(**inputs, max_new_tokens=400, do_sample=True, temperature=1.0, top_p=1.0)
print(tok.decode(out[0, inputs.input_ids.shape[1]:], skip_special_tokens=True))
Requires a transformers build with Flint support (the same one RecursiveSI/flint needs).
vLLM
vllm serve rawmodels/flint-roleplay-antislop --served-model-name flint --dtype bfloat16 --max-model-len 32768
Use the completions endpoint with the rendered prompt above (ending in <think></think>) to keep reasoning off.
Flint's vLLM path uses FlashInfer TRT-LLM MoE kernels, which need Blackwell GPUs (B200/B300); on Hopper use llama.cpp.
llama.cpp (GGUF)
hf download rawmodels/flint-roleplay-antislop --include "gguf/flint-roleplay-antislop-Q8_0.gguf" --local-dir .
llama-server -m gguf/flint-roleplay-antislop-Q8_0.gguf -ngl 999 -c 32768 -fa on
Needs llama.cpp with Flint support (PR #30928; built and tested at 4244ad7).
Sampling
Temperature 1.0, top-p 1.0 (training setting). Keep <think></think>
in the prompt. If a reply ever starts thinking out loud, drop it from the chat history rather than feeding it back.
Intended use
- Character roleplay and interactive fiction with adult characters.
- Creative writing where voice and specificity matter more than polish.
- A full-precision base for further post-training or re-quantization.
Out of scope
- Factual, medical, legal or safety-critical advice.
- Deployment to end users without your own moderation layer.
- Any use that violates the Apache 2.0 license or applicable law.
Limitations
- Trained on one task family. Roleplay was not a training task.
- Evaluated with a single LLM judge and no human preference study.
- Inherits Flint's knowledge, biases and failure modes.
Reproducibility
Generation and judging scripts, the 8 custom scenes, the 24 held-out character cards and all 64 judged pairs are in
eval/.
- Downloads last month
- -
Model tree for rawmodels/flint-roleplay-antislop
Base model
RecursiveSI/flint