GraySoft
Projects Models About FAQ Contact Download guIDE →

darkhn-quants-3/qwen3.5-40b-animus-v14.0-gguf Q4_K_M GGUF - Free GGUF Download is indexed on GraySoft with repository links, GGUF quant files, and Hugging Face metadata. This page helps you pick a local model for guIDE or other runtimes. See related models in the same shard below.

Model Intelligence Sheet

darkhn-quants-3/qwen3.5-40b-animus-v14.0-gguf overview

body { font-family: 'Quicksand', sans-serif; background: linear-gradient(135deg, #4a1e00 0%, #1c0a00 100%); color: #F5EFE6; margin: 0; padding: 0; font-size: 16px; } h1, h2, h3, h4, summary { font-family: 'Cinzel', serif; } .container { margin: 20px auto; max-width: 900px; background-color: rgba(28, 22, 18, 0.95); padding: 30px; border-radius: 12px; box-shadow: 0 4px 20px rgba(255, 140, 0, 0.15); border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; position: relative; } .container::before { content: ''; position: absolute; top: -1px; left: -1px; right: -1px; bottom: -1px; border: 1px solid rgba(255, 165, 0, 0.98); border-radius: 12px; pointer-events: none; animation: borderGlow 2.5s ease-in-out infinite; } @keyframes borderGlow { 0% { box-shadow: 0 0 5px rgba(255, 165, 0, 0.98); } 50% { box-shadow: 0 0 12px rgba(255, 165, 0, 0.98); } 100% { box-shadow: 0 0 5px rgba(255, 165, 0, 0.98); } } .header h1 { font-size: 32px; color: #FFA500; margin: 0 0 20px 0; text-align: center; text-shadow: 0 0 12px rgba(255, 100, 0, 0.6); } .info img { width: 100%; max-width: 700px; display: block; margin: 0 auto 25px auto; border-radius: 10px; box-shadow: 0 0 20px rgba(255, 140, 0, 0.25); border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; } a { color: #FFD700; text-decoration: none; transition: color 0.3s ease; } a:hover { color: #FFDAB9; } .button { display: inline-block; background-color: #E55B00; color: #FFFFFF; padding: 12px 24px; border-radius: 5px; cursor: pointer; text-decoration: none; font-family: 'Cinzel', serif; font-weight: 600; transition: all 0.3s ease; border: 1px solid transparent; } .button:hover { background-color: #FF8C00; box-shadow: 0 0 15px rgba(255, 140, 0, 0.5); transform: translateY(-2px); } pre { background-color: rgba(45, 35, 25, 0.95); padding: 15px; border-radius: 5px; overflow-x: auto; border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; } code { font-family: 'Courier New', monospace; color: #F5EFE6; } .section-container { margin: 40px 0; } h2 { font-size: 26px; color: #FFA500; text-shadow: 0 0 10px rgba(255, 140, 0, 0.5); border-bottom: 1px solid rgba(255, 140, 0, 0.2); padding-bottom: 10px; margin-bottom: 20px; } .info-card { background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; overflow: hidden; margin-bottom: 25px; } .info-header { background: rgba(255, 140, 0, 0.1); padding: 20px; border-bottom: 1px solid rgba(255, 140, 0, 0.2); } .info-header h3 { color: #FFA500; margin: 0 0 10px 0; font-size: 22px; text-shadow: 0 0 5px rgba(255, 140, 0, 0.3); } .model-tags { display: flex; gap: 8px; flex-wrap: wrap; } .model-tag { background: rgba(218, 165, 32, 0.15); color: #FFD700; padding: 4px 8px; border-radius: 4px; font-size: 12px; border: 1px solid rgba(218, 165, 32, 0.3); font-family: 'Quicksand', sans-serif; } .card-content { padding: 20px; line-height: 1.7; } .card-content p, .card-content li { margin-bottom: 1em; } .card-content p:last-child, .card-content li:last-child { margin-bottom: 0; } .card-content ul { list-style: none; padding-left: 20px; } .card-content li::before { content: '✦'; color: #FFD700; font-weight: bold; display: inline-block; width: 1em; margin-left: -1.2em; font-size: 1.2em; line-height: 1; } .card-content strong { color: #FFD700; font-weight: 600; } .config-container { background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; overflow: hidden; } .config-header { background: rgba(255, 140, 0, 0.1); padding: 15px 20px; border-bottom: 1px solid rgba(255, 140, 0, 0.2); } .config-header h3 { margin: 0; color: #FFA500; font-size: 22px; } .config-content { padding: 20px; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; } .config-item { display: flex; flex-direction: column; gap: 5px; } .config-label { color: #FFD700; font-size: 14px; font-weight: 500; font-family: 'Quicksand', sans-serif; } .config-value { color: #F5EFE6; font-family: 'Courier New', monospace; font-size: 18px; font-weight: bold; } .link-arrow { display: inline-block; transition: transform 0.3s ease; } a:hover .link-arrow { transform: translateX(3px); } .support-section { text-align: center; margin-top: 40px; background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; padding: 20px; } .support-section p { margin-bottom: 15px; font-size: 1.1em; margin-top: 0; } summary { cursor: pointer; list-style: none; outline: none; display: flex; align-items: flex-start; } summary::-webkit-details-marker { display: none; } summary::before { content: '▶'; font-size: 1.2em; color: #FFA500; margin-right: 15px; padding-top: 5px; transition: transform 0.2s ease; flex-shrink: 0; } details[open] summary::before { transform: rotate(90deg); } summary h2 { flex-grow: 1; } .format-list { margin: 1.5em 0; } .format-list dt { color: #FFA500; font-family: 'Cinzel', serif; font-weight: 600; font-size: 1.3em; text-shadow: 0 0 8px rgba(255, 140, 0, 0.5); margin-bottom: 0.6em; } .format-list dd { margin-left: 0; margin-bottom: 1.5em; background-color: rgba(28, 22, 18, 0.95); padding: 12px 15px; border-radius: 6px; border: 1px solid rgba(255, 140, 0, 0.2); border-left: 4px solid #FFA500; } .format-list dd:last-of-type { margin-bottom: 0; } Qwen3.5-40B-Animus-V14.0-GGUF Send me your support to help me feed the data beast! also taking comissions for universe specific models Support on Ko-fi Important: Chat Template This model uses the Qwen35/ChatML instruction template. Ensure your client is configured correctly to avoid degraded performance. Human-Readable Format: system {{SYSTEMPROMPT}} user {{USERMESSAGE}} assistant {{REASONING}} {{ASSISTANTRESPONSE}} ✅ Chat Completion (recommended): Use your inference server's built-in chat template (llama.cpp, TabbyAPI, vllm, etc.). The correct formatting is handled automatically — no manual configuration needed. ⚠️ Text Completion: You must manage tokens manually to match the Qwen35/ChatML format, ensuring correct use of , , and newline characters as shown in the Jinja template. Jinja Template: Click to view Jinja Template {%- set imagecount = namespace(value=0) %} {%- set videocount = namespace(value=0) %} {%- macro rendercontent(content, dovisioncount, issystemcontent=false) %} {%- if content is string %} {{- content }} {%- elif content is iterable and content is not mapping %} {%- for item in content %} {%- if 'image' in item or 'imageurl' in item or item.type == 'image' %} {%- if issystemcontent %} {{- raiseexception('System message cannot contain images.') }} {%- endif %} {%- if dovisioncount %} {%- set imagecount.value = imagecount.value + 1 %} {%- endif %} {%- if addvisionid %} {{- 'Picture ' ~ imagecount.value ~ ': ' }} {%- endif %} {{- '' }} {%- elif 'video' in item or item.type == 'video' %} {%- if issystemcontent %} {{- raiseexception('System message cannot contain videos.') }} {%- endif %} {%- if dovisioncount %} {%- set videocount.value = videocount.value + 1 %} {%- endif %} {%- if addvisionid %} {{- 'Video ' ~ videocount.value ~ ': ' }} {%- endif %} {{- '' }} {%- elif 'text' in item %} {{- item.text }} {%- else %} {{- raiseexception('Unexpected item type in content.') }} {%- endif %} {%- endfor %} {%- elif content is none or content is undefined %} {{- '' }} {%- else %} {{- raiseexception('Unexpected content type.') }} {%- endif %} {%- endmacro %} {%- if not messages %} {{- raiseexception('No messages provided.') }} {%- endif %} {%- if tools and tools is iterable and tools is not mapping %} {{- 'system\n' }} {{- "# Tools\n\nYou have access to the following functions:\n\n" }} {%- for tool in tools %} {{- "\n" }} {{- tool | tojson }} {%- endfor %} {{- "\n" }} {{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n\n\n\nvalue1\n\n\nThis is the value for the second parameter\nthat can span\nmultiple lines\n\n\n\n\n\nReminder:\n- Function calls MUST follow the specified format: an inner block must be nested within XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n' }} {%- if messages[0].role == 'system' %} {%- set content = rendercontent(messages[0].content, false, true)|trim %} {%- if content %} {{- '\n\n' + content }} {%- endif %} {%- endif %} {{- '\n' }} {%- else %} {%- if messages[0].role == 'system' %} {%- set content = rendercontent(messages[0].content, false, true)|trim %} {{- 'system\n' + content + '\n' }} {%- endif %} {%- endif %} {%- set ns = namespace(multisteptool=true, lastqueryindex=messages|length - 1) %} {%- for message in messages[::-1] %} {%- set index = (messages|length - 1) - loop.index0 %} {%- if ns.multisteptool and message.role == "user" %} {%- set content = rendercontent(message.content, false)|trim %} {%- if not(content.startswith('') and content.endswith('')) %} {%- set ns.multisteptool = false %} {%- set ns.lastqueryindex = index %} {%- endif %} {%- elif ns.multisteptool and message.role == "assistant" %} {%- set ns.multisteptool = false %} {%- set ns.lastqueryindex = index %} {%- endif %} {%- endfor %} {%- if ns.multisteptool %} {{- raiseexception('No user query found in messages.') }} {%- endif %} {%- for message in messages %} {%- set content = rendercontent(message.content, true)|trim %} {%- elif message.role == "user" %} {{- '' + message.role + '\n' + content + '' + '\n' }} {%- elif message.role == "assistant" %} {%- set reasoningcontent = '' %} {%- if message.reasoningcontent is string %} {%- set reasoningcontent = message.reasoningcontent %} {%- else %} {%- if '' in content %} {%- set reasoningcontent = content.split('')[0].rstrip('\n').split('')[-1].lstrip('\n') %} {%- set content = content.split('')[-1].lstrip('\n') %} {%- endif %} {%- endif %} {%- set reasoningcontent = reasoningcontent|trim %} {%- if reasoningcontent %} {{- '' + message.role + '\n\n' + reasoningcontent + '\n\n\n' + content }} {%- else %} {{- '' + message.role + '\n\n\n\n\n' + content }} {%- endif %} {%- if message.toolcalls and message.toolcalls is iterable and message.toolcalls is not mapping %} {%- for toolcall in message.toolcalls %} {%- if toolcall.function is defined %} {%- set toolcall = toolcall.function %} {%- endif %} {%- if loop.first %} {%- if content|trim %} {{- '\n\n\n\n' }} {%- else %} {{- '\n\n' }} {%- endif %} {%- else %} {{- '\n\n\n' }} {%- endif %} {%- if toolcall.arguments is defined %} {%- for argsname, argsvalue in toolcall.arguments|items %} {{- '\n' }} {%- set argsvalue = argsvalue | tojson | safe if argsvalue is mapping or (argsvalue is sequence and argsvalue is not string) else argsvalue | string %} {{- argsvalue }} {{- '\n\n' }} {%- endfor %} {%- endif %} {{- '\n' }} {%- endfor %} {%- endif %} {{- '\n' }} {%- elif message.role == "tool" %} {%- if loop.previtem and loop.previtem.role != "tool" %} {{- 'user' }} {%- endif %} {{- '\n\n' }} {{- content }} {{- '\n' }} {%- if not loop.last and loop.nextitem.role != "tool" %} {{- '\n' }} {%- elif loop.last %} {{- '\n' }} {%- endif %} {%- else %} {{- raiseexception('Unexpected message role.') }} {%- endif %} {%- endfor %} {%- if addgenerationprompt %} {{- 'assistant\n' }} {%- if enablethinking is defined and enablethinking is false %} {{- '\n\n\n\n' }} {%- endif %} {%- endif %} Quantized Models The quantized model files are available for download. Click the buttons below to view the files. Download EXL3 Files → Character Card & Lore Book For the best roleplaying experience, it is highly recommended to use the provided character card and lore book. These files help guide the model's persona and provide rich, in-universe context. Download Files → Sampler Presets For a seamless setup in SillyTavern, you can download pre-configured sampler presets. These are tuned to provide an optimal balance between creativity and narrative coherence for this model. Simply download the .json file below and import it into SillyTavern's sampler presets menu. Download SillyTavern Presets → For those that dont use silly tavern, Samplers settings are: Temperature: 0.7 Top P: 0.8 Top K: 20 Min P: 0.0 Presence Penalty: 1.5 Repetition Penalty: 1.0 Roleplay Format Guide For the best results, use this structured format. This helps the AI clearly distinguish between actions, inner thoughts, and dialogue. Actions / Descriptions *He walked across the room and stared out the window.* Inner Thoughts *-I wonder what she's thinking.-* Dialogue Alex (Curious): "What do you see out there?" Standard novel-style formatting is also understood, but this structured format is preferred for clarity. Roleplay Example Click the button below to view a full, unedited chatlog demonstrating the model's narrative style and character portrayal. View Chatlog Example → Model Description This is Version 14.0, in the Animus series. V14.0 is built on Qwen3.5-40B, which was created as an interleaved upscale of Qwen/Qwen3.5-27B. V14.0's strength comes from a novel dataset designed to teach the model the why behind the lore, not just the what. The training data has been heavily expanded for this version: Base Samples Doubled: The previous foundation of in-character study sessions and uncensored roleplays has been doubled in size to deepen contextual understanding. 1,000 Instruction Q&A Samples: Additional Wings of Fire-based instruction formatting. 1,000 NSFW/BAD Ending Samples: Non-Wings of Fire scenarios added to diversify narrative flexibility and handle darker, complex outcomes. The result is a model with exceptionally strong prose and a deep grasp of in-universe lore, making for a highly immersive and accurate roleplaying experience. Note for roleplay, it follows system prompt and first message, meaning if the first assistant message is short, the following messages will be short. Training Details V14.0 Training Process V14.0 introduces a 2-stage LoRA fine-tuning process on an upscaled model architecture. Base Model: Qwen3.5-40B (Interleaved upscale of Qwen/Qwen3.5-27B. Layers oproj, downproj, outproj mapped with σ = 0.000625 and the rest with σ = 0.0025, copied in groups of 4 to keep the 3>1 linear to full attention ratio) Hardware: 4xH100 Training Time: 10 hours Epochs: 2 Method: LoRA (2-Stage) Stage 2 Repair: It was discovered that the standard chat template does not work effectively for multi-turn reasoning during training. The chat template was temporarily modified to allow for this, and a second training stage consisting of 300 repair steps was performed to successfully restore the multi-turn reasoning functions. Training Dataset The V14.0 dataset has been significantly expanded from previous versions: Doubled Base Dataset: The original foundation of In-Character Q&A and Uncensored Roleplay examples was doubled to reinforce the lore foundation and enhance roleplay quality. Instruction Q&A (1,000 examples): Additional Wings of Fire-based instruction Q&A sets. NSFW / Bad Endings (1,000 examples): Non-Wings of Fire scenarios specifically targeting mature themes and bad endings to widen the model's range of dramatic narrative capabilities. All datasets underwent a rigorous cleaning process to remove formatting artifacts, such as scene transitions, resulting in a cleaner and more natural narrative style. Intended Use & Limitations Intended Use: The primary purpose of this model is for creative and roleplaying within the Wings of Fire universe. However, user feedback indicates it is also highly effective for general-purpose roleplaying. Limitations & Quirks: Performance on tasks outside of its training domain (general knowledge, coding, etc.) is not guaranteed and will likely be poor. Versatility: While it appears to be only a Wings of Fire tuned model, users have reported it is very capable of performing normal roleplay with other settings and characters. The model may "hallucinate" or generate plausible but non-canonical information, especially when pushed outside the established "what-if" scenarios. Content: The training data includes mature and darker themes from the Wings of Fire series, such as conflict, character death, and moral ambiguity. The model is capable of generating content reflecting these themes. As always, it is up to the user what they do with it. Formatting: Training data was cleaned to remove narrative artifacts like scene transitions. The model should now produce cleaner prose. Safety: This model has not undergone additional safety alignment beyond what was included in its base model. Standard responsible AI practices should be followed. Acknowledgements Credit to Alibaba Cloud/Qwen team for the powerful base models. Credit to Google for the Gemini Pro model, used in dataset generation. Credit to Anthropic for sonnet 4.5, used in dataset generation. Credit to Hangzhou DeepSeek Artificial Intelligence for the deepseek model, used in dataset generation. Credit to Moonshot AI for the Kimi K2 model, used in dataset generation.

gguffinetuneroleplaychatwings-of-firensfwnot-for-all-audiencesbase_model:Darkhn/Qwen3.5-40B-Animus-V14.0base_model:quantized:Darkhn/Qwen3.5-40B-Animus-V14.0license:apache-2.0endpoints_compatibleregion:usconversational
darkhn-quants-3/qwen3.5-40b-animus-v14.0-gguf visual
Downloads
1,141
Likes
1
Pipeline
Library
Visibility
Public
Access
Open

Repository Files & Downloads

7 files detected
Direct downloads for all repository files
FileTypeQuantizationSizeLink
Qwen3.5-40B-Animus-V14.0-IQ4_NL.gguf GGUF IQ4_NL 21.38 GB Download
Qwen3.5-40B-Animus-V14.0-Q2_K.gguf GGUF Q2_K 14.28 GB Download
Qwen3.5-40B-Animus-V14.0-Q3_K_L.gguf GGUF Q3_K_L 19.29 GB Download
Qwen3.5-40B-Animus-V14.0-Q4_K_M.gguf GGUF Q4_K_M 22.29 GB Download
Qwen3.5-40B-Animus-V14.0-Q5_K_M.gguf GGUF Q5_K_M 25.97 GB Download
Qwen3.5-40B-Animus-V14.0-Q6_K.gguf GGUF Q6_K 29.87 GB Download
Qwen3.5-40B-Animus-V14.0-Q8_0.gguf GGUF 38.68 GB Download

Model Details Live

Model Slug
darkhn-quants-3/qwen3.5-40b-animus-v14.0-gguf
Author
Darkhn-Quants-3
Pipeline Task
Library
Created
2026-03-20
Last Modified
2026-03-23
Gated
No
Private
No
HF SHA
570824a3ba10c95e74ea00b5fb31ecd69f3fd42f
License
apache-2.0
Language
Unknown
Base Model
Darkhn/Qwen3.5-40B-Animus-V14.0

Metadata Inspector

Normalized metadata (stored in metadata_json)
{
  "metadata": {},
  "card_data": {
    "license": "apache-2.0",
    "tags": [
      "finetune",
      "roleplay",
      "chat",
      "wings-of-fire",
      "nsfw",
      "not-for-all-audiences"
    ],
    "base_model": [
      "Darkhn/Qwen3.5-40B-Animus-V14.0"
    ],
    "base_model_relation": "quantized",
    "frontmatter": {
      "license": "apache-2.0",
      "tags": [
        "finetune",
        "roleplay",
        "chat",
        "wings-of-fire",
        "nsfw",
        "not-for-all-audiences"
      ],
      "base_model": [
        "Darkhn/Qwen3.5-40B-Animus-V14.0"
      ],
      "base_model_relation": "quantized"
    },
    "hero_image_url": "image.png",
    "summary": "body { font-family: 'Quicksand', sans-serif; background: linear-gradient(135deg, #4a1e00 0%, #1c0a00 100%); color: #F5EFE6; margin: 0; padding: 0; font-size: 16px; } h1, h2, h3, h4, summary { font-family: 'Cinzel', serif; } .container { margin: 20px auto; max-width: 900px; background-color: rgba(28, 22, 18, 0.95); padding: 30px; border-radius: 12px; box-shadow: 0 4px 20px rgba(255, 140, 0, 0.15); border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; position: relative; } .container::before { content: ''; position: absolute; top: -1px; left: -1px; right: -1px; bottom: -1px; border: 1px solid rgba(255, 165, 0, 0.98); border-radius: 12px; pointer-events: none; animation: borderGlow 2.5s ease-in-out infinite; } @keyframes borderGlow { 0% { box-shadow: 0 0 5px rgba(255, 165, 0, 0.98); } 50% { box-shadow: 0 0 12px rgba(255, 165, 0, 0.98); } 100% { box-shadow: 0 0 5px rgba(255, 165, 0, 0.98); } } .header h1 { font-size: 32px; color: #FFA500; margin: 0 0 20px 0; text-align: center; text-shadow: 0 0 12px rgba(255, 100, 0, 0.6); } .info img { width: 100%; max-width: 700px; display: block; margin: 0 auto 25px auto; border-radius: 10px; box-shadow: 0 0 20px rgba(255, 140, 0, 0.25); border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; } a { color: #FFD700; text-decoration: none; transition: color 0.3s ease; } a:hover { color: #FFDAB9; } .button { display: inline-block; background-color: #E55B00; color: #FFFFFF; padding: 12px 24px; border-radius: 5px; cursor: pointer; text-decoration: none; font-family: 'Cinzel', serif; font-weight: 600; transition: all 0.3s ease; border: 1px solid transparent; } .button:hover { background-color: #FF8C00; box-shadow: 0 0 15px rgba(255, 140, 0, 0.5); transform: translateY(-2px); } pre { background-color: rgba(45, 35, 25, 0.95); padding: 15px; border-radius: 5px; overflow-x: auto; border: 1px solid rgba(255, 140, 0, 0.2); outline: 1px solid rgba(255, 140, 0, 0.5); outline-offset: -1px; } code { font-family: 'Courier New', monospace; color: #F5EFE6; } .section-container { margin: 40px 0; } h2 { font-size: 26px; color: #FFA500; text-shadow: 0 0 10px rgba(255, 140, 0, 0.5); border-bottom: 1px solid rgba(255, 140, 0, 0.2); padding-bottom: 10px; margin-bottom: 20px; } .info-card { background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; overflow: hidden; margin-bottom: 25px; } .info-header { background: rgba(255, 140, 0, 0.1); padding: 20px; border-bottom: 1px solid rgba(255, 140, 0, 0.2); } .info-header h3 { color: #FFA500; margin: 0 0 10px 0; font-size: 22px; text-shadow: 0 0 5px rgba(255, 140, 0, 0.3); } .model-tags { display: flex; gap: 8px; flex-wrap: wrap; } .model-tag { background: rgba(218, 165, 32, 0.15); color: #FFD700; padding: 4px 8px; border-radius: 4px; font-size: 12px; border: 1px solid rgba(218, 165, 32, 0.3); font-family: 'Quicksand', sans-serif; } .card-content { padding: 20px; line-height: 1.7; } .card-content p, .card-content li { margin-bottom: 1em; } .card-content p:last-child, .card-content li:last-child { margin-bottom: 0; } .card-content ul { list-style: none; padding-left: 20px; } .card-content li::before { content: '✦'; color: #FFD700; font-weight: bold; display: inline-block; width: 1em; margin-left: -1.2em; font-size: 1.2em; line-height: 1; } .card-content strong { color: #FFD700; font-weight: 600; } .config-container { background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; overflow: hidden; } .config-header { background: rgba(255, 140, 0, 0.1); padding: 15px 20px; border-bottom: 1px solid rgba(255, 140, 0, 0.2); } .config-header h3 { margin: 0; color: #FFA500; font-size: 22px; } .config-content { padding: 20px; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; } .config-item { display: flex; flex-direction: column; gap: 5px; } .config-label { color: #FFD700; font-size: 14px; font-weight: 500; font-family: 'Quicksand', sans-serif; } .config-value { color: #F5EFE6; font-family: 'Courier New', monospace; font-size: 18px; font-weight: bold; } .link-arrow { display: inline-block; transition: transform 0.3s ease; } a:hover .link-arrow { transform: translateX(3px); } .support-section { text-align: center; margin-top: 40px; background: rgba(45, 35, 25, 0.95); border: 1px solid rgba(255, 140, 0, 0.2); border-radius: 8px; padding: 20px; } .support-section p { margin-bottom: 15px; font-size: 1.1em; margin-top: 0; } summary { cursor: pointer; list-style: none; outline: none; display: flex; align-items: flex-start; } summary::-webkit-details-marker { display: none; } summary::before { content: '▶'; font-size: 1.2em; color: #FFA500; margin-right: 15px; padding-top: 5px; transition: transform 0.2s ease; flex-shrink: 0; } details[open] > summary::before { transform: rotate(90deg); } summary > h2 { flex-grow: 1; } .format-list { margin: 1.5em 0; } .format-list dt { color: #FFA500; font-family: 'Cinzel', serif; font-weight: 600; font-size: 1.3em; text-shadow: 0 0 8px rgba(255, 140, 0, 0.5); margin-bottom: 0.6em; } .format-list dd { margin-left: 0; margin-bottom: 1.5em; background-color: rgba(28, 22, 18, 0.95); padding: 12px 15px; border-radius: 6px; border: 1px solid rgba(255, 140, 0, 0.2); border-left: 4px solid #FFA500; } .format-list dd:last-of-type { margin-bottom: 0; }     Qwen3.5-40B-Animus-V14.0-GGUF     Send me your support to help me feed the data beast! also taking comissions for universe specific models  Support on Ko-fi     Important: Chat Template   This model uses the Qwen3_5/ChatML instruction template. Ensure your client is configured correctly to avoid degraded performance. Human-Readable Format: system {{SYSTEM_PROMPT}} user {{USER_MESSAGE}} assistant  {{REASONING}}  {{ASSISTANT_RESPONSE}}  ✅ Chat Completion (recommended): Use your inference server's built-in chat template (llama.cpp, TabbyAPI, vllm, etc.). The correct formatting is handled automatically — no manual configuration needed. ⚠️ Text Completion: You must manage tokens manually to match the Qwen3_5/ChatML format, ensuring correct use of , , and newline characters as shown in the Jinja template. Jinja Template:  Click to view Jinja Template {%- set image_count = namespace(value=0) %} {%- set video_count = namespace(value=0) %} {%- macro render_content(content, do_vision_count, is_system_content=false) %} {%- if content is string %} {{- content }} {%- elif content is iterable and content is not mapping %} {%- for item in content %} {%- if 'image' in item or 'image_url' in item or item.type == 'image' %} {%- if is_system_content %} {{- raise_exception('System message cannot contain images.') }} {%- endif %} {%- if do_vision_count %} {%- set image_count.value = image_count.value + 1 %} {%- endif %} {%- if add_vision_id %} {{- 'Picture ' ~ image_count.value ~ ': ' }} {%- endif %} {{- '' }} {%- elif 'video' in item or item.type == 'video' %} {%- if is_system_content %} {{- raise_exception('System message cannot contain videos.') }} {%- endif %} {%- if do_vision_count %} {%- set video_count.value = video_count.value + 1 %} {%- endif %} {%- if add_vision_id %} {{- 'Video ' ~ video_count.value ~ ': ' }} {%- endif %} {{- '' }} {%- elif 'text' in item %} {{- item.text }} {%- else %} {{- raise_exception('Unexpected item type in content.') }} {%- endif %} {%- endfor %} {%- elif content is none or content is undefined %} {{- '' }} {%- else %} {{- raise_exception('Unexpected content type.') }} {%- endif %} {%- endmacro %} {%- if not messages %} {{- raise_exception('No messages provided.') }} {%- endif %} {%- if tools and tools is iterable and tools is not mapping %} {{- 'system\\n' }} {{- \"# Tools\\n\\nYou have access to the following functions:\\n\\n\" }} {%- for tool in tools %} {{- \"\\n\" }} {{- tool | tojson }} {%- endfor %} {{- \"\\n\" }} {{- '\\n\\nIf you choose to call a function ONLY reply in the following format with NO suffix:\\n\\n\\n\\n\\nvalue_1\\n\\n\\nThis is the value for the second parameter\\nthat can span\\nmultiple lines\\n\\n\\n\\n\\n\\nReminder:\\n- Function calls MUST follow the specified format: an inner  block must be nested within  XML tags\\n- Required parameters MUST be specified\\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\\n' }} {%- if messages[0].role == 'system' %} {%- set content = render_content(messages[0].content, false, true)|trim %} {%- if content %} {{- '\\n\\n' + content }} {%- endif %} {%- endif %} {{- '\\n' }} {%- else %} {%- if messages[0].role == 'system' %} {%- set content = render_content(messages[0].content, false, true)|trim %} {{- 'system\\n' + content + '\\n' }} {%- endif %} {%- endif %} {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %} {%- for message in messages[::-1] %} {%- set index = (messages|length - 1) - loop.index0 %} {%- if ns.multi_step_tool and message.role == \"user\" %} {%- set content = render_content(message.content, false)|trim %} {%- if not(content.startswith('') and content.endswith('')) %} {%- set ns.multi_step_tool = false %} {%- set ns.last_query_index = index %} {%- endif %} {%- elif ns.multi_step_tool and message.role == \"assistant\" %} {%- set ns.multi_step_tool = false %} {%- set ns.last_query_index = index %} {%- endif %} {%- endfor %} {%- if ns.multi_step_tool %} {{- raise_exception('No user query found in messages.') }} {%- endif %} {%- for message in messages %} {%- set content = render_content(message.content, true)|trim %} {%- elif message.role == \"user\" %} {{- '' + message.role + '\\n' + content + '' + '\\n' }} {%- elif message.role == \"assistant\" %} {%- set reasoning_content = '' %} {%- if message.reasoning_content is string %} {%- set reasoning_content = message.reasoning_content %} {%- else %} {%- if '' in content %} {%- set reasoning_content = content.split('')[0].rstrip('\\n').split('')[-1].lstrip('\\n') %} {%- set content = content.split('')[-1].lstrip('\\n') %} {%- endif %} {%- endif %} {%- set reasoning_content = reasoning_content|trim %} {%- if reasoning_content %} {{- '' + message.role + '\\n\\n' + reasoning_content + '\\n\\n\\n' + content }} {%- else %} {{- '' + message.role + '\\n\\n\\n\\n\\n' + content }} {%- endif %} {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %} {%- for tool_call in message.tool_calls %} {%- if tool_call.function is defined %} {%- set tool_call = tool_call.function %} {%- endif %} {%- if loop.first %} {%- if content|trim %} {{- '\\n\\n\\n\\n' }} {%- else %} {{- '\\n\\n' }} {%- endif %} {%- else %} {{- '\\n\\n\\n' }} {%- endif %} {%- if tool_call.arguments is defined %} {%- for args_name, args_value in tool_call.arguments|items %} {{- '\\n' }} {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %} {{- args_value }} {{- '\\n\\n' }} {%- endfor %} {%- endif %} {{- '\\n' }} {%- endfor %} {%- endif %} {{- '\\n' }} {%- elif message.role == \"tool\" %} {%- if loop.previtem and loop.previtem.role != \"tool\" %} {{- 'user' }} {%- endif %} {{- '\\n\\n' }} {{- content }} {{- '\\n' }} {%- if not loop.last and loop.nextitem.role != \"tool\" %} {{- '\\n' }} {%- elif loop.last %} {{- '\\n' }} {%- endif %} {%- else %} {{- raise_exception('Unexpected message role.') }} {%- endif %} {%- endfor %} {%- if add_generation_prompt %} {{- 'assistant\\n' }} {%- if enable_thinking is defined and enable_thinking is false %} {{- '\\n\\n\\n\\n' }} {%- endif %} {%- endif %}        Quantized Models   The quantized model files are available for download. Click the buttons below to view the files.  Download EXL3 Files →        Character Card & Lore Book   For the best roleplaying experience, it is highly recommended to use the provided character card and lore book. These files help guide the model's persona and provide rich, in-universe context.  Download Files →        Sampler Presets   For a seamless setup in SillyTavern, you can download pre-configured sampler presets. These are tuned to provide an optimal balance between creativity and narrative coherence for this model. Simply download the .json file below and import it into SillyTavern's sampler presets menu.  Download SillyTavern Presets →  For those that dont use silly tavern, Samplers settings are:  Temperature: 0.7 Top P: 0.8 Top K: 20 Min P: 0.0 Presence Penalty: 1.5 Repetition Penalty: 1.0         Roleplay Format Guide    For the best results, use this structured format. This helps the AI clearly distinguish between actions, inner thoughts, and dialogue.  Actions / Descriptions *He walked across the room and stared out the window.* Inner Thoughts *-I wonder what she's thinking.-* Dialogue Alex (Curious): \"What do you see out there?\"  Standard novel-style formatting is also understood, but this structured format is preferred for clarity.       Roleplay Example   Click the button below to view a full, unedited chatlog demonstrating the model's narrative style and character portrayal.  View Chatlog Example →        Model Description   This is Version 14.0, in the Animus series. V14.0 is built on Qwen3.5-40B, which was created as an interleaved upscale of Qwen/Qwen3.5-27B. V14.0's strength comes from a novel dataset designed to teach the model the why behind the lore, not just the what. The training data has been heavily expanded for this version:  Base Samples Doubled: The previous foundation of in-character study sessions and uncensored roleplays has been doubled in size to deepen contextual understanding. 1,000 Instruction Q&A Samples: Additional Wings of Fire-based instruction formatting. 1,000 NSFW/BAD Ending Samples: Non-Wings of Fire scenarios added to diversify narrative flexibility and handle darker, complex outcomes.  The result is a model with exceptionally strong prose and a deep grasp of in-universe lore, making for a highly immersive and accurate roleplaying experience. Note for roleplay, it follows system prompt and first message, meaning if the first assistant message is short, the following messages will be short.       Training Details   V14.0 Training Process   V14.0 introduces a 2-stage LoRA fine-tuning process on an upscaled model architecture.  Base Model: Qwen3.5-40B (Interleaved upscale of Qwen/Qwen3.5-27B. Layers o_proj, down_proj, out_proj mapped with σ = 0.000625 and the rest with σ = 0.0025, copied in groups of 4 to keep the 3>1 linear to full attention ratio) Hardware: 4xH100 Training Time: 10 hours Epochs: 2 Method: LoRA (2-Stage)  Stage 2 Repair: It was discovered that the standard chat template does not work effectively for multi-turn reasoning during training. The chat template was temporarily modified to allow for this, and a second training stage consisting of 300 repair steps was performed to successfully restore the multi-turn reasoning functions.     Training Dataset   The V14.0 dataset has been significantly expanded from previous versions:  Doubled Base Dataset: The original foundation of In-Character Q&A and Uncensored Roleplay examples was doubled to reinforce the lore foundation and enhance roleplay quality. Instruction Q&A (1,000 examples): Additional Wings of Fire-based instruction Q&A sets. NSFW / Bad Endings (1,000 examples): Non-Wings of Fire scenarios specifically targeting mature themes and bad endings to widen the model's range of dramatic narrative capabilities.  All datasets underwent a rigorous cleaning process to remove formatting artifacts, such as **scene transitions**, resulting in a cleaner and more natural narrative style.       Intended Use & Limitations    Intended Use: The primary purpose of this model is for creative and roleplaying within the Wings of Fire universe. However, user feedback indicates it is also highly effective for general-purpose roleplaying. Limitations & Quirks:  Performance on tasks outside of its training domain (general knowledge, coding, etc.) is not guaranteed and will likely be poor. Versatility: While it appears to be only a Wings of Fire tuned model, users have reported it is very capable of performing normal roleplay with other settings and characters. The model may \"hallucinate\" or generate plausible but non-canonical information, especially when pushed outside the established \"what-if\" scenarios. Content: The training data includes mature and darker themes from the Wings of Fire series, such as conflict, character death, and moral ambiguity. The model is capable of generating content reflecting these themes. As always, it is up to the user what they do with it. Formatting: Training data was cleaned to remove narrative artifacts like **scene transitions**. The model should now produce cleaner prose. Safety: This model has not undergone additional safety alignment beyond what was included in its base model. Standard responsible AI practices should be followed.          Acknowledgements    Credit to Alibaba Cloud/Qwen team for the powerful base models. Credit to Google for the Gemini Pro model, used in dataset generation. Credit to Anthropic for sonnet 4.5, used in dataset generation. Credit to Hangzhou DeepSeek Artificial Intelligence for the deepseek model, used in dataset generation. Credit to Moonshot AI for the Kimi K2 model, used in dataset generation.",
    "quick_links": [],
    "benchmark_table_html": "",
    "readme_markdown": "---\nlicense: apache-2.0\ntags:\n- finetune\n- roleplay\n- chat\n- wings-of-fire\n- nsfw\n- not-for-all-audiences\nbase_model:\n- Darkhn/Qwen3.5-40B-Animus-V14.0\nbase_model_relation: quantized\n---\n\n<style>\nbody {\n  font-family: 'Quicksand', sans-serif;\n  background: linear-gradient(135deg, #4a1e00 0%, #1c0a00 100%);\n  color: #F5EFE6;\n  margin: 0;\n  padding: 0;\n  font-size: 16px;\n}\n\nh1, h2, h3, h4, summary {\n    font-family: 'Cinzel', serif;\n}\n\n.container {\n  margin: 20px auto;\n  max-width: 900px;\n  background-color: rgba(28, 22, 18, 0.95);\n  padding: 30px;\n  border-radius: 12px;\n  box-shadow: 0 4px 20px rgba(255, 140, 0, 0.15);\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  outline: 1px solid rgba(255, 140, 0, 0.5);\n  outline-offset: -1px;\n  position: relative;\n}\n\n.container::before {\n  content: '';\n  position: absolute;\n  top: -1px;\n  left: -1px;\n  right: -1px;\n  bottom: -1px;\n  border: 1px solid rgba(255, 165, 0, 0.98);\n  border-radius: 12px;\n  pointer-events: none;\n  animation: borderGlow 2.5s ease-in-out infinite;\n}\n\n@keyframes borderGlow {\n  0% {\n    box-shadow: 0 0 5px rgba(255, 165, 0, 0.98);\n  }\n  50% {\n    box-shadow: 0 0 12px rgba(255, 165, 0, 0.98);\n  }\n  100% {\n    box-shadow: 0 0 5px rgba(255, 165, 0, 0.98);\n  }\n}\n\n.header h1 {\n  font-size: 32px;\n  color: #FFA500;\n  margin: 0 0 20px 0;\n  text-align: center;\n  text-shadow: 0 0 12px rgba(255, 100, 0, 0.6);\n}\n\n.info img {\n  width: 100%;\n  max-width: 700px;\n  display: block;\n  margin: 0 auto 25px auto;\n  border-radius: 10px;\n  box-shadow: 0 0 20px rgba(255, 140, 0, 0.25);\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  outline: 1px solid rgba(255, 140, 0, 0.5);\n  outline-offset: -1px;\n}\n\na {\n  color: #FFD700;\n  text-decoration: none;\n  transition: color 0.3s ease;\n}\n\na:hover {\n  color: #FFDAB9;\n}\n\n.button {\n  display: inline-block;\n  background-color: #E55B00;\n  color: #FFFFFF;\n  padding: 12px 24px;\n  border-radius: 5px;\n  cursor: pointer;\n  text-decoration: none;\n  font-family: 'Cinzel', serif;\n  font-weight: 600;\n  transition: all 0.3s ease;\n  border: 1px solid transparent;\n}\n\n.button:hover {\n  background-color: #FF8C00;\n  box-shadow: 0 0 15px rgba(255, 140, 0, 0.5);\n  transform: translateY(-2px);\n}\n\npre {\n  background-color: rgba(45, 35, 25, 0.95);\n  padding: 15px;\n  border-radius: 5px;\n  overflow-x: auto;\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  outline: 1px solid rgba(255, 140, 0, 0.5);\n  outline-offset: -1px;\n}\n\ncode {\n  font-family: 'Courier New', monospace;\n  color: #F5EFE6;\n}\n\n.section-container {\n  margin: 40px 0;\n}\n\nh2 {\n    font-size: 26px;\n    color: #FFA500;\n    text-shadow: 0 0 10px rgba(255, 140, 0, 0.5);\n    border-bottom: 1px solid rgba(255, 140, 0, 0.2);\n    padding-bottom: 10px;\n    margin-bottom: 20px;\n}\n\n.info-card {\n  background: rgba(45, 35, 25, 0.95);\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  border-radius: 8px;\n  overflow: hidden;\n  margin-bottom: 25px;\n}\n\n.info-header {\n  background: rgba(255, 140, 0, 0.1);\n  padding: 20px;\n  border-bottom: 1px solid rgba(255, 140, 0, 0.2);\n}\n\n.info-header h3 {\n  color: #FFA500;\n  margin: 0 0 10px 0;\n  font-size: 22px;\n  text-shadow: 0 0 5px rgba(255, 140, 0, 0.3);\n}\n\n.model-tags {\n  display: flex;\n  gap: 8px;\n  flex-wrap: wrap;\n}\n\n.model-tag {\n  background: rgba(218, 165, 32, 0.15);\n  color: #FFD700;\n  padding: 4px 8px;\n  border-radius: 4px;\n  font-size: 12px;\n  border: 1px solid rgba(218, 165, 32, 0.3);\n  font-family: 'Quicksand', sans-serif;\n}\n\n.card-content {\n  padding: 20px;\n  line-height: 1.7;\n}\n\n.card-content p, .card-content li {\n    margin-bottom: 1em;\n}\n\n.card-content p:last-child, .card-content li:last-child {\n    margin-bottom: 0;\n}\n\n.card-content ul {\n    list-style: none;\n    padding-left: 20px;\n}\n\n.card-content li::before {\n    content: '✦';\n    color: #FFD700;\n    font-weight: bold;\n    display: inline-block;\n    width: 1em;\n    margin-left: -1.2em;\n    font-size: 1.2em;\n    line-height: 1;\n}\n\n.card-content strong {\n    color: #FFD700;\n    font-weight: 600;\n}\n\n.config-container {\n  background: rgba(45, 35, 25, 0.95);\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  border-radius: 8px;\n  overflow: hidden;\n}\n\n.config-header {\n  background: rgba(255, 140, 0, 0.1);\n  padding: 15px 20px;\n  border-bottom: 1px solid rgba(255, 140, 0, 0.2);\n}\n\n.config-header h3 {\n    margin: 0;\n    color: #FFA500;\n    font-size: 22px;\n}\n\n.config-content {\n  padding: 20px;\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n  gap: 20px;\n}\n\n.config-item {\n  display: flex;\n  flex-direction: column;\n  gap: 5px;\n}\n\n.config-label {\n  color: #FFD700;\n  font-size: 14px;\n  font-weight: 500;\n  font-family: 'Quicksand', sans-serif;\n}\n\n.config-value {\n  color: #F5EFE6;\n  font-family: 'Courier New', monospace;\n  font-size: 18px;\n  font-weight: bold;\n}\n\n.link-arrow {\n  display: inline-block;\n  transition: transform 0.3s ease;\n}\n\na:hover .link-arrow {\n  transform: translateX(3px);\n}\n\n.support-section {\n    text-align: center;\n    margin-top: 40px;\n    background: rgba(45, 35, 25, 0.95);\n    border: 1px solid rgba(255, 140, 0, 0.2);\n    border-radius: 8px;\n    padding: 20px;\n}\n\n.support-section p {\n    margin-bottom: 15px;\n    font-size: 1.1em;\n    margin-top: 0;\n}\n\nsummary {\n    cursor: pointer;\n    list-style: none;\n    outline: none;\n    display: flex;\n    align-items: flex-start;\n}\nsummary::-webkit-details-marker {\n    display: none;\n}\nsummary::before {\n    content: '▶';\n    font-size: 1.2em;\n    color: #FFA500;\n    margin-right: 15px;\n    padding-top: 5px;\n    transition: transform 0.2s ease;\n    flex-shrink: 0;\n}\ndetails[open] > summary::before {\n    transform: rotate(90deg);\n}\nsummary > h2 {\n    flex-grow: 1;\n}\n\n.format-list {\n  margin: 1.5em 0;\n}\n\n.format-list dt {\n  color: #FFA500;\n  font-family: 'Cinzel', serif;\n  font-weight: 600;\n  font-size: 1.3em;\n  text-shadow: 0 0 8px rgba(255, 140, 0, 0.5);\n  margin-bottom: 0.6em;\n}\n\n.format-list dd {\n  margin-left: 0;\n  margin-bottom: 1.5em;\n  background-color: rgba(28, 22, 18, 0.95);\n  padding: 12px 15px;\n  border-radius: 6px;\n  border: 1px solid rgba(255, 140, 0, 0.2);\n  border-left: 4px solid #FFA500;\n}\n\n.format-list dd:last-of-type {\n  margin-bottom: 0;\n}\n</style>\n<div class=\"container\">\n<link href=\"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&family=Quicksand:wght@400;500&display=swap\" rel=\"stylesheet\">\n<div class=\"header\">\n  <h1>Qwen3.5-40B-Animus-V14.0-GGUF</h1>\n</div>\n<div class=\"info\">\n  <img src=\"image.png\" alt=\"Wings_of_Fire\" width=\"700\">\n\n  <div class=\"support-section\">\n    <p><strong>Send me your support to help me feed the data beast! also taking comissions for universe specific models</strong></p>\n    <a href=\"https://ko-fi.com/som1tokmynam\" target=\"_blank\" class=\"button\">\n      Support on Ko-fi\n    </a>\n  </div>\n\n<div class=\"section-container\">\n  <details open>\n    <summary><h2>Important: Chat Template</h2></summary>\n    <div class=\"info-card\">\n      <div class=\"card-content\">\n        <p>This model uses the <strong>Qwen3_5/ChatML</strong> instruction template. Ensure your client is configured correctly to avoid degraded performance.</p>\n        <p><strong>Human-Readable Format:</strong></p>\n        <pre><code><|im_start|>system\n{{SYSTEM_PROMPT}}<|im_end|>\n<|im_start|>user\n{{USER_MESSAGE}}<|im_end|>\n<|im_start|>assistant\n<think>\n{{REASONING}}\n</think>\n\n{{ASSISTANT_RESPONSE}}<|im_end|>\n</code></pre>\n        <p><strong>✅ Chat Completion (recommended):</strong> Use your inference server's built-in chat template (llama.cpp, TabbyAPI, vllm, etc.). The correct formatting is handled automatically — no manual configuration needed.</p>\n        <p><strong>⚠️ Text Completion:</strong> You must manage tokens manually to match the Qwen3_5/ChatML format, ensuring correct use of `<|im_start|>`, `<|im_end|>`, and newline characters as shown in the Jinja template.</p>\n        <p><strong>Jinja Template:</strong></p>\n        <details>\n          <summary>Click to view Jinja Template</summary>\n          <pre><code>{%- set image_count = namespace(value=0) %}\n{%- set video_count = namespace(value=0) %}\n{%- macro render_content(content, do_vision_count, is_system_content=false) %}\n    {%- if content is string %}\n        {{- content }}\n    {%- elif content is iterable and content is not mapping %}\n        {%- for item in content %}\n            {%- if 'image' in item or 'image_url' in item or item.type == 'image' %}\n                {%- if is_system_content %}\n                    {{- raise_exception('System message cannot contain images.') }}\n                {%- endif %}\n                {%- if do_vision_count %}\n                    {%- set image_count.value = image_count.value + 1 %}\n                {%- endif %}\n                {%- if add_vision_id %}\n                    {{- 'Picture ' ~ image_count.value ~ ': ' }}\n                {%- endif %}\n                {{- '<|vision_start|><|image_pad|><|vision_end|>' }}\n            {%- elif 'video' in item or item.type == 'video' %}\n                {%- if is_system_content %}\n                    {{- raise_exception('System message cannot contain videos.') }}\n                {%- endif %}\n                {%- if do_vision_count %}\n                    {%- set video_count.value = video_count.value + 1 %}\n                {%- endif %}\n                {%- if add_vision_id %}\n                    {{- 'Video ' ~ video_count.value ~ ': ' }}\n                {%- endif %}\n                {{- '<|vision_start|><|video_pad|><|vision_end|>' }}\n            {%- elif 'text' in item %}\n                {{- item.text }}\n            {%- else %}\n                {{- raise_exception('Unexpected item type in content.') }}\n            {%- endif %}\n        {%- endfor %}\n    {%- elif content is none or content is undefined %}\n        {{- '' }}\n    {%- else %}\n        {{- raise_exception('Unexpected content type.') }}\n    {%- endif %}\n{%- endmacro %}\n{%- if not messages %}\n    {{- raise_exception('No messages provided.') }}\n{%- endif %}\n{%- if tools and tools is iterable and tools is not mapping %}\n    {{- '<|im_start|>system\\n' }}\n    {{- \"# Tools\\n\\nYou have access to the following functions:\\n\\n<tools>\" }}\n    {%- for tool in tools %}\n        {{- \"\\n\" }}\n        {{- tool | tojson }}\n    {%- endfor %}\n    {{- \"\\n</tools>\" }}\n    {{- '\\n\\nIf you choose to call a function ONLY reply in the following format with NO suffix:\\n\\n<tool_call>\\n<function=example_function_name>\\n<parameter=example_parameter_1>\\nvalue_1\\n</parameter>\\n<parameter=example_parameter_2>\\nThis is the value for the second parameter\\nthat can span\\nmultiple lines\\n</parameter>\\n</function>\\n</tool_call>\\n\\n<IMPORTANT>\\nReminder:\\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\\n- Required parameters MUST be specified\\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\\n</IMPORTANT>' }}\n    {%- if messages[0].role == 'system' %}\n        {%- set content = render_content(messages[0].content, false, true)|trim %}\n        {%- if content %}\n            {{- '\\n\\n' + content }}\n        {%- endif %}\n    {%- endif %}\n    {{- '<|im_end|>\\n' }}\n{%- else %}\n    {%- if messages[0].role == 'system' %}\n        {%- set content = render_content(messages[0].content, false, true)|trim %}\n        {{- '<|im_start|>system\\n' + content + '<|im_end|>\\n' }}\n    {%- endif %}\n{%- endif %}\n{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}\n{%- for message in messages[::-1] %}\n    {%- set index = (messages|length - 1) - loop.index0 %}\n    {%- if ns.multi_step_tool and message.role == \"user\" %}\n        {%- set content = render_content(message.content, false)|trim %}\n        {%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}\n            {%- set ns.multi_step_tool = false %}\n            {%- set ns.last_query_index = index %}\n        {%- endif %}\n    {%- elif ns.multi_step_tool and message.role == \"assistant\" %}\n        {%- set ns.multi_step_tool = false %}\n        {%- set ns.last_query_index = index %}\n    {%- endif %}\n{%- endfor %}\n{%- if ns.multi_step_tool %}\n    {{- raise_exception('No user query found in messages.') }}\n{%- endif %}\n{%- for message in messages %}\n    {%- set content = render_content(message.content, true)|trim %}\n    {%- elif message.role == \"user\" %}\n        {{- '<|im_start|>' + message.role + '\\n' + content + '<|im_end|>' + '\\n' }}\n    {%- elif message.role == \"assistant\" %}\n        {%- set reasoning_content = '' %}\n        {%- if message.reasoning_content is string %}\n            {%- set reasoning_content = message.reasoning_content %}\n        {%- else %}\n            {%- if '</think>' in content %}\n                {%- set reasoning_content = content.split('</think>')[0].rstrip('\\n').split('<think>')[-1].lstrip('\\n') %}\n                {%- set content = content.split('</think>')[-1].lstrip('\\n') %}\n            {%- endif %}\n        {%- endif %}\n        {%- set reasoning_content = reasoning_content|trim %}\n        {%- if reasoning_content %}\n            {{- '<|im_start|>' + message.role + '\\n<think>\\n' + reasoning_content + '\\n</think>\\n\\n' + content }}\n        {%- else %}\n            {{- '<|im_start|>' + message.role + '\\n<think>\\n\\n</think>\\n\\n' + content }}\n        {%- endif %}\n        {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}\n            {%- for tool_call in message.tool_calls %}\n                {%- if tool_call.function is defined %}\n                    {%- set tool_call = tool_call.function %}\n                {%- endif %}\n                {%- if loop.first %}\n                    {%- if content|trim %}\n                        {{- '\\n\\n<tool_call>\\n<function=' + tool_call.name + '>\\n' }}\n                    {%- else %}\n                        {{- '<tool_call>\\n<function=' + tool_call.name + '>\\n' }}\n                    {%- endif %}\n                {%- else %}\n                    {{- '\\n<tool_call>\\n<function=' + tool_call.name + '>\\n' }}\n                {%- endif %}\n                {%- if tool_call.arguments is defined %}\n                    {%- for args_name, args_value in tool_call.arguments|items %}\n                        {{- '<parameter=' + args_name + '>\\n' }}\n                        {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}\n                        {{- args_value }}\n                        {{- '\\n</parameter>\\n' }}\n                    {%- endfor %}\n                {%- endif %}\n                {{- '</function>\\n</tool_call>' }}\n            {%- endfor %}\n        {%- endif %}\n        {{- '<|im_end|>\\n' }}\n    {%- elif message.role == \"tool\" %}\n        {%- if loop.previtem and loop.previtem.role != \"tool\" %}\n            {{- '<|im_start|>user' }}\n        {%- endif %}\n        {{- '\\n<tool_response>\\n' }}\n        {{- content }}\n        {{- '\\n</tool_response>' }}\n        {%- if not loop.last and loop.nextitem.role != \"tool\" %}\n            {{- '<|im_end|>\\n' }}\n        {%- elif loop.last %}\n            {{- '<|im_end|>\\n' }}\n        {%- endif %}\n    {%- else %}\n        {{- raise_exception('Unexpected message role.') }}\n    {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n    {{- '<|im_start|>assistant\\n' }}\n    {%- if enable_thinking is defined and enable_thinking is false %}\n        {{- '<think>\\n\\n</think>\\n\\n' }}\n    {%- endif %}\n{%- endif %}</code></pre>\n        </details>\n      </div>\n    </div>\n  </details>\n</div>\n\n<div class=\"section-container\">\n  <details>\n    <summary><h2>Quantized Models</h2></summary>\n    <div class=\"info-card\">\n      <div class=\"card-content\">\n        <p>The quantized model files are available for download. Click the buttons below to view the files.</p>\n        <a href=\"https://huggingface.co/Darkhn-Quants-3/Qwen3.5-40B-Animus-V14.0-EXL3\" target=\"_blank\" class=\"button\">\n          Download EXL3 Files <span class=\"link-arrow\">→</span>\n        </a>\n      </div>\n    </div>\n  </details>\n</div>\n\n  <div class=\"section-container\">\n    <details>\n      <summary><h2>Character Card & Lore Book</h2></summary>\n      <div class=\"info-card\">\n        <div class=\"card-content\">\n          <p>For the best roleplaying experience, it is highly recommended to use the provided character card and lore book. These files help guide the model's persona and provide rich, in-universe context.</p>\n          <a href=\"https://huggingface.co/Darkhn/Sampler_settings_and_system_prompt/tree/main/character_card\" target=\"_blank\" class=\"button\">\n            Download Files <span class=\"link-arrow\">→</span>\n          </a>\n        </div>\n      </div>\n    </details>\n  </div>\n\n  <div class=\"section-container\">\n    <details>\n      <summary><h2>Sampler Presets</h2></summary>\n      <div class=\"info-card\">\n        <div class=\"card-content\">\n          <p>For a seamless setup in SillyTavern, you can download pre-configured sampler presets. These are tuned to provide an optimal balance between creativity and narrative coherence for this model.</p>\n          <p>Simply download the <code>.json</code> file below and import it into SillyTavern's sampler presets menu.</p>\n          <a href=\"https://huggingface.co/Darkhn/Sampler_settings_and_system_prompt/raw/main/Qwen3_5_SillyTavern_settings.json\" target=\"_blank\" class=\"button\">\n            Download SillyTavern Presets <span class=\"link-arrow\">→</span>\n          </a>\n          <p><li>For those that dont use silly tavern, Samplers settings are:</li></p>\n          <ul>\n              <p><strong>Temperature:</strong> 0.7</p>\n              <p><strong>Top P:</strong> 0.8</p>\n              <p><strong>Top K:</strong> 20</p>\n              <p><strong>Min P:</strong> 0.0</p>\n              <p><strong>Presence Penalty:</strong> 1.5</p>\n              <p><strong>Repetition Penalty:</strong> 1.0</p>\n          </ul>\n        </div>\n      </div>\n    </details>\n  </div>\n  \n  <div class=\"section-container\">\n    <details open>\n        <summary>\n            <h2>Roleplay Format Guide</h2>\n        </summary>\n        <div class=\"info-card\">\n            <div class=\"card-content\">\n                <p>For the best results, use this structured format. This helps the AI clearly distinguish between actions, inner thoughts, and dialogue.</p>\n                <dl class=\"format-list\">\n                    <dt>Actions / Descriptions</dt>\n                    <dd><code>*He walked across the room and stared out the window.*</code></dd>\n                    <dt>Inner Thoughts</dt>\n                    <dd><code>*-I wonder what she's thinking.-*</code></dd>\n                    <dt>Dialogue</dt>\n                    <dd><code>Alex (Curious): \"What do you see out there?\"</code></dd>\n                </dl>\n                <p>Standard novel-style formatting is also understood, but this structured format is preferred for clarity.</p>\n            </div>\n        </div>\n    </details>\n  </div>\n\n  <div class=\"section-container\">\n    <details>\n      <summary><h2>Roleplay Example</h2></summary>\n      <div class=\"info-card\">\n        <div class=\"card-content\">\n          <p>Click the button below to view a full, unedited chatlog demonstrating the model's narrative style and character portrayal.</p>\n          <a href=\"https://huggingface.co/Darkhn/Sampler_settings_and_system_prompt/blob/main/chat_logs/chatlog_mistral_large.png\" target=\"_blank\" class=\"button\">\n            View Chatlog Example <span class=\"link-arrow\">→</span>\n          </a>\n        </div>\n      </div>\n    </details>\n  </div>\n\n  <div class=\"section-container\">\n    <details open>\n      <summary><h2>Model Description</h2></summary>\n      <div class=\"info-card\">\n        <div class=\"card-content\">\n          <p>This is <strong>Version 14.0</strong>, in the Animus series. V14.0 is built on <strong>Qwen3.5-40B</strong>, which was created as an interleaved upscale of Qwen/Qwen3.5-27B.</p>\n\t\t  <p>V14.0's strength comes from a novel dataset designed to teach the model the <em>why</em> behind the lore, not just the <em>what</em>. The training data has been heavily expanded for this version:</p>\n            <ul>\n                <li><strong>Base Samples Doubled:</strong> The previous foundation of in-character study sessions and uncensored roleplays has been doubled in size to deepen contextual understanding.</li>\n                <li><strong>1,000 Instruction Q&A Samples:</strong> Additional Wings of Fire-based instruction formatting.</li>\n                <li><strong>1,000 NSFW/BAD Ending Samples:</strong> Non-Wings of Fire scenarios added to diversify narrative flexibility and handle darker, complex outcomes.</li>\n            </ul>\n          <p>The result is a model with <strong>exceptionally strong prose and a deep grasp of in-universe lore</strong>, making for a highly immersive and accurate roleplaying experience.</p>\n          <p>Note for roleplay, it follows system prompt and first message, meaning if the first assistant message is short, the following messages will be short.</p>\n        </div>\n      </div>\n    </details>\n  </div>\n  \n  <div class=\"section-container\">\n    <details open>\n      <summary><h2>Training Details</h2></summary>\n      <div class=\"info-card\">\n          <div class=\"info-header\">\n              <h3>V14.0 Training Process</h3>\n          </div>\n          <div class=\"card-content\">\n              <p>V14.0 introduces a 2-stage LoRA fine-tuning process on an upscaled model architecture.</p>\n              <ul>\n                  <li><strong>Base Model:</strong> Qwen3.5-40B (Interleaved upscale of Qwen/Qwen3.5-27B. Layers <code>o_proj</code>, <code>down_proj</code>, <code>out_proj</code> mapped with σ = 0.000625 and the rest with σ = 0.0025, copied in groups of 4 to keep the 3>1 linear to full attention ratio)</li>\n                  <li><strong>Hardware:</strong> 4xH100</li>\n                  <li><strong>Training Time:</strong> 10 hours</li>\n                  <li><strong>Epochs:</strong> 2</li>\n                  <li><strong>Method:</strong> LoRA (2-Stage)</li>\n              </ul>\n              <p><strong>Stage 2 Repair:</strong> It was discovered that the standard chat template does not work effectively for multi-turn reasoning during training. The chat template was temporarily modified to allow for this, and a second training stage consisting of 300 repair steps was performed to successfully restore the multi-turn reasoning functions.</p>\n          </div>\n      </div>\n      <div class=\"info-card\">\n          <div class=\"info-header\">\n              <h3>Training Dataset</h3>\n          </div>\n          <div class=\"card-content\">\n              <p>The V14.0 dataset has been significantly expanded from previous versions:</p>\n              <ul>\n                  <li><strong>Doubled Base Dataset:</strong> The original foundation of In-Character Q&A and Uncensored Roleplay examples was doubled to reinforce the lore foundation and enhance roleplay quality.</li>\n                  <li><strong>Instruction Q&A (1,000 examples):</strong> Additional Wings of Fire-based instruction Q&A sets.</li>\n                  <li><strong>NSFW / Bad Endings (1,000 examples):</strong> Non-Wings of Fire scenarios specifically targeting mature themes and bad endings to widen the model's range of dramatic narrative capabilities.</li>\n              </ul>\n              <p>All datasets underwent a rigorous cleaning process to remove formatting artifacts, such as <code>**scene transitions**</code>, resulting in a cleaner and more natural narrative style.</p>\n          </div>\n      </div>\n    </details>\n  </div>\n  \n  <div class=\"section-container\">\n    <details>\n      <summary><h2>Intended Use & Limitations</h2></summary>\n      <div class=\"info-card\">\n          <div class=\"card-content\">\n              <ul>\n                  <li><strong>Intended Use:</strong> The primary purpose of this model is for creative and roleplaying within the <em>Wings of Fire</em> universe. However, user feedback indicates it is also highly effective for general-purpose roleplaying.</li>\n                  <li><strong>Limitations & Quirks:</strong>\n                      <ul>\n                          <li>Performance on tasks outside of its training domain (general knowledge, coding, etc.) is not guaranteed and will likely be poor.</li>\n                          <li><strong>Versatility:</strong> While it appears to be only a <em>Wings of Fire</em> tuned model, users have reported it is very capable of performing normal roleplay with other settings and characters.</li>\n                          <li>The model may \"hallucinate\" or generate plausible but non-canonical information, especially when pushed outside the established \"what-if\" scenarios.</li>\n                          <li><strong>Content:</strong> The training data includes mature and darker themes from the <em>Wings of Fire</em> series, such as conflict, character death, and moral ambiguity. The model is capable of generating content reflecting these themes. As always, it is up to the user what they do with it.</li>\n                          <li><strong>Formatting:</strong> Training data was cleaned to remove narrative artifacts like <code>**scene transitions**</code>. The model should now produce cleaner prose.</li>\n                          <li><strong>Safety:</strong> This model has not undergone additional safety alignment beyond what was included in its base model. Standard responsible AI practices should be followed.</li>\n                      </ul>\n                  </li>\n              </ul>\n          </div>\n      </div>\n    </details>\n  </div>\n\n  <div class=\"section-container\">\n    <details>\n      <summary><h2>Acknowledgements</h2></summary>\n      <div class=\"info-card\">\n          <div class=\"card-content\">\n              <ul>\n                  <li>Credit to Alibaba Cloud/Qwen team for the powerful base models.</li>\n                  <li>Credit to Google for the Gemini Pro model, used in dataset generation.</li>\n\t\t\t\t  <li>Credit to Anthropic for sonnet 4.5, used in dataset generation.</li>\n\t\t\t\t  <li>Credit to Hangzhou DeepSeek Artificial Intelligence for the deepseek model, used in dataset generation.</li>\n\t\t\t\t  <li>Credit to Moonshot AI for the Kimi K2 model, used in dataset generation.</li>\n              </ul>\n          </div>\n      </div>\n    </details>\n  </div>\n\n</div>\n</div>",
    "related_quantizations": []
  },
  "tags": [
    "gguf",
    "finetune",
    "roleplay",
    "chat",
    "wings-of-fire",
    "nsfw",
    "not-for-all-audiences",
    "base_model:Darkhn/Qwen3.5-40B-Animus-V14.0",
    "base_model:quantized:Darkhn/Qwen3.5-40B-Animus-V14.0",
    "license:apache-2.0",
    "endpoints_compatible",
    "region:us",
    "conversational"
  ],
  "likes": 1,
  "downloads": 1141,
  "gated": false,
  "private": false,
  "last_modified": "2026-03-23T12:55:55.000Z",
  "created_at": "2026-03-20T13:23:47.000Z",
  "pipeline_tag": "",
  "library_name": ""
}
Source payload excerpt (from Hugging Face API)
{
  "_id": "69bd4a6392c8d13d16b5131a",
  "id": "Darkhn-Quants-3/Qwen3.5-40B-Animus-V14.0-GGUF",
  "modelId": "Darkhn-Quants-3/Qwen3.5-40B-Animus-V14.0-GGUF",
  "sha": "570824a3ba10c95e74ea00b5fb31ecd69f3fd42f",
  "createdAt": "2026-03-20T13:23:47.000Z",
  "lastModified": "2026-03-23T12:55:55.000Z",
  "author": "Darkhn-Quants-3",
  "downloads": 1141,
  "likes": 1,
  "gated": false,
  "private": false,
  "pipeline_tag": "",
  "library_name": "",
  "siblings_count": 10
}