Instructions to use prism-ml/Ternary-Bonsai-2-27B-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 prism-ml/Ternary-Bonsai-2-27B-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 prism-ml/Ternary-Bonsai-2-27B-gguf:F16 # Run inference directly in the terminal: llama cli -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16 # Run inference directly in the terminal: llama cli -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
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 prism-ml/Ternary-Bonsai-2-27B-gguf:F16 # Run inference directly in the terminal: ./llama-cli -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
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 prism-ml/Ternary-Bonsai-2-27B-gguf:F16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
Use Docker
docker model run hf.co/prism-ml/Ternary-Bonsai-2-27B-gguf:F16
- LM Studio
- Jan
- vLLM
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "prism-ml/Ternary-Bonsai-2-27B-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": "prism-ml/Ternary-Bonsai-2-27B-gguf", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/prism-ml/Ternary-Bonsai-2-27B-gguf:F16
- Ollama
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with Ollama:
ollama run hf.co/prism-ml/Ternary-Bonsai-2-27B-gguf:F16
- Unsloth Desktop
- Pi
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
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": "prism-ml/Ternary-Bonsai-2-27B-gguf:F16" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with Docker Model Runner:
docker model run hf.co/prism-ml/Ternary-Bonsai-2-27B-gguf:F16
- Lemonade
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull prism-ml/Ternary-Bonsai-2-27B-gguf:F16
Run and chat with the model
lemonade run user.Ternary-Bonsai-2-27B-gguf-F16
List all available models
lemonade list
- Hermes Agent
How to use prism-ml/Ternary-Bonsai-2-27B-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 prism-ml/Ternary-Bonsai-2-27B-gguf:F16
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 prism-ml/Ternary-Bonsai-2-27B-gguf:F16
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use prism-ml/Ternary-Bonsai-2-27B-gguf with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf prism-ml/Ternary-Bonsai-2-27B-gguf:F16
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 "prism-ml/Ternary-Bonsai-2-27B-gguf:F16" \ --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"
Potential quality issue: Stuck on Reasoning Loop on a hard task
Bonsai 2 27B PQ2_0: reasoning loop exhausts 32K output without answering
On the prompt below, the model generated 32,768 reasoning tokens and no final answer/code, stopping with finish_reason: "length".
The trace repeatedly revisited the same two-state Markov-chain example, confused matrix/vector conventions and covariance formulas, and reintroduced errors it had already corrected—including treating I-P as invertible after recognizing it was singular. It ended in another contradiction rather than converging.
Configuration
- Bonsai 2 27B PQ2_0 GGUF, RTX 3090
- Prism llama.cpp b10683-d8f26ee, OpenAI-compatible API via pi
- Context 262,144; input 4,635 tokens including client context
- Output cap 32,768 including thinking; no separate thinking cap
- temperature=1.0, top_p=0.95, top_k=20, min_p=0.0
- chat_template_kwargs={"enable_thinking":true,"reasoning_effort":"xhigh","preserve_thinking":true}
- --jinja --reasoning-format deepseek --reasoning-preserve
- Full GPU offload, flash attention, Q8_0 K/V cache, one slot
User prompt
Write one compact Julia function, using only LinearAlgebra if needed:
markov_moments(P::AbstractMatrix{<:Real}, R::AbstractMatrix{<:Real})
A stationary finite Markov chain X_t has row-stochastic transition P and earns log-return R[i,j] on transition i->j. For S_T=sum(R[X[t-1],X[t]],t=1:T), return (mean, variance, stationary), where mean=lim E[S_T]/T and variance=lim Var(S_T)/T, as Float64 scalars plus the stationary Vector{Float64}. This is the long-run variance including ALL serial dependence, not the variance of one return.
Inputs are GUARANTEED valid: matching n-by-n matrices, 1<=n<=32, finite Float64-representable entries, nonnegative row-stochastic P with irreducible support. P can be periodic and nonreversible; entries can be zero. Do not spend code or effort validating inputs. Rewards on impossible transitions have no effect. No Monte Carlo, truncated covariance sums, finite differences, AD, or packages other than standard libraries. O(n^3) time and O(n^2) storage are sufficient. Do not mutate inputs.
The key edge case is a reward of the form R[i,j]=c+u[i]-u[j] on supported edges: its long-run variance is zero even when individual returns vary. Constant offsets to supported rewards must leave variance unchanged. Tests include persistent regimes, deterministic cycles, asymmetric chains, and this zero-risk case. Ordinary Float64 accuracy is sufficient; matrices are well-conditioned. Do not overengineer exotic floating-point inputs.
Return ONLY one Julia code block with the function and any import. Aim for at most 50 lines. No derivation, examples, or tests. Your unedited code will be executed against independent checks.
Im getting similar broken behavior and its not even on hard prompts; its usually 3-4 follows up into the converation and it just loops.
Bonsai 2 27B PQ2_0: reasoning loop exhausts 32K output without answering
User prompt
Write one compact Julia function, using only LinearAlgebra if needed:
markov_moments(P::AbstractMatrix{<:Real}, R::AbstractMatrix{<:Real})
A stationary finite Markov chain X_t has row-stochastic transition P and earns log-return R[i,j] on transition i->j. For S_T=sum(R[X[t-1],X[t]],t=1:T), return (mean, variance, stationary), where mean=lim E[S_T]/T and variance=lim Var(S_T)/T, as Float64 scalars plus the stationary Vector{Float64}. This is the long-run variance including ALL serial dependence, not the variance of one return.
Inputs are GUARANTEED valid: matching n-by-n matrices, 1<=n<=32, finite Float64-representable entries, nonnegative row-stochastic P with irreducible support. P can be periodic and nonreversible; entries can be zero. Do not spend code or effort validating inputs. Rewards on impossible transitions have no effect. No Monte Carlo, truncated covariance sums, finite differences, AD, or packages other than standard libraries. O(n^3) time and O(n^2) storage are sufficient. Do not mutate inputs.
The key edge case is a reward of the form R[i,j]=c+u[i]-u[j] on supported edges: its long-run variance is zero even when individual returns vary. Constant offsets to supported rewards must leave variance unchanged. Tests include persistent regimes, deterministic cycles, asymmetric chains, and this zero-risk case. Ordinary Float64 accuracy is sufficient; matrices are well-conditioned. Do not overengineer exotic floating-point inputs.
Return ONLY one Julia code block with the function and any import. Aim for at most 50 lines. No derivation, examples, or tests. Your unedited code will be executed against independent checks.
Tested your prompt on Qwen3.8-27B-GSQ-RCO-IQ3_S-mtp with reasoning effort medium (which is the lowest) - got ALMOST working response in 19k tokens. 1 error: (r - mu) instead of (r .- mu)