Text Generation
MLX
Safetensors
English
gemma4
lora
news
research
grounding
pepper
mnn
conversational
4-bit precision
Instructions to use pepper-research/pepper-desk-e2b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use pepper-research/pepper-desk-e2b 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("pepper-research/pepper-desk-e2b") 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 pepper-research/pepper-desk-e2b with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "pepper-research/pepper-desk-e2b"
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "pepper-research/pepper-desk-e2b" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use pepper-research/pepper-desk-e2b with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "pepper-research/pepper-desk-e2b"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "pepper-research/pepper-desk-e2b" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "pepper-research/pepper-desk-e2b", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use pepper-research/pepper-desk-e2b 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 "pepper-research/pepper-desk-e2b"
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 pepper-research/pepper-desk-e2b
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use pepper-research/pepper-desk-e2b with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "pepper-research/pepper-desk-e2b"
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 "pepper-research/pepper-desk-e2b" \ --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"
| license: gemma | |
| base_model: google/gemma-4-e2b-it | |
| language: | |
| - en | |
| tags: | |
| - mlx | |
| - lora | |
| - news | |
| - research | |
| - grounding | |
| - pepper | |
| - mnn | |
| pipeline_tag: text-generation | |
| # pepper-desk-e2b — the MNN singularity desk, distilled | |
| A 2B-class specialist that reads a wire of headlines and writes a grounded | |
| broadcast report — sources attributed, rumors adjudicated, unknowns said out | |
| loud. It is the research-desk brain of **Pepper**, the open-source on-device | |
| news anchor ([pepper.software](https://pepper.software) · | |
| [github.com/bunnycompany/pepper](https://github.com/bunnycompany/pepper) · | |
| watch her: [pepper.watch](https://pepper.watch)). | |
| ## MoltBench (12 bundles, 12 blind judges, deterministic rotation) | |
| | Model | Blind wins | Grounding | Adjudication | Persona | | |
| |---|---|---|---|---| | |
| | **pepper-desk-e2b (this, 2B)** | **11/12** | **88.6%** | **4.67/5** | **3.75/5** | | |
| | Qwen2.5-7B-Instruct-4bit | 1/12 | 77.5% | 2.67 | 1.42 | | |
| | pepper-7b (persona LoRA) | 0/12 | 50.0% | 2.00 | 1.83 | | |
| Benchmark, bundles, scorer, and protocol: | |
| [`bench/`](https://github.com/bunnycompany/pepper/tree/main/bench) in the | |
| repo. The origin story matters: the first Pepper model *failed* this | |
| benchmark against its own base (38.1% vs 64.5% grounding) — that failure | |
| became the release gate this model had to clear. | |
| ## Format: think, then speak | |
| Trained think-then-speak. Given wire notes, she emits | |
| `DESK NOTES:` (a private source-weighing analysis) then `ON AIR:` (the | |
| broadcast). Consumers show or strip the notes; score only the broadcast. | |
| System prompt and wire format: see | |
| [`bench/README.md`](https://github.com/bunnycompany/pepper/blob/main/bench/README.md) | |
| and the repo's `gen_eval_v2` harness. Use `max_tokens ≥ 500` — tighter caps | |
| truncate her sign-offs (it cost her one judged bundle). | |
| ## Training | |
| - Base: `google/gemma-4-e2b-it` via `mlx-community/gemma-4-e2b-it-4bit` | |
| - LoRA (mlx-lm 0.31, git), lr 4e-5, batch 4, seq 1800, grad-checkpoint, | |
| **iteration-200 checkpoint selected by validation loss** (1.557; later | |
| checkpoints overfit — the full curve is documented in the repo) | |
| - Data: 452 examples — 412 claim-verified wire→report pairs authored against | |
| the live August-2026 news cycle with explicit DESK NOTES reasoning | |
| (including deliberately contaminated bundles with exemplar adjudications), | |
| her 65 real broadcast segments, and a 40-riff persona sprinkle | |
| - Trained on an M3 Ultra in ~90 minutes; reproducible on consumer Apple | |
| Silicon | |
| ## Limitations | |
| She is grounded, not omniscient: judges recorded occasional invented | |
| connective detail, "peer-reviewed" applied to preprints, and style drift on | |
| very thin wires. She is built to work FROM provided wire notes — as a | |
| freestanding chatbot she is out of her element and says so less often than | |
| she should. English-first. Not for advice of any kind. | |
| ## License & lineage | |
| Weights are a derivative of Gemma and ship under the | |
| [Gemma Terms of Use](https://ai.google.dev/gemma/terms). The surrounding | |
| desk (app, bench, pipeline) is AGPL-3.0. Lineage: Danger Ghost (VTuber era) → | |
| MNN research anchor → this desk brain. | |
| *MNN — all your models, all the time.* 🌶 | |