Text Generation
GGUF
English
Korean
llama.cpp
custom-architecture
mixture-of-experts
coding
code-generation
q8_0
q4_k_m
cuda
conversational
Instructions to use HCHs/RivetCoder-9B-A4B-GGUF 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 HCHs/RivetCoder-9B-A4B-GGUF 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 HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf HCHs/RivetCoder-9B-A4B-GGUF: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 HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf HCHs/RivetCoder-9B-A4B-GGUF: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 HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
Use Docker
docker model run hf.co/HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use HCHs/RivetCoder-9B-A4B-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "HCHs/RivetCoder-9B-A4B-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "HCHs/RivetCoder-9B-A4B-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
- Ollama
How to use HCHs/RivetCoder-9B-A4B-GGUF with Ollama:
ollama run hf.co/HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
- Unsloth Desktop
- Pi
How to use HCHs/RivetCoder-9B-A4B-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HCHs/RivetCoder-9B-A4B-GGUF: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": "HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use HCHs/RivetCoder-9B-A4B-GGUF with Docker Model Runner:
docker model run hf.co/HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
- Lemonade
How to use HCHs/RivetCoder-9B-A4B-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.RivetCoder-9B-A4B-GGUF-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use HCHs/RivetCoder-9B-A4B-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HCHs/RivetCoder-9B-A4B-GGUF: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 HCHs/RivetCoder-9B-A4B-GGUF:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use HCHs/RivetCoder-9B-A4B-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HCHs/RivetCoder-9B-A4B-GGUF: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 "HCHs/RivetCoder-9B-A4B-GGUF: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"
| # Runtime validation | |
| This release was gated on successful loading, server startup, and real token | |
| generation. It was not gated on coding-answer quality. | |
| ## Structural checks | |
| Run from the release workspace root: | |
| ```powershell | |
| $Python = '.\.venv\Scripts\python.exe' | |
| $Validator = '.\tools\validate_rivetcoder_gguf.py' | |
| $Llama = '.\work\llama.cpp-rivetcoder' | |
| $Source = '.\RivetCoder-9B-A4B' | |
| $Package = '.\RivetCoder-9B-A4B-GGUF' | |
| & $Python $Validator "$Package\RivetCoder-9B-A4B-Q8_0.gguf" ` | |
| --llama-cpp-dir $Llama ` | |
| --hf-model $Source ` | |
| --expected-file-type Q8_0 ` | |
| --strict-extra-tensors ` | |
| --report "$Package\provenance\q8-structure.json" | |
| & $Python $Validator "$Package\RivetCoder-9B-A4B-Q4_K_M.gguf" ` | |
| --llama-cpp-dir $Llama ` | |
| --hf-model $Source ` | |
| --expected-file-type Q4_K_M ` | |
| --strict-extra-tensors ` | |
| --report "$Package\provenance\q4km-structure.json" | |
| ``` | |
| Both reports must contain `"ok": true`, 506 tensors, no missing or extra | |
| tensors, no warnings, and zero routing-control mismatches. | |
| ## CLI generation check | |
| After extracting `bundle/rivetcoder-llama-windows-cuda-sm120.zip`: | |
| ```powershell | |
| .\llama-cli.exe ` | |
| --model .\RivetCoder-9B-A4B-Q4_K_M.gguf ` | |
| --n-gpu-layers all ` | |
| --ctx-size 512 ` | |
| --batch-size 64 ` | |
| --ubatch-size 64 ` | |
| --predict 16 ` | |
| --prompt 'Reply with OK only.' ` | |
| --temperature 0 ` | |
| --single-turn ` | |
| --simple-io ` | |
| --no-warmup ` | |
| --perf | |
| ``` | |
| Success requires model load, at least one generated token, and process exit | |
| code `0`. Repeat with the Q8_0 file. | |
| ## Server check | |
| ```powershell | |
| $server = Start-Process ` | |
| -FilePath '.\llama-server.exe' ` | |
| -ArgumentList @( | |
| '--model', '.\RivetCoder-9B-A4B-Q4_K_M.gguf', | |
| '--alias', 'RivetCoder-9B-A4B', | |
| '--host', '127.0.0.1', | |
| '--port', '8080', | |
| '--n-gpu-layers', 'all', | |
| '--ctx-size', '4096', | |
| '--parallel', '1', | |
| '--batch-size', '512', | |
| '--ubatch-size', '256', | |
| '--flash-attn', 'on', | |
| '--reasoning-budget', '0' | |
| ) ` | |
| -PassThru ` | |
| -WindowStyle Hidden | |
| Invoke-RestMethod http://127.0.0.1:8080/health | |
| $body = @{ | |
| model = 'RivetCoder-9B-A4B' | |
| messages = @(@{ role = 'user'; content = 'Say OK.' }) | |
| temperature = 0 | |
| max_tokens = 16 | |
| } | ConvertTo-Json -Depth 8 | |
| Invoke-RestMethod ` | |
| -Method Post ` | |
| -Uri http://127.0.0.1:8080/v1/chat/completions ` | |
| -ContentType application/json ` | |
| -Body $body | |
| Stop-Process -Id $server.Id | |
| ``` | |
| Success requires `GET /health` to return `{"status":"ok"}`, a non-error | |
| completion response containing generated tokens, and no CUDA/graph/tensor | |
| errors in the server log. | |
| ## Recorded results | |
| | Artifact | Load/generate | Structure | SHA-256 | | |
| |---|---|---|---| | |
| | BF16 conversion | pass, exit 0 | pass | `f51dfc1cb82b281156a09360bdbe8fe95734334e01d0d6b6c2df4a27b2619aea` | | |
| | Q8_0 | pass, exit 0 | pass | `6e71dd349df93f734b89fd70f2d0590037ddd3bdc11a4e9533991a0eab47b85e` | | |
| | Q4_K_M | pass, exit 0 | pass | `980adc81f64b52bc71228abd0e2bed02a1b6a00bdda9afbfd6d5e0c124ac5600` | | |
| The BF16 intermediate is intentionally not part of the public quantized | |
| release. | |