Claude Code && Codex
Claude 在全世界算是最顶级的大模型了,不过在很久之前 Claude 就把我的账号给封禁了,后来就一直没怎么用过他的模型了,模型虽然智能,但是架不住它非常贵啊。而且这家公司有严重的政治因素 的存在,而且风控也相当严重,后来几乎都不用了。
Codex 最近更新了,由之前的 CLI 版本更新为 Desktop 版了。带来的是更强的用户体验,和更通用的 Agent。从最开始写代码的群体,也转变成了不在是程序员行业,而是普罗大众。最新出的 Image2 生图效果更是一绝,独霸一方。总体认为 Claude 模型是比 GPT 家族强的,但是从 Agent 的 Harness 方面来说,我认为 Codex 做的更加专业,而且也能接入第三方的 API。Codex 虽然好用,但是风控相对来说也比较严重,使用自己的模型,当 VPN 和 IP 滥用的话,轻则掉会员,严重则会永久封号。Codex其中我最爱使用的模型有 GPT5.5 和 GPT5.4,相对来说,我更愿意用 GPT5.5 去做一些 Plan 相关的东西,5.4 则是去做 Execute。
Cursor 是我最常用的产品,由于其 Agent 的出色,以及自己的 Composer 模型,Composer 速度非常快,价格便宜,聪明。但是还是打不住日常会去用一些更高级的模型去做 Plan,用的多了,额度就没了。于是又开始有想法去搭建一个私用的模型,例如阿里最新发布的 Qwen3.6-35B-A3B 稀疏性模型和 Qwen3.6-27B 密集型模型。
Ollama VS LM Studio VS llama.cpp
大家在使用模型的时候,其实不知道模型在生成文本的时候,会有两个阶段。第一个阶段是 Prefill(预填充),另外一个是 Decode(生成阶段)。Prefill 负责把整段输入上下文一次性编码成 KV Cache,这一步通常计算密集、显存带宽压力大。而 Decode 则是自回归地逐个生成 token,瓶颈更多在显存访问和调度效率。
对于本地部署,最开始用的傻瓜式的 Ollama 和 LM Studio,只需要简单的命令和鼠标点击下载就可以完成模型的加载和 API 的暴露,后来Ollama 老是版本报错,稳定性太差,我就没打算用了。LM Studio 的底层是 llama.cpp。虽然社区有很多人说 llama.cpp 本身就非常好用,但是我也没实际部署过。最近一段时间刷推特,发现了很多说用 llama.cpp + mtp 可以让 Qwen3.6 提升一倍的输出速度。于是我又打算在 Windows 上安装一个 llama.cpp 了,试着自己去调参玩一玩, LM Studio 第一是不够灵活,第二是写的还有 BUG,不够稳定,老吃内存了。
之前在淘宝买了买了 22G 的 2080TI Super 魔改版,之前也尝试用 LM Studio 去跑过模型,例如跑一个 Qwen3.6-35B-A3B (3BIT 量化)满上下文的模型,我的显存也就刚好够用(21G 显存占用),Token 输出大概为 56t/s。魔改版的性价比还是高,现在闲鱼差不多 2000 块一张,8 卡方案的话也才 16000 元,但是却足足拥有了 176G 显存。显存虽然大,但是核心还是少,算力慢,还是顶级的 3090 和 5090 、RTX Pro 6000 比较厉害,5090 算是所有的消费级显卡里面最好的一张了,拥有比 Pro 6000 还强的顶级算力,缺点就是显存略小,能魔改一下,变成 64G 就无敌了,5090 也要小三万块,太贵了,而且还没什么渠道买。
llama.cpp
目前最成熟的本地推理方案之一就是 llama.cpp,它专门针对 CPU 推理做了大量优化,甚至也能利用 GPU 加速。下面我就把自己在 Windows 上从零安装 llama.cpp 的过程完整记录下来,希望能帮到同样想摆脱云端限制的朋友。
首先,llama.cpp 是运行在 Linux 上的,所以在 Windows 上直接运行是不行的,我们要利用 Windows11 的 WSL 技术去搭建一个 Linux 环境。之前刷过机,我的环境是 Windows 11,配备了 AMD 的 CPU 和一块 NVIDIA 显卡(RTX 2080Ti Super 魔改版)。llama.cpp 本身对硬件要求不算高,纯 CPU 也能跑,但有 GPU 的话推理速度会明显提升。在开始前,需要先把编译工具链和必要的依赖配好。
在 Windows + WSL2 环境中安装支持 CUDA GPU 的 llama.cpp,推荐使用 Ubuntu 24.04 及 NVIDIA 官方 CUDA 支持。以下是一套目前(2026 年)较为稳定的安装流程。
环境检查清单
- Windows 11(推荐)
- 已安装最新版 NVIDIA 驱动程序
- 已启用 WSL2
- GPU 支持 CUDA
运行以下命令确认环境配置:
Bash
wsl --status
# 确认输出中包含:Default Version: 2
nvidia-smi
# 确认可正常显示 GPU 信息安装 Ubuntu 系统
Bash
wsl --install -d Ubuntu-24.04进入 Ubuntu 后,再次运行 nvidia-smi 确认 GPU 识别正常。
安装依赖与 CUDA 工具包
Bash
sudo apt update
sudo apt install -y \
build-essential \
cmake \
git \
curl \
pkg-config
sudo apt install -y nvidia-cuda-toolkit
nvcc --version # 确认 CUDA 编译器版本编译 llama.cpp
Bash
git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
cmake -B build -DGGML_CUDA=ON
cmake --build build -j配置环境变量
将以下内容添加到 ~/.bashrc:
Bash
export PATH="$HOME/llama.cpp/build/bin:$PATH"运行 source ~/.bashrc 使其生效。
移动模型
Code
mv /mnt/c/Users/<xxx>/.cache/lm-studio/models/unsloth/Qwen3.6-27B-MTP-GGUF ~/models/运行模型服务
可根据需要选择以下任一配置启动服务:
配置一:
Bash
llama-server \
-m Qwen3.6-35B-A3B-UD-Q3_K_S.gguf \
--mmproj mmproj-F32.gguf \
-ngl 99 \
-np 1 \
--flash-attn on \
--cache-type-k q8_0 \
--cache-type-v q8_0 \
--ctx-size 200000 \
--temp 0.7 \
--top-p 0.8 \
--top-k 20 \
--presence-penalty 1.5 \
--min-p 0.00 \
--chat-template-kwargs '{"enable_thinking":false}'配置二(支持 draft 模式):
Code
llama-server \
-m Qwen3.6-27B-Q4_K_S.gguf \
--mmproj mmproj-F32.gguf \
-ngl 99 \
-np 1 \
--flash-attn on \
--cache-type-k q4_0 \
--cache-type-v q4_0 \
--ctx-size 200000 \
--spec-type draft-mtp \
--spec-draft-p-min 0.75 \
--spec-draft-n-max 2 \
--temp 0.7 \
--top-p 0.8 \
--top-k 20 \
--presence-penalty 1.5 \
--min-p 0.00 \
--chat-template-kwargs '{"enable_thinking":false}'Bash
llama-server \
-m Qwen3.6-35B-A3B-UD-Q3_K_M.gguf \
--mmproj mmproj-F32.gguf \
-ngl 99 \
-np 1 \
--flash-attn on \
--cache-type-k q8_0 \
--cache-type-v q8_0 \
--ctx-size 200000 \
--spec-type draft-mtp \
--spec-draft-p-min 0.75 \
--spec-draft-n-max 2 \
--temp 0.7 \
--top-p 0.8 \
--top-k 20 \
--presence-penalty 1.5 \
--min-p 0.00 \
--chat-template-kwargs '{"enable_thinking":false}'客户端配置示例(如 codex)
如需在客户端调用服务,可参考如下配置:
INI
model_provider = "llama_cpp"
model = "Qwen3.6-35B-A3B-UD-Q3_K_S.gguf"
[model_providers.llama_cpp]
name = "llama_cpp"
base_url = "http://localhost:8080/v1"
wire_api = "responses"
requires_openai_auth = false
context_window = 200000
[windows]
sandbox = "elevated"
[plugins."browser@openai-bundled"]
enabled = true工欲善其事,必先利其器