「自架 (self-hosted) AI Coding 代理人伺服器 – llama.cpp server」


今天又在 reddit 上研究 AI 新技術,看有什麼新東西可學,看到一套 LLM 工具 – llama.cpp 又有新東西推出,我就來研究一下。

然而我已一段時間沒觀注 llama.cpp 的發展,所以有一些資訊落後。我才知道 llama.cpp 也有 API server,相容 OpenAI API。這令我感興趣,因為目前 AI 工具之間主流的串接方式之一就是 OpenAI API。

比如我之前看一份教學,學會使用 LM Studio API server (相容 OpenAI API) 與 qwen-code 串接,在本機執行自架的 AI coding agent,它可以幫我在本機上生成程式,作程式碼的新增、修改,而且免付費使用一些 AI coding 服務商的 API。

那 LM Studio 已經有 LLM API server 的功能,還有需要其它類似的工具嗎?還是有!因為多一種選擇,較有彈性。特別是我在用 LM Studio 作 AI coding 時,遇到一個寫檔 bug 導致不太能使用:
https://github.com/QwenLM/qwen-code/issues/535
發現我後來是修改 qwen-code,才避開問題:
https://github.com/QwenLM/qwen-code/pull/860
但我的修改一直沒被 qwen-code 接受,我也能理解,因為問題應該源自 LM Studio 而不是 qwen-code,我去改的 qwen-code 雖然能用,但程式結構會變比較亂,因為要針對此 bug 作特殊處理。

那麼一開始怎麼知道是 LM Studio 還是 qwen-code 的 bug? 如果不能證明是誰的 bug, 這問題很可能就兩邊都不想處理,問題就會一直存在。

幸好有另一種選擇:我今天研究出 llama.cpp server 也能與 qwen-code 串接作 AI coding agent. 實驗結果也證實,同一版 qwen-code, llama.cpp server 沒有寫檔 bug, 但 LM Studio 有!所以基本上問題指向可能是 LM Studio 的 bug.

最後是我在本機使用 llama.cpp server 串接 qwen-code 所下的指令:
llama-server –ctx-size 162144 –jinja -hf ggml-org/Qwen3-4B-Instruct-2507-Q8_0-GGUF

export OPENAI_API_KEY=api_key
export OPENAI_BASE_URL=http://localhost:8080/v1
export OPENAI_MODEL=Qwen3-4B-Instruct-2507-Q8_0-GGUF
qwen


Leave a Reply