<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>LM Studio on KnightLi的博客</title>
        <link>https://knightli.com/zh-tw/tags/lm-studio/</link>
        <description>Recent content in LM Studio on KnightLi的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-tw</language>
        <lastBuildDate>Wed, 22 Apr 2026 21:47:34 +0800</lastBuildDate><atom:link href="https://knightli.com/zh-tw/tags/lm-studio/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>16G 顯卡也能跑 35B 模型：LM Studio 下 MoE 模型的顯存壓縮思路</title>
        <link>https://knightli.com/zh-tw/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</link>
        <pubDate>Wed, 22 Apr 2026 21:47:34 +0800</pubDate>
        
        <guid>https://knightli.com/zh-tw/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</guid>
        <description>&lt;p&gt;很多人對 16G 顯存的印象是：本地部署大模型時，大概也就跑到 12B 到 14B，量化之後再往上就會變得很吃力。這個判斷不算離譜，但也不是 16G 顯卡真正的上限。&lt;/p&gt;
&lt;p&gt;如果模型選型和參數設定都合適，16G 顯卡其實不一定只能停留在「小參數量模型」這一檔。圍繞這件事，一套比較有代表性的思路是：在 &lt;code&gt;LM Studio&lt;/code&gt; 裡利用 &lt;code&gt;MoE&lt;/code&gt; 模型和合理的卸載策略，把 35B 級模型跑到比較可用的速度。&lt;/p&gt;
&lt;h2 id=&#34;01-為什麼-16g-顯卡不一定只能跑-12b-到-14b&#34;&gt;01 為什麼 16G 顯卡不一定只能跑 12B 到 14B
&lt;/h2&gt;&lt;p&gt;這裡的核心觀點很直接：顯存大小固然重要，但模型架構同樣重要。&lt;/p&gt;
&lt;p&gt;如果你拿一個標準稠密模型硬塞進 16G 顯卡，確實很快就會遇到瓶頸。因為這類模型在推理時通常要參與全部參數計算，顯存壓力和帶寬壓力都會直接上來。&lt;/p&gt;
&lt;p&gt;但 &lt;code&gt;MoE&lt;/code&gt; 模型不一樣。它的總參數量可以很大，可是在單次推理時，只會啟動其中一部分專家參數。以 35B 級模型為例，雖然總參數規模不小，但單次推理實際參與計算的參數量要小得多，所以它對顯存的實際要求沒有想像中那麼誇張。&lt;/p&gt;
&lt;p&gt;也正因為這樣，16G 顯卡在面對這類模型時，並不是完全沒有操作空間。&lt;/p&gt;
&lt;h2 id=&#34;02-實測重點35b-moe-模型可以跑得很快&#34;&gt;02 實測重點：35B MoE 模型可以跑得很快
&lt;/h2&gt;&lt;p&gt;一個重點案例，是 &lt;code&gt;Qwen 3.5 35B A3B&lt;/code&gt; 一類的 &lt;code&gt;MoE&lt;/code&gt; 模型量化版本。在 16G 顯卡配合 &lt;code&gt;LM Studio&lt;/code&gt; 做參數調整後，&lt;code&gt;Q6&lt;/code&gt; 量化大約能跑到 30 多 &lt;code&gt;tokens/s&lt;/code&gt;，此前 &lt;code&gt;Q4&lt;/code&gt; 量化甚至能測到更高的速度。&lt;/p&gt;
&lt;p&gt;這個結果之所以有參考價值，不只是因為「能跑」，而是因為速度已經進入了「明顯可用」的區間。&lt;/p&gt;
&lt;p&gt;作為對比，同類大參數量但不是 &lt;code&gt;MoE&lt;/code&gt; 的模型，在 16G 顯卡上如果直接硬跑，往往會出現爆顯存、速度明顯掉下來的情況。換句話說，決定結果的不是單純看參數總量，而是看模型在推理時到底怎麼用這些參數。&lt;/p&gt;
&lt;h2 id=&#34;03-在-lm-studio-裡重點不只一個參數&#34;&gt;03 在 LM Studio 裡，重點不只一個參數
&lt;/h2&gt;&lt;p&gt;想在 16G 顯卡上把這類模型跑順，關鍵不是碰運氣，而是調對兩個參數：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;GPU Offload&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;強制把部分專家層載入到 CPU 記憶體的參數&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;第一項比較好理解，&lt;code&gt;GPU Offload&lt;/code&gt; 基本就是能拉多高就拉多高，讓模型盡量優先使用顯卡計算。&lt;/p&gt;
&lt;p&gt;第二項才是這裡的重點。它的作用不是傳統意義上那種「顯存爆了之後再借系統記憶體」，而是主動把一部分專家層放到 CPU 記憶體裡，提前降低顯存占用。因為 &lt;code&gt;MoE&lt;/code&gt; 模型本來就不是每次都要把所有專家都啟動，所以把一部分專家放到記憶體裡，對整體推理速度的影響沒有很多人想像中那麼誇張。&lt;/p&gt;
&lt;p&gt;比較穩妥的做法，是先在一個區間裡嘗試，再根據自己的機器慢慢調：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;可以先把相關參數設到 &lt;code&gt;20&lt;/code&gt; 到 &lt;code&gt;35&lt;/code&gt; 之間&lt;/li&gt;
&lt;li&gt;然後結合顯存占用和記憶體壓力，逐步微調&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本質上，這套方法就是用系統記憶體去換顯存空間。&lt;/p&gt;
&lt;h2 id=&#34;04-128k-上下文下也能跑縮小上下文還能繼續壓顯存&#34;&gt;04 128K 上下文下也能跑，縮小上下文還能繼續壓顯存
&lt;/h2&gt;&lt;p&gt;還有一個比較有意思的點：測試時把上下文長度拉到了 &lt;code&gt;128K&lt;/code&gt;，在這種偏激進的設定下，35B 級 &lt;code&gt;MoE&lt;/code&gt; 模型依然能跑出比較高的速度。&lt;/p&gt;
&lt;p&gt;這說明一個問題，16G 顯卡的瓶頸沒有想像中那麼死板。尤其在 &lt;code&gt;LM Studio&lt;/code&gt; 這種本地推理工具裡，很多時候不是「能不能運行」的二選一，而是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;你願不願意拿更多記憶體換顯存&lt;/li&gt;
&lt;li&gt;你願不願意縮短上下文長度&lt;/li&gt;
&lt;li&gt;你願不願意接受不同量化版本之間的能力差異&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果把上下文從 &lt;code&gt;128K&lt;/code&gt; 進一步縮到 &lt;code&gt;64K&lt;/code&gt; 或 &lt;code&gt;32K&lt;/code&gt;，顯存壓力還可以繼續下降。也就是說，某些 35B 級 &lt;code&gt;MoE&lt;/code&gt; 模型甚至可能在更小顯存的顯卡上勉強跑起來，只是速度和記憶體壓力要重新權衡。&lt;/p&gt;
&lt;h2 id=&#34;05-這種方法的代價對系統記憶體和虛擬記憶體要求更高&#34;&gt;05 這種方法的代價：對系統記憶體和虛擬記憶體要求更高
&lt;/h2&gt;&lt;p&gt;這類方案並不是白送性能。&lt;/p&gt;
&lt;p&gt;需要注意的是，當顯存壓力被進一步壓縮時，系統記憶體占用會明顯上升，虛擬記憶體的壓力也會變大。換句話說，你省下來的不是成本，只是把壓力從顯卡挪到了記憶體和磁碟交換空間上。&lt;/p&gt;
&lt;p&gt;所以如果你也想照著試，最好先確認幾件事：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;你的系統記憶體是否足夠&lt;/li&gt;
&lt;li&gt;虛擬記憶體是否留得夠大&lt;/li&gt;
&lt;li&gt;機器背景是否還有很多佔資源的軟體在運行&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果這些條件跟不上，最後看到的可能不是「35B 也能飛快跑」，而是整台機器都被拖慢。&lt;/p&gt;
&lt;h2 id=&#34;06-量化版本也不是越激進越好&#34;&gt;06 量化版本也不是越激進越好
&lt;/h2&gt;&lt;p&gt;這裡還有一個實際取捨：雖然更低位數的量化通常能進一步節省顯存，但不一定就是最合適的方案。&lt;/p&gt;
&lt;p&gt;實際經驗是，有些模型在 &lt;code&gt;Q4&lt;/code&gt; 下速度確實更高，但對原始能力的影響也更明顯；相對來說，&lt;code&gt;Q6&lt;/code&gt; 在速度和能力保留之間更平衡。所以最終不一定要無腦追求最小體積，而是要看你更在意什麼：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如果你主要追求速度和塞進顯存&lt;/li&gt;
&lt;li&gt;或者你更在意模型原有能力的保留&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這兩種取向，對應的量化選擇可能並不一樣。&lt;/p&gt;
&lt;h2 id=&#34;07-哪些模型思路值得試&#34;&gt;07 哪些模型思路值得試
&lt;/h2&gt;&lt;p&gt;從這個思路來看，最值得嘗試的並不是「盲目追大參數量」，而是優先找適合這種玩法的模型：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;MoE&lt;/code&gt; 架構模型&lt;/li&gt;
&lt;li&gt;在 &lt;code&gt;LM Studio&lt;/code&gt; 裡支援較好、量化版本較全的模型&lt;/li&gt;
&lt;li&gt;對長上下文或指令跟隨有明確優勢的模型&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;除了主講的 35B &lt;code&gt;MoE&lt;/code&gt; 模型，這類方案也適合延伸到一些其他方向，比如偏長上下文記憶、指令遵循表現更好的實驗性模型，以及一些速度表現不錯的輕量量化版本。&lt;/p&gt;
&lt;p&gt;這類推薦背後的邏輯其實很一致：先找架構上適合「記憶體換顯存」的模型，再談參數調優，而不是先看參數量再決定能不能跑。&lt;/p&gt;
&lt;h2 id=&#34;08-簡單總結&#34;&gt;08 簡單總結
&lt;/h2&gt;&lt;p&gt;如果你手裡正好是一張 16G 顯卡，覺得本地大模型最多只能玩 12B 到 14B，這種想法可以稍微更新一下。&lt;/p&gt;
&lt;p&gt;更準確的說法應該是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;16G 顯卡跑大模型並不是完全沒戲&lt;/li&gt;
&lt;li&gt;稠密模型和 &lt;code&gt;MoE&lt;/code&gt; 模型要分開看&lt;/li&gt;
&lt;li&gt;&lt;code&gt;LM Studio&lt;/code&gt; 裡的 &lt;code&gt;GPU Offload&lt;/code&gt; 和專家層轉移到 CPU 記憶體的參數，能明顯改變顯存占用情況&lt;/li&gt;
&lt;li&gt;你實際上是在用更高的記憶體壓力，換更大的模型規模和更高的可用速度&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這套思路不一定適合所有機器，但它至少說明了一點：本地部署大模型時，顯存上限不是唯一限制，模型架構和推理配置同樣重要。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>樹莓派 5 跑 Gemma 4 實測：可行，但回應較慢</title>
        <link>https://knightli.com/zh-tw/2026/04/08/gemma4-on-raspberry-pi5-benchmark/</link>
        <pubDate>Wed, 08 Apr 2026 18:42:00 +0800</pubDate>
        
        <guid>https://knightli.com/zh-tw/2026/04/08/gemma4-on-raspberry-pi5-benchmark/</guid>
        <description>&lt;p&gt;我做了一次偏極限的嘗試：在 &lt;code&gt;Raspberry Pi 5（8GB RAM）&lt;/code&gt; 上運行 Gemma 4。目標不是大模型版本，而是最小體量的 &lt;code&gt;E2B&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;結論先說：能跑、能用，但更適合低互動頻率場景，不適合高即時要求的對話體驗。&lt;/p&gt;
