Text Generation
GGUF
qwen36
Mixture of Experts
conversational
multimodal
agent
ollama
heretic
uncensored
reasoning
distillation
Instructions to use FoolDev/Janus-35B-HERETIC with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use FoolDev/Janus-35B-HERETIC 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 FoolDev/Janus-35B-HERETIC:Q4_K_M # Run inference directly in the terminal: llama cli -hf FoolDev/Janus-35B-HERETIC:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf FoolDev/Janus-35B-HERETIC:Q4_K_M # Run inference directly in the terminal: llama cli -hf FoolDev/Janus-35B-HERETIC: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 FoolDev/Janus-35B-HERETIC:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf FoolDev/Janus-35B-HERETIC: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 FoolDev/Janus-35B-HERETIC:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf FoolDev/Janus-35B-HERETIC:Q4_K_M
Use Docker
docker model run hf.co/FoolDev/Janus-35B-HERETIC:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use FoolDev/Janus-35B-HERETIC with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "FoolDev/Janus-35B-HERETIC" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "FoolDev/Janus-35B-HERETIC", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/FoolDev/Janus-35B-HERETIC:Q4_K_M
- Ollama
How to use FoolDev/Janus-35B-HERETIC with Ollama:
ollama run hf.co/FoolDev/Janus-35B-HERETIC:Q4_K_M
- Unsloth Desktop
- Pi
How to use FoolDev/Janus-35B-HERETIC with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf FoolDev/Janus-35B-HERETIC:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "FoolDev/Janus-35B-HERETIC:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use FoolDev/Janus-35B-HERETIC with Docker Model Runner:
docker model run hf.co/FoolDev/Janus-35B-HERETIC:Q4_K_M
- Lemonade
How to use FoolDev/Janus-35B-HERETIC with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull FoolDev/Janus-35B-HERETIC:Q4_K_M
Run and chat with the model
lemonade run user.Janus-35B-HERETIC-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use FoolDev/Janus-35B-HERETIC with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf FoolDev/Janus-35B-HERETIC:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default FoolDev/Janus-35B-HERETIC:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use FoolDev/Janus-35B-HERETIC with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf FoolDev/Janus-35B-HERETIC:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "FoolDev/Janus-35B-HERETIC:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Commit History
30 days ago
-
release 0.9.9: second audit tier — scripts that lied, and card claims that were false
No template change and no blob change. This is the tier below 0.9.8's: seven scripts that reported the wrong thing, two more offline guards, and a sweep of card claims that were not true of the files this repo ships. Scripts that reported success while doing nothing, or failure while succeeding: * cap_ctx.sh could emit NO num_ctx override and still print "[+] Done. baked at num_ctx=..." -- its awk only rewrote an existing PARAMETER num_ctx line, with no END fallback, so losing that line from the Modelfile produced an uncapped model reported as success: the exact OOM the script exists to prevent. Tested both ways; live_check.sh has had the correct END rule since 0.6.4. * fetch_vision.sh printed "download failed" after a SUCCESSFUL ~900 MB download whenever MMPROJ_PATH's basename differed from the remote filename -- `hf download --local-dir DIR` writes DIR/FILE and discards the basename. It now moves the file into place, and MMPROJ_PATH is documented…e023532
-
release 0.9.0: back to the Qwen 3.6 35B-A3B MoE
Third base change today, and it closes the loop: 0.7.0 restored this MoE, 0.8.0 moved to the dense Qwen 3.8 27B for the newer Qwen generation, 0.9.0 comes back here. Anyone who pulled on 2026-09-18 may hold either model and should pull again. Qwen ships no 3.8 at 35B — its 3.8 line is the dense 27B, Flash-Next and 2.4T-A95B — and every Hub model named Qwen3.8-35B-A3B-* is this same 3.6 35B-A3B with a 3.8 teacher distilled in (empero-ai's Distill and Lord-H4D3ZS's abliterated Coder variant both declare base_model Qwen/Qwen3.6-35B-A3B). So the choice was 35B or 3.8, never both. The non-Heretic 3.8 distill was rejected because shipping it would mean this card could no longer claim an abliterated base. Restored from tag v0.7.0 rather than rewritten, so what ships is the card that passed the pre-publish review: MoE architecture bullets asserted against the blob's own header, moe-routing.svg, the derived KV math, the JANUS-35B artwork, and no chat_template.jinja (the GGUF carries Qwen 3.6'…f48fa07 -
release 0.8.0: back to the dense Qwen 3.8 27B Heretic
0.7.0 reversed the original rebase and shipped the Qwen 3.6 35B-A3B MoE for the sake of the -35B- slug. 0.8.0 moves back to llmfan46's dense Qwen3.8-27B-Ultra-Uncensored-Heretic-Native-MTP-Preserved for the newer base generation. Both moves happened today, so anyone who pulled during 0.7.0 has the MoE and should re-pull. There is no Qwen 3.8 at 35B, so this was 35B or 3.8, not both: Qwen's 3.8 line is the dense 27B, Flash-Next and 2.4T-A95B, and every Hub model named Qwen3.8-35B-A3B-* is the 3.6 35B-A3B with a 3.8 teacher (both candidates declare base_model Qwen/Qwen3.6-35B-A3B). llmfan46 ships no 3.8 35B at all. The dense state is restored from 6708e8f (0.6.5) rather than rewritten, so chat_template.jinja, its render checks, verify_arch.py's dense expectations, the REQUIRED MTP strip, the measured memory figures and the 27B artwork all come back exactly as they were verified. Janus-27B.Q4_K_M.gguf (17,314,193,760 B) is a pointer-only commit — HF still held the object, so nothing was…3931271 -
release 0.7.0: reverse the rebase — back to the Qwen 3.6 35B-A3B MoE
Releases 0.2.0 through 0.6.5 shipped a dense Qwen 3.8 27B under this slug. That rebase is reversed: the model is llmfan46/Qwen3.6-35B-A3B-uncensored-heretic again — ~34.7B total / ~3B active, 40 layers (10 full-attention + 30 Gated DeltaNet), 256 experts with 8 routed per token plus a shared expert, arch qwen35moe. Display name Janus-27B -> Janus-35B, so the Hub slug names the model correctly again. - Blob: Janus-35B-A3B.Q4_K_M.gguf restored as a pointer-only commit (21,233,608,512 B, sha256 b82f9f21…), byte-identical to upstream's Q4_K_M and to what this repo shipped until da34705. HF still holds that LFS object for this repo, so nothing is re-uploaded. No re-quantization, no MTP strip (this quant has no NextN block), no template restamp. - chat_template.jinja is deleted: it was a patch of the dense base's 3.8 template, and Qwen 3.6's own template — which the GGUF carries — has no reasoning_effort, tool_call_format or preserve_reasoning to patch. The card's llama.cpp se…c847255
-
release 0.6.4: live_check.sh uses its isolated Ollama again
- 0.6.1's CPU-only guard dropped export OLLAMA_HOST, so ollama create imported into the default Ollama (the user's store) and every check failed with 404 against the empty isolated server. The export is restored, and the script exits if the model is not on the isolated server before running checks. - CHANGELOG 0.6.4 (with the ollama rm cleanup), CITATION.cff 0.6.4. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Euru84cJ5RVGbdu6WmLbhyf5fd603 -
release 0.6.1: measured memory figures, CPU-only live checks, loader notes
- Memory: the KV cache is exactly 2 GiB per 32K tokens at f16 (Ollama's default) and 1.06 GiB at q8_0, measured on Ollama 0.33.3; the old "~2 GB/32K (q8_0)" was the f16 figure. At the 262144 default the total is ~34 GiB with f16, ~26 GiB with a q8_0 cache. Modelfile notes, README table and hardware rows, and cap_ctx.sh follow. - live_check.sh starts Ollama with GPU backends disabled and exits before importing if Ollama reports any non-CPU inference device. - README tool calling: KoboldCpp (tested), Jan (source) and the LM Studio app (unconfirmed) on string tool-call arguments. - CHANGELOG corrects the earlier second-turn 500 claim; CITATION.cff 0.6.1. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Euru84cJ5RVGbdu6WmLbhy03b00ae
-
release 0.4.0: replay earlier turns' reasoning on both runtimes
- Ollama: the Go template / Modelfile TEMPLATE thinking block opens with (and $.IsThinkSet .Thinking), so every assistant message that carries reasoning is rendered, earlier turns included. - llama.cpp: chat_template.jinja reads preserve_thinking / preserve_reasoning again and replays by default, as upstream does. Upstream's raise on conflicting values is dropped and preserve_thinking wins: llama-server master derives preserve_thinking from its default preserve_reasoning=true, so with upstream's block a request sending preserve_thinking=false got HTTP 500. - The deferred chat_template.jinja comment fixes ride on this restamp. - check_chat_template.py, check_go_template.py and live_check.sh now expect replay; check.sh labels follow. - Verified on CPU: live_check.sh 17/17 on the restamped blob; llama-server master, b10760 and b10519 replay by default and honour every opt-out without errors. - CHANGELOG 0.4.0, CITATION.cff 0.4.0. The GGUF is restamped in a separate commi…936e88c
-
release 0.3.1: JSON tool definitions on Ollama, safer live checks, doc fixes
- Go template renders tool signatures with {{ json .Function }}. Since Ollama 0.14.0 a bare {{ .Function }} printed Go struct syntax inside <tools> (rendered with Ollama's own template package at v0.33.3; unchanged in 0.34.0 and main). check 9 now fails on a bare {{ .Function }}. Template-only: no new GGUF. - live_check.sh: each run uses a fresh subdirectory of WORK_DIR and deletes only that (it used to delete WORK_DIR itself); transport errors are recorded as failures instead of aborting; relative GGUF paths work; a server that fails to start is reported; paths reach Python as arguments. It runs 17 checks. - check_go_template.py accepts the documented replay-all edit and checks the think block by nesting, not offset; make live-check honours GGUF_PATH. - Verified on Ollama 0.34.0 (17/17 on both models). Docs fixes from an adversarial review: the provenance note no longer credits the upstream base with the Teacher field and datasets; check counts, llama.cpp and Ollama …752eff3 -
release 0.3.0: effort line on Ollama, no reasoning replay on llama-server
- Go template reads Ollama's think level and adds the reasoning-effort line chat_template.jinja adds: high/xhigh/max/ultra -> xhigh, low/minimal -> low, medium and unset -> none. Verified live on Ollama 0.33.3 (live_check.sh). - chat_template.jinja ignores preserve_thinking / preserve_reasoning. Recent llama-server builds set preserve_thinking=true by default, so the old opt-in replayed every earlier turn's reasoning on a stock server. The bundled GGUF is restamped in a separate commit. - check.sh check 9 (check_go_template.py) guards Ollama's thinking detection and Qwen's stock condition; scripts/live_check.sh (make live-check) runs live checks in an isolated Ollama. - Docs: standalone llama.cpp results (master a2878d3 and b10760: one call per tool request, effort values forwarded), Ollama live results, CPU-only throughput, and the kwargs-equivalence claim narrowed to the tool-call fix. - CHANGELOG 0.3.0, CITATION.cff 0.3.0. Co-Authored-By: Claude Opus 5 (1M context…2e2b8f8