mlx-bun 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +57 -32
  2. package/docs/README.md +55 -42
  3. package/docs/archive/investigations/benchmark-ledger-through-v0.4.0.md +3617 -0
  4. package/docs/archive/planning/release-notes-v0.5.0.md +37 -0
  5. package/docs/design/batching.md +220 -7
  6. package/docs/design/decode-speed-program.md +121 -66
  7. package/docs/design/generic-model-support.md +116 -0
  8. package/docs/design/kv-cache.md +380 -211
  9. package/docs/design/speculative-decoding.md +165 -26
  10. package/docs/design/turboquant.md +20 -7
  11. package/docs/design/unified-engine-frontier-plan.md +120 -13
  12. package/docs/planning/PRODUCT_ROADMAP.md +5 -6
  13. package/docs/planning/public-readiness-handoff.md +244 -0
  14. package/docs/planning/public-readiness.md +149 -0
  15. package/docs/reference/benchmarks.md +3463 -3489
  16. package/docs/reference/cli.md +62 -1
  17. package/docs/reference/distribution.md +29 -4
  18. package/docs/reference/environment.md +104 -8
  19. package/docs/reference/library-api.md +18 -4
  20. package/docs/reference/memory.md +1 -1
  21. package/docs/reference/models.md +17 -5
  22. package/docs/reference/server-api.md +181 -11
  23. package/docs/reference/server-config.md +232 -105
  24. package/package.json +2 -2
  25. package/src/audio/audiotoolbox.ts +112 -0
  26. package/src/audio/conformer.ts +8 -0
  27. package/src/audio/mic-capture.ts +98 -0
  28. package/src/audio/silero-vad.ts +379 -0
  29. package/src/audio/whisper-decode.ts +774 -0
  30. package/src/audio/whisper-fast.ts +732 -0
  31. package/src/audio/whisper-format.ts +73 -0
  32. package/src/audio/whisper-mel.ts +185 -0
  33. package/src/audio/whisper-timing.ts +274 -0
  34. package/src/audio/whisper-tokenizer.ts +239 -0
  35. package/src/audio/whisper-transcribe.ts +410 -0
  36. package/src/backends/mlx/autoregressive.ts +22 -1
  37. package/src/backends/mlx/batch-group.ts +111 -27
  38. package/src/backends/mlx/cache-layout.ts +3 -3
  39. package/src/backends/mlx/continuation-persistence.ts +5 -4
  40. package/src/backends/mlx/encoder-cache.ts +25 -0
  41. package/src/backends/mlx/fill-append.ts +21 -8
  42. package/src/backends/mlx/fill-group.ts +497 -0
  43. package/src/backends/mlx/gateway-binding.ts +56 -12
  44. package/src/backends/mlx/kv-maintenance.ts +30 -2
  45. package/src/backends/mlx/mixed-iteration.ts +62 -0
  46. package/src/backends/mlx/model-prompt.ts +46 -32
  47. package/src/backends/mlx/model-serving.ts +4 -3
  48. package/src/backends/mlx/paged-cache-codec.ts +27 -0
  49. package/src/backends/mlx/prefill-cohort.ts +15 -4
  50. package/src/backends/mlx/prefill-policy.ts +26 -0
  51. package/src/backends/mlx/prefill-rows.ts +57 -13
  52. package/src/backends/mlx/prompt-input.ts +29 -0
  53. package/src/backends/mlx/qwen-prompt-input.ts +40 -0
  54. package/src/backends/mlx/request-state-policy.ts +18 -5
  55. package/src/backends/mlx/rollback.ts +6 -3
  56. package/src/backends/mlx/serial-executor.ts +16 -7
  57. package/src/backends/mlx/speculative-group.ts +105 -26
  58. package/src/backends/mlx/speculative.ts +24 -7
  59. package/src/backends/mlx/target-layout-capability.ts +1 -1
  60. package/src/backends/mlx/transitioning-kv-rows.ts +8 -0
  61. package/src/cli.ts +322 -0
  62. package/src/contracts/execution.ts +10 -0
  63. package/src/contracts/object-cache.ts +8 -0
  64. package/src/contracts/pi-provider.ts +1 -1
  65. package/src/contracts/pi.ts +3 -1
  66. package/src/contracts/prefix-cache.ts +13 -3
  67. package/src/contracts/scheduling.ts +9 -0
  68. package/src/engine/execution-plan.ts +23 -12
  69. package/src/engine/execution-tasks.ts +44 -0
  70. package/src/engine/namespaced-cache.ts +13 -0
  71. package/src/engine/scheduler.ts +22 -2
  72. package/src/fill/fill-session.ts +14 -3
  73. package/src/generate.ts +28 -22
  74. package/src/grammar.ts +13 -0
  75. package/src/inference/prefill.ts +6 -0
  76. package/src/kv-scheme.ts +22 -0
  77. package/src/kv-store.ts +115 -79
  78. package/src/lab/README.md +5 -1
  79. package/src/lab/paged-kv/paged-attention.ts +117 -0
  80. package/src/lab/paged-kv/paged-kv-rows.ts +33 -5
  81. package/src/lab/paged-kv/paged-kv.ts +108 -42
  82. package/src/md-modules.d.ts +5 -0
  83. package/src/mlx/array.ts +37 -0
  84. package/src/mlx/ffi.ts +19 -0
  85. package/src/mlx/normalized-argmax.ts +116 -0
  86. package/src/mlx/ops.ts +97 -10
  87. package/src/model/batched-turboquant-kv.ts +6 -5
  88. package/src/model/delayed-quantized-kv.ts +3 -3
  89. package/src/model/delayed-rotating-quantized-kv.ts +1 -1
  90. package/src/model/delayed-turboquant-kv.ts +6 -4
  91. package/src/model/factory.ts +26 -0
  92. package/src/model/fingerprint.ts +12 -0
  93. package/src/model/full-prefill-row.ts +1 -1
  94. package/src/model/gemma4-base.ts +25 -6
  95. package/src/model/gemma4.ts +82 -2
  96. package/src/model/kv-attention-view.ts +4 -1
  97. package/src/model/profile.ts +29 -4
  98. package/src/model/quantized-append-attention.ts +31 -0
  99. package/src/model/qwen3-mrope.ts +7 -9
  100. package/src/model/qwen3_5.ts +99 -37
  101. package/src/model/support.ts +8 -0
  102. package/src/model/token-groups.ts +66 -0
  103. package/src/model/trellis-linear.ts +2 -2
  104. package/src/model/turboquant-codec.ts +6 -0
  105. package/src/model/whisper.ts +435 -0
  106. package/src/native/mic_capture.swift +92 -0
  107. package/src/native-pack.ts +6 -5
  108. package/src/pi-web.ts +9 -1
  109. package/src/prompt-cache.ts +265 -43
  110. package/src/runtime-config.ts +1 -5
  111. package/src/safetensors.ts +9 -2
  112. package/src/sampler.ts +5 -4
  113. package/src/serve/audio-routes.ts +323 -0
  114. package/src/serve/chat-request.ts +2 -0
  115. package/src/serve/chat-stage.ts +17 -12
  116. package/src/serve/completion-executor.ts +9 -1
  117. package/src/serve/discovery-routes.ts +17 -1
  118. package/src/serve/generated-token-history.ts +57 -0
  119. package/src/serve/generation-gateway.ts +52 -11
  120. package/src/serve/model-binding.ts +7 -1
  121. package/src/serve/preparation.ts +3 -3
  122. package/src/serve/prompt-response-trace.ts +14 -0
  123. package/src/serve/request-plan.ts +2 -0
  124. package/src/serve/request-prep.ts +38 -21
  125. package/src/serve/transcription-server.ts +64 -0
  126. package/src/serve/transcription-service.ts +502 -0
  127. package/src/server.ts +132 -164
  128. package/src/spec/assistant-rows.ts +1 -0
  129. package/src/spec/deepspec-rows.ts +1 -1
  130. package/src/spec/dflash-source.ts +1 -1
  131. package/src/spec/glm52-mtp-source.ts +1 -0
  132. package/src/spec/ngram-source.ts +27 -5
  133. package/src/spec/projected-draft-rows.ts +2 -2
  134. package/src/spec/qwen-mtp-rows.ts +11 -0
  135. package/src/spec/qwen-mtp-source.ts +3 -0
  136. package/src/spec/serve-loop.ts +5 -3
  137. package/src/spec/source.ts +14 -1
  138. package/src/spec/two-model-rows.ts +1 -0
  139. package/src/spec/two-model.ts +2 -2
  140. package/src/ssd-cache.ts +76 -17
  141. package/src/ssd-durability.ts +20 -22
  142. package/src/storage/host-buffer.ts +24 -0
  143. package/src/storage/kv-writer.ts +83 -0
  144. package/src/storage/kv-writer.worker.js +264 -0
  145. package/src/storage/retention-policy.ts +37 -0
  146. package/src/tiered-prompt-cache.ts +45 -0
  147. package/src/vision/embedder.ts +8 -0
  148. package/src/vision/prompt.ts +101 -65
  149. package/src/vision/qwen3vl-prompt.ts +101 -64
  150. package/src/vision/qwen3vl-tower.ts +11 -0
  151. package/src/vision/siglip.ts +8 -0
  152. package/src/web/app.html +12 -0
  153. package/src/web/app.js +160 -0
  154. package/src/web/src/chat.ts +4 -1
  155. package/src/web/src/composer.ts +3 -0
  156. package/src/web/src/voice.ts +141 -0
  157. package/src/web/sw.js +1 -1
  158. /package/docs/{planning → archive/planning}/release-notes-v0.4.0.md +0 -0
