Instructions to use satgeze/Hy3-1M-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use satgeze/Hy3-1M-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="satgeze/Hy3-1M-GGUF", filename="hy3-1M-IQ2_M.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use satgeze/Hy3-1M-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 satgeze/Hy3-1M-GGUF:IQ2_M # Run inference directly in the terminal: llama cli -hf satgeze/Hy3-1M-GGUF:IQ2_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf satgeze/Hy3-1M-GGUF:IQ2_M # Run inference directly in the terminal: llama cli -hf satgeze/Hy3-1M-GGUF:IQ2_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 satgeze/Hy3-1M-GGUF:IQ2_M # Run inference directly in the terminal: ./llama-cli -hf satgeze/Hy3-1M-GGUF:IQ2_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 satgeze/Hy3-1M-GGUF:IQ2_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf satgeze/Hy3-1M-GGUF:IQ2_M
Use Docker
docker model run hf.co/satgeze/Hy3-1M-GGUF:IQ2_M
- LM Studio
- Jan
- vLLM
How to use satgeze/Hy3-1M-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "satgeze/Hy3-1M-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": "satgeze/Hy3-1M-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/satgeze/Hy3-1M-GGUF:IQ2_M
- Ollama
How to use satgeze/Hy3-1M-GGUF with Ollama:
ollama run hf.co/satgeze/Hy3-1M-GGUF:IQ2_M
- Unsloth Studio
How to use satgeze/Hy3-1M-GGUF 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 satgeze/Hy3-1M-GGUF 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 satgeze/Hy3-1M-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for satgeze/Hy3-1M-GGUF to start chatting
- Pi
How to use satgeze/Hy3-1M-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf satgeze/Hy3-1M-GGUF:IQ2_M
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": "satgeze/Hy3-1M-GGUF:IQ2_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use satgeze/Hy3-1M-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 satgeze/Hy3-1M-GGUF:IQ2_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 satgeze/Hy3-1M-GGUF:IQ2_M
Run Hermes
hermes
- Atomic Chat new
- OpenClaw new
How to use satgeze/Hy3-1M-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf satgeze/Hy3-1M-GGUF:IQ2_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 "satgeze/Hy3-1M-GGUF:IQ2_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"
- Docker Model Runner
How to use satgeze/Hy3-1M-GGUF with Docker Model Runner:
docker model run hf.co/satgeze/Hy3-1M-GGUF:IQ2_M
- Lemonade
How to use satgeze/Hy3-1M-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull satgeze/Hy3-1M-GGUF:IQ2_M
Run and chat with the model
lemonade run user.Hy3-1M-GGUF-IQ2_M
List all available models
lemonade list
Hy3 (Hunyuan) 1M Context GGUF — first GGUF conversion of Tencent's 299B hy_v3, extended to a million tokens. Preview quality, honestly labeled.
⚠️ EXPERIMENTAL, READ BEFORE USING
These are early GGUFs built BEFORE official llama.cpp support for the hy_v3 architecture existed. They require a community fork to run (details below), they are NOT yet needle-certified at long context (1M is baked in but unverified), and the MTP layer is not included because no engine can run it yet. Coherence-gated only. Treat as preview quality until the certification ladder is published on this card.
Tencent's Hy3 (299B MoE, ~17B active, hy_v3 architecture) quantized to GGUF and extended to a 1,048,576-token context with YaRN. As far as we can tell these are the first GGUF quants of Hy3 anywhere: at publish time (roughly 30 hours after Hy3's release) only MLX and MXFP4 quants existed, and mainline llama.cpp did not yet support hy_v3.
Honest status
- Architecture support: built against a community llama.cpp fork that implements
hy_v3(charlie12345/ROCmFPX). Mainline llama.cpp support is still in progress (open feature requests). You need anhy_v3-capable build to run these. - Quants: Q2_K is a static quant (no importance matrix). IQ2_M and IQ1_M are importance-matrix quants - the imatrix was computed on our own Q2_K running RAM-resident, over a code-and-reasoning calibration set, then used to requantize from the archived f16. This is a bootstrap: a better imatrix could later be computed from a higher-fidelity runner.
- Coherence: all three passed a generation gate (coherent prose and correctly structured haiku). Not yet needle-certified for long context; NIAH ladders will follow.
- MTP: Hy3 ships a multi-token-prediction layer in its checkpoint, but no llama.cpp build (mainline or fork) implements
hy_v3MTP inference yet, so the converter drops it. The f16 is archived; an MTP build will follow if and when engine support lands. Nothing is faked here. - Chat template: Hy3's stock template uses
.format()calls that llama.cpp's Jinja engine rejects.chat_template_llamacpp.jinjain this repo is the fixed version; pass it with--chat-template-file.
What the gate actually produced (real, unedited)
Each quant was asked: "Name three colors and write a one-line haiku about the sea." Verbatim outputs, nothing cleaned up:
IQ1_M (62 GB, the roughest quant):
blue waves that whisper low, green depths that hold the silence of the sea.
IQ2_M (90 GB):
Three colors: blue, teal, and silver. waves drink the moonlight saltwind hums through silent blue- the sea forgets names
Q2_K (101 GB):
Blue, green, silver. The sea breathes in mist, silver light on rolling waves- quiet, endless blue.
My honest read
This is better than "it didn't collapse into repetition." A 1.7-bit quant of a 299B model (IQ1_M) still produces grammatical, on-theme lines; the two larger quants produce properly structured 5-7-5 haiku and correctly separate the color list from the poem. That is a genuinely good sign for how much of the model survives aggressive quantization here.
Two honest caveats, so you judge for yourself:
- This is a single short prompt. It proves coherence and basic instruction-following, not reasoning, long-context retrieval, or factual accuracy. Those need the certification ladder, which is not done yet.
- IQ1_M is visibly the weakest: it dropped the explicit color list and gave two lines instead of a haiku. Usable, but the imatrix IQ2_M is the one I would actually run if the memory fits.
If your experience differs, the raw files are right here - try it and form your own view.
Files
| File | Size | Where | Notes |
|---|---|---|---|
hy3-1M-IQ1_M.gguf |
62 GB | ModelScope only | Smallest; fits a 128 GB Mac. no_think chat only — see warning below |
hy3-1M-IQ2_M.gguf |
90 GB | HF + ModelScope | Importance-matrix quality. Recommended minimum |
hy3-1M-Q2_K.gguf |
101 GB | HF + ModelScope | Static quant, the RAM-runner used to bootstrap the imatrix |
chat_template_llamacpp.jinja |
small | HF + ModelScope | Fixed template for llama.cpp |
Field testing notes (real sessions, July 7)
Measured on a MacBook Pro M3 Max 128 GB, Metal, fork build, IQ1_M fully GPU-resident:
- Speed: 24-25 tok/s generation, ~41 tok/s prefill (llama-server
timings, short prompts). A 299B MoE at chat speed on a laptop. no_thinkmode: coherent and usable, but noticeably chatty — filler sentences, over-explaining, occasional odd asides. Fine for casual chat and drafting; does not feel like a frontier chat tune.- Thinking mode (
reasoning_effort: high): collapses at IQ1_M. On a bare "hello" it produced hundreds of words of circular reasoning ("The user wrote hello... we should respond... but wait, the user wrote hello...") without ever converging to an answer. This is the 1.7-bit tax: short answers survive, reasoning chains do not. Do not use IQ1_M for coding or anything that needs thinking. - Because of that, IQ1_M lives on ModelScope only; HF carries the quants we can recommend. IQ2_M field results will be added after the same test battery.
- Known cosmetic issue, all quants of this release: the
<|hy_eos:opensource|>stop token can leak as visible text at the end of responses (tokenizerspecialflag, fix queued for the next build). Generation stops correctly; the text is just noise.
How to control thinking with llama.cpp: pass --chat-template-kwargs '{"reasoning_effort": "high"}' (or no_think / low) at server launch.
Building the hy_v3-capable llama.cpp
Mainline llama.cpp does not yet support hy_v3. Until it does, build the community fork (charlie12345/ROCmFPX). Two gotchas are baked into the steps below.
git clone --depth 5 https://github.com/charlie12345/ROCmFPX.git
cd ROCmFPX
# Gotcha 1: the fork ships empty web-UI files that break the embed step. Stub them.
for f in bundle.css bundle.js loading.html index.html; do
[ -s tools/server/public/$f ] || echo "/* placeholder */" > tools/server/public/$f
done
# Apple Silicon (Metal):
cmake -B build -DGGML_METAL=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --target llama-server -j
# NVIDIA (CUDA). Gotcha 2: point at the real driver lib, not conda's stub, or you get
# "undefined reference to cuMemGetInfo" at link time.
cmake -B build -DGGML_CUDA=ON \
-DCUDA_cuda_driver_LIBRARY=/usr/lib/x86_64-linux-gnu/libcuda.so.1 \
-DCMAKE_EXE_LINKER_FLAGS="-L/usr/lib/x86_64-linux-gnu -lcuda" \
-DCMAKE_SHARED_LINKER_FLAGS="-L/usr/lib/x86_64-linux-gnu -lcuda" \
-DCMAKE_BUILD_TYPE=Release
cmake --build build --target llama-server -j
The resulting build/bin/llama-server loads these GGUFs. When mainline llama.cpp merges hy_v3, none of this is needed.
Run it (with an hy_v3-capable llama.cpp build)
llama-server -m hy3-1M-IQ2_M.gguf -c 262144 -np 1 --jinja \
--chat-template-file chat_template_llamacpp.jinja
Start at 262K and raise -c toward 1048576 per available memory. On Apple Silicon the IQ1_M runs; on 192 GB+ the IQ2_M is the quality pick.
Credits
Base model: Tencent (Apache-2.0). hy_v3 llama.cpp implementation: community fork (charlie12345). GGUF conversion, 1M YaRN extension, imatrix bootstrap, and gating: SatGeze. Method and tooling: github.com/satindergrewal/aviary-1m.
- Downloads last month
- -
2-bit
Model tree for satgeze/Hy3-1M-GGUF
Base model
tencent/Hy3