afm 0.9.15
afm 0.9.15
Apple Foundation Models + MLX local models — OpenAI-compatible API, WebUI, all Swift.
Changes since v0.9.14
- Prepare AFM 0.9.15 stable release (
fb9b858) - Merge pull request #168 from scouzi1966/codex/nemotron-3-5-lightning (
ff1f59a) - Harden Nemotron checkpoint validation (
91de79f) - Address DeepSeek batching review findings (
3f0750a) - Add Nemotron 3.5 Lightning support (
764299e) - Improve DeepSeek V4 concurrent cache batching (
528a098) - Improve Xet downloads and DeepSeek admission tracing (
7921079) - Fix DwarfStar provider integration (
e8fec43) - Activate DSpark through AFMKit (
a8a58ef) - Add DwarfStar tools and macOS 27 provider bridge (
21f9e07) - Harden release regression coverage (
3b193aa) - Fix DeepSeek patch order in clean builds (
d643f07) - Merge pull request #160 from scouzi1966/codex/fix-149-vlm-image-routing (
e9e1c50) - Merge pull request #159 from scouzi1966/codex/ds4-main-b030961 (
fcecc08) - Document safe qualification subprocess boundary (
2308d86) - Fix MLX multimodal lifecycle review findings (
721d3ac) - Address DwarfStar release review findings (
16d5921) - Add Vapor Swift server to infographic (
bfac03b) - Restore versioned install guidance (
8c10862) - Fix MLX multimodal routing for dual-mode models (
09b278f) - Merge latest main with README update (
1247db9) - Update README with AFM overview (
4fc3367) - Fix DwarfStar qualification review findings (
5f00d0c) - Update DwarfStar for accelerated prefill (
e0b16c4) - Document AFM 0.9.15 nightly changes (
0792a35) - Make nightly wheel site builds deterministic (
36fb60a) - Fix generated nightly formula audit metadata (
25b408b) - Harden AFM nightly packaging (
e70cc52) - Fix MLX batch timeout and cancellation (
ff2dde5) - Batch DeepSeek V4 hybrid caches (
41f82df) - Checkpoint AFM 0.9.15 release candidate (
9924369) - Sync AFMKit curated models with Vesta (
ddfb755) - Support patched MLX in Xcode checkouts (
726a644) - Fix DeepSeek DSpARK verifier rollback (
9b12f4b) - Expose supported MLX runtime controls (
19f3f4e) - Add DeepSeek thinking controls (
d9db347) - Integrate canonical DS4 runtime (
8d7660d) - Integrate DwarfStar runtime for AFM checkpoints (
b053ed1) - Improve DeepSeek V4 MLX performance path (
f1a11ed) - Load official DeepSeek V4 checkpoints (
e0c11f2) - Accelerate DeepSeek DSpark proposal heads (
c9762ca) - Document rejected DeepSeek kernel variants (
d22f0b1) - Accelerate DeepSeek grouped attention projection (
28c5037) - Benchmark canonical DeepSeek runtime (
48b68ba) - Compile initialized MLX vendor sources (
105e6de) - Prevent stale MLX vendor builds (
45b5e67) - Make MLX metallib discovery reliable (
7088d72) - Allow longer Metal trace finalization (
a29ada2) - Finalize bounded Metal traces reliably (
aca36af) - Reduce DeepSeek MXFP4 kernel synchronization (
b055c46) - Tune DeepSeek Metal command scheduling (
802b95c) - Compile DeepSeek decode attention prefix (
ecb3ea7) - Correct canonical DS4 performance guidance (
810e593) - Optimize DeepSeek V4 native decode scheduling (
9aebc13) - Stage MLX metallib for all XCTest runs (
b414de6) - Fix reliable MLX test resource setup (
788ceeb) - Make SwiftPM builds reliable on Xcode 27 (
c34a68b) - Add experimental DeepSeek V4 kernel engine (
4b92b63) - Optimize DeepSeek V4 decode performance (
2db11e2) - Add DeepSeek V4 0731 MLX support (
b39d192) - Preserve MLX throughput during streamed generation (
68f7f58) - Complete AFMKit MLX serving integration (
62c8f11) - Preserve MLX throughput through Foundation Models (
1dc86c0) - Disable MLX thinking by default in Foundation adapter (
5bea511) - Fix AFMKit MLX resource bundle lookup (
1041e29) - Add speculative completion policy (
2f507e9) - Add speculative runtime completion decision (
cf23750) - Add speculative unloaded state policy (
6ab563d) - Add EAGLE3 drafter download state policy (
38c5d26) - Add MLX generation completion policy (
2ecde7b) - Add MLX generation loop timing policy (
5c341de) - Add MLX chat history policy to AFMKit (
604214a) - Add MLX image input policy to AFMKit (
0ee3259) - Move MLX orphan projection into AFMKit (
b8437d1) - Move MLX TTS package patterns into AFMKit (
ddca7ee) - Refresh AFMKitCore API baseline (
4be517f) - Add MLX local directory lookup policy (
b7f34bc) - Add MLX imported fallback access policy (
5151aa1) - Add MLX downloaded deletion policy (
2ddca81) - Plan remote MLX model load targets in AFMKit (
23fe89f) - Track MLX loading phase in AFMKit state (
38afd03) - Add AFMKit MLX load cancellation state (
a5a20e7) - Move MLX load failure messaging into AFMKit (
a2f2ec4) - Move MLX runtime progress policy into AFMKit (
78a04ac) - Move MLX runtime load state policy into AFMKit (
34e3f50) - Move Foundation structured completion into AFMKit (
97034e1) - Route AFM CLI presentation through model descriptors (
036d816) - Add AFM parity runtime controls (
1107506) - Add AFM parity report gate (
1c3e982) - Add AFMKitCore dependency graph gate (
eca8eef) - Share MLX persisted selection policy (
9c4522d) - Share MLX model presentation policy (
4f1eb03) - Share MLX quick picker option policy (
fb9caa8) - Share MLX quick picker ID policy (
d3dca4e) - Share MLX quick picker selection policy (
8a01a6e) - Share MLX quick selection identity policy (
bfbdf50) - Share MLX local availability policy (
7c0939a) - Share MLX repository projection policy (
8b19cee) - Share MLX runtime reset policy (
2a5277c) - Share MLX downloaded registry store (
e6989cf) - Share MLX legacy load policy (
c3cfa5d) - Share MLX legacy startup selection policy (
01076a5) - Share MLX load selection policy (
323932d) - Share MLX clearable package policy (
56cb1de) - Share MLX imported model selection policy (
3b1483e) - Share MLX loaded mode switch policy (
7cd903c) - Share MLX quick delete policy (
e1bc612) - Share MLX quick reload policy (
2f15f3b) - Share MLX tool model policy (
2df1ba2) - Share MLX speculative runtime setup policy (
7d8cf3f) - Share MLX settings selection policy (
34644c5) - Share MLX startup model selection policy (
42a57ce) - Share MLX current model reload policy (
1c85f21) - Share MLX path resolution policy (
e512a49) - Share MLX helper model path policy (
0c44d11) - Resolve MLX model presentations through AFMKit (
648823b) - Share MLX model presentation projection (
6a223d6) - Share MLX Foundation model planning (
2014075) - Share MLX runtime coordination policy (
7030ca5) - Share MLX runtime memory policy (
37b0935) - Add shared MLX generic runtime defaults (
ed03ccf) - Move MLX runtime loading into AFMKit (
a485410) - Add shared MLX runtime adapter (
e62b2f7) - Add shared MLX runtime events (
27c7a0a) - Add shared generation loop policy (
b7bde44) - Add shared MLX generation planner (
b066714) - Add shared MLX generation parameters (
bc7dc6d) - Add shared reasoning stream reducer (
b1b3a6a) - Cover MLX Foundation tool definitions (
4e039ab) - Move MLX tool parser disable policy into AFMKit (
bd1ecb4) - Move MLX grammar downgrade policy into AFMKit (
7ca3d63) - Cover Foundation MLX schema response format (
8889b81) - Guard MLX GPU setup without Metal devices (
c675639) - Share MLX model option resolution (
d08de1f) - Add selectable AFM parity cases (
e287ec2) - Persist AFM parity artifacts in reports (
0692381) - Support multi-model AFM parity runs (
bbd4136) - Expand AFM parity check fixtures (
dc7d019) - Share OpenAI response format policy (
aba9078) - Add MLX metadata name fallback (
da29853) - Add MLX local metadata inspector (
49db2b9) - Add MLX speculative compatibility helper (
535300b) - Add MLX directory architecture helper (
4bd2224) - Add shared MLX architecture preflight (
acee931) - Reuse shared reasoning extractor in proxy (
74fd3f4) - Reuse shared reasoning extractor in chat controller (
ba9672d) - Share reasoning content extraction (
a0664be) - Add shared reasoning output parser (
af12e1d) - Add MLX speculative decoding policy (
4d011be) - Add MLX model architecture policy (
593c2f3) - Add MLX vision factory classification (
490cbb4) - Add MLX generation config presets (
52d30ad) - Add MLX vision model detection policy (
f1c53ae) - Add MLX persisted model cleanup policy (
ae22703) - Add MLX specialty model classification (
d8b74b7) - Add MLX repository identifier validation (
c65307d) - Add MLX model identifier candidate helper (
0b1bcd1) - Add Foundation active generation coordinator (
f5a2edb) - Add PCC quota status descriptions to AFMKit (
fc323b5) - Add Foundation native availability reason descriptions (
7157424) - Add Foundation native provider capability snapshots (
ded6cd6) - Add Foundation tool availability policy (
a82a365) - Share Foundation tool pending status policy (
ab98d0c) - Fix Foundation stream runner isolation (
968d317) - Add Foundation string stream runner (
92bf7cf) - Add Foundation generation options policy (
49f1e3c) - Add Foundation structured response validation (
566dd2d) - Add Foundation generated content reader (
7cf5c92) - Add Foundation single-response telemetry (
59584c1) - Fix Foundation transcript planner isolation (
2d8deb9) - Add Foundation transcript window planner (
03b61a8) - Add Foundation prompt builder (
207c84c) - Finalize Foundation stream telemetry in processor (
db92942) - Add Foundation string stream processor (
186ff64) - Map Foundation session usage telemetry (
af582db) - Extract Foundation generation telemetry (
ae9d96d) - Relax snapshot accumulator progress state isolation (
67fdd37) - Extract Foundation snapshot accumulator (
7254b5d) - Extract Foundation transcript snapshot parser (
1b1fc39) - Extract Foundation Models session coordinator (
ed22d24) - Extract MLX Foundation event channel adapter (
95fa37c) - Extract MLX Foundation request adapter (
ef6d9fd) - Align AFMKit reasoning parity (
96ea1d2) - Support tool fixtures in AFMKit parity gate (
1d9472e) - Expand AFMKit HTTP parity contract (
569188f) - Add AFMKit HTTP parity gate (
b219643) - Expose AFMKit curated MLX configurations (
c09e044) - Expose AFMKit MLX discovery package metadata (
c6e330f) - Add shared AFMKit MLX model catalog (
ac5a3bf) - Expose MLX model package validation helpers (
ea450d3) - Resolve MLX flat cache models by repo ID (
5ee00a9) - Resolve newest complete MLX snapshots (
847dcfb) - Add AFMKit MLX model download lifecycle (
5dae71e) - Add AFMKit MLX model deletion lifecycle (
0a2dc6f) - Add AFMKit MLX model load references (
fbd2660) - Promote MLX chat serving contract to AFMKit (
b17d0ea) - Move MLX compatibility helpers into AFMKit (
07e13a3) - Move MLX chat generation contract into AFMKit (
286153b) - Move MLX serving configuration into AFMKit (
ffe9cb7) - Move MLX batch control behind AFMKit (
345d0a8) - Move MLX generation results into AFMKit (
d872258) - Move MLX API profiling behind AFMKit (
5740a2b) - Move MLX tool call cleanup behind AFMKit (
bcfeca3) - Move grammar downgrade policy behind AFMKit (
3739666) - Introduce AFMKit MLX runtime lifecycle (
ee20adb) - Move MLX model discovery into AFMKit (
d5f20ce) - Route batch and tokenization through AFMKit (
b92ac88) - Route HTTP chat through AFMKit MLX adapter (
70d45e7) - Route CLI prompts through AFMKit (
9ec9771) - Enforce AFMKit required tool calls (
02c2be7) - Complete AFMKit MLX executor translation (
eb9c87f) - Close AFMKit core contract and graph gates (
caeac80) - Expose shared AFMKit MLX model store (
9a42d5e) - Route AFMEngine MLX through the provider contract (
8091ac2) - Add the shared AFMKit MLX provider (
156dd34) - Add macOS 27 MLX language model adapter (
4c13d03) - Split AFMKit optional Apple products (
1f2947e) - Extract the AFMKit MLX runtime (
65ff26c) - Extract OpenAI compatibility DTOs (
bc5f497) - Split dependency-free AFMKitCore contracts (
ca7488e) - Define portable AFMKit provider contracts (
af22a88) - Clean AFMKit integration baseline (
3623b56) - Load complete MLX snapshots offline (
c030cec) - Resolve AFMKit resources in app bundles (
b82f083) - Share XGrammar with host applications (
363fcb9) - Namespace AFMKit grammar target (
2d766e9) - Add Foundation Models MLX adapter (
3365a9a) - fix(afmlib): align PR with maclocal-api 0.9.14 APIs (
dc8f24d) - test(agentblaster): add AgentBlaster suite definitions (
5c98339) - build(afmlib): make test target compile + de-ArgumentParser AFMServer (
435c1af) - docs(afmlib): fork-regen script + URL-consumption guide (
2512c29) - build(afmlib): depend on mlx-swift-lm via fork URL (no submodules for consumers) (
575c3ec) - build(afmlib): vendor xgrammar source in-repo (de-submodule for URL consumers) (
52f8249) - test(afmlib): differential parity harness — AFMKit-direct == afm HTTP server (
4dfa5dc) - feat(afmlib): conform FoundationModelService to AFMLanguageModel + vesta integration doc (
7950235) - feat(afmlib): AFMEngine 100% feature parity — logprobs, batch, aux services (
ae9b2e9) - refactor(afmlib): drop ArgumentParser from AFMKit (MetalLibraryError replaces ValidationError) (
a22032b) - refactor(afmlib): 3-way split — Vapor-free AFMKit core + AFMServer + AFMCLI (
f5d6a94) - fix(afmlib): public-ify embeddings resolver for the AFMKit module boundary (
93c32ea) - fix(afmlib): AFMEngine must init the MLX metallib (runtime fix, proven by running the example) (
24a5738) - chore(afmlib): Stage 6 — build scripts, tests, docs for AFMKit/AFMCLI split (
00af7a0) - fix(afmlib): nonisolated streamRespond + example import proof builds (
e121340) - feat(afmlib): Stage 4+5 — AFMEngine facade + AFMLanguageModel + WWDC26 map (
5dfd9bf) - feat(afmlib): Stage A — AFMKit is now an importable library (2-way split builds) (
3f088ae) - wip(afmlib): split into AFMKit library + AFMCLI executable (structural move) (
ecdb8a3) - Document release test artifact publishing (
1c80712) - Move previous version install instructions (
8b065e6)
Install / Upgrade via Homebrew
Fresh install:
brew tap scouzi1966/afm
brew install scouzi1966/afm/afm
Upgrade:
brew upgrade afm
Install via PyPI
pip install macafm==0.9.15