Text Generation
Transformers
Safetensors
mistral
mergekit
Merge
roleplay
conversational
text-generation-inference
Instructions to use Vortex5/Stellar-Witch-12B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Vortex5/Stellar-Witch-12B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Vortex5/Stellar-Witch-12B") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("Vortex5/Stellar-Witch-12B") model = AutoModelForCausalLM.from_pretrained("Vortex5/Stellar-Witch-12B") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Inference
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use Vortex5/Stellar-Witch-12B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Vortex5/Stellar-Witch-12B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Vortex5/Stellar-Witch-12B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/Vortex5/Stellar-Witch-12B
- SGLang
How to use Vortex5/Stellar-Witch-12B 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 "Vortex5/Stellar-Witch-12B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Vortex5/Stellar-Witch-12B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'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 "Vortex5/Stellar-Witch-12B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Vortex5/Stellar-Witch-12B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use Vortex5/Stellar-Witch-12B with Docker Model Runner:
docker model run hf.co/Vortex5/Stellar-Witch-12B
| base_model: | |
| - yamatazen/NeonMaid-12B-v2 | |
| - Retreatcost/Ollpheist-12B | |
| - PocketDoc/Dans-SakuraKaze-V1.0.0-12b | |
| - Vortex5/Stellar-Seraph-12B | |
| - inflatebot/MN-12B-Mag-Mell-R1 | |
| library_name: transformers | |
| tags: | |
| - mergekit | |
| - merge | |
| - roleplay | |
| license: apache-2.0 | |
| <section class="model-card"> | |
| <div class="header"> | |
| <h1 class="title">Stellar-Witch-12B</h1> | |
| </div> | |
| <div class="image-container"> | |
| <img src="cover.png"> | |
| </div> | |
| <div class="divider"></div> | |
| <section class="box"> | |
| <h2 class="box-title">Overview</h2> | |
| <p> | |
| <strong class="highlight">Stellar-Witch-12B</strong> was created by merging | |
| <a href="https://huggingface.co/Vortex5/Stellar-Seraph-12B" class="link">Stellar-Seraph-12B</a>, | |
| <a href="https://huggingface.co/inflatebot/MN-12B-Mag-Mell-R1" class="link">MN-12B-Mag-Mell-R1</a>, | |
| <a href="https://huggingface.co/PocketDoc/Dans-SakuraKaze-V1.0.0-12b" class="link">Dans-SakuraKaze-V1.0.0-12b</a>, | |
| <a href="https://huggingface.co/yamatazen/NeonMaid-12B-v2" class="link">NeonMaid-12B-v2</a>, | |
| and | |
| <a href="https://huggingface.co/Retreatcost/Ollpheist-12B" class="link">Ollpheist-12B</a>, | |
| using a custom method. | |
| </p> | |
| <details class="collapse"> | |
| <summary>Merge configuration</summary> | |
| <pre> | |
| base_model: Vortex5/Stellar-Seraph-12B | |
| models: | |
| - model: inflatebot/MN-12B-Mag-Mell-R1 | |
| - model: PocketDoc/Dans-SakuraKaze-V1.0.0-12b | |
| - model: yamatazen/NeonMaid-12B-v2 | |
| - model: Retreatcost/Ollpheist-12B | |
| merge_method: lgm | |
| chat_template: auto | |
| parameters: | |
| strength: 0.9 | |
| prose: 0.55 | |
| gravity: 0.68 | |
| adherence: 0.58 | |
| dtype: float32 | |
| out_dtype: bfloat16 | |
| tokenizer: | |
| source: Vortex5/Stellar-Seraph-12B | |
| </pre> | |
| </details> | |
| </section> | |
| <section class="box last-box"> | |
| <h2 class="box-title">Intended Use</h2> | |
| <div class="grid"> | |
| <div class="tile"> | |
| <div class="tile-icon">🎭</div> | |
| <span class="tile-main">Roleplay</span> | |
| <span class="tile-sub">Emotion-forward interaction</span> | |
| </div> | |
| <div class="tile"> | |
| <div class="tile-icon">🌠</div> | |
| <span class="tile-main">Storytelling</span> | |
| <span class="tile-sub">Atmospheric long-form narrative</span> | |
| </div> | |
| <div class="tile"> | |
| <div class="tile-icon">🔮</div> | |
| <span class="tile-main">Creative Writing</span> | |
| <span class="tile-sub">Atmospheric fiction</span> | |
| </div> | |
| </div> | |
| </section> | |
| <div class="divider"></div> | |
| </section> | |
| <style> | |
| .model-card { | |
| max-width: 1100px; | |
| margin: 40px auto; | |
| padding: 48px 38px 60px; | |
| font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; | |
| color: #e8d9c2; | |
| background: #1a0f26; | |
| border: 3px solid #4a2c5e; | |
| border-radius: 4px; | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .model-card::before { | |
| content: ''; | |
| position: absolute; | |
| inset: 0; | |
| background-image: | |
| radial-gradient(circle at 22% 18%, rgba(217, 176, 90, 0.11) 0%, transparent 48%), | |
| radial-gradient(circle at 82% 78%, rgba(157, 78, 189, 0.08) 0%, transparent 62%); | |
| opacity: 0.85; | |
| pointer-events: none; | |
| z-index: 0; | |
| } | |
| .header { | |
| text-align: center; | |
| padding-bottom: 32px; | |
| position: relative; | |
| z-index: 2; | |
| } | |
| .title { | |
| margin: 0; | |
| font-size: clamp(1.75rem, 4.5vw, 2.55rem); | |
| font-weight: 800; | |
| letter-spacing: 0.18em; | |
| text-transform: uppercase; | |
| color: #f0d89f; | |
| text-shadow: 0 0 18px rgba(217, 176, 90, 0.45); | |
| } | |
| .box-title { | |
| margin: 0 auto 24px auto; | |
| display: block; | |
| font-size: 1.32rem; | |
| font-weight: 800; | |
| letter-spacing: 0.22em; | |
| text-transform: uppercase; | |
| color: #f0d89f; | |
| text-shadow: 0 0 12px rgba(217, 176, 90, 0.35); | |
| text-align: center; | |
| position: relative; | |
| } | |
| .box-title::after { | |
| content: ''; | |
| display: block; | |
| width: 120px; | |
| height: 2px; | |
| background: #d9b05a; | |
| margin: 8px auto 0; | |
| opacity: 0.75; | |
| } | |
| .image-container { | |
| display: flex; | |
| justify-content: center; | |
| position: relative; | |
| z-index: 2; | |
| margin-bottom: 42px; | |
| } | |
| .image-container img { | |
| width: 100%; | |
| max-width: 920px; | |
| height: auto; | |
| border-radius: 4px; | |
| border: 5px solid #4a2c5e; | |
| box-shadow: | |
| 0 30px 70px -20px rgba(26, 15, 38, 0.55), | |
| 0 0 45px 8px rgba(217, 176, 90, 0.22); | |
| } | |
| .divider { | |
| height: 3px; | |
| margin: 44px 0; | |
| background: linear-gradient(90deg, | |
| transparent 10%, | |
| #4a2c5e 30%, | |
| #d9b05a 50%, | |
| #4a2c5e 70%, | |
| transparent 90% | |
| ); | |
| } | |
| .box { | |
| padding: 34px; | |
| background: #251a33; | |
| border: 2px solid #4a2c5e; | |
| border-radius: 4px; | |
| box-shadow: 0 18px 45px -15px rgba(26, 15, 38, 0.3); | |
| position: relative; | |
| z-index: 2; | |
| margin-bottom: 32px; | |
| } | |
| .last-box { | |
| margin-bottom: 0; | |
| } | |
| .box p { | |
| margin: 18px 0 24px; | |
| line-height: 1.85; | |
| color: #d4c7b0; | |
| font-size: 1.07rem; | |
| } | |
| .highlight { | |
| color: #f0d89f; | |
| font-weight: 800; | |
| text-shadow: 0 0 8px rgba(217, 176, 90, 0.4); | |
| } | |
| .collapse { | |
| margin-top: 20px; | |
| background: #1f1430; | |
| border: 2px solid #4a2c5e; | |
| border-radius: 4px; | |
| overflow: hidden; | |
| font-size: 0.92rem; | |
| } | |
| .collapse summary { | |
| padding: 14px 20px; | |
| cursor: pointer; | |
| font-size: 0.88rem; | |
| font-weight: 700; | |
| letter-spacing: 0.12em; | |
| text-transform: uppercase; | |
| color: #e0c8a5; | |
| background: #2e1f42; | |
| border-bottom: 1px solid #4a2c5e; | |
| } | |
| .collapse pre { | |
| margin: 0; | |
| padding: 18px 20px; | |
| background: #1a0f26; | |
| color: #d4c7b0; | |
| font-size: 0.84rem; | |
| line-height: 1.55; | |
| font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Courier New", monospace; | |
| white-space: pre-wrap; | |
| overflow-x: auto; | |
| } | |
| .grid { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 20px; | |
| margin-top: 20px; | |
| } | |
| .tile { | |
| flex: 1 1 240px; | |
| padding: 24px 20px; | |
| background: #251a33; | |
| border: 2px solid #4a2c5e; | |
| border-radius: 4px; | |
| text-align: center; | |
| transition: all 0.35s cubic-bezier(0.23, 1, 0.32, 1); | |
| } | |
| .tile:hover { | |
| transform: translateY(-5px); | |
| border-color: #d9b05a; | |
| box-shadow: 0 20px 45px -12px rgba(217, 176, 90, 0.32); | |
| } | |
| .tile-icon { | |
| font-size: 2.45rem; | |
| line-height: 1; | |
| margin-bottom: 12px; | |
| color: #d9b05a; | |
| opacity: 0.95; | |
| } | |
| .tile-main { | |
| display: block; | |
| margin-bottom: 6px; | |
| font-size: 1.09rem; | |
| font-weight: 800; | |
| letter-spacing: 0.07em; | |
| text-transform: uppercase; | |
| color: #f0d89f; | |
| } | |
| .tile-sub { | |
| display: block; | |
| font-size: 0.92rem; | |
| color: #c8b89e; | |
| line-height: 1.55; | |
| } | |
| .link { | |
| color: #d9b05a; | |
| text-decoration: none; | |
| transition: color 0.3s ease; | |
| } | |
| .link:hover { | |
| color: #f0d89f; | |
| text-decoration: underline; | |
| } | |
| @media (max-width: 680px) { | |
| .model-card { | |
| padding: 34px 20px 46px; | |
| margin: 16px 8px; | |
| } | |
| .box { | |
| padding: 26px; | |
| } | |
| .image-container img { | |
| max-height: 620px; | |
| } | |
| } | |
| </style> |