Instructions to use EigenLabs/flint-int4 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use EigenLabs/flint-int4 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("EigenLabs/flint-int4") 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 EigenLabs/flint-int4 with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "EigenLabs/flint-int4"
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": "EigenLabs/flint-int4" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use EigenLabs/flint-int4 with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "EigenLabs/flint-int4"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "EigenLabs/flint-int4" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "EigenLabs/flint-int4", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use EigenLabs/flint-int4 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 "EigenLabs/flint-int4"
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 EigenLabs/flint-int4
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use EigenLabs/flint-int4 with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "EigenLabs/flint-int4"
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 "EigenLabs/flint-int4" \ --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"
Recursive Flint — MLX INT4 (official, target-only)
An EigenLabs mirror of Recursive's official MLX INT4 release of Flint, a
mixture-of-experts language model for coding agents with 39.8B total and about
2.5B active parameters per token. The weights, tokenizer, chat template and
configuration are byte-identical to
RecursiveSI/flint-int4
at revision 3b93f9053b530488405ae9fca51d4900d6ce21f0. Only this model card is
EigenLabs-authored; the upstream card is preserved unchanged as
ORIGINAL_README.md.
Artifact
| Field | Value |
|---|---|
| Source | RecursiveSI/flint-int4 |
| Source revision | 3b93f9053b530488405ae9fca51d4900d6ce21f0 |
| Base model | RecursiveSI/flint |
| Architecture | flint (FlintForCausalLM): 49 layers, 2 dense and 47 MoE; 256 routed experts with 6 selected per token plus a shared expert; 35 sliding-window (513) and 14 full-attention layers with learned attention sinks |
| Parameters | 39.8B total; about 2.5B active per token including the output head (Recursive's convention) |
| Inputs / output | Text only / text, including automatic reasoning and structured tool calls in compatible runtimes |
| Quantization | Recursive's MLX affine: projections and experts INT4/group-64, embeddings INT8, sensitive tensors BF16. Not NVFP4 |
| Safetensor files, including headers | 22,568,912,600 bytes (about 21.02 GiB) across 5 shards |
| Vocabulary / declared context | 150,144 tokens / 262,144 tokens |
| Multi-token prediction | None. Target-only; no compatible official MTP companion has been published |
| License | Apache 2.0, from Recursive |
“INT4” describes the projections and experts; embeddings, scales, offsets and sensitive tensors use other precisions, so not every stored byte is four bits. Disk size is not a minimum-RAM specification: KV cache, context length, batching and runtime buffers add to it.
Reasoning and tools
Flint decides when to reason and emits its reasoning in <think> blocks. This
release has no trained forced-thinking switch, effort levels or thinking-budget
control, so runtimes should reject those controls rather than emulate them.
Tool calls use the template's framed format
(<tool_call>name<arg_key>…</arg_key><arg_value>…</arg_value></tool_call>).
For required or named tool choices, keep the caller's messages and enforce the
call in the sampler: an injected "call this tool now" instruction can push the
model into writing calls inside unfinished reasoning. Official sampling
defaults are temperature 1.0, top-p 0.95 and top-k 20.
Download
Download the complete repository with huggingface_hub:
from huggingface_hub import snapshot_download
model_path = snapshot_download(
repo_id="EigenLabs/flint-int4",
local_dir="flint-int4",
)
For reproducible deployments, pass a full immutable commit as revision. Load
the directory with a runtime that implements the flint architecture; generic
MLX loading does not establish architecture, reasoning or tool compatibility.
Darkbloom
Native support runs through Darkbloom's provider (d-inference) and its MLX Swift SDK with paged attention, native BF16 KV and 2048-token prefill chunks. Measured on an Apple M5 Max (40-core GPU, 128 GB), release build, TF32 disabled, paged backend verified on every request:
| Measurement | Result |
|---|---|
| Engine prefill, 4K fixed prompt, 5 runs | about 5.46k tok/s |
| Engine prefill, 4K, 120 back-to-back runs | median 5.42k tok/s; last 20 runs 5.02k tok/s |
| Engine prefill, 1K | about 4.69k tok/s |
| Engine decode, 1 sequence | about 81 tok/s |
| Engine decode, 8 sequences | about 216 tok/s total (27 per sequence) |
| Authenticated HTTP, 4.1K prompt | 0.88 s to first token (about 4.68k tok/s, including HTTP and tokenization) |
| Authenticated HTTP decode, native tool/reasoning constraint on | about 75 tok/s |
These are single-machine engineering measurements, not throughput guarantees. Darkbloom providers download the 11 runtime files from a pinned commit of this repository first and fall back to Darkbloom's R2 copy; both are checked against the registry manifest's SHA-256 values. Publishing this repository does not register a Darkbloom catalog release or activate provider traffic. After a catalog release pins this artifact and its verified manifest, use the catalog-assigned model ID:
darkbloom models catalog
darkbloom models download <catalog-model-id>
darkbloom start --foreground
Validation and limitations
- Upstream integrity: all 11 runtime files match Recursive's published SHA-256 values; native runtime aggregate
4407354fced44d1380d6fe371a128ce3b07940fc4d33215ab6c7d7944f9eefbb. - Mirror integrity: every file's size and SHA-256 is recorded in MIRROR_PROVENANCE.json. After upload, remote large-file sizes and hashes matched and every non-weight file was downloaded and byte-verified.
- Darkbloom HTTP: the paged suite passed chat, streaming, Responses, auto/required/named/parallel/none tool choices, refusals of unsupported controls and media, tool-history replay and a coding task.
- Not established: BF16 equivalence or perplexity, quality on any particular workload, the full 262,144-token context, every hardware tier, cache or concurrency setting, and hosted certification. Validate the intended workload and runtime before production use.
Attribution
Original model, training and INT4 quantization: Recursive. This EigenLabs mirror redistributes the release under its included Apache 2.0 license and is not an official Recursive release. The license grants no trademark rights; “Flint” and its logo belong to Recursive. Darkbloom's native support adapts Prince Canuma's MIT-licensed mlx-vlm Flint implementation and follows Recursive's Apache-2.0 rec reference; full notices ship with the SDK, and that code is not part of this repository. See the original model card and Recursive's Flint card for intended use, training data and limitations, and MIRROR_NOTICES.md for mirror details.
- Downloads last month
- 41
Quantized
Model tree for EigenLabs/flint-int4
Base model
RecursiveSI/flint