<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>younesai</title><description>I run AI models and agents on my own machines and publish every number: Apple Silicon benchmarks, real Hermes agent runs, and the setups behind them.</description><link>https://younesai.com/</link><language>en</language><item><title>DSpine on an M5 Ultra: Qwen3.8-27B from 43 to 134 tok/s</title><link>https://younesai.com/blog/dspine-m5-ultra/</link><guid isPermaLink="true">https://younesai.com/blog/dspine-m5-ultra/</guid><description>I benchmarked DSpine speculative decoding on a Mac Studio M5 Ultra. Qwen3.8-27B goes from 43 to 134 tok/s on code with a 1.7 GB draft. Full idle numbers.</description><pubDate>Tue, 10 Nov 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Qwen3.8-27B decodes at 43 tok/s on my Mac Studio M5 Ultra. With a 1.7 GB DSpine
draft model attached, it decodes C++ at 133.7 tok/s. 3.1x, same machine, same
quantization. At temperature 0 the output is identical token for token: the
draft only changes the speed, not the text.&lt;/p&gt;
&lt;h2 id=&quot;what-dspine-is&quot;&gt;What DSpine is&lt;/h2&gt;
&lt;div class=&quot;chain-wrap&quot; data-astro-cid-zpwvybqs&gt;&lt;ol class=&quot;chain&quot; aria-label=&quot;One speculative decode step&quot; style=&quot;--n:3&quot; data-astro-cid-zpwvybqs&gt;&lt;li class=&quot;step&quot; style=&quot;--i:0&quot; data-astro-cid-zpwvybqs&gt;&lt;span class=&quot;app-icon&quot; style=&quot;--s:44px;--ic:var(--text)&quot; aria-hidden=&quot;true&quot; data-astro-cid-5k5hwzfm&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; aria-hidden=&quot;true&quot; class=&quot;glyph&quot; data-astro-cid-5k5hwzfm&gt;&lt;path d=&quot;M12 3l9 5-9 5-9-5zM3 13l9 5 9-5&quot; data-astro-cid-5k5hwzfm&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;span class=&quot;txt&quot; data-astro-cid-zpwvybqs&gt;&lt;b data-astro-cid-zpwvybqs&gt;Draft proposes&lt;/b&gt;&lt;small data-astro-cid-zpwvybqs&gt;5-layer drafter reads hidden states from 5 target layers, drafts 16 tokens in parallel&lt;/small&gt;&lt;/span&gt;&lt;span class=&quot;link&quot; aria-hidden=&quot;true&quot; data-astro-cid-zpwvybqs&gt;&lt;span class=&quot;dot&quot; data-astro-cid-zpwvybqs&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class=&quot;step&quot; style=&quot;--i:1&quot; data-astro-cid-zpwvybqs&gt;&lt;span class=&quot;app-icon&quot; style=&quot;--s:44px;--ic:var(--text)&quot; aria-hidden=&quot;true&quot; data-astro-cid-5k5hwzfm&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; aria-hidden=&quot;true&quot; class=&quot;glyph&quot; data-astro-cid-5k5hwzfm&gt;&lt;path d=&quot;M7 7h10v10H7zM10 3v4M14 3v4M10 17v4M14 17v4M3 10h4M3 14h4M17 10h4M17 14h4&quot; data-astro-cid-5k5hwzfm&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;span class=&quot;txt&quot; data-astro-cid-zpwvybqs&gt;&lt;b data-astro-cid-zpwvybqs&gt;Target verifies&lt;/b&gt;&lt;small data-astro-cid-zpwvybqs&gt;the 27B checks the whole block in one pass&lt;/small&gt;&lt;/span&gt;&lt;span class=&quot;link&quot; aria-hidden=&quot;true&quot; data-astro-cid-zpwvybqs&gt;&lt;span class=&quot;dot&quot; data-astro-cid-zpwvybqs&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class=&quot;step&quot; style=&quot;--i:2&quot; data-astro-cid-zpwvybqs&gt;&lt;span class=&quot;app-icon&quot; style=&quot;--s:44px;--ic:var(--text)&quot; aria-hidden=&quot;true&quot; data-astro-cid-5k5hwzfm&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; aria-hidden=&quot;true&quot; class=&quot;glyph&quot; data-astro-cid-5k5hwzfm&gt;&lt;path d=&quot;M5 12l5 5 9-10&quot; data-astro-cid-5k5hwzfm&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;span class=&quot;txt&quot; data-astro-cid-zpwvybqs&gt;&lt;b data-astro-cid-zpwvybqs&gt;Accepted tokens are free&lt;/b&gt;&lt;small data-astro-cid-zpwvybqs&gt;7.4 tokens per verify step on code&lt;/small&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;DSpine is the successor to DFlash: a five-layer drafter that drafts a block of
16 tokens in parallel, with a code bridge and a transition table to keep the
block causally consistent. The target verifies the block in a single pass and
keeps the longest accepted prefix. Tencent released the draft weights;
&lt;a href=&quot;https://huggingface.co/aj9o9&quot;&gt;Ajay9o9&lt;/a&gt; ported llama.cpp and quantized the
draft. Upstream llama.cpp does not support DSpine yet, so you need
&lt;a href=&quot;https://github.com/Ajay9o9/llama.cpp/tree/dspine&quot;&gt;his dspine branch&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&quot;the-numbers&quot;&gt;The numbers&lt;/h2&gt;
&lt;p&gt;Idle machine, no other GPU work, median of 3 runs per case, 768 tokens
generated, thinking mode off, exactly the protocol from the model card.&lt;/p&gt;
&lt;figure class=&quot;bars&quot; role=&quot;group&quot; aria-label=&quot;Decode speed by workload: C++ generation 133.7 tok/s, Code (Python) 127.7 tok/s, Math 118.7 tok/s, Long prompt (13k) 99.6 tok/s, Temp 1 sampling 99 tok/s, Prose 52.5 tok/s, Baseline (no draft) 43.4 tok/s&quot; data-astro-cid-4ddkebpq&gt;&lt;figcaption data-astro-cid-4ddkebpq&gt;&lt;span data-astro-cid-4ddkebpq&gt;Decode speed by workload&lt;span class=&quot;unit&quot; data-astro-cid-4ddkebpq&gt;, tok/s&lt;/span&gt;&lt;/span&gt;&lt;/figcaption&gt;&lt;div class=&quot;grid&quot; aria-hidden=&quot;true&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;label pick&quot; data-astro-cid-4ddkebpq&gt;C++ generation&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar pick&quot; style=&quot;--w:100%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value pick&quot; data-astro-cid-4ddkebpq&gt;133.7&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 3.1x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Code (Python)&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:95.51234106207929%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;127.7&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 2.9x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Math&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:88.78085265519822%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;118.7&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 2.7x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Long prompt (13k)&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:74.49513836948393%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;99.6&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 2.3x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Temp 1 sampling&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:74.04637247569185%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;99&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 2.3x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Prose&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:39.26701570680628%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;52.5&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · 1.2x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Baseline (no draft)&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:32.460732984293195%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;43.4&lt;span class=&quot;note&quot; data-astro-cid-4ddkebpq&gt; · every case, ±0.1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;div class=&quot;table-wrap&quot; role=&quot;region&quot; tabindex=&quot;0&quot; aria-label=&quot;Data table&quot;&gt;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Workload&lt;/th&gt;&lt;th&gt;Baseline&lt;/th&gt;&lt;th&gt;DSpine&lt;/th&gt;&lt;th&gt;Speedup&lt;/th&gt;&lt;th&gt;Tokens per verify&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;C++ generation&lt;/td&gt;&lt;td&gt;43.5&lt;/td&gt;&lt;td&gt;133.7&lt;/td&gt;&lt;td&gt;3.1x&lt;/td&gt;&lt;td&gt;7.4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Code (Python)&lt;/td&gt;&lt;td&gt;43.4&lt;/td&gt;&lt;td&gt;127.7&lt;/td&gt;&lt;td&gt;2.9x&lt;/td&gt;&lt;td&gt;7.4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Math&lt;/td&gt;&lt;td&gt;43.4&lt;/td&gt;&lt;td&gt;118.7&lt;/td&gt;&lt;td&gt;2.7x&lt;/td&gt;&lt;td&gt;6.7&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Long prompt (12,989 tok in)&lt;/td&gt;&lt;td&gt;43.4&lt;/td&gt;&lt;td&gt;99.6&lt;/td&gt;&lt;td&gt;2.3x&lt;/td&gt;&lt;td&gt;5.2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Temp 1 (Python prompt)&lt;/td&gt;&lt;td&gt;43.4&lt;/td&gt;&lt;td&gt;99.0&lt;/td&gt;&lt;td&gt;2.3x&lt;/td&gt;&lt;td&gt;5.6&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Prose&lt;/td&gt;&lt;td&gt;43.6&lt;/td&gt;&lt;td&gt;52.5&lt;/td&gt;&lt;td&gt;1.2x&lt;/td&gt;&lt;td&gt;2.4&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;Structured content drafts well: code, math and C++ all accept around seven
tokens per verify step. Prose is the worst case at 2.4, and it is also where
the draft overhead eats most of the gain (1.2x). No run ever went below
baseline.&lt;/p&gt;
&lt;h2 id=&quot;long-prompts-and-temperature&quot;&gt;Long prompts and temperature&lt;/h2&gt;
&lt;p&gt;A 12,989-token prompt still runs at 99.6 tok/s (2.3x). Acceptance drops to 5.2
tokens per step, the draft has less to latch onto once the context is dense.
At temperature 1 acceptance drops to 5.6 and speed to 99.0 tok/s. The
degradation is graceful: the draft never made a run slower than baseline.&lt;/p&gt;
&lt;h2 id=&quot;memory&quot;&gt;Memory&lt;/h2&gt;
&lt;p&gt;Peak RSS: 19.8 GB without the draft, 23.3 GB with it. The draft costs about
1.7 GB in RAM. On 96 GB this is noise. On a 24 GB card it is a real trade-off:
the model card reports ~64k usable context with DSpine against ~176k without
speculation, because Qwen3.8 keeps a recurrent-state copy per drafted token.&lt;/p&gt;
&lt;h2 id=&quot;m5-ultra-vs-the-rtx-3090&quot;&gt;M5 Ultra vs the RTX 3090&lt;/h2&gt;
&lt;p&gt;The same draft on a 24 GB RTX 3090, from
&lt;a href=&quot;https://huggingface.co/aj9o9/Qwen3.8-27B-DSpine-b16-GGUF&quot;&gt;the model card&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&quot;table-wrap&quot; role=&quot;region&quot; tabindex=&quot;0&quot; aria-label=&quot;Data table&quot;&gt;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;RTX 3090&lt;/th&gt;&lt;th&gt;M5 Ultra&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;No speculation&lt;/td&gt;&lt;td&gt;~28&lt;/td&gt;&lt;td&gt;43.4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Code&lt;/td&gt;&lt;td&gt;128.7&lt;/td&gt;&lt;td&gt;127.7&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Math&lt;/td&gt;&lt;td&gt;122.8&lt;/td&gt;&lt;td&gt;118.7&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;Two things fall out of this table. The 3090 and the M5 land within noise on
speculative decode: the verify pass is compute-bound and both cards spend it
at the same rate. The M5 wins on plain decode (43 vs 28 tok/s) thanks to
memory bandwidth, which is why my speedup ratio looks smaller (3.1x vs the
card’s 4.5x). The starting point is already faster. What transfers across
hardware is the acceptance rate: 7.4 vs 7.6 tokens per verify on code, 6.7 vs
7.3 on math, 2.4 vs 2.5 on prose.&lt;/p&gt;
&lt;h2 id=&quot;what-i-didnt-test&quot;&gt;What I didn’t test&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;DFlash2 on Metal, so no drafter comparison on this hardware&lt;/li&gt;
&lt;li&gt;Context beyond 13k input tokens&lt;/li&gt;
&lt;li&gt;Multi-slot serving or batched requests&lt;/li&gt;
&lt;li&gt;Quality at temperature &amp;gt; 0 (greedy output is identical by construction, so I
only ran evals at temp 0)&lt;/li&gt;
&lt;li&gt;The 180B model I run daily. No DSpine draft exists for it yet&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;reproduce&quot;&gt;Reproduce&lt;/h2&gt;
&lt;pre class=&quot;astro-code github-dark&quot; style=&quot;background-color:#24292e;color:#e1e4e8;overflow-x:auto&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#B392F0&quot;&gt;git&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; clone&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -b&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; dspine&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; https://github.com/Ajay9o9/llama.cpp.git&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt;cd&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; llama.cpp&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#B392F0&quot;&gt;cmake&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -B&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; build&lt;/span&gt;&lt;span style=&quot;color:#E1E4E8&quot;&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span style=&quot;color:#B392F0&quot;&gt;cmake&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; --build&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; build&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; --config&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; Release&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -j&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#B392F0&quot;&gt;./build/bin/llama-server&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt;  -m&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; Qwen3.8-27B-Q4_K_M.gguf&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt;  -md&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; Qwen3.8-27B-DSpine-b16-Q4_K_M.gguf&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt;  --spec-type&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; draft-dflash&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; --spec-draft-n-max&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; 15&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt;  -ngl&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; 999&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; --spec-draft-ngl&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; 999&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -fa&lt;/span&gt;&lt;span style=&quot;color:#9ECBFF&quot;&gt; on&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; --jinja&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -c&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; 8192&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; -np&lt;/span&gt;&lt;span style=&quot;color:#79B8FF&quot;&gt; 1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Weights: &lt;a href=&quot;https://huggingface.co/aj9o9/Qwen3.8-27B-DSpine-b16-GGUF&quot;&gt;aj9o9/Qwen3.8-27B-DSpine-b16-GGUF&lt;/a&gt;
(draft, Apache-2.0) + any Qwen3.8-27B Q4_K_M target. Raw runs:
&lt;a href=&quot;https://younesai.com/data/dspine-m5-ultra.csv&quot;&gt;dspine-m5-ultra.csv&lt;/a&gt;. Paper:
&lt;a href=&quot;https://arxiv.org/abs/2609.36173&quot;&gt;arxiv.org/abs/2609.36173&lt;/a&gt;.&lt;/p&gt;</content:encoded><category>Benchmarks</category></item><item><title>Claude Fable 5.2: the price cut is the story</title><link>https://younesai.com/blog/fable-5-2-breakdown/</link><guid isPermaLink="true">https://younesai.com/blog/fable-5-2-breakdown/</guid><description>Fable 5.2 and Mythos 5.2 shipped cheaper and faster: $8/$40 per million tokens, output up to 30% faster. Prices, benchmarks, and what a run actually costs.</description><pubDate>Tue, 10 Nov 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Anthropic released Claude Fable 5.2 and Claude Mythos 5.2 today. Both beat Opus
5.5 on almost every capability they evaluated. The benchmark wins are the
headline. The price cut is the part that changes how you use them.&lt;/p&gt;
&lt;h2 id=&quot;prices&quot;&gt;Prices&lt;/h2&gt;
&lt;p&gt;Fable 5.2 and Mythos 5.2 cost the same:&lt;/p&gt;
&lt;div class=&quot;table-wrap&quot; role=&quot;region&quot; tabindex=&quot;0&quot; aria-label=&quot;Data table&quot;&gt;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Model&lt;/th&gt;&lt;th&gt;Input / 1M&lt;/th&gt;&lt;th&gt;Output / 1M&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Fable 5.2 / Mythos 5.2&lt;/td&gt;&lt;td&gt;$8&lt;/td&gt;&lt;td&gt;$40&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Fast mode (same models, 2.5x faster)&lt;/td&gt;&lt;td&gt;$16&lt;/td&gt;&lt;td&gt;$80&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;Both are cheaper than the 5.1 versions. The page does not list the old
numbers, so I will not guess them.&lt;/p&gt;
&lt;p&gt;What the new prices buy, in plain arithmetic. A run that reads 1M tokens and
writes 200k costs $8 + $8 = $16. The same run at Fast mode prices costs $32.&lt;/p&gt;
&lt;h2 id=&quot;benchmarks&quot;&gt;Benchmarks&lt;/h2&gt;
&lt;p&gt;On Anthropic’s own evals, Fable 5.2 beats Opus 5.5:&lt;/p&gt;
&lt;figure class=&quot;bars&quot; role=&quot;group&quot; aria-label=&quot;FableSWE v2: Fable 5.2 69.9 %, Opus 5.5 62.3 %&quot; data-astro-cid-4ddkebpq&gt;&lt;figcaption data-astro-cid-4ddkebpq&gt;&lt;span data-astro-cid-4ddkebpq&gt;FableSWE v2&lt;span class=&quot;unit&quot; data-astro-cid-4ddkebpq&gt;, %&lt;/span&gt;&lt;/span&gt;&lt;/figcaption&gt;&lt;div class=&quot;grid&quot; aria-hidden=&quot;true&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;label pick&quot; data-astro-cid-4ddkebpq&gt;Fable 5.2&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar pick&quot; style=&quot;--w:100%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value pick&quot; data-astro-cid-4ddkebpq&gt;69.9&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Opus 5.5&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:89.12732474964233%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;62.3&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;figure class=&quot;bars&quot; role=&quot;group&quot; aria-label=&quot;FrontierCode 2.0: Fable 5.2 49.1 %, Opus 5.5 45.5 %&quot; data-astro-cid-4ddkebpq&gt;&lt;figcaption data-astro-cid-4ddkebpq&gt;&lt;span data-astro-cid-4ddkebpq&gt;FrontierCode 2.0&lt;span class=&quot;unit&quot; data-astro-cid-4ddkebpq&gt;, %&lt;/span&gt;&lt;/span&gt;&lt;/figcaption&gt;&lt;div class=&quot;grid&quot; aria-hidden=&quot;true&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;label pick&quot; data-astro-cid-4ddkebpq&gt;Fable 5.2&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar pick&quot; style=&quot;--w:100%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value pick&quot; data-astro-cid-4ddkebpq&gt;49.1&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;label&quot; data-astro-cid-4ddkebpq&gt;Opus 5.5&lt;/span&gt;&lt;span class=&quot;track&quot; data-astro-cid-4ddkebpq&gt;&lt;span class=&quot;bar&quot; style=&quot;--w:92.66802443991853%&quot; data-astro-cid-4ddkebpq&gt;&lt;/span&gt;&lt;span class=&quot;value&quot; data-astro-cid-4ddkebpq&gt;45.5&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;The number I care about is not in a table: at High effort, Fable 5.2 lands
roughly on par with Opus 5.5 at Max effort on FrontierCode 2.0, at about half
the cost per task. Max effort is the setting that spends the most tokens per
answer. Getting the same result from a cheaper setting is where the savings
live.&lt;/p&gt;
&lt;p&gt;Output is up to 30% faster than Fable 5.1 and Mythos 5.1. Both models take a
1M token context and write up to 128k tokens per response.&lt;/p&gt;
&lt;h2 id=&quot;the-demos&quot;&gt;The demos&lt;/h2&gt;
&lt;p&gt;Two demos from the announcement, because they show what the model is aimed at:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting from an empty folder, the model coordinated over 1,000 subagents,
working around the clock for eight days, and produced a working prototype
operating system. It boots on a laptop, with its own kernel, drivers for
disk, keyboard and network, persistent file storage, windows, a login
screen, an installer, and built-in Claude functionality.&lt;/li&gt;
&lt;li&gt;It formalized Fermat’s Last Theorem in Lean in under 30 hours, a first.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Both are prototypes, not products. The signal is the shape of the work: long,
parallel, self-reviewing runs with many agents under one coordinator.&lt;/p&gt;
&lt;h2 id=&quot;what-this-means-for-my-daily-driver&quot;&gt;What this means for my daily driver&lt;/h2&gt;
&lt;p&gt;I run Opus 5.5 through Claude Code all day. My tracker shows the last 30 days
at $1,199.57: 11.9M output tokens, 3.18B cache reads. Cache reads are the bulk
of the volume, which is why the output price matters more than it looks: every
token the model writes is the expensive part.&lt;/p&gt;
&lt;p&gt;Anthropic still recommends Opus 5.5 as the daily driver and Fable for the
large tasks. The company’s own guidance, and the one I agree with: most
requests do not need the biggest model, and the effort settings matter more
than the model choice. At High effort Fable 5.2 is about twice as fast as the
default and still beats Opus 5.5 Max on the coding eval above.&lt;/p&gt;
&lt;p&gt;Two patterns from the post are worth copying regardless of which model you
pay for. The advisor pattern: Fable 5.2 plans, a smaller model executes. The
orchestrator pattern: Fable 5.2 coordinates a team of subagents and decides
when the work is done. Both buy speed or quality with architecture instead of
with a bigger single bill.&lt;/p&gt;
&lt;h2 id=&quot;what-i-didnt-test&quot;&gt;What I didn’t test&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;I have not run Fable 5.2 myself yet. Every number here comes from the
&lt;a href=&quot;https://www.anthropic.com/claude-fable-and-mythos-5-2&quot;&gt;official announcement&lt;/a&gt;,
fetched today.&lt;/li&gt;
&lt;li&gt;Cache pricing for the new models is not published, so I cannot recompute my
own bill at the new rates yet.&lt;/li&gt;
&lt;li&gt;No long-context runs, no effort-level sweeps, no independent evals.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Once I can run it through my own stack, I will publish the measured version of
this post, same as I did with the DSpine numbers.&lt;/p&gt;</content:encoded><category>Notes</category></item><item><title>Why I&apos;m publishing my local AI numbers</title><link>https://younesai.com/blog/hello/</link><guid isPermaLink="true">https://younesai.com/blog/hello/</guid><description>This site is my lab notebook for local models and agents, measured on my own hardware, with the raw data attached to every post.</description><pubDate>Mon, 09 Nov 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Most local AI advice is either a vendor chart or a vibe. I wanted numbers I could trust, so I started measuring things myself: which model build to run, how fast it really is on my machines, and what an agent actually does when I hand it a task.&lt;/p&gt;
&lt;p&gt;This site is where those measurements go.&lt;/p&gt;
&lt;h2 id=&quot;what-youll-find-here&quot;&gt;What you’ll find here&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Benchmarks&lt;/strong&gt;: models measured on my own hardware, with the machine, runtime, settings and date written down.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Setup&lt;/strong&gt;: the hardware and software behind it all, written so you can copy it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Workflows&lt;/strong&gt;: real Hermes agent runs, step by step, including the steps that failed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Notes&lt;/strong&gt;: short findings like this one.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;the-rules-i-hold-myself-to&quot;&gt;The rules I hold myself to&lt;/h2&gt;
&lt;p&gt;Every number comes with its raw data. Every benchmark says what I did &lt;em&gt;not&lt;/em&gt; test. If something turns out wrong, I correct the post and say so.&lt;/p&gt;
&lt;p&gt;The first results are already up: nine model builds and four runtimes on my Mac Studio, on the &lt;a href=&quot;https://younesai.com/benchmarks/&quot;&gt;Benchmarks page&lt;/a&gt;.&lt;/p&gt;</content:encoded><category>Notes</category></item></channel></rss>