package/README.md CHANGED
@@ -1,23 +1,27 @@
1
1
  # mlx-bun
2
2
 
3
- A Bun/TypeScript native inference engine and OpenAI-compatible HTTP server
4
- for MLX on Apple Silicon — no Python, no sidecar process. `mlx-bun serve` is
5
- a drop-in for `mlx_lm.server` (same port, endpoints, request fields, and
6
- flags); the correctness contract is logit parity with mlx-lm as the oracle,
7
- verified bit-exact by the test suite. Ships as one signed, notarized binary,
8
- plus a library-first TypeScript API for embedding generation directly in
9
- Bun, Tauri, or Electron apps.
3
+ MLX inference as a TypeScript/Bun library, with a signed executable serving
4
+ OpenAI/Anthropic-compatible APIs on Apple Silicon. Embed generation in a Bun
5
+ application or run the local server and browser chat app. The numerical tests
6
+ compare logits bit-for-bit with mlx-lm for validated configurations.
10
7
 
11
8
  Docs: **[mlx-bun.dev](https://mlx-bun.dev)**
12
9
 
13
10
  ## Scope
14
11
 
15
- Apple Silicon only — MLX is a Metal framework, so this runs on macOS on M-series
16
- chips by design, nothing else. Serving is single-user: one process serves one
17
- loaded model to one caller at a time (`--isolate --model-pool N` pools
18
- multiple single-model children behind a router; it isn't a multi-tenant
19
- scheduler). Model support is a curated, oracle-backed list, not a generic
20
- "any HF repo" loader — see the roster for what's validated.
12
+ The engine requires an **Apple Silicon Mac running macOS 14 or later**.
13
+ The standalone executable includes its runtime; npm and source usage require
14
+ Bun. Node.js, Linux, and Windows cannot run the native engine.
15
+
16
+ The server uses continuous batching by default. Eligible requests share the
17
+ execution engine, including when only one request is active. Supported
18
+ combinations and the explicit serial option are documented in
19
+ [server configuration](./docs/reference/server-config.md).
20
+
21
+ Use the [supported model roster](./docs/reference/models.md) to choose an
22
+ artifact. Model architecture, weight format, and cache scheme determine
23
+ compatibility. Arbitrary Hugging Face repositories and GGUF files are not
24
+ automatically supported.
21
25
 
22
26
  ## Install
23
27
 
@@ -38,18 +42,25 @@ git clone https://github.com/joshuarossi/mlx-bun.git && cd mlx-bun
38
42
  bun install && bun run link-cli
39
43
  ```
40
44
 
41
- Every channel builds from the same bundle. Details, signing, and the native
42
- runtime resolution order: [docs/reference/distribution.md](./docs/reference/distribution.md).
45
+ Homebrew and direct download install the same self-contained bundle. npm
46
+ ships a launcher and TypeScript source, then fetches the native runtime pack
47
+ on first use. See [distribution](./docs/reference/distribution.md) for details.
43
48
 
44
49
  ## Quickstart
45
50
 
46
- Bare `mlx-bun` aliases to `mlx-bun serve`; with no model named it downloads a
47
- sub-GB starter and opens a chat UI. To pick a model explicitly:
51
+ Start the server and open the chat UI. With no model selected, the first run
52
+ downloads a starter model:
48
53
 
49
54
  ```sh
50
- mlx-bun serve e4b --port 8080
55
+ mlx-bun serve --port 8080
51
56
  ```
52
57
 
58
+ Use `mlx-bun ls` to see downloaded models. For example, after downloading a
59
+ matching model, `mlx-bun serve e4b` selects it by name. Model selection and
60
+ downloads are documented in the [CLI reference](./docs/reference/cli.md).
61
+
62
+ Send a request from the terminal:
63
+
53
64
  ```sh
54
65
  curl http://localhost:8080/v1/chat/completions \
55
66
  -H 'Content-Type: application/json' \
@@ -69,13 +80,22 @@ Longer walkthroughs on the site:
69
80
  [Installation](https://mlx-bun.dev/getting-started/installation/) and
70
81
  [Quickstart](https://mlx-bun.dev/getting-started/quickstart/).
71
82
 
72
- ## Reference docs
83
+ ## Find your way around
84
+
85
+ - **Use the app or server:** start above, then consult the
86
+ [CLI](./docs/reference/cli.md), [models](./docs/reference/models.md), or
87
+ [troubleshooting](./docs/reference/troubleshooting.md).
88
+ - **Build an application:** the [library API](./docs/reference/library-api.md)
89
+ documents in-process Bun integration and isolated hosts for desktop apps.
90
+ The [HTTP API](./docs/reference/server-api.md) works with other runtimes.
91
+ - **Evaluate or contribute:** read the [benchmark evidence](./docs/reference/benchmarks.md)
92
+ and [contribution guide](./CONTRIBUTING.md). The [docs index](./docs/README.md)
93
+ separates reference material, active design, and history.
73
94
 
74
- Each fact about the project has exactly one home:
95
+ Each reference topic has one home:
75
96
 
76
97
  | Topic | Doc |
77
98
  |---|---|
78
- | Current state, what's next | [STATUS.md](./STATUS.md) |
79
99
  | Benchmark numbers (parity / performance / quality) | [docs/reference/benchmarks.md](./docs/reference/benchmarks.md) |
80
100
  | Supported models roster | [docs/reference/models.md](./docs/reference/models.md) |
81
101
  | Server start flags, `MLX_BUN_*` env, defaults | [docs/reference/server-config.md](./docs/reference/server-config.md) |
@@ -90,20 +110,25 @@ Each fact about the project has exactly one home:
90
110
  | Active engineering design docs | [docs/design/](./docs/README.md) |
91
111
  | Contributing / repo rules | [CONTRIBUTING.md](./CONTRIBUTING.md) |
92
112
 
93
- Correctness is verified bit-exact against the Python mlx-lm reference as the
94
- project's oracle: [benchmarks.md § Parity](./docs/reference/benchmarks.md#1-parity-porting-correctness--bit-exact-vs-the-oracle).
113
+ The numerical contract distinguishes stock mlx-lm parity, mlx-optiq parity
114
+ for supported extensions, and experimental methods. Tests compare logits
115
+ against pinned oracles under matching conditions; batching and sampling can
116
+ change generated trajectories. See the evidence and limits in
117
+ [benchmarks.md](./docs/reference/benchmarks.md#1-parity-porting-correctness--bit-exact-vs-the-oracle).
118
+ Server policy defaults are documented separately in
119
+ [server configuration](./docs/reference/server-config.md).
95
120
 
96
121
  ## Why
97
122
 
98
- MLX is Apple's ML framework — hand-tuned Metal kernels with official
99
- bindings for Python, C++, Swift, and C, but no JavaScript story. The
100
- performance-critical work (every matmul, every attention pass) lives in
101
- MLX's C++/Metal core, exposed through `mlx-c`; the layer on top — model
102
- loading, tokenization, sampling, serving — is pure orchestration and
103
- performance-neutral, so it can move to a better runtime without losing
104
- speed. Bun fits: `bun:ffi` binds `mlx-c` directly with no node-gyp step,
105
- `Bun.Image` gives native OS image codecs for vision input, and the result
106
- ships as one binary with no Python venv.
123
+ mlx-bun brings MLX inference into a TypeScript application without a Python
124
+ service. Bun's FFI calls `mlx-c` directly. Model implementations, scheduling,
125
+ sampling, and reusable cache state live in the same process.
126
+
127
+ Performance depends on both native kernels and how the engine uses them.
128
+ The project develops specialized kernels, avoids repeated computation, and
129
+ measures complete requests as well as decode throughput. The
130
+ [benchmark ledger](./docs/reference/benchmarks.md) records the machines,
131
+ settings, comparisons, and remaining regressions.
107
132
 
108
133
  ## License
109
134
 
package/docs/README.md CHANGED
@@ -1,4 +1,55 @@
1
- # docs/ map (generated — do not edit; `bun scripts/check-hygiene.ts --write-docs-map`)
1
+ # Documentation
2
+
3
+ Generated index. Update with `bun scripts/check-hygiene.ts --write-docs-map`.
4
+
5
+ ## Start here
6
+
7
+ - Run mlx-bun: [quickstart](../README.md#quickstart), [models](reference/models.md), [CLI](reference/cli.md), [troubleshooting](reference/troubleshooting.md).
8
+ - Build an application: [TypeScript library](reference/library-api.md), [HTTP API](reference/server-api.md), [server configuration](reference/server-config.md).
9
+ - Assess the results: [benchmarks and correctness evidence](reference/benchmarks.md).
10
+ - Contribute: [contribution guide](../CONTRIBUTING.md), [engine architecture](design/unified-engine-frontier-plan.md), [current work](../PLAN.md).
11
+
12
+ ## docs/reference/
13
+
14
+ User-facing reference — the ONLY home for flags, routes, models, numbers, and environment facts.
15
+
16
+ - [benchmarks.md](../docs/reference/benchmarks.md) — mlx-bun benchmark results
17
+ - [cli.md](../docs/reference/cli.md) — CLI reference
18
+ - [distribution.md](../docs/reference/distribution.md) — Distributing mlx-bun — build, sign, notarize, publish
19
+ - [environment.md](../docs/reference/environment.md) — Reference environment and platform facts
20
+ - [glossary.md](../docs/reference/glossary.md) — mlx-bun serving
21
+ - [library-api.md](../docs/reference/library-api.md) — Library API
22
+ - [memory.md](../docs/reference/memory.md) — Memory — the personal wiki
23
+ - [models.md](../docs/reference/models.md) — Models: supported roster + management (get / scan / ls / gc)
24
+ - [server-api.md](../docs/reference/server-api.md) — Server API
25
+ - [server-config.md](../docs/reference/server-config.md) — Server configuration
26
+ - [training.md](../docs/reference/training.md) — Training / fine-tuning reference
27
+ - [troubleshooting.md](../docs/reference/troubleshooting.md) — Troubleshooting
28
+
29
+ ## docs/design/
30
+
31
+ Active engineering design docs — one per topic; status lives in front matter + PLAN.md.
32
+
33
+ - [batching.md](../docs/design/batching.md) — Batching — continuous scheduling for `--batch N`
34
+ - [decode-speed-program.md](../docs/design/decode-speed-program.md) — Inference performance program
35
+ - [dreaming-nightly-pipeline.md](../docs/design/dreaming-nightly-pipeline.md) — The Dreaming — memory write path + synthesis (canonical design)
36
+ - [generic-model-support.md](../docs/design/generic-model-support.md) — Model support — run anything mlx-lm runs, and the ports we target
37
+ - [kv-cache.md](../docs/design/kv-cache.md) — KV cache — residency and layout
38
+ - [orpo-training.md](../docs/design/orpo-training.md) — Training — design (ORPO, flash-CCE head, prefix sharing, segmented backward)
39
+ - [speculative-decoding.md](../docs/design/speculative-decoding.md) — Speculative decoding — one verifier, every draft source
40
+ - [turboquant.md](../docs/design/turboquant.md) — TurboQuant — rotation-based quantization (KV leg landed, weights leg open)
41
+ - [unified-engine-frontier-plan.md](../docs/design/unified-engine-frontier-plan.md) — Engine architecture — four layers, per-scheme oracles, one request path
42
+ - [web-chat-redesign.md](../docs/design/web-chat-redesign.md) — Web chat — the built-in chat surface (canonical design)
43
+
44
+ ## docs/planning/
45
+
46
+ Living product/vision docs (USING side).
47
+
48
+ - [PRODUCT_ROADMAP.md](../docs/planning/PRODUCT_ROADMAP.md) — PRODUCT ROADMAP
49
+ - [ResearchTopics.md](../docs/planning/ResearchTopics.md) — Research Topics
50
+ - [public-readiness-handoff.md](../docs/planning/public-readiness-handoff.md) — Public readiness — handoff (2026-09-11)
51
+ - [public-readiness.md](../docs/planning/public-readiness.md) — Preparing mlx-bun for the MLX community
52
+ - [video-series.md](../docs/planning/video-series.md) — mlx-bun video series
2
53
 
3
54
  ## docs/archive/
4
55
 
@@ -6,6 +57,7 @@ Frozen history — read-only, never extended in place; recover raw data via git
6
57
 
7
58
  - [hlg-sampling.md](../docs/archive/hlg-sampling.md) — HLG sampling — a piecewise tone curve on the logits
8
59
  - [investigations/audio-input-plan.md](../docs/archive/investigations/audio-input-plan.md) — Audio input — design & implementation plan (gemma-4 audio tower)
60
+ - [investigations/benchmark-ledger-through-v0.4.0.md](../docs/archive/investigations/benchmark-ledger-through-v0.4.0.md) — Benchmark ledger through v0.4.0
9
61
  - [investigations/chunk-finetune-experiment.md](../docs/archive/investigations/chunk-finetune-experiment.md) — Fine-tuning experiment: chunking task (2026-06-16)
10
62
  - [investigations/colibri-glm52-port.md](../docs/archive/investigations/colibri-glm52-port.md) — GLM-5.2 on a 32 GB Mac — native MLX port of the Colibri hierarchy
11
63
  - [investigations/colibri-oracle-pin.md](../docs/archive/investigations/colibri-oracle-pin.md) — Colibri oracle pin for the native GLM-5.2 port
@@ -49,46 +101,7 @@ Frozen history — read-only, never extended in place; recover raw data via git
49
101
  - [planning/release-notes-v0.0.9.md](../docs/archive/planning/release-notes-v0.0.9.md) — v0.0.9 release notes (DRAFT — Josh edits + publishes)
50
102
  - [planning/release-notes-v0.2.0.md](../docs/archive/planning/release-notes-v0.2.0.md) — mlx-bun v0.2.0
51
103
  - [planning/release-notes-v0.3.0.md](../docs/archive/planning/release-notes-v0.3.0.md) — mlx-bun v0.3.0
104
+ - [planning/release-notes-v0.4.0.md](../docs/archive/planning/release-notes-v0.4.0.md) — mlx-bun v0.4.0
105
+ - [planning/release-notes-v0.5.0.md](../docs/archive/planning/release-notes-v0.5.0.md) — mlx-bun v0.5.0
52
106
  - [planning/web-ui-pass-plan.md](../docs/archive/planning/web-ui-pass-plan.md) — Web UI pass — ranked fix list (2026-07-01 audit)
53
107
  - [planning/website-readme-pass-plan.md](../docs/archive/planning/website-readme-pass-plan.md) — Website + README pass — audit findings and fix plan (2026-07-01)
54
-
55
- ## docs/design/
56
-
57
- Active engineering design docs — one per topic; status lives in front matter + PLAN.md.
58
-
59
- - [batching.md](../docs/design/batching.md) — Batching — continuous scheduling for `--batch N`
60
- - [decode-speed-program.md](../docs/design/decode-speed-program.md) — Inference performance program
61
- - [dreaming-nightly-pipeline.md](../docs/design/dreaming-nightly-pipeline.md) — The Dreaming — memory write path + synthesis (canonical design)
62
- - [generic-model-support.md](../docs/design/generic-model-support.md) — Model support — run anything mlx-lm runs, and the ports we target
63
- - [kv-cache.md](../docs/design/kv-cache.md) — KV cache — residency and layout
64
- - [orpo-training.md](../docs/design/orpo-training.md) — Training — design (ORPO, flash-CCE head, prefix sharing, segmented backward)
65
- - [speculative-decoding.md](../docs/design/speculative-decoding.md) — Speculative decoding — one verifier, every draft source
66
- - [turboquant.md](../docs/design/turboquant.md) — TurboQuant — rotation-based quantization (KV leg landed, weights leg open)
67
- - [unified-engine-frontier-plan.md](../docs/design/unified-engine-frontier-plan.md) — Engine architecture — four layers, per-scheme oracles, one request path
68
- - [web-chat-redesign.md](../docs/design/web-chat-redesign.md) — Web chat — the built-in chat surface (canonical design)
69
-
70
- ## docs/planning/
71
-
72
- Living product/vision docs (USING side).
73
-
74
- - [PRODUCT_ROADMAP.md](../docs/planning/PRODUCT_ROADMAP.md) — PRODUCT ROADMAP
75
- - [ResearchTopics.md](../docs/planning/ResearchTopics.md) — Research Topics
76
- - [release-notes-v0.4.0.md](../docs/planning/release-notes-v0.4.0.md) — mlx-bun v0.4.0
77
- - [video-series.md](../docs/planning/video-series.md) — mlx-bun video series
78
-
79
- ## docs/reference/
80
-
81
- User-facing reference — the ONLY home for flags, routes, models, numbers, and environment facts.
82
-
83
- - [benchmarks.md](../docs/reference/benchmarks.md) — mlx-bun benchmark results (curated)
84
- - [cli.md](../docs/reference/cli.md) — CLI reference
85
- - [distribution.md](../docs/reference/distribution.md) — Distributing mlx-bun — build, sign, notarize, publish
86
- - [environment.md](../docs/reference/environment.md) — Reference environment and platform facts
87
- - [glossary.md](../docs/reference/glossary.md) — mlx-bun serving
88
- - [library-api.md](../docs/reference/library-api.md) — Library API
89
- - [memory.md](../docs/reference/memory.md) — Memory — the personal wiki
90
- - [models.md](../docs/reference/models.md) — Models: supported roster + management (get / scan / ls / gc)
91
- - [server-api.md](../docs/reference/server-api.md) — Server API
92
- - [server-config.md](../docs/reference/server-config.md) — Server configuration
93
- - [training.md](../docs/reference/training.md) — Training / fine-tuning reference
94
- - [troubleshooting.md](../docs/reference/troubleshooting.md) — Troubleshooting