Instructions to use nuroai/auden-12b 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 nuroai/auden-12b 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 nuroai/auden-12b:Q4_K_M # Run inference directly in the terminal: llama cli -hf nuroai/auden-12b:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf nuroai/auden-12b:Q4_K_M # Run inference directly in the terminal: llama cli -hf nuroai/auden-12b: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 nuroai/auden-12b:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf nuroai/auden-12b: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 nuroai/auden-12b:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf nuroai/auden-12b:Q4_K_M
Use Docker
docker model run hf.co/nuroai/auden-12b:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use nuroai/auden-12b with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nuroai/auden-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": "nuroai/auden-12b", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/nuroai/auden-12b:Q4_K_M
- Ollama
How to use nuroai/auden-12b with Ollama:
ollama run hf.co/nuroai/auden-12b:Q4_K_M
- Unsloth Desktop
- Pi
How to use nuroai/auden-12b with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nuroai/auden-12b: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": "nuroai/auden-12b:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use nuroai/auden-12b with Docker Model Runner:
docker model run hf.co/nuroai/auden-12b:Q4_K_M
- Lemonade
How to use nuroai/auden-12b with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull nuroai/auden-12b:Q4_K_M
Run and chat with the model
lemonade run user.auden-12b-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use nuroai/auden-12b with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nuroai/auden-12b: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 nuroai/auden-12b:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use nuroai/auden-12b with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nuroai/auden-12b: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 "nuroai/auden-12b: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"
Repro Commands — Auden v1 vs stock Gemma 4 12B
All published numbers: llama.cpp commit 76da2450a4f2cc9ce6c7fc8229e25dc0a4b41e5d, evaluator auden-docbench-v1-normalized (built into the project's scripts/eval_auden_docbench.py), OCR-text input, Q4_K_M quants. Commands below assume the project repo root as working directory; the server runs locally (127.0.0.1) — substitute <YOUR_SERVER> if you serve remotely.
1. Serve the model (one server per column)
# Auden v1 (this repo)
llama-server \
-m q4_k_m/auden-12b-Q4_K_M.gguf \
--mmproj q4_k_m/mmproj-BF16.gguf \
--jinja -ngl 999 --host 127.0.0.1 --port 8091
# Stock Gemma 4 12B baseline (public unsloth/gemma-4-12b-it-GGUF)
llama-server \
-m gemma-4-12b-it-Q4_K_M.gguf \
--mmproj mmproj-BF16.gguf \
--jinja -ngl 999 --host 127.0.0.1 --port 8093
Sanity gate before any eval: one POST /v1/chat/completions with the Auden tool schemas and a small receipt OCR text must return finish_reason: tool_calls with an extract_fields call. Wait for /health = 200 first; never score against a still-loading server.
2. Run the three evals (swap --server-url/--out-dir per model)
# a. CORD test 100 (real receipts, OCR text; CORD-v2 test split, CC-BY-4.0)
python scripts/eval_auden_docbench.py \
--manifest data/real/cord/manifest.jsonl \
--corpus-root data/real/cord \
--server-url http://127.0.0.1:<PORT>/v1/chat/completions \
--model-id <MODEL_ID> \
--out-dir outputs/eval/<RUN>/<MODEL>_cord_ocr_norm \
--input-mode ocr --limit 100
# b. Abstention 120
python scripts/eval_auden_docbench.py \
--manifest data/eval/abstention_v1/manifest.jsonl \
--corpus-root data/eval/abstention_v1 \
--server-url http://127.0.0.1:<PORT>/v1/chat/completions \
--model-id <MODEL_ID> \
--out-dir outputs/eval/<RUN>/<MODEL>_abstention_norm \
--input-mode ocr
# c. Synthetic 500
python scripts/eval_auden_docbench.py \
--manifest data/eval/synthetic_v1_500/manifest.jsonl \
--corpus-root data/eval/synthetic_v1_500 \
--server-url http://127.0.0.1:<PORT>/v1/chat/completions \
--model-id <MODEL_ID> \
--out-dir outputs/eval/<RUN>/<MODEL>_synthetic_500_norm \
--input-mode ocr
Note: the eval script exits non-zero when scores fall below its pass thresholds (expected for the stock baseline); the report and raw outputs are still written.
3. Failure analyzer (CORD output)
python scripts/analyze_cord_failures.py \
--raw outputs/eval/<RUN>/<MODEL>_cord_ocr_norm/raw_outputs.jsonl \
--out-dir outputs/eval/<RUN>/<MODEL>_cord_ocr_norm/failure_analysis
4. Provenance
- Auden v1 numbers:
phase5_reruneval set; stock-Gemma baseline:base_phase5eval set. Reports and raw outputs are archived in the project's private artifact store along withmemory.md/docs/results.md(full run history). - v0 (historical comparison column) is reproducible from its preserved LoRA adapter (
r=16, alpha=32) by re-merging ontogoogle/gemma-4-12B-itand re-quantizing with llama.cpp.