Instructions to use shuko-tuto/npc-models with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Piper
How to use shuko-tuto/npc-models with Piper:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use shuko-tuto/npc-models 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 shuko-tuto/npc-models:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf shuko-tuto/npc-models:UD-Q4_K_XL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf shuko-tuto/npc-models:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf shuko-tuto/npc-models:UD-Q4_K_XL
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 shuko-tuto/npc-models:UD-Q4_K_XL # Run inference directly in the terminal: ./llama-cli -hf shuko-tuto/npc-models:UD-Q4_K_XL
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 shuko-tuto/npc-models:UD-Q4_K_XL # Run inference directly in the terminal: ./build/bin/llama-cli -hf shuko-tuto/npc-models:UD-Q4_K_XL
Use Docker
docker model run hf.co/shuko-tuto/npc-models:UD-Q4_K_XL
- LM Studio
- Jan
- vLLM
How to use shuko-tuto/npc-models with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "shuko-tuto/npc-models" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "shuko-tuto/npc-models", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/shuko-tuto/npc-models:UD-Q4_K_XL
- Ollama
How to use shuko-tuto/npc-models with Ollama:
ollama run hf.co/shuko-tuto/npc-models:UD-Q4_K_XL
- Unsloth Desktop
- Pi
How to use shuko-tuto/npc-models with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf shuko-tuto/npc-models:UD-Q4_K_XL
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": "shuko-tuto/npc-models:UD-Q4_K_XL" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use shuko-tuto/npc-models with Docker Model Runner:
docker model run hf.co/shuko-tuto/npc-models:UD-Q4_K_XL
- Lemonade
How to use shuko-tuto/npc-models with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull shuko-tuto/npc-models:UD-Q4_K_XL
Run and chat with the model
lemonade run user.npc-models-UD-Q4_K_XL
List all available models
lemonade list
- Hermes Agent
How to use shuko-tuto/npc-models with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf shuko-tuto/npc-models:UD-Q4_K_XL
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 shuko-tuto/npc-models:UD-Q4_K_XL
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use shuko-tuto/npc-models with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf shuko-tuto/npc-models:UD-Q4_K_XL
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 "shuko-tuto/npc-models:UD-Q4_K_XL" \ --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"
npc-models
The models a game character needs to hear, understand and answer on the
player's own machine, one folder per model. Every folder is shipped whole, with
the licence of its weights beside the files as <model>.LICENSE, so a folder
copied beside a game carries its terms with it. Fetch all of them into a
models/ folder with one command, or one folder with --include:
hf download shuko-tuto/npc-models --local-dir models
hf download shuko-tuto/npc-models --local-dir models --include "qwen3_4b_q4/*"
| Folder | What it holds | Source weights | Licence |
|---|---|---|---|
silero_vad_16k/ |
Silero VAD v6.2 at 16 kHz as one ncnn graph: silero_vad_16k.ncnn.param and silero_vad_16k.ncnn.bin. 512 samples of 16 kHz mono in, one speech probability out, the recurrent state carried between windows. Converted from the ONNX inside the silero-vad 6.2.1 PyPI wheel and measured against it to 3.6e-7 |
silero-vad 6.2.1 |
MIT, silero_vad_16k.LICENSE |
whisper_tiny_ncnn/ |
Whisper tiny (multilingual) lowered with pnnx to six ncnn graphs -- fbank, encoder, embed_token, embed_position, decoder with attention caches, proj_out -- and whisper_vocab.txt, the 50 257 byte-level tokens one per line. The encoder is exported for Whisper's own 30-second window |
openai/whisper-tiny |
MIT and Apache-2.0, both texts in whisper_tiny_ncnn.LICENSE |
whisper_base_ncnn/ |
The same lowering of Whisper base | openai/whisper-base |
MIT and Apache-2.0, both texts in whisper_base_ncnn.LICENSE |
gigaam_v3_ctc_ncnn/ |
GigaAM v3 CTC, a Russian-only conformer, lowered with pnnx to one length-agnostic ncnn graph: gigaam_v3_ctc.ncnn.param and gigaam_v3_ctc.ncnn.bin (weights in half precision, 441 MB), with gigaam_v3_ctc_frontend.bin -- the 320-point window and the 64-band mel filterbank the checkpoint carries, as raw float32 -- and gigaam_tokens.txt, the 34 classes one per line, <space> first and <blk> last. Measured against the package's PyTorch forward on the same log-mel to 8.5e-3 in the log-probabilities, same text on every clip; the full-precision graph reaches 5.2e-5 |
gigaam 0.1.0, checkpoint v3_ctc |
MIT, gigaam_v3_ctc_ncnn.LICENSE |
qwen3_4b_q4/ |
Qwen3-4B as one GGUF file, Qwen3-4B-Q4_K_M.gguf (2.5 GB), the Q4_K_M quantisation published by the model's own authors, unchanged. A chat model that follows its own template, calls tools and can think before it answers; it runs through llama.cpp on a GPU through Vulkan or on the CPU. Small enough for a player's machine, and terse: asked as a room, it answers with one character |
Qwen/Qwen3-4B-GGUF |
Apache-2.0, qwen3_4b_q4.LICENSE |
gemma4_12b_q4/ |
Gemma 4 12B instruction-tuned as one GGUF file, gemma-4-12B-it-qat-UD-Q4_K_XL.gguf (6.7 GB): the quantisation-aware checkpoint, which keeps its quality at four bits, in the UD-Q4_K_XL layout published by unsloth, unchanged. The same chat model shape, and the one that plays a room: asked as a room it answers for every character, each in its own voice, with stage directions. Needs about eight gigabytes of memory on the device it runs on |
unsloth/gemma-4-12B-it-qat-GGUF, from google/gemma-4-12b-it |
Apache-2.0, gemma4_12b_q4.LICENSE |
qwen3_tts_1_7b_q4/ |
Qwen3-TTS 1.7B Base as two GGUF files: the backbone Qwen3-TTS-12Hz-1.7B-Base-Q4_K_M.gguf (1.0 GB) and the codec mmproj-Qwen3-TTS-12Hz-1.7B-Base-Q8_0.gguf (446 MB), both as ggml's own conversion publishes them, unchanged. Speaks ten languages including Russian and English, and clones a voice from a reference clip; voices/guard.wav is one such clip, drawn from a text description by the same family's voice-design model rather than recorded from anybody. Runs through llama.cpp; the codec runs on the CUDA backend and on no other, and falls to the processor elsewhere |
ggml-org/Qwen3-TTS-12Hz-1.7B-Base-GGUF, from Qwen/Qwen3-TTS-12Hz-1.7B-Base |
Apache-2.0, qwen3_tts_1_7b_q4.LICENSE |
piper_uk_ukrainian_tts_ncnn/ |
A Ukrainian Piper voice, three speakers (lada, mykyta, tetiana), lowered to five ncnn graphs (enc_p, dp, flow, dec, emb_g) with the symbol table and the speaker list. Its front end is the Ukrainian alphabet itself โ one letter, one symbol โ so it needs no phonemiser. 22 050 Hz, real time many times over on a CPU |
rhasspy/piper-voices, uk_UA-ukrainian_tts-medium |
the voice's card says CC0; its provenance is stated with the gap it has in piper_uk_ukrainian_tts_ncnn.LICENSE |
ggml_cuda/ |
Not a model: the CUDA backend of llama.cpp tag b10786, ggml-cuda.dll, with the three CUDA runtime libraries it imports (cudart64_13, cublas64_13, cublasLt64_13), 628 MB, NVIDIA only. A game that puts this folder beside its models runs the language model and the speech codec on CUDA; without it, Vulkan |
llama.cpp's release archive; NVIDIA's CUDA redistributable | MIT for ggml, NVIDIA's runtime terms for the rest, both in ggml_cuda.LICENSE |
How the Whisper graphs were made
The published checkpoints are loaded through the transformers library and lowered with pnnx, one graph per part of the model. The decoder is patched after the lowering: every attention layer gets a key and a value cache in and out, the mask is two-dimensional, and the position embedding is added outside the graph, so a decode loop can feed one token at a time and hand the caches straight back. The vocabulary is written from the checkpoint's tokenizer; the special tokens above it are not in the file and are counted from its length.
How the GigaAM graph was made
The v3_ctc checkpoint is loaded through the gigaam package and the encoder
with its CTC head traced as one module, with the attention re-expressed batch
first: the package keeps the batch in the second dimension while the rotary
embedding is applied, and pnnx lowers that layout to ncnn's rotary layer with
the sequence and the heads swapped, silently -- the graph runs and drops the
short words. The rotary cos and sin tables are inputs to the graph rather than
buffers in it (in1 and in2, base 5000, 48 wide, one row per encoder
position), and pnnx is run with a second input shape, so every reshape is
dynamic and one graph takes any clip length. Feed it in0 as the log-mel
(64 bands, one column per 160-sample frame of a 320-sample window, no centre
padding, natural log over a clamp to [1e-9, 1e9], no normalisation) and read
out0 as one row of 34 log-probabilities per position, then decode greedily:
argmax per row, repeats collapsed, class 33 dropped.
The language models
qwen3_4b_q4/ and gemma4_12b_q4/ are mirrors, not exports: each file is
byte for byte the one its publisher serves, kept here so that a folder fetched
from this repository has the same shape as every other -- one folder, one
model, one licence beside it -- and so that a name written into a game keeps
pointing at the same bytes when the upstream repository is reorganised. A
folder holds exactly one .gguf file, which is how a loader picks it without
being told a file name.
Licences
The Whisper weights are published under two licences that do not agree: the
repository that trained them carries MIT, and the model cards of the same
checkpoints on this hub are tagged Apache-2.0. Both texts travel in
whisper_<size>_ncnn.LICENSE, so a folder handed on carries whichever of the
two its reader holds the weights under. The Silero VAD weights are MIT, the
text copied out of the wheel they were read from as silero_vad_16k.LICENSE.
The GigaAM weights and the package that publishes them are MIT, the text
copied out of the package as gigaam_v3_ctc_ncnn.LICENSE. The Qwen3 weights
are Apache-2.0, the text copied out of their repository as
qwen3_4b_q4.LICENSE. The Gemma 4 weights are tagged Apache-2.0 on both the
publisher's card and the quantiser's; neither repository carries the text, so
gemma4_12b_q4.LICENSE opens with a note naming both and follows with the
licence itself.
- Downloads last month
- 18
4-bit