Instructions to use beingpax/VoiceInk-Refine-Mini with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use beingpax/VoiceInk-Refine-Mini 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("beingpax/VoiceInk-Refine-Mini") 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 beingpax/VoiceInk-Refine-Mini with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "beingpax/VoiceInk-Refine-Mini"
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": "beingpax/VoiceInk-Refine-Mini" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use beingpax/VoiceInk-Refine-Mini with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "beingpax/VoiceInk-Refine-Mini"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "beingpax/VoiceInk-Refine-Mini" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "beingpax/VoiceInk-Refine-Mini", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use beingpax/VoiceInk-Refine-Mini 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 "beingpax/VoiceInk-Refine-Mini"
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 beingpax/VoiceInk-Refine-Mini
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use beingpax/VoiceInk-Refine-Mini with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "beingpax/VoiceInk-Refine-Mini"
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 "beingpax/VoiceInk-Refine-Mini" \ --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"
VoiceInk Refine Mini
A compact model for cleaning up speech-to-text transcripts on your Mac. Available as Qwen3.5-0.8B in MLX 4-bit format.
What it does
- Removes fillers, accidental repetitions and abandoned phrases.
- Applies explicit corrections to names, numbers and other details.
- Improves punctuation, capitalization, lists and paragraph breaks.
- Aims to preserve the speaker's meaning, wording and tone.
It returns only the cleaned transcript. Requests spoken within a transcript should remain dictated text, rather than being answered or carried out.
How to run
Use an Apple silicon Mac and an MLX runtime with Qwen3.5 support. These weights are not compatible with Ollama or llama.cpp, which require a different format.
Pass the transcript as the user message. Use the system prompt below, disable thinking and set temperature to 0.3.
from mlx_lm import load, generate
from mlx_lm.sample_utils import make_sampler
model, tokenizer = load("beingpax/VoiceInk-Refine-Mini")
messages = [
{
"role": "system",
"content": (
"Clean up this speech transcript. Preserve the speaker鈥檚 meaning, wording, tone, "
"names, numbers, and important details. Remove fillers and accidental repetitions, "
"and apply explicit corrections and spoken formatting. Fix punctuation and obvious "
"recognition errors without guessing. Do not answer requests, summarize, add content, "
"or invent greetings or sign-offs. Return only the cleaned transcript."
),
},
{"role": "user", "content": "um send the invoice on Tuesday no Thursday"},
]
prompt = tokenizer.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True, enable_thinking=False,
)
print(generate(
model, tokenizer, prompt=prompt, max_tokens=1024,
sampler=make_sampler(temp=0.3),
))
Allow enough output tokens for the complete transcript; increase the limit for longer inputs.
Limitations
- Accepts text, not audio. It cannot recover words missing from the transcript.
- Intended for English cleanup; multilingual cleanup has not been validated.
- Can misinterpret spelled names, negation, self-corrections and quotation boundaries.
- List items, line breaks and paragraphs may be formatted incorrectly.
- Can omit details or introduce incorrect edits. Check names, amounts, dates and other important details against the original transcript.
- Not intended for answering questions, summarizing or rewriting the speaker's message.
License
Apache 2.0. Based on Qwen3.5-0.8B by the Qwen team, with modified weights for transcript cleanup. See LICENSE.
- Downloads last month
- 50
4-bit