随着模型开发商持续收紧调用频率限制、提价或将订阅制改为按量计费,那些靠AI辅助完成的兴趣编程项目成本正在急速攀升。好消息是,你并非没有省钱的办法。
过去几周,Anthropic考虑将Claude Code从其最低价格套餐中下架,而微软则直接将GitHub Copilot切换为纯按量计费模式,没有任何过渡期。这一系列变化让我们不禁思考:我们真的需要Anthropic或OpenAI的顶级模型吗?用一个更小的本地模型能否满足需求?当然,本地模型可能更慢、能力更弱、用起来也更费劲,但它有一个无可比拟的优势——免费。当然,前提是你已经拥有相应的硬件。
恰好,阿里巴巴近期发布了Qwen3.6-27B,这家云计算与电商巨头宣称该模型将"旗舰级编程能力"压缩至可在32GB M系列Mac或24GB显存GPU上运行的规模。
变化何在
这并非我们第一次探索本地代码助手。此前,我们曾研究过使用Continue的VS Code扩展来完成代码补全与生成等任务。
当时,模型和软件栈尚不成熟,这些工具虽然有用,但与大型前沿模型相比仍有明显差距。而如今,模型架构和智能体框架已大幅进步。
"推理"能力让小模型能够通过更长时间的"思考"弥补参数规模上的不足;混合专家模型(MoE)架构意味着你不再需要每秒TB级的内存带宽才能获得流畅的交互体验;大幅提升的函数与工具调用能力,则使这些模型真正具备了与代码库、Shell环境和网络交互的能力。
尽享AI编程,不受速率限制
在本次实践中,我们将介绍如何在本地部署和配置Qwen3.6-27B等模型用于编程,并探索可搭配使用的几种智能体框架。
硬件要求
你需要一台能够运行中等规模大语言模型的机器。我们推荐至少配备24GB显存的Nvidia、AMD或Intel GPU。如果显存稍显不足,文中也会介绍如何合并系统内存与GPU内存。对于配备新款Mx-Max系列芯片的Mac用户,建议至少拥有32GB统一内存。
本文将使用Llama.cpp来运行模型,但如果你更习惯使用LM Studio、Ollama或MLX,设置过程基本相同。若需Llama.cpp的安装指引,可参考我们此前发布的完整配置教程。
注意:较旧的M系列Mac可能难以应对智能体编程所需的大上下文长度。你可以尝试oMLX推理引擎,它能更好地利用苹果硬件加速器,但实际效果因人而异。
启动模型
如今在本地运行大语言模型已经相当简便:安装推理引擎,下载模型,通过API连接应用即可。
不过,对于代码助手而言,有几个参数需要仔细调整,否则模型容易输出混乱或错误的代码。部分模型在不同应用场景下需要特定的超参数配置,Qwen3.6-27B也不例外。
在使用Qwen3.6-27B进行辅助编程时,阿里巴巴推荐设置以下参数:
temperature=0.6
top_p=0.95
top_k=20
min_p=0.0
presence_penalty=0.0
repetition_penalty=1.0
此外,我们还需要将模型的上下文窗口设置得尽可能大。
上下文窗口定义了模型在处理单次请求时能够跟踪的Token数量。在包含数千行代码的大型代码库中,Token消耗会迅速累积。加之许多智能体框架的系统提示词篇幅较长,因此我们需要尽量扩大上下文窗口。
Qwen3.6-27B支持262,144个Token的上下文窗口,但除非你拥有高端Mac或工作站级GPU,否则在16位精度下很难完全利用这一特性。
好在我们不必以16位精度存储追踪模型状态的键值缓存,降低精度对性能和质量的影响在可接受范围内。为最大化上下文窗口,我们将把键值对压缩至8位存储。
另外,建议开启前缀缓存功能。对于需要反复处理大段相同提示词(如系统提示或代码库)的场景,此功能可确保只处理新增Token,从而显著提升推理速度。在较新版本的Llama.cpp中,此功能默认已开启,但我们仍会在命令中显式指定相关参数以防万一。
以下是针对24GB显存的Nvidia RTX 3090 Ti的启动命令,同样适用于AMD、Intel GPU或Mac上运行的Llama.cpp。如果你的机器内存更大,可以尝试将上下文窗口调整为131,072或262,144。
llama-server \ --hf-repo unsloth/Qwen3.6-27B-GGUF:Q4_K_M \ --ctx-size 65536 \ -ngl 999 \ --flash-attn on \ --cache-prompt \ --cache-type-k q8_0 \ --cache-type-v q8_0 \ --temp 0.6 \ --top-p 0.95 \ --top-k 20 \ --min-p 0.0 \ --presence-penalty 0.0 \ --repeat-penalty 1.0 \ --port 8080
如果你打算在另一台机器上访问运行中的Llama.cpp,还需在命令中添加--host 0.0.0.0,以将其暴露至本地局域网。若Llama.cpp运行于VPC环境中,出于安全考虑,请在设置此参数前先配置好防火墙规则。
选择智能体框架
模型启动后,我们需要将其接入一个智能体编程框架。模型本身可以生成代码,但没有配套的开发环境,就无法实现、测试或调试代码。AI辅助编程之所以能够脱颖而出,部分原因在于代码具有可验证性——它要么能运行或编译,要么不能。
接下来,我们将介绍三款主流选项:Claude Code、Pi Coding Agent和Cline。
Claude Code
或许出乎你的意料,Claude Code并非只能搭配Anthropic的模型使用。只要硬件资源足够,该框架同样可以很好地运行本地模型。
按照常规方式安装Claude Code(Anthropic提供了一键安装命令),之后设置几个Shell环境变量,即可告知Claude Code使用本机运行的模型,而非Claude账户或Anthropic的API服务:
export ANTHROPIC_BASE_URL="http://localhost:8001"
export ANTHROPIC_API_KEY='none'
claude
每次在新会话中启动Claude时,都需要重新设置这些变量。完成配置后,Claude Code将直接连接你的本地模型,其他功能与正常使用完全一致。
Pi Coding Agent
如果你不仅希望使用本地模型,还倾向于选择开源框架,Pi Coding Agent值得一试。它与Claude Code的使用体验相近,同样不对所使用的模型有任何限制。
Pi Coding Agent的主要优势之一是极为轻量。长输入序列对性能较弱或较旧的GPU会造成较大压力,Claude Code和Cline的系统提示词较长,可能使低配硬件运行明显变慢。相比之下,Pi Coding Agent的默认系统提示词简短得多,结合前缀缓存功能,响应速度相当流畅。
不过,这一速度优势的代价是缺少其他编程智能体具备的诸多安全防护机制。建议在虚拟机、容器,甚至树莓派等隔离环境中运行它。
Pi Coding Agent的安装方式与Claude类似,使用适合你系统的一键安装命令即可。安装完成后,只需通过一个JSON配置文件告知框架模型的位置。按照以下步骤操作:
Windows系统:
edit ~/.pi/agent/models.json
Linux / Mac系统:
nano ~/.pi/agent/models.json
将以下模板粘贴至文件中。若已设置API密钥,请将no_API_key_required替换为你的密钥;其余参数根据你使用的模型和端口进行调整;同时将contextWindowSize设置为与Llama.cpp中的配置一致。
"providers": { "llama.cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "unsloth/Qwen3.6-27B-GGUF:Q4_K_M" } ] } } }
配置完成后,导航至工作目录,启动Pi Coding Agent,即可开始你的编程之旅:
pi --model unsloth/Qwen3.6-27B-GGUF:Q4_K_M
Cline
Claude Code可与VS Code等主流集成开发环境(IDE)直接集成,若走这条路线,我们同样推荐另一款开源工具——Cline。
在VS Code或其他支持的IDE的扩展商店中搜索Cline并安装即可。安装完成后,将Cline指向Llama.cpp服务器并调整相关超参数:
Base URL:http://localhost:8080/v1
Model ID:unsloth/Qwen3.6-27B-GGUF:Q4_K_M
Context Window Size:65536(或与Llama.cpp中的设置保持一致)
Temperature:0.6
配置完成后,即可通过Cline的聊天界面进行交互,所有文件修改和代码编辑将实时呈现在VS Code中。
Cline的一个实用功能是支持在纯规划模式与执行模式之间切换。如果你曾因AI将一个探讨性问题直接理解为行动指令而感到困扰,这一功能将大有帮助。
本地模型是否已经足够好用?
Qwen3.6-27B能否取代Opus 4.7或GPT-5.5?答案是否定的。正如你所料,一个27B参数的大语言模型无法媲美万亿参数规模的前沿模型。
不过,本地模型如今的表现可能会让你眼前一亮。在我们的测试中,Qwen3.6-27B一次性完成了一个交互式太阳系网页应用的开发,并准确定位并修复了现有代码库中的漏洞。
当然,这些项目相对简单。为了更全面地评估模型性能,我们邀请同事Thomas Claburn,根据他近期使用Claude Code的经验来做进一步对比。
他写道:
我最近才开始尝试本地模型,体验与Tobias的描述基本一致。我使用Pi Coding Agent配合OMLX作为模型服务器,虽然Token生成速度较慢,但对于小型脚本来说,Qwen3.6-27B的表现让我满意。
举个例子,我让模型编写一个将图片调整至指定宽度的Python脚本,大约花了五分钟并经过几次手动确认后,任务顺利完成。
Claude Code对这段代码的评价出乎意料地积极:"整体来看:这是一段强健的、生产级质量的脚本。"
Claude虽然提出了一些改进建议,但都并非必要修改。例如:get_save_format函数会将所有非PNG文件静默处理为JPEG;目录中的.webp文件会被SUPPORTED_EXTENSIONS过滤掉,但如果该集合未来扩展,回退到JPEG的行为将成为隐性错误,使用明确的elif或查找字典会更安全。
考虑到代码生成所需的时间,我认为本地智能体更适合用于专注、独立的代码修改、脚本编写和轻量级Web项目。
对于规模较大的项目,需要手动纠错的地方可能会多得令人疲惫。但实际效果很大程度上取决于本地模型的能力和可用工具。最好的办法就是亲自试用,说不定正好满足你的需求。记得准备好足够大内存的硬件,也别忘了提前备份好数据。
这些智能体安全可靠吗?
鉴于近期围绕"OpenClaw"安全事件引发的广泛讨论,这是一个值得认真对待的问题。所幸,本文介绍的大多数框架在自主权限方面都有较为严格的限制。默认情况下,Claude Code和Cline均采用"人在回路"机制,代码修改和Shell命令执行都需要用户手动确认。
只要你没有预设白名单命令,也没有在未读懂内容的情况下一路按回车,整体风险应当是可控的。这里我们特意用了"应当",因为对编程语言和常用命令行指令有基本了解至关重要。如果模型开始要求对工作目录以外的文件或文件夹执行rm -rf命令,那很可能出了问题。
Pi Coding Agent则不同,它默认以"YOLO模式"运行,可以自由读取和修改其有权访问的任何内容。在虚拟机或树莓派等专用开发环境中,这或许是可以接受的,但如果不是这种情况,你应该考虑在适当的沙箱环境中运行该智能体。
容器化技术提供了一种简便的解决方案。启动一个Docker容器并挂载工作目录并不复杂。Docker本身是个相当深的话题,但以下运行命令可以为你提供一个沙箱环境的基础起点。Docker的安装方法可参考对应操作系统的官方文档。
docker run -it --name vibe_container -v working_dir:/working_dir ubuntu /bin/bash
此命令将启动一个新的Ubuntu Docker容器,并将工作目录挂载至容器内。所有修改将被限制在该文件夹或容器范围内。
如果你希望看到一份关于构建智能体沙箱环境的完整指南,欢迎在评论区告诉我们。
Q&A
Q1:在本地运行Qwen3.6-27B需要什么硬件配置?
A:运行Qwen3.6-27B建议使用至少24GB显存的Nvidia、AMD或Intel GPU,或至少32GB统一内存的M系列Mac。如果显存不足,可以通过合并系统内存与GPU内存来弥补。旧款M系列Mac可能难以支撑智能体编程所需的大上下文长度,可尝试使用oMLX推理引擎以更好地发挥苹果硬件加速性能。
Q2:Claude Code、Pi Coding Agent和Cline这三款智能体框架有什么区别?
A:三者各有侧重:Claude Code功能完整、操作成熟,支持连接本地模型;Pi Coding Agent轻量快速,系统提示词简短,响应更流畅,但安全防护较少,建议在隔离环境中使用;Cline作为VS Code扩展安装便捷,支持规划模式与执行模式切换,适合在IDE中日常使用。总体来看,对安全性要求高的用户推荐Claude Code或Cline,追求速度和开源的用户可选Pi Coding Agent。
Q3:本地运行的Qwen3.6-27B编程能力怎么样,能替代云端大模型吗?
A:Qwen3.6-27B无法完全替代GPT或Claude等万亿参数级前沿模型,但对于小型脚本、独立功能模块和轻量级Web项目表现不错。测试中,该模型一次性完成了交互式太阳系网页应用的开发,并成功定位和修复了代码库中的漏洞。Claude Code对其输出代码的评价是"生产级质量"。复杂大型项目可能需要较多人工干预。
好文章,需要你的鼓励
无人机食品配送服务商Flytrex与全球知名披萨连锁品牌Little Caesars宣布合作,推出全新Sky2无人机,最大载重达4公斤,可一次配送两个大披萨及饮料,满足全家用餐需求。Sky2支持最远6.4公里的配送范围,平均从起飞到送达仅需4.5分钟。首个试点门店已在德克萨斯州怀利市上线,并实现与Little Caesars订单系统的直接集成。
FORTIS是专门测量AI代理"越权行为"的基准测试,研究发现十款顶尖模型普遍选择远超任务需要的高权限技能,端到端成功率最高仅14.3%。
法国社会住房项目ViliaSprint?已正式完工,成为欧洲最大的3D打印多户住宅建筑,共12套公寓,建筑面积800平方米。项目由PERI 3D Construction使用COBOD BOD2打印机完成,整体工期较传统建造缩短3个月,实际打印仅用34天(原计划50天),现场操作人员从6人减至3人,建筑废料率从10%降至5%。建筑采用可打印混凝土,集成光伏板及热泵系统,能源自给率约达60%。
荷兰Nebius团队提出SlimSpec,通过低秩分解压缩草稿模型LM-Head的内部表示而非裁剪词汇,在保留完整词汇表的同时将LM-Head计算时间压缩至原来的五分之一,端到端推理速度超越现有方法最高达9%。