&lt;h2 id=&#34;測試環境&#34;&gt;測試環境
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;設備：Raspberry Pi 5（4 核 CPU，8GB RAM）&lt;/li&gt;
&lt;li&gt;系統：Ubuntu Server（無圖形介面）&lt;/li&gt;
&lt;li&gt;存取方式：SSH&lt;/li&gt;
&lt;li&gt;模型運行方式：LM Studio CLI（僅命令列模式）&lt;/li&gt;
&lt;li&gt;模型：Gemma 4 E2B（約 4.5GB）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;第-1-步安裝並啟動-lm-studio-cli&#34;&gt;第 1 步：安裝並啟動 LM Studio CLI
&lt;/h2&gt;&lt;p&gt;我在樹莓派上安裝了 LM Studio 的 CLI 版本，然後啟動服務並查看可用命令。&lt;/p&gt;
&lt;p&gt;由於是純命令列環境，這種僅命令列部署方式非常適合樹莓派。&lt;/p&gt;
&lt;h2 id=&#34;第-2-步把模型儲存切到-ssd&#34;&gt;第 2 步：把模型儲存切到 SSD
&lt;/h2&gt;&lt;p&gt;為了避免頻繁讀寫 SD 卡，我把模型下載目錄改到了外接 SSD。&lt;/p&gt;
&lt;p&gt;樹莓派 5 接 SSD 的體驗明顯比早期機型更實用，長期運行本地模型建議優先使用 SSD。&lt;/p&gt;
&lt;h2 id=&#34;第-3-步下載並載入-gemma-4-e2b&#34;&gt;第 3 步：下載並載入 Gemma 4 E2B
&lt;/h2&gt;&lt;p&gt;下載完成後，模型可以正常載入進記憶體。&lt;/p&gt;
&lt;p&gt;按官方資訊，Gemma 4 系列具備：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;面向 Agent 場景的工具呼叫能力（function calling）&lt;/li&gt;
&lt;li&gt;多模態能力（含影像/影片；小模型也具備語音相關能力）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;128K&lt;/code&gt; 上下文視窗&lt;/li&gt;
&lt;li&gt;Apache 2.0 授權（可商用）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;從樹莓派的硬體條件看，E2B 這一檔更適合先試起來。&lt;/p&gt;
&lt;h2 id=&#34;第-4-步啟動-api-並開放區域網路存取&#34;&gt;第 4 步：啟動 API 並開放區域網路存取
&lt;/h2&gt;&lt;p&gt;模型載入後，我先在本機連接埠啟動 API（&lt;code&gt;4000&lt;/code&gt;），並透過 HTTP 請求確認模型清單可返回。&lt;/p&gt;
&lt;p&gt;問題在於：預設只監聽本機，區域網路其他設備無法直接存取。&lt;/p&gt;
&lt;p&gt;因為啟動參數裡不能直接設定 host，我用了 &lt;code&gt;socat&lt;/code&gt; 做連接埠轉發，把樹莓派外部連接埠請求橋接到 LM Studio 內部連接埠，實現區域網路存取。&lt;/p&gt;
&lt;p&gt;結果是可行的：我在同一區域網路的 MacBook 上能成功請求並拿到模型清單。&lt;/p&gt;
&lt;h2 id=&#34;第-5-步接入編輯器zed&#34;&gt;第 5 步：接入編輯器（Zed）
&lt;/h2&gt;&lt;p&gt;LM Studio 的本地服務相容 OpenAI API 形態，因此多數支援自訂 &lt;code&gt;base_url&lt;/code&gt; 的工具都可以直接接入。&lt;/p&gt;
&lt;p&gt;我在 Zed 裡新增了一個 LLM provider，指向樹莓派上的 Gemma 4 實例，隨後在編輯器內聊天測試通過。&lt;/p&gt;
&lt;h2 id=&#34;實際可用性判斷&#34;&gt;實際可用性判斷
&lt;/h2&gt;&lt;p&gt;這套方案適合：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;本地自動化腳本&lt;/li&gt;
&lt;li&gt;低併發、低即時性要求的輔助任務&lt;/li&gt;
&lt;li&gt;個人學習與邊緣設備實驗&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;不太適合：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;高頻互動聊天&lt;/li&gt;
&lt;li&gt;對回應延遲敏感的開發協作場景&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;結論&#34;&gt;結論
&lt;/h2&gt;&lt;p&gt;在 &lt;code&gt;Raspberry Pi 5&lt;/code&gt; 上運行 Gemma 4（E2B）是可行的，而且實際效果比預期更好。&lt;/p&gt;
&lt;p&gt;如果你的目標是「能離線跑、能接工具、能完成輕中量任務」，這條路線值得嘗試；如果目標是流暢即時互動，仍建議上更強硬體。&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
