Instructions to use BrokenCompute/IDK-v1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use BrokenCompute/IDK-v1 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="BrokenCompute/IDK-v1") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("BrokenCompute/IDK-v1") model = AutoModelForMultimodalLM.from_pretrained("BrokenCompute/IDK-v1", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.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(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use BrokenCompute/IDK-v1 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 BrokenCompute/IDK-v1:BF16 # Run inference directly in the terminal: llama cli -hf BrokenCompute/IDK-v1:BF16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf BrokenCompute/IDK-v1:BF16 # Run inference directly in the terminal: llama cli -hf BrokenCompute/IDK-v1:BF16
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 BrokenCompute/IDK-v1:BF16 # Run inference directly in the terminal: ./llama-cli -hf BrokenCompute/IDK-v1:BF16
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 BrokenCompute/IDK-v1:BF16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf BrokenCompute/IDK-v1:BF16
Use Docker
docker model run hf.co/BrokenCompute/IDK-v1:BF16
- LM Studio
- Jan
- vLLM
How to use BrokenCompute/IDK-v1 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "BrokenCompute/IDK-v1" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "BrokenCompute/IDK-v1", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/BrokenCompute/IDK-v1:BF16
- SGLang
How to use BrokenCompute/IDK-v1 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 "BrokenCompute/IDK-v1" \ --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": "BrokenCompute/IDK-v1", "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 "BrokenCompute/IDK-v1" \ --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": "BrokenCompute/IDK-v1", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use BrokenCompute/IDK-v1 with Ollama:
ollama run hf.co/BrokenCompute/IDK-v1:BF16
- Unsloth Studio
How to use BrokenCompute/IDK-v1 with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for BrokenCompute/IDK-v1 to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for BrokenCompute/IDK-v1 to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for BrokenCompute/IDK-v1 to start chatting
- Pi
How to use BrokenCompute/IDK-v1 with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf BrokenCompute/IDK-v1:BF16
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "BrokenCompute/IDK-v1:BF16" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use BrokenCompute/IDK-v1 with Docker Model Runner:
docker model run hf.co/BrokenCompute/IDK-v1:BF16
- Lemonade
How to use BrokenCompute/IDK-v1 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull BrokenCompute/IDK-v1:BF16
Run and chat with the model
lemonade run user.IDK-v1-BF16
List all available models
lemonade list
- Hermes Agent
How to use BrokenCompute/IDK-v1 with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf BrokenCompute/IDK-v1:BF16
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 BrokenCompute/IDK-v1:BF16
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use BrokenCompute/IDK-v1 with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf BrokenCompute/IDK-v1:BF16
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 "BrokenCompute/IDK-v1:BF16" \ --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"
IDK v1
A 4B abstention fine-tune of Qwen3.5-4B. Instead of fabricating when it doesn't know, it emits a leading [IDK] marker plus a short reason — and, given a search tool, it looks the answer up first. Runs on an 8 GB GPU.
⚠️ Experimental model — use at your own risk. IDK v1 is an early research release provided as-is, with no guarantees of correctness, safety, or fitness for any purpose. It is a 4B model and can still be wrong or fabricate. You are responsible for validating its outputs before relying on them.
What it does
Given a question, the model takes one of three actions:
- Answer — when the prompt or its own knowledge supports a reliable answer.
- Search — when a findable external/current fact is missing, it calls a
web_search(query)tool and grounds its answer on the result. - Decline — when it can't answer reliably and no tool resolves it, it replies with a leading
[IDK]and a brief reason, rather than guessing.
Its abstention tracks difficulty: it declines more as questions get harder, and (with search) reserves [IDK] for what genuinely isn't findable.
Recommended serving
- Reasoning: ON. Every training example carries a reasoning trace; calibration and instruction-following are meaningfully better with thinking enabled.
- Format: conversational chat. The abstention behavior lives in the conversational format it was trained on; rigid
\boxed{}-style output prompts suppress it. - System prompt granting the decline affordance, e.g.:
You may answer, or decline with [IDK] and a brief reason if you are not confident. Do not guess. - Search tool (recommended for factual use). Declare an OpenAI-style
web_search(query)function backed by SearXNG, Serper, or any search API. Without it, the model can only answer or decline. - Sampler:
top_k 40,top_p 0.95,min_p 0.05,repeat_penalty 1.1. - Temperature: minimal impact — tested across the full
0.2–1.0range with little behavioral change, so anything in that band is fine. - Quantization:
BF16for best calibration;Q4_K_M(~2.7 GB) runs on 8 GB GPUs and abstains slightly more.
Formats in this repo:
safetensors(merged bf16, ~8 GB) — for 🤗 Transformers / vLLM; load by repo id (see below).IDK-v1-Q4_K_M.gguf(~2.7 GB) — runs on 8 GB GPUs; llama.cpp / LM Studio.IDK-v1-BF16.gguf(~8.4 GB) — full precision for llama.cpp / LM Studio.
Loading (Transformers)
The base is a vision-language model, so load with AutoModelForImageTextToText (not AutoModelForCausalLM), and apply the chat template with thinking on:
import torch
from transformers import AutoModelForImageTextToText, AutoTokenizer
tok = AutoTokenizer.from_pretrained("BrokenCompute/IDK-v1")
model = AutoModelForImageTextToText.from_pretrained(
"BrokenCompute/IDK-v1", dtype=torch.bfloat16, device_map="auto")
msgs = [
{"role": "system", "content": "You may answer, or decline with [IDK] and a brief reason if you are not confident. Do not guess."},
{"role": "user", "content": "Which jurist said the First Amendment 'may finally have worked itself pure'?"},
]
text = tok.apply_chat_template(msgs, add_generation_prompt=True, tokenize=False, enable_thinking=True)
out = model.generate(**tok(text, return_tensors="pt").to(model.device), max_new_tokens=512)
print(tok.decode(out[0], skip_special_tokens=True))
Training
- Base: Qwen3.5-4B (via Unsloth), 4-bit QLoRA supervised fine-tune. No RLHF/DPO in this checkpoint.
- Data: 8,763-example abstention corpus. Every example carries a reasoning trace; a subset teaches
web_searchtool use. - Recipe: LoRA rank 32 / alpha 32, 2 epochs, lr 2e-4, max-seq 4096, seed 3407, final loss ~0.95.
- Trained on a single RTX 5060 Ti (16 GB).
Limitations
- It's a 4B — more honest about its limits than most, but "more honest" is not "correct." Not for medical, legal, or financial decisions.
- Over-refusal without tools; pair with search for factual work.
- English; focused on Health, Law, and Software-Engineering domains.
- Multimodal base, text-only fine-tune. Qwen3.5-4B is a vision-language model; this fine-tune trained only the text pathway. The vision tower is the base's, carried along unmodified and untested here — treat this as a text model.
- Reasoning-off increases over-refusal — keep reasoning on. Quantization matters far less: with reasoning on,
Q4_K_MtracksBF16closely on most benchmarks.
License
Built on Qwen3.5-4B (Apache-2.0). This fine-tune and model card are released under Apache-2.0.
- Downloads last month
- 311