Text Classification
GGUF
jev-style
English
jev
openjev
decision-model
typed-decisions
bonsai
ternary
local-inference
blackwell
conversational
Instructions to use ajh-code/Jev-Bonsai-Compass with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- jev-style
How to use ajh-code/Jev-Bonsai-Compass with jev-style:
pip install jev-style # GGUF builds score through llama.cpp: build the jev-score binary once hf download ajh-code/Jev-Bonsai-Compass build_jev_score.sh jev_score.cpp --local-dir jev-score export JEV_SCORE_BIN=$(sh jev-score/build_jev_score.sh /path/to/llama.cpp | tail -n 1)
from jev_style import JevStyle, noul, choice js = JevStyle.from_pretrained("ajh-code/Jev-Bonsai-Compass") out = js.decide("I was charged twice for one order.", { "billing": noul("This message is about billing."), "team": choice("Which team should handle it?", ["billing", "shipping", "tech"]), }) print(out["answers"]["team"]["choice"]) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use ajh-code/Jev-Bonsai-Compass 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 ajh-code/Jev-Bonsai-Compass:Q2_0 # Run inference directly in the terminal: llama cli -hf ajh-code/Jev-Bonsai-Compass:Q2_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf ajh-code/Jev-Bonsai-Compass:Q2_0 # Run inference directly in the terminal: llama cli -hf ajh-code/Jev-Bonsai-Compass:Q2_0
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 ajh-code/Jev-Bonsai-Compass:Q2_0 # Run inference directly in the terminal: ./llama-cli -hf ajh-code/Jev-Bonsai-Compass:Q2_0
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 ajh-code/Jev-Bonsai-Compass:Q2_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf ajh-code/Jev-Bonsai-Compass:Q2_0
Use Docker
docker model run hf.co/ajh-code/Jev-Bonsai-Compass:Q2_0
- LM Studio
- Jan
- Ollama
How to use ajh-code/Jev-Bonsai-Compass with Ollama:
ollama run hf.co/ajh-code/Jev-Bonsai-Compass:Q2_0
- Unsloth Desktop
- Pi
How to use ajh-code/Jev-Bonsai-Compass with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ajh-code/Jev-Bonsai-Compass:Q2_0
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": "ajh-code/Jev-Bonsai-Compass:Q2_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use ajh-code/Jev-Bonsai-Compass with Docker Model Runner:
docker model run hf.co/ajh-code/Jev-Bonsai-Compass:Q2_0
- Lemonade
How to use ajh-code/Jev-Bonsai-Compass with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull ajh-code/Jev-Bonsai-Compass:Q2_0
Run and chat with the model
lemonade run user.Jev-Bonsai-Compass-Q2_0
List all available models
lemonade list
- Hermes Agent
How to use ajh-code/Jev-Bonsai-Compass with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ajh-code/Jev-Bonsai-Compass:Q2_0
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 ajh-code/Jev-Bonsai-Compass:Q2_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use ajh-code/Jev-Bonsai-Compass with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ajh-code/Jev-Bonsai-Compass:Q2_0
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 "ajh-code/Jev-Bonsai-Compass:Q2_0" \ --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"
File size: 2,682 Bytes
b4b0f75 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | """Letter readout extracted from the audited local analysis/letter_readout.py."""
import math,time
LETTERS = [chr(65 + i) for i in range(26)] + [chr(97 + i) for i in range(26)]
def prompt_for(state, instructions, options):
lines = "\n".join(f"[{LETTERS[i]}] {k}: {d}" for i, (k, d) in enumerate(options))
return (
f"State:\n{state}\n\nQuestion: {instructions}\nOptions:\n{lines}\n\n"
"Answer with the letter of the best option only."
)
def letter_logprobs(choice, n):
content = (choice.get("logprobs") or {}).get("content") or []
if not content:
return {}, choice.get("message", {}).get("content"), None
top = content[0].get("top_logprobs") or []
found = {}
for item in top:
token = item.get("token") or ""
key = token if token in LETTERS else token.strip()
if key in LETTERS and (key not in found or token in LETTERS):
found[key] = item.get("logprob")
return found, content[0].get("token"), content[0].get("logprob")
def readout(client, state, instructions, options, scale=1.1, request_options=None):
body = {
"model": "qwen",
"messages": [{"role": "user", "content": prompt_for(state, instructions, options)}],
"max_tokens": 1,
"temperature": 0,
"logprobs": True,
"top_logprobs": max(40, len(options)),
"chat_template_kwargs": {"enable_thinking": False},
}
if request_options:
body.update(request_options)
t0 = time.perf_counter()
resp = client.post("/v1/chat/completions", body)
dt = time.perf_counter() - t0
choice = resp["choices"][0]
found, first_token, first_lp = letter_logprobs(choice, len(options))
raw = [found.get(LETTERS[i], -30.0) for i in range(len(options))]
missing = [LETTERS[i] for i in range(len(options)) if LETTERS[i] not in found]
scaled = [v / scale for v in raw]
m = max(scaled)
exps = [math.exp(v - m) for v in scaled]
z = sum(exps)
probs = [v / z for v in exps]
order = sorted(range(len(options)), key=lambda i: probs[i], reverse=True)
usage = resp.get("usage") or {}
timings = resp.get("timings") or {}
return {
"probs": [
{"key": options[i][0], "letter": LETTERS[i], "p": probs[i], "logprob": raw[i]}
for i in order
],
"argmax": options[order[0]][0],
"first_token": first_token,
"first_logprob": first_lp,
"missing_letters": missing,
"seconds": dt,
"prompt_tokens": usage.get("prompt_tokens"),
"cached_prompt_tokens": (usage.get("prompt_tokens_details") or {}).get("cached_tokens"),
"timings": timings,
}
|