<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下]]></title><description><![CDATA[<p dir="auto">建議要讓HERMES幫你裝上<br />
froggeric/Qwen-Fixed-Chat-Templates</p>
<p dir="auto">說明包含修復DSH中KV緩存命中顯示的BUG</p>
<h2>一、froggeric/Qwen-Fixed-Chat-Templates v22.5 更新</h2>
<h3>1.1 修改目標</h3>
<p dir="auto">將 Qwen 3.8 官方 chat template 換成 froggeric 的 v22.5 修復版，解決官方模板的以下已知缺陷：</p>
<ul>
<li>預設 reasoning effort 硬編譯 <code>xhigh</code>，token 預算大量花在 reasoning 上</li>
<li>非 reasoning 快速模式（<code>enable_thinking=false</code>）會直接 crash</li>
<li>歷史 reasoning 提取不完整，會在真實 thought 前多加入空白「思考」區塊</li>
<li>Tool argument 的 JSON 字串化格式會導致解析 crash</li>
<li>客戶端 reasoning effort 名稱別名（high/max/minimal 等）不被識別</li>
</ul>
<h3>1.2 修改檔案明細</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>檔案</th>
<th>位置</th>
<th>修改內容</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>chat_template.jinja</code></td>
<td><code>/mnt/NVME/qwen38-27b-R9700/models/Qwen3.8-27B-MXFP4-mtpfp8/</code></td>
<td>官方模板 → v22.5（<code>template_version = "qwen3.8-froggeric-v22.5"</code>）</td>
</tr>
<tr>
<td><code>tokenizer_config.json</code></td>
<td>同上</td>
<td><code>chat_template</code> 欄位同步更新為 v22.5 模板字串</td>
</tr>
</tbody>
</table>
<p dir="auto">備份檔案（修改前自動產出）：</p>
<ul>
<li><code>chat_template.jinja.bak-official</code></li>
<li><code>tokenizer_config.json.bak-official</code></li>
</ul>
<h3>1.3 v22.5 相比官方模板的主要修復</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>項目</th>
<th>官方 Qwen 3.8 模板</th>
<th>froggeric v22.5</th>
</tr>
</thead>
<tbody>
<tr>
<td>預設 reasoning baseline</td>
<td>硬編譯 <code>xhigh</code></td>
<td>預設 <code>medium</code>（零注入），保留 KV cache 一致性</td>
</tr>
<tr>
<td>非 reasoning 快速模式</td>
<td><code>Qwen3.8-2.4T-A95B</code> 模板遇 <code>enable_thinking=false</code> 直接 crash</td>
<td>完整支援，via kwargs 或 <code>&lt;\|think_off\|&gt;</code></td>
</tr>
<tr>
<td>歷史 reasoning 提取</td>
<td>丟棄 in-content 提取，在真實 thought 前加空白「思考」區塊</td>
<td>跨 OpenAI / Anthropic / in-content 統一提取，不重複 tag</td>
</tr>
<tr>
<td>Tool argument wire format</td>
<td>標準 OpenAI client 的 JSON 字串化 arguments 會 crash</td>
<td>統一 XML 預設，安全渲染 stringified JSON</td>
</tr>
<tr>
<td>客戶端 reasoning alias</td>
<td>拒絕非標準名稱</td>
<td>自動映射：<code>high/max/ultracode/extreme→xhigh</code>，<code>minimal→low</code>，<code>none/off→disabled</code></td>
</tr>
<tr>
<td>內聯 steering tag</td>
<td>不支援</td>
<td><code>&lt;\|think_low/medium/xhigh/ultracode/off\|&gt;</code>，strip 後保留至下個 tag</td>
</tr>
<tr>
<td>前置 system/developer 訊息</td>
<td>多條視為獨立 turn</td>
<td>合併為單一 system turn</td>
</tr>
</tbody>
</table>
<h3>1.4 啟動腳本同步修改</h3>
<p dir="auto"><strong>檔案</strong>：<code>~/vllm-start-8080-v116</code>，第 86 行附近</p>
<pre><code class="language-diff">- "--default-chat-template-kwargs={\"reasoning_effort\":\"xhigh\"}"
+ "--default-chat-template-kwargs={\"reasoning_effort\":\"low\"}"
</code></pre>
<p dir="auto"><strong>原因</strong>：v22.5 預設 <code>medium</code> 即可；<code>xhigh</code> 會繼續強制注入 xhigh reasoning instruction，與 v22.5 的 zero-injection 設計衝突。改為 <code>low</code> 讓 v22.5 的 short thinking 指引正確生效。</p>
<h3>1.5 生效條件</h3>
<p dir="auto">vLLM model 是 read-only mount，啟動時讀入 → 換完 template 後需重啟容器才生效：</p>
<pre><code class="language-bash">./vllm-start-8080-v116 start
</code></pre>
<hr />
<h2>二、vLLM 緩存命中顯示修復</h2>
<h3>2.1 問題描述</h3>
<p dir="auto">DSH 介面讀 <code>usage.prompt_tokens_details.cached_tokens</code> 顯示 prefix cache 命中數，但 v116（vLLM 0.28.0）的 API 回傳：</p>
<pre><code class="language-json">"prompt_tokens_details": null
</code></pre>
<p dir="auto">導致 DSH 一直顯示 0，即使 prefix cache 實際有命中（vLLM log 顯示 hit rate 45.3% → 61.2%，證明 cache 本身運作正常）。</p>
<h3>2.2 根因分析</h3>
<p dir="auto">vLLM 的 <code>enable_prompt_tokens_details</code> 預設值是 <code>False</code>。v116 啟動腳本沒有傳入該旗標，所以 API 端不會把 cached token 數填進 usage 欄位。</p>
<p dir="auto">0.9.3 upstream 的 <code>serve-mxfp4.sh</code> 有兩支旗標，v116 漏掉：</p>
<pre><code>--enable-prompt-tokens-details    # 把 num_cached_tokens 填進 usage.prompt_tokens_details
--enable-force-include-usage      # 強制每次回應都帶 usage 欄位
</code></pre>
<p dir="auto">兩支旗標在 1.0.16 映像（vLLM 0.28.0）中均已支援，預設值皆為 <code>False</code>，需顯式傳入才啟用。</p>
<h3>2.3 修改內容</h3>
<p dir="auto"><strong>檔案</strong>：<code>~/vllm-start-8080-v116</code>，<code>SERVE_ARGS</code> 陣列（base / vision / conc2 三個變體共用，加在變體分支之前）</p>
<pre><code class="language-diff">   --enable-auto-tool-choice
   --tool-call-parser=qwen3_coder
   --reasoning-parser=qwen3
   --generation-config=auto
+  # DSH 讀 usage.prompt_tokens_details.cached_tokens 顯示緩存命中; 0.9.3 upstream
+  # 靠這兩支旗標讓 vLLM 把 cached token 數填進 usage (否則回 null, DSH 一直 0)
+  --enable-prompt-tokens-details
+  --enable-force-include-usage
   "--default-chat-template-kwargs={\"reasoning_effort\":\"low\"}"
</code></pre>
<h3>2.4 驗證方式</h3>
<p dir="auto"><strong>dryrun 驗證</strong>（已執行，兩支旗標均出現在最終 docker 指令）：</p>
<pre><code class="language-bash">./vllm-start-8080-v116 dryrun | tr ' ' '\n' | grep -E "enable-prompt-tokens-details|enable-force-include-usage"
# 預期輸出:
# --enable-prompt-tokens-details
# --enable-force-include-usage
</code></pre>
<h1>模型速度測試報告：Prefill / Decode Throughput</h1>
<h2>模型與環境</h2>
<ul>
<li><strong>模型</strong>：<code>qwen3.8-27b-mxfp4</code></li>
<li><strong>推理引擎</strong>：vLLM</li>
<li><strong>端點</strong>：<code>http://192.168.1.241:8080/v1</code>（OpenAI 相容 API）</li>
<li><strong>並行度</strong>：batch = 1（單序列測量）</li>
<li><strong>max_model_len</strong>：262,144</li>
</ul>
<h2>量測方法</h2>
<ul>
<li>使用 SSE 串流逐 chunk 記時。</li>
<li><strong>Prefill 速度</strong> = <code>prompt_tokens / TTFT</code>（TTFT = 第一個 token chunk 的時間點）。</li>
<li><strong>Decode 速度</strong> = <code>completion_tokens / (total_time − TTFT)</code>。</li>
<li><strong>Prefill 使用隨機文本</strong>，避免 vLLM prefix-cache 命中，量測「冷啟動」速率。</li>
<li>溫度 <code>temperature = 0</code>。</li>
</ul>
<hr />
<h2>Prefill 結果（input tokens/s，冷啟動、無快取）</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th style="text-align:right">目標</th>
<th style="text-align:right">實際 prompt tokens</th>
<th style="text-align:right">TTFT (s)</th>
<th style="text-align:right">Prefill 速度 (tok/s)</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:right">2,048</td>
<td style="text-align:right">3,685</td>
<td style="text-align:right">1.464</td>
<td style="text-align:right"><strong>2,516</strong></td>
</tr>
<tr>
<td style="text-align:right">4,096</td>
<td style="text-align:right">7,294</td>
<td style="text-align:right">3.111</td>
<td style="text-align:right">2,345</td>
</tr>
<tr>
<td style="text-align:right">8,192</td>
<td style="text-align:right">14,504</td>
<td style="text-align:right">6.361</td>
<td style="text-align:right">2,280</td>
</tr>
<tr>
<td style="text-align:right">16,384</td>
<td style="text-align:right">28,907</td>
<td style="text-align:right">13.646</td>
<td style="text-align:right">2,118</td>
</tr>
<tr>
<td style="text-align:right">32,768</td>
<td style="text-align:right">57,805</td>
<td style="text-align:right">31.138</td>
<td style="text-align:right">1,856</td>
</tr>
<tr>
<td style="text-align:right">65,536</td>
<td style="text-align:right">115,663</td>
<td style="text-align:right">78.598</td>
<td style="text-align:right">1,472</td>
</tr>
</tbody>
</table>
<blockquote>
<p dir="auto">備註：因隨機單詞 token 化較密，實際 prompt tokens 比目標大；此處以<strong>實際</strong> token 數計算。</p>
</blockquote>
<p dir="auto"><strong>觀察</strong>：短上下文約 <strong>2.5K tok/s</strong>，隨 context 變長因 attention / KV 二次成本遞減至 <strong>~1.47K tok/s</strong>（115K tokens），符合預期。本次整體比上次快約 5–8%。</p>
<hr />
<h2>Decode 結果（輸出 tokens/s，穩態）</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>任務</th>
<th style="text-align:right">total tokens</th>
<th style="text-align:right">content tokens</th>
<th style="text-align:right">生成時間 (s)</th>
<th style="text-align:right">吞吐 (tok/s)</th>
<th style="text-align:right">中位間隔 (ms/token，間隔 content)</th>
</tr>
</thead>
<tbody>
<tr>
<td>列 1..800</td>
<td style="text-align:right">3,127</td>
<td style="text-align:right">387</td>
<td style="text-align:right">24.033</td>
<td style="text-align:right"><strong>130.1</strong></td>
<td style="text-align:right">61.3</td>
</tr>
<tr>
<td>重複句子 ×200</td>
<td style="text-align:right">4,096（觸頂）</td>
<td style="text-align:right">507</td>
<td style="text-align:right">31.631</td>
<td style="text-align:right">129.5</td>
<td style="text-align:right">61.7</td>
</tr>
</tbody>
</table>
<p dir="auto"><strong>觀察</strong>：穩態 <strong>~130 tok/s（約 7.7 ms/token，全部 token 基準）</strong>。</p>
<hr />
]]></description><link>https://lcz.me/topic/1722</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 20:49:54 GMT</lastBuildDate><atom:link href="https://lcz.me/topic/1722.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 15 Sep 2026 09:03:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 14:29:40 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> <a href="/post/19764">说</a>:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%E5%BC%A0%E5%85%89%E7%92%9E" aria-label="Profile: 张光璞">@<bdi>张光璞</bdi></a></p>
<p dir="auto">看了一下，確實還滿多人嫌棄NVFP4版的。</p>
</blockquote>
<p dir="auto">下午临下班打的补充，晚上只跑了一次就把一下午都幻觉的问题搞定了</p>
<p dir="auto">明天烧到板子里看看效果。  我看最终还是要双卡跑个高精度的 27b 来做主力工作机。   30t的速度有点影响开发效率 。</p>
]]></description><link>https://lcz.me/post/19804</link><guid isPermaLink="true">https://lcz.me/post/19804</guid><dc:creator><![CDATA[张光璞]]></dc:creator><pubDate>Mon, 21 Sep 2026 14:29:40 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 12:10:54 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%E5%BC%A0%E5%85%89%E7%92%9E" aria-label="Profile: 张光璞">@<bdi>张光璞</bdi></a></p>
<p dir="auto">看了一下，確實還滿多人嫌棄NVFP4版的。</p>
]]></description><link>https://lcz.me/post/19764</link><guid isPermaLink="true">https://lcz.me/post/19764</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Mon, 21 Sep 2026 12:10:54 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 09:20:52 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> <a href="/post/19696">说</a>:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%E5%BC%A0%E5%85%89%E7%92%9E" aria-label="Profile: 张光璞">@<bdi>张光璞</bdi></a></p>
<p dir="auto">改成froggeric/Qwen-Fixed-Chat-Templates有救。<br />
思考強度設成MEDIUM或LOW就好。</p>
</blockquote>
<p dir="auto">我有空了试试，今天帮我开发一个雷达的程序 ，已经降智到半弱智阶段了</p>
]]></description><link>https://lcz.me/post/19720</link><guid isPermaLink="true">https://lcz.me/post/19720</guid><dc:creator><![CDATA[张光璞]]></dc:creator><pubDate>Mon, 21 Sep 2026 09:20:52 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 07:16:30 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%E5%BC%A0%E5%85%89%E7%92%9E" aria-label="Profile: 张光璞">@<bdi>张光璞</bdi></a></p>
<p dir="auto">改成froggeric/Qwen-Fixed-Chat-Templates有救。<br />
思考強度設成MEDIUM或LOW就好。</p>
]]></description><link>https://lcz.me/post/19696</link><guid isPermaLink="true">https://lcz.me/post/19696</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Mon, 21 Sep 2026 07:16:30 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 06:01:31 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/tmp-tmp" aria-label="Profile: tmp-tmp">@<bdi>tmp-tmp</bdi></a><br />
這鍋我不背，這鍋錘哥的</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%E5%BC%A0%E5%85%89%E7%92%9E" aria-label="Profile: 张光璞">@<bdi>张光璞</bdi></a><br />
我覺得他太難的任務+XHIGH會瘋狂的鬼打牆，有查他內建Chat-Templates，非原廠，應該有小改，但看來是不太行。<br />
我換froggeric/Qwen-Fixed-Chat-Templates來試試。</p>
<p dir="auto">剛發現這方案又有小更新，目前看來GGZ14的要保留好，其他的就試試。</p>
]]></description><link>https://lcz.me/post/19675</link><guid isPermaLink="true">https://lcz.me/post/19675</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Mon, 21 Sep 2026 06:01:31 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 02:09:08 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> <a href="/post/19500">说</a>:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/magic629" aria-label="Profile: Magic629">@<bdi>Magic629</bdi></a><br />
版本是<br />
<a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main</a><br />
模型：unsloth/Qwen3.8-27B-NVFP4<br />
DHS上 /plan + 執行<br />
整體是29分鐘多</p>
</blockquote>
<p dir="auto"><img src="https://upload.lcz.me/uploads/259ecd27-36b5-4bd7-bea4-b1ffd07dd39f.jpeg" alt="a0abda26-3cc3-4a3a-97fc-61a6de3bc4db-image.jpeg" class="img-markdown  img-fluid" /></p>
<p dir="auto">我发现这个版本会有幻觉。昨天处理一个长任务 ，就一直循环住了。</p>
]]></description><link>https://lcz.me/post/19639</link><guid isPermaLink="true">https://lcz.me/post/19639</guid><dc:creator><![CDATA[张光璞]]></dc:creator><pubDate>Mon, 21 Sep 2026 02:09:08 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Mon, 21 Sep 2026 00:22:31 GMT]]></title><description><![CDATA[<p dir="auto">怪我太菜，折腾一晚上以上方案就一个成功的，但是效果还是不理想。<br />
就这个成了：<a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/blob/main/models/Qwen3.8-MXFP4-DFlash2/README.md" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/blob/main/models/Qwen3.8-MXFP4-DFlash2/README.md</a><br />
感觉跟社区版的没啥区别，最主要稳定性不行。也可能是我操作失误</p>
]]></description><link>https://lcz.me/post/19627</link><guid isPermaLink="true">https://lcz.me/post/19627</guid><dc:creator><![CDATA[Magic629]]></dc:creator><pubDate>Mon, 21 Sep 2026 00:22:31 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 14:46:56 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto">tmp-tmp <a href="/post/19574">说</a>:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> 刚刚看了某东，技嘉16500,讯景14000,盈通13000了。完全风了。<br />
这下，你说的正主要负主责，你要负次责。<br />
<img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/1f601.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--grin" style="height:1.4em;width:auto;vertical-align:middle" title=":grin:" alt="😁" /></p>
</blockquote>
]]></description><link>https://lcz.me/post/19575</link><guid isPermaLink="true">https://lcz.me/post/19575</guid><dc:creator><![CDATA[tmp tmp]]></dc:creator><pubDate>Sun, 20 Sep 2026 14:46:56 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 10:10:35 GMT]]></title><description><![CDATA[<p dir="auto">如果是nvfp4的方案，有視覺的上下文160k應該會有，mxfp4的話可以到200k這個我有在用。</p>
]]></description><link>https://lcz.me/post/19535</link><guid isPermaLink="true">https://lcz.me/post/19535</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Sun, 20 Sep 2026 10:10:35 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 09:31:44 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> 谢谢，我的token输出在40，我看了下，不带视觉看图功能吗？本来想试试的，但是我需要视觉功能啊。<br />
<img src="https://upload.lcz.me/uploads/4a498d89-5d21-479c-81b3-4cc8a113ceb6.jpg" alt="屏幕截图 2026-09-20 173120.jpg" class="img-markdown  img-fluid" /></p>
]]></description><link>https://lcz.me/post/19528</link><guid isPermaLink="true">https://lcz.me/post/19528</guid><dc:creator><![CDATA[Magic629]]></dc:creator><pubDate>Sun, 20 Sep 2026 09:31:44 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 06:57:45 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/magic629" aria-label="Profile: Magic629">@<bdi>Magic629</bdi></a><br />
版本是<br />
<a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main</a><br />
模型：unsloth/Qwen3.8-27B-NVFP4<br />
DHS上 /plan + 執行<br />
整體是29分鐘多</p>
<p dir="auto"><img src="https://upload.lcz.me/uploads/259ecd27-36b5-4bd7-bea4-b1ffd07dd39f.jpeg" alt="a0abda26-3cc3-4a3a-97fc-61a6de3bc4db-image.jpeg" class="img-markdown  img-fluid" /></p>
]]></description><link>https://lcz.me/post/19500</link><guid isPermaLink="true">https://lcz.me/post/19500</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Sun, 20 Sep 2026 06:57:45 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 05:48:49 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> 好的，谢谢。</p>
]]></description><link>https://lcz.me/post/19480</link><guid isPermaLink="true">https://lcz.me/post/19480</guid><dc:creator><![CDATA[Magic629]]></dc:creator><pubDate>Sun, 20 Sep 2026 05:48:49 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 05:28:57 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/magic629" aria-label="Profile: Magic629">@<bdi>Magic629</bdi></a></p>
<p dir="auto">最近二天裝的新版本還沒試<br />
之前的版本大概跑一個工作大概輸入30M的TOKEN，平均的DECODE會落在55~60之間。</p>
<p dir="auto">新版本目前測試是快了20多%。</p>
<p dir="auto">我所謂的舊版=&gt; <a href="https://github.com/GGZ14/vllm-mxfp4" rel="nofollow ugc">https://github.com/GGZ14/vllm-mxfp4</a><br />
新版=&gt; <a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main</a></p>
<p dir="auto">一個是原始發佈，一個是FORK，新舊是我安裝的順序而言。</p>
]]></description><link>https://lcz.me/post/19475</link><guid isPermaLink="true">https://lcz.me/post/19475</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Sun, 20 Sep 2026 05:28:57 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 03:39:30 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> 持续运行任务，半小时后的token输出速度每秒有多少？谢谢。</p>
]]></description><link>https://lcz.me/post/19440</link><guid isPermaLink="true">https://lcz.me/post/19440</guid><dc:creator><![CDATA[Magic629]]></dc:creator><pubDate>Sun, 20 Sep 2026 03:39:30 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 03:39:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> 持续运行任务，半小时后的token输出速度每秒有多少？谢谢。</p>
]]></description><link>https://lcz.me/post/19439</link><guid isPermaLink="true">https://lcz.me/post/19439</guid><dc:creator><![CDATA[Magic629]]></dc:creator><pubDate>Sun, 20 Sep 2026 03:39:00 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sun, 20 Sep 2026 03:15:12 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul-hou" aria-label="Profile: paul-hou">@<bdi>paul-hou</bdi></a> <a href="/post/19250">说</a>:</p>
<p dir="auto">新的FORK方案<br />
<a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main</a></p>
<p dir="auto">昨天晚上有小試了一下，<a href="https://github.com/GGZ14/vllm-mxfp4" rel="nofollow ugc">https://github.com/GGZ14/vllm-mxfp4</a> 版本<br />
簡單的MCU OTA APP，讓DSH分析程式和檢查BUG。<br />
之前版本TOKEN的平均值大概在55-60TOKEN左右，新版提升到88TOKEN。<br />
過程中大多維持在10X TOKEN，最後的分析說明很長一大堆，就降到了88 TOKEN。</p>
<p dir="auto">DSH的新會話按下送出到開始思考的第一行出現，目測大概比前一版快了1秒左右。</p>
</blockquote>
<p dir="auto"><img src="https://upload.lcz.me/uploads/bbbd0053-16a6-4ea8-8c0d-125baf293196.jpeg" alt="58355710-dec7-4f90-b463-6963807d4c5a-image.jpeg" class="img-markdown  img-fluid" /></p>
<p dir="auto">民间最终也是走了梁圣的路线，不断的调优一次次探索和突破硬件极限边界</p>
]]></description><link>https://lcz.me/post/19427</link><guid isPermaLink="true">https://lcz.me/post/19427</guid><dc:creator><![CDATA[张光璞]]></dc:creator><pubDate>Sun, 20 Sep 2026 03:15:12 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Sat, 19 Sep 2026 01:11:34 GMT]]></title><description><![CDATA[<p dir="auto">新的FORK方案<br />
<a href="https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main" rel="nofollow ugc">https://github.com/Eliovp-BV/paiton-vllm-plugin/tree/main</a></p>
<p dir="auto">昨天晚上有小試了一下，<a href="https://github.com/GGZ14/vllm-mxfp4" rel="nofollow ugc">https://github.com/GGZ14/vllm-mxfp4</a> 版本<br />
簡單的MCU OTA APP，讓DSH分析程式和檢查BUG。<br />
之前版本TOKEN的平均值大概在55-60TOKEN左右，新版提升到88TOKEN。<br />
過程中大多維持在10X TOKEN，最後的分析說明很長一大堆，就降到了88 TOKEN。</p>
<p dir="auto">DSH的新會話按下送出到開始思考的第一行出現，目測大概比前一版快了1秒左右。</p>
<p dir="auto"><img src="https://upload.lcz.me/uploads/bbbd0053-16a6-4ea8-8c0d-125baf293196.jpeg" alt="58355710-dec7-4f90-b463-6963807d4c5a-image.jpeg" class="img-markdown  img-fluid" /></p>
]]></description><link>https://lcz.me/post/19250</link><guid isPermaLink="true">https://lcz.me/post/19250</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Sat, 19 Sep 2026 01:11:34 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Fri, 18 Sep 2026 09:28:06 GMT]]></title><description><![CDATA[<p dir="auto"><a href="https://www.reddit.com/r/ROCm/comments/1wix8sq/amd_radeon_1xr9700_153_toks_decode_prefill_3619/?solution=5046190dd2b0af065046190dd2b0af06&amp;js_challenge=1&amp;jsc_token=7afd7253fec22262ff1c52b1703fe9eccbc0da34dda07321e707e977a9f17200&amp;jsc_orig_r=&amp;share_id=swyH6oVedGYDwH6c5bAoX&amp;utm_content=2&amp;utm_medium=android_app&amp;utm_name=androidcss&amp;utm_source=share&amp;utm_term=18" rel="nofollow ugc">https://www.reddit.com/r/ROCm/comments/1wix8sq/amd_radeon_1xr9700_153_toks_decode_prefill_3619/?solution=5046190dd2b0af065046190dd2b0af06&amp;js_challenge=1&amp;jsc_token=7afd7253fec22262ff1c52b1703fe9eccbc0da34dda07321e707e977a9f17200&amp;jsc_orig_r=&amp;share_id=swyH6oVedGYDwH6c5bAoX&amp;utm_content=2&amp;utm_medium=android_app&amp;utm_name=androidcss&amp;utm_source=share&amp;utm_term=18</a></p>
<p dir="auto">正主版本又有更新了，這次主要針對單R9700進行效能升級，DECODE看起來是效能上漲了80%，晚上裝來試試看。</p>
]]></description><link>https://lcz.me/post/19099</link><guid isPermaLink="true">https://lcz.me/post/19099</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Fri, 18 Sep 2026 09:28:06 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Fri, 18 Sep 2026 02:53:48 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/terry" aria-label="Profile: terry">@<bdi>terry</bdi></a><br />
我只有單卡喔，目前論壇中的雙卡數據就是十分接近*2。<br />
以PREFILL的感覺來說，線上DSV4F或LUNA之類的FLASH模型大約快了3倍，雙卡算起來還是比不上但很接近了。<br />
DECODE來說，差不了多少，線上都是時快時慢的，雙卡應該跟飛的一樣。</p>
<p dir="auto">這是今天是EFR32BG22 MCU的工作，設定GPIO，設定BEACON的格式，讀取MCU內部電壓，設定各種狀況的廣播方式和IO動作，省電設定，一個會話9輪做好，上下文262144 壓縮了2次，一次壓縮的時間是55秒，只有IO中斷有問題重新修改了一次就完成任務。<br />
目前用起來確實是Launch80/Qwen3.8-27B-PARO-MXFP4在較長的上下文沒這麼笨，之前用AMD的模型大多要修改個3-5次才能完工。</p>
<p dir="auto">關於緩存命中，vllm的數值是平均值，llama.cpp常常在99%，算起來不該這麼高，猜測是當次載入的命中率。</p>
<p dir="auto"><img src="https://upload.lcz.me/uploads/da14ad69-0dc4-4e52-98bd-6440490de979.jpeg" alt="5fc35063-e895-4545-9e4b-49c8151c56cd-image.jpeg" class="img-markdown  img-fluid" /></p>
]]></description><link>https://lcz.me/post/18990</link><guid isPermaLink="true">https://lcz.me/post/18990</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Fri, 18 Sep 2026 02:53:48 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Thu, 17 Sep 2026 16:29:44 GMT]]></title><description><![CDATA[<p dir="auto">你双卡VLLM跑Agent如何？数字太复杂了，简单说下体感，和在线API对比有明显慢吗？还是长链任务后差不多？</p>
]]></description><link>https://lcz.me/post/18895</link><guid isPermaLink="true">https://lcz.me/post/18895</guid><dc:creator><![CDATA[terry]]></dc:creator><pubDate>Thu, 17 Sep 2026 16:29:44 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Thu, 17 Sep 2026 15:05:05 GMT]]></title><description><![CDATA[<p dir="auto">已安裝magiccodingman/vllm-radiance + amd/Qwen3.8-27B-Quark-AWQ-MXFP4的，<br />
也可以試試正主stilldeadcode/vllm-radiance + Launch80/Qwen3.8-27B-PARO-MXFP4 作者自己優化的模型。<br />
我目前是兩個都用，都還在測試中，單卡的速度上是差不多的。<br />
以下是讓AI分析一下二個組合的特點。</p>
<h1>vllm-radiance 部署方案對比</h1>
<blockquote>
<p dir="auto">對比兩套「推理伺服器 + 量化模型」組合，針對 <strong>AMD Radeon AI PRO R9700 (gfx1201 / RDNA4)</strong>。</p>
<ul>
<li><strong>方案 A</strong>：<code>magiccodingman/vllm-radiance</code> + <code>amd/Qwen3.8-27B-Quark-AWQ-MXFP4</code></li>
<li><strong>方案 B</strong>：<code>stilldeadcode/vllm-radiance</code> + <code>Launch80/Qwen3.8-27B-PARO-MXFP4</code></li>
</ul>
</blockquote>
<hr />
<h2>0. 總覽</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>面向</th>
<th>方案 A（magiccodingman + Quark-AWQ）</th>
<th>方案 B（stilldeadcode + PARO）</th>
</tr>
</thead>
<tbody>
<tr>
<td>伺服器 repo</td>
<td>magiccodingman/vllm-radiance（GitHub fork，延續版）</td>
<td>stilldeadcode/vllm-radiance（Codeberg 原作，上游 base）</td>
</tr>
<tr>
<td>模型量化</td>
<td>Quark AWQ，MXFP4 權重 + 動態 MXFP4 激活</td>
<td>ParoQuant 旋轉 + OCP MXFP4 權重</td>
</tr>
<tr>
<td>推理路徑</td>
<td>原生 Quark MXFP4 <strong>W4A8</strong>（fp8 激活）</td>
<td><strong>W4A8</strong> fp8-WMMA 路徑 + 旋轉前綴</td>
</tr>
<tr>
<td>硬體綁定</td>
<td>R9700 / gfx1201（dual R9700 TP2 為主）</td>
<td>R9700 / gfx1201（2× R9700 TP2）</td>
</tr>
<tr>
<td>部署門檻</td>
<td>中（Docker image，需設定 W4A8 環境變數）</td>
<td>高（需裝 patched vLLM 插件 + 編譯 kernel）</td>
</tr>
<tr>
<td>授權</td>
<td>伺服器：open；模型：All rights reserved</td>
<td>伺服器：open；模型：Apache-2.0</td>
</tr>
<tr>
<td>適合對象</td>
<td>要跑官方 Quark 模型、要完整功能與文檔</td>
<td>要極致 prefill/decode 性能、接受非標準部署</td>
</tr>
</tbody>
</table>
<p dir="auto"><strong>一句話</strong>：方案 A 是「易用的官方模型 + 功能完整的延續版伺服器」；方案 B 是「針對 RDNA4 的極致性能版本 + 上游 base 伺服器」。</p>
<hr />
<h2>1. 伺服器對比：magiccodingman vs stilldeadcode</h2>
<h3>基本情況</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>stilldeadcode（上游）</th>
<th>magiccodingman（fork / 延續）</th>
</tr>
</thead>
<tbody>
<tr>
<td>平台</td>
<td>Codeberg</td>
<td>GitHub</td>
</tr>
<tr>
<td>提交數</td>
<td>17 commits</td>
<td>132 commits</td>
</tr>
<tr>
<td>Stars / Forks</td>
<td>14 / 5</td>
<td>48 / 4</td>
</tr>
<tr>
<td>最近活動</td>
<td>約 3 週前</td>
<td>2 天前（更活躍）</td>
</tr>
<tr>
<td>Docker Hub pulls</td>
<td>10K+</td>
<td>有發布 image</td>
</tr>
<tr>
<td>定位</td>
<td>核心 Radiance runtime + 手寫 gfx1201 kernels</td>
<td>上游 + 大量 ported 優化與 qualification</td>
</tr>
</tbody>
</table>
<h3>版本堆疊（關鍵差別）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>元件</th>
<th>stilldeadcode image</th>
<th>magiccodingman image</th>
</tr>
</thead>
<tbody>
<tr>
<td>vLLM</td>
<td>0.27.1</td>
<td>0.28.0（pinned 到具體 commit）</td>
</tr>
<tr>
<td>PyTorch</td>
<td>2.11.0</td>
<td>2.12 branch（pinned commit）</td>
</tr>
<tr>
<td>Triton</td>
<td>3.6.0</td>
<td>3.7.1（pinned commit）</td>
</tr>
<tr>
<td>AITER</td>
<td>0.1.17</td>
<td>0.1.20</td>
</tr>
<tr>
<td>libr4d</td>
<td>—（早期）</td>
<td>0.5.0（pinned commit）</td>
</tr>
<tr>
<td>ROCm userspace</td>
<td>7.14</td>
<td>7.14</td>
</tr>
</tbody>
</table>
<blockquote>
<p dir="auto"><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ magiccodingman 明確警告：PyTorch / Triton / vLLM <strong>不能單獨升級</strong>——它們是一個 compiler stack，之前版本錯配曾導致 TP hang。</p>
</blockquote>
<h3>stilldeadcode 的優勢</h3>
<ul>
<li>更簡單、維護面小：patch 數量約 30 個（vs magiccodingman 70+）。</li>
<li>最新 commit 加入 <strong>Nrank allreduce</strong>，支援 <strong>TP4 / TP8</strong> 配置（magiccodingman 主要 qualification 是 dual R9700 TP2）。</li>
<li>作為上游 base，是 magiccodingman 的基礎；若 fork 停更，上游仍是最小可用版本。</li>
</ul>
<h3>magiccodingman 的優勢</h3>
<ul>
<li>功能遠超上游：
<ul>
<li><strong>原生 Quark MXFP4 W4A8</strong>（含 fused split-K、subnormal scale-fold kernels）</li>
<li><strong>DFlash2 推測解碼</strong>（W4 draft linears、int2 verify head）</li>
<li><strong>XGrammar</strong> 結構化輸出 + 推測解碼 backport（修 tool-call grammar 與 draft batch 不同步）</li>
<li>Qwen 嵌套 object tool-call 修復</li>
<li><strong>KV cache group size 優化</strong>（+20.7% KV 容量、並發 2.82x → 3.41x）</li>
<li>rank-sharded KV offload、FP8 KV calibration sidecar、TunableOp 調優 lab</li>
<li>完整 BetterBench 資格化數據 + 大量 qualification 報告（含負結果）</li>
</ul>
</li>
<li>文檔與可重現性最好：每個 image 從 pinned commit 构建，附完整 qualification 報告。</li>
<li>性能數據更完整（見下表）。</li>
</ul>
<h3>性能數據（magiccodingman，歷史基線 0.9.3 / libr4d 0.5.0，雙 R9700）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>模式</th>
<th style="text-align:right">加權單流 TPS</th>
<th style="text-align:right">c1</th>
<th style="text-align:right">c2</th>
<th style="text-align:right">c4</th>
<th style="text-align:right">c8</th>
</tr>
</thead>
<tbody>
<tr>
<td>Non-spec</td>
<td style="text-align:right">43.6</td>
<td style="text-align:right">43.2</td>
<td style="text-align:right">83.1</td>
<td style="text-align:right">145.7</td>
<td style="text-align:right">241.3</td>
</tr>
<tr>
<td>Fast MTP K4</td>
<td style="text-align:right">102.3</td>
<td style="text-align:right">97.8</td>
<td style="text-align:right">173.1</td>
<td style="text-align:right">284.5</td>
<td style="text-align:right">372.1</td>
</tr>
<tr>
<td>Fast DFlash K5</td>
<td style="text-align:right">136.2</td>
<td style="text-align:right">123.0</td>
<td style="text-align:right">216.4</td>
<td style="text-align:right">343.0</td>
<td style="text-align:right">435.7</td>
</tr>
<tr>
<td>Fast DFlash K7</td>
<td style="text-align:right"><strong>145.4</strong></td>
<td style="text-align:right">132.4</td>
<td style="text-align:right">234.6</td>
<td style="text-align:right">343.3</td>
<td style="text-align:right">416.9</td>
</tr>
</tbody>
</table>
<blockquote>
<p dir="auto">註：此表為 0.9.3/libr4d 0.5.0 基線的歷史數據，非目前 RX4-dark image 的 K7 上限。</p>
</blockquote>
<h3>風險</h3>
<ul>
<li>magiccodingman 自我標註 <strong>experimental</strong>：
<ul>
<li>主要 qualification 環境 = 2× R9700 TP2、FP8 或 Quark MXFP4 權重、強制 FP8 KV。</li>
<li>其他模型 / 量化 / 卡數 / 硬體未經驗證。</li>
<li>speculative 模式 opt-in（跨模式輸出等價 gate 未通過）。</li>
</ul>
</li>
<li>stilldeadcode image 版本較舊（vLLM 0.27.1），且<strong>沒有 MXFP4 W4A8 原生路徑</strong>。</li>
</ul>
<hr />
<h2>2. 模型對比：Quark-AWQ-MXFP4 vs PARO-MXFP4</h2>
<p dir="auto">兩者都是 <strong>Qwen3.8-27B</strong> 的 MXFP4 量化版，但走的路線完全不同。</p>
<h3>本質</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>amd/Quark-AWQ-MXFP4</th>
<th>Launch80/PARO-MXFP4</th>
</tr>
</thead>
<tbody>
<tr>
<td>權重</td>
<td>MXFP4（OCP microscaling FP4，group 32，E8M0 共享 scale）</td>
<td>OCP MXFP4（e2m1，e8m0 共享 scale，4.25 bit/weight）</td>
</tr>
<tr>
<td>激活</td>
<td>MXFP4，動態（per-block，runtime 計算）</td>
<td>fp8（W4A8，per-token fp8 量化）</td>
</tr>
<tr>
<td>演算法</td>
<td>AWQ（activation-aware weight quantization）</td>
<td>ParoQuant 旋轉（Givens 旋轉 + channel_scales）+ stage-2 微調</td>
</tr>
<tr>
<td>校準</td>
<td>128 樣本 / seq 512 / pileval（Quark 預設）</td>
<td>256 樣本 × 2 epochs（權重 + per-block 指數偏置）</td>
</tr>
<tr>
<td>視覺塔</td>
<td>未量化（bf16），只量化 LM decoder</td>
<td>lm_head 與 embeddings 為 bf16</td>
</tr>
<tr>
<td>量化工具</td>
<td>AMD Quark（官方）</td>
<td>自製 patched vLLM 插件</td>
</tr>
</tbody>
</table>
<p dir="auto"><strong>簡單說</strong>：</p>
<ul>
<li><strong>Quark-AWQ</strong> = 傳統校準式量化，簡單標準，AMD 官方發布。</li>
<li><strong>PARO</strong> = 在 MXFP4 之上加 ParoQuant 旋轉 + 微調，更「講究」，精度更高但綁定特定部署。</li>
</ul>
<h3>精度（GSM8K）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>amd/Quark-AWQ</th>
<th>Launch80/PARO</th>
</tr>
</thead>
<tbody>
<tr>
<td>測試條件</td>
<td>5-shot，thinking（temp 1.0, top_p 0.95）</td>
<td>500 題，greedy，served path</td>
</tr>
<tr>
<td>成績</td>
<td>95.0% / 95.3%（recovery 101.8%）</td>
<td>97.4–97.6%</td>
</tr>
<tr>
<td>非 thinking</td>
<td>89.9%（recovery 99.2%）</td>
<td>—</td>
</tr>
</tbody>
</table>
<blockquote>
<p dir="auto"><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ 測法不同（5-shot vs 500q greedy），<strong>不能直接比</strong>，只能當參考。數字上 PARO 略高。</p>
</blockquote>
<h3>速度（2× R9700，TP2，fp8 KV）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>amd/Quark-AWQ</th>
<th>Launch80/PARO</th>
</tr>
</thead>
<tbody>
<tr>
<td>prefill 2k/8k/16k/32k/64k (t/s)</td>
<td>—（無數據）</td>
<td>4770 / 4827 / 4649 / 4495 / 4273</td>
</tr>
<tr>
<td>綜合 decode (t/s)</td>
<td>186</td>
<td>203</td>
</tr>
<tr>
<td>decode step @ctx 25 (ms)</td>
<td>28.6</td>
<td>24.53</td>
</tr>
<tr>
<td>decode step @8k / 32k (ms)</td>
<td>—</td>
<td>25.89 / 26.80</td>
</tr>
</tbody>
</table>
<p dir="auto">PARO 的 MXFP4 grid 去掉了 int4 GEMM 內迴圈的 per-group FMA，<strong>prefill 提速約 25%</strong>；decode 流量與 int4 g128 相同（都是 4.25 bit/weight）。</p>
<h3>部署 / 硬體（最大差別）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>amd/Quark-AWQ</th>
<th>Launch80/PARO</th>
</tr>
</thead>
<tbody>
<tr>
<td>載入方式</td>
<td>標準 <code>vllm serve --trust-remote-code</code></td>
<td><strong>不能</strong>用 stock vLLM/transformers，需 patched <code>radiance-vllm-mxfp4</code> 插件</td>
</tr>
<tr>
<td>可攜性</td>
<td>跨 AMD ROCm 可攜，官方發布</td>
<td>綁死 RDNA4（gfx1201 / R9700）；換硬體要重寫 rotation prologue 和 GEMM</td>
</tr>
<tr>
<td>維護性</td>
<td>官方 AMD，維護性好</td>
<td>社群自製，門檻高</td>
</tr>
</tbody>
</table>
<h3>授權 / 普及度</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>amd/Quark-AWQ</th>
<th>Launch80/PARO</th>
</tr>
</thead>
<tbody>
<tr>
<td>授權</td>
<td>All rights reserved（限制性）</td>
<td>Apache-2.0（寬鬆）</td>
</tr>
<tr>
<td>上月下載</td>
<td>22,860</td>
<td>287</td>
</tr>
<tr>
<td>發布方</td>
<td>AMD 官方</td>
<td>社群（基於 z-lab ParoQuant + AMD MXFP4 packing 慣例）</td>
</tr>
</tbody>
</table>
<hr />
<h2>3. 兩套組合的整體評估</h2>
<h3>方案 A：magiccodingman/vllm-radiance + amd/Quark-AWQ-MXFP4</h3>
<p dir="auto"><strong>組合邏輯</strong>：官方 Quark 模型 + 功能完整的延續版伺服器。magiccodingman 明確支援 Quark MXFP4 W4A8（README 有完整環境變數範例）。</p>
<p dir="auto"><strong>優點</strong></p>
<ul>
<li>部署最簡單：<code>docker compose up</code> + 設定 W4A8 環境變數即可跑官方 Quark 模型。</li>
<li>伺服器功能最完整：DFlash2、XGrammar、KV 優化、benchmark lab、完整文檔。</li>
<li>模型是 AMD 官方發布，下載量高（22,860），生態好。</li>
<li>跨 AMD ROCm 可攜性較好。</li>
</ul>
<p dir="auto"><strong>缺點</strong></p>
<ul>
<li>模型授權是 All rights reserved（限制性）。</li>
<li>伺服器自我標註 experimental，qualification 綁定 R9700。</li>
<li>速度（尤其 prefill）不如 PARO 組合。</li>
<li>speculative 模式 opt-in，跨模式等價 gate 未通過。</li>
</ul>
<h3>方案 B：stilldeadcode/vllm-radiance + Launch80/PARO-MXFP4</h3>
<p dir="auto"><strong>組合邏輯</strong>：上游 base 伺服器 + 極致性能模型。</p>
<blockquote>
<p dir="auto"><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ 注意：PARO 模型本身需要 <code>radiance-vllm-mxfp4</code> 插件（ggz14 的 repo），而 stilldeadcode 的 image <strong>沒有 MXFP4 W4A8 原生路徑</strong>。因此「stilldeadcode + PARO」這個組合在實務上需要額外整合（把 PARO 的 patched 路徑接進 stilldeadcode base），不是開箱即用。若要開箱即用的 PARO 路徑，magiccodingman 的 image 反而更合適（它 ported 了 ggz14 的 MXFP4 W4A8 工作）。</p>
</blockquote>
<p dir="auto"><strong>優點</strong></p>
<ul>
<li>PARO 模型精度更高（GSM8K 97.4–97.6%）、速度更快（prefill +25%、decode 203 vs 186 t/s）。</li>
<li>授權寬鬆（Apache-2.0）。</li>
<li>stilldeadcode 支援 TP4/TP8（Nrank allreduce）。</li>
<li>上游 base 簡單、維護面小。</li>
</ul>
<p dir="auto"><strong>缺點</strong></p>
<ul>
<li>部署門檻最高：PARO 不能用 stock vLLM，需裝 patched 插件 + 編譯 kernel。</li>
<li>綁死 RDNA4（gfx1201 / R9700）。</li>
<li>模型下載量極低（287），生態小。</li>
<li>組合的開箱即用性差（需手動整合 PARO 路徑）。</li>
</ul>
<hr />
<h2>4. 選擇建議</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>需求</th>
<th>推薦</th>
</tr>
</thead>
<tbody>
<tr>
<td>要「跑得起來、省事、官方模型、完整功能」</td>
<td><strong>方案 A</strong>（magiccodingman + Quark-AWQ）</td>
</tr>
<tr>
<td>雙 R9700 + 要跑 Quark MXFP4 模型 / DFlash2 / speculative</td>
<td><strong>方案 A</strong></td>
</tr>
<tr>
<td>要極致 prefill/decode 性能、接受非標準部署、綁 R9700</td>
<td><strong>方案 B</strong>（PARO 模型）</td>
</tr>
<tr>
<td>要 TP4/TP8 多卡</td>
<td><strong>方案 B</strong> 的 stilldeadcode base（或自行整合）</td>
</tr>
<tr>
<td>一般單卡/雙卡 FP8 部署</td>
<td>兩個都能用，方案 A 的 0.28 base + KV 優化通常更值得</td>
</tr>
</tbody>
</table>
<p dir="auto"><strong>實務提醒</strong>：</p>
<ol>
<li>兩套組合的 qualification 都綁定 <strong>R9700 / gfx1201</strong>；換卡需自行驗證。</li>
<li>PARO 模型的開箱即用路徑其實在 <strong>magiccodingman</strong> image（它 ported 了 ggz14 的 MXFP4 W4A8），而非 stilldeadcode。若要「stilldeadcode base + PARO」需手動整合。</li>
<li>magiccodingman 的 speculative 模式（DFlash2）目前是 opt-in，跨模式輸出等價 gate 未通過，生產環境建議先用 non-spec 或 MTP。</li>
</ol>
<hr />
<h2>附錄：關鍵來源</h2>
<ul>
<li>伺服器：
<ul>
<li>stilldeadcode/vllm-radiance — <a href="https://codeberg.org/StillDeadcode/vllm-radiance" rel="nofollow ugc">https://codeberg.org/StillDeadcode/vllm-radiance</a></li>
<li>magiccodingman/vllm-radiance — <a href="https://github.com/magiccodingman/vllm-radiance" rel="nofollow ugc">https://github.com/magiccodingman/vllm-radiance</a></li>
<li>Docker Hub：stilldeadcode/vllm-radiance、magiccodingman/vllm-radiance</li>
</ul>
</li>
<li>模型：
<ul>
<li>amd/Qwen3.8-27B-Quark-AWQ-MXFP4 — <a href="https://huggingface.co/amd/Qwen3.8-27B-Quark-AWQ-MXFP4" rel="nofollow ugc">https://huggingface.co/amd/Qwen3.8-27B-Quark-AWQ-MXFP4</a></li>
<li>Launch80/Qwen3.8-27B-PARO-MXFP4 — <a href="https://huggingface.co/Launch80/Qwen3.8-27B-PARO-MXFP4" rel="nofollow ugc">https://huggingface.co/Launch80/Qwen3.8-27B-PARO-MXFP4</a></li>
<li>上游 ParoQuant：z-lab/Qwen3.8-27B-PARO、論文 arXiv:2511.10645</li>
</ul>
</li>
</ul>
]]></description><link>https://lcz.me/post/18883</link><guid isPermaLink="true">https://lcz.me/post/18883</guid><dc:creator><![CDATA[paul hou]]></dc:creator><pubDate>Thu, 17 Sep 2026 15:05:05 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Tue, 15 Sep 2026 22:03:28 GMT]]></title><description><![CDATA[<p dir="auto">补两个容易踩的点，免得照改完还是显示 0：</p>
<p dir="auto">1）vLLM 侧这个开关通常写作 --enable-prompt-tokens-details（对应 enable_prompt_tokens_details=True），部分版本还要求同时开了 --enable-prefix-caching 才会把命中数填进 usage。改完先直接打 /v1/chat/completions 看原始 JSON 里 prompt_tokens_details 是否非 null，确认服务端 OK 再查 DSH 前端解析。</p>
<p dir="auto">2）cached_tokens 只反映 vLLM 自己的 prefix cache 命中，不等于 HiCache / 两级缓存的主机池命中。如果你们是 HiCache 场景，别用它判断主机池是否复用——那取决于 write_policy：write_through 写了不重用，write_back 才真复用（重复前缀 15.4s→0.4s 是 write_back 下的数字）。</p>
<p dir="auto">另外模板换成 v22.5 后记得重启容器（model 是 read-only mount），并用同一段 system prompt 连发两次看 cached_tokens 是否稳定；如果 prompt 开头带了秒级时间戳之类的易变内容，命中率会被打回 0。</p>
]]></description><link>https://lcz.me/post/18459</link><guid isPermaLink="true">https://lcz.me/post/18459</guid><dc:creator><![CDATA[Xiaote]]></dc:creator><pubDate>Tue, 15 Sep 2026 22:03:28 GMT</pubDate></item><item><title><![CDATA[Reply to R9700 單/雙卡有抄magiccodingman/vllm-radiance 作業的同學看一下 on Tue, 15 Sep 2026 11:45:09 GMT]]></title><description><![CDATA[<p dir="auto">感恩楼主，补丁已打。DSH玩的飞起。</p>
]]></description><link>https://lcz.me/post/18360</link><guid isPermaLink="true">https://lcz.me/post/18360</guid><dc:creator><![CDATA[张光璞]]></dc:creator><pubDate>Tue, 15 Sep 2026 11:45:09 GMT</pubDate></item></channel></rss>