AI News HubLIVE
站内改写

為什麼以及如何在Zed中執行本地模型

本地模型提供了隱私、成本節約、控制權和始終可用的優勢。儘管不如前沿模型強大,但它們正在不斷改進。本文解釋瞭如何使用LM Studio、Ollama或llama.cpp在Zed中設定本地模型,並提供有效使用技巧。

文章情報

工程師進階

要點

  • 本地模型提供隱私保護、更低成本、可控性和始終可用性。
  • 它們的能力和速度不及前沿模型,但足以應對許多工。
  • Zed支援LM Studio、Ollama和llama.cpp來整合本地模型。

為什麼重要

這條新聞值得關注,因為本地模型提供隱私保護、更低成本、可控性和始終可用性。

技術影響

可能影響模型選型、推理成本、產品能力和評測基準。

在很多工中,我更喜歡使用本地模型。當我需要最好的模型時,我仍然會選擇前沿模型,但很多時候我並不需要那麼強大。我更喜歡在本地執行、將資料保留在我控制的硬體上,並且不會因為提供商更改定價或限制而消失的模型。

開放權重模型也在不斷進步。LM Studio、Ollama和llama.cpp等工具變得越來越易用,在過去10周內,Zed代理中本地模型的使用量增長了3倍。

在Zed,我們構建AI功能不是為了賺錢,我們也不致力於將開發者鎖定在單一使用AI的方式上。我們讓您可以輕鬆使用任何您偏好的提供商,無論是透過ACP的Codex、您自己的API金鑰,還是直接訂閱Zed Pro。

在這篇文章中,我想介紹本地模型的優勢、它們不足之處,以及如何在Zed中進行設定。

為什麼選擇本地模型?

本地模型相比雲端模型有許多優勢:

  • **完全隱私**:雖然大多數雲提供商提供零資料保留政策,但本地模型提供了絕對的確定性。資料永遠不會離開您的網路,甚至您可以選擇不讓它離開機器。
  • **成本更低**:雖然前期有硬體成本,但您的開發筆記型電腦可能足以執行一個不錯的模型。您不必擔心意外的價格變動。價格一致、透明且低廉。
  • **更多控制**:您可以設定自己的系統提示、啟用或停用功能(例如影像支援)、更改上下文視窗等。您還可以發現針對您的用例微調的流行模型。由於您擁有完整的流程,您可以確保不會在相同名稱下被秘密提供低成本的模型。
  • **始終可用**:對於像我這樣的開發者,擔心過於依賴像SaaS平臺一樣運作的提供商,一旦定價或設定變更,它們就可能變得不可行。而本地模型始終可用。

本地模型的缺點

如果本地模型完美無缺,雲提供商就不會存在(至少不會像現在這樣大規模)。

執行前沿模型所需的硬體速度對消費者來說遙不可及。您能在本地執行的模型能力不如頂級AI實驗室提供的模型。您也可能獲得較少的每秒令牌數。

不過,即使在開發筆記型電腦上也能獲得不錯的結果。只是不要期望前沿水平的結果。

如何執行本地模型

有許多免費和開源專案可以讓您在本地執行模型。LM Studio是我的首選,但Ollama和llama.cpp也很流行。Zed開箱即支援這三者。

有了執行時,您需要選擇模型。我一直在用Qwen 3.6 35B A3B。這個名稱有點長,但每個部分都有意義:

  • **Qwen 3.6**是模型系列,由阿里巴巴開發,3.6是最新版本。
  • **35B**表示模型有350億引數。執行時需要將這些引數載入到記憶體中。
  • **A3B**表示“啟用30億”。這是一個混合專家模型(MoE),總引數350億,但每次生成令牌時僅啟用約30億引數。稠密模型則所有引數都啟用。MoE模型通常以少量智慧換取效能的大幅提升。粗略來說,生成令牌的時間與啟用引數數量成線性關係。對於像Qwen 3.6 35B A3B這樣的模型,啟用引數為30億,因此執行速度比稠密35B模型快約10倍。

某些晶片(如Apple M系列或AMD Strix Halo)支援統一記憶體。統一記憶體下GPU可直接訪問系統記憶體,但速度比專用GPU上的記憶體慢。MoE模型在這些系統上尤其有優勢,因為較少的啟用引數對較低的記憶體頻寬影響較小。

最後,考慮量化。量化透過用更少的位元儲存每個引數來減小模型大小。Qwen 3.6模型我測試的是Q4版本,即每個引數4位元。350億引數大約需要17.5GB VRAM(加上上下文等的開銷)。LM Studio有UI顯示模型是否適合您的GPU。

配置Zed

設定好提供商後,將Zed指向它。我使用LM Studio,只需新增LM Studio配置,指向http://localhost:1234/api/v0,並確保LM Studio伺服器執行。

如果您使用Ollama、llama.cpp或任何相容OpenAI的系統,可以使用內建的Ollama提供商。

之後,您應該在Zed代理的模型選擇器中看到已下載的模型。

使用非前沿模型的注意事項

使用非前沿模型時,有兩個需要特別注意的地方:

  • **它們不如前沿模型“聰明”**。
  • **它們通常有較小的上下文視窗**。

因此,有效使用它們需要更多的注意和紀律。最佳實踐變得更加必要。

例如,如果模型走錯方向或陷入迴圈,最好編輯之前的訊息以引導它避開錯誤路徑,而不是傳送新訊息糾正。這可以確保上下文視窗不被無用資訊填滿。

您也可能希望鼓勵它們更多地使用子代理。子代理是限制小規模更改對上下文視窗影響的有力工具。

最後,盡情實驗!測試不同提供商的不同模型。調整上下文視窗大小或溫度。如果您有帶專用GPU的高效能遊戲PC,可以嘗試稠密模型。找到適合您的組合?在Discord中分享。

祝編碼愉快!