Instructions to use Aayush9029/s1-mini-mlx-8bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use Aayush9029/s1-mini-mlx-8bit with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("Aayush9029/s1-mini-mlx-8bit") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use Aayush9029/s1-mini-mlx-8bit with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Aayush9029/s1-mini-mlx-8bit"
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Aayush9029/s1-mini-mlx-8bit" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use Aayush9029/s1-mini-mlx-8bit with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "Aayush9029/s1-mini-mlx-8bit"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "Aayush9029/s1-mini-mlx-8bit" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Aayush9029/s1-mini-mlx-8bit", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use Aayush9029/s1-mini-mlx-8bit with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Aayush9029/s1-mini-mlx-8bit"
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 Aayush9029/s1-mini-mlx-8bit
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use Aayush9029/s1-mini-mlx-8bit with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Aayush9029/s1-mini-mlx-8bit"
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 "Aayush9029/s1-mini-mlx-8bit" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
S1-mini by Superwhisper (MLX 8-bit)
This is an MLX 8-bit build of S1-mini by Superwhisper, for Apple silicon. S1-mini is a 0.6B text normalizer for speech-to-text output. Petal uses this build for on-device transcript cleanup.
Changes from the original
- The BF16 weights were quantized with
mlx_lm.convert -q --q-bits 8 --q-group-size 64(affine). - The model, the tokenizer, the chat template, and the prompt format are otherwise unchanged.
Usage
Use the exact system prompt and control line from the original model card, and set enable_thinking=False.
from mlx_lm import load, generate
model, tok = load("Aayush9029/s1-mini-mlx-8bit")
system = (
"You are a text normalizer for speech-to-text transcripts. The input begins "
"with a control line specifying the styling, structure, and context settings; "
"clean the transcript to match those settings and output only the cleaned text."
)
user = "[Styling: semi-formal] [Structure: prose] [Context: general]\nso um send the report by uh friday"
prompt = tok.apply_chat_template(
[{"role": "system", "content": system}, {"role": "user", "content": user}],
tokenize=False, add_generation_prompt=True, enable_thinking=False,
)
print(generate(model, tok, prompt, max_tokens=128))
Performance
Measured on an M4 Pro with greedy decoding:
| Build | Output identical to BF16 (16 cases) | Prefill | Decode | Peak memory |
|---|---|---|---|---|
| BF16 | 16/16 | ~2,600 tok/s | — | 1.4 GB |
| 8-bit (this repo) | 15/16 (one comma) | ~5,600 tok/s | ~240 tok/s | 0.85 GB |
| 4-bit | 10/16 | ~5,600 tok/s | ~340 tok/s | 0.55 GB |
The 4-bit build dropped words in some cases, so this repo ships 8-bit only.
License
S1-mini is released under Apache 2.0 plus a naming term: it must keep its name, "S1-mini" by "Superwhisper". See LICENSE and NOTICE.
- Downloads last month
- 22
8-bit