Skip to main content

Qt Creator 20 与本地 AI

评论
Qt Creator 20 新增了智能体客户端协议(Agent Client Protocol,ACP)Client 扩展。该协议受众多 AI 服务商支持,负责处理 AI 编程智能体与 IDE 之间通信的底层细节。

在 ACP Registry 中,可以看到 Claude Agent、Codex CLI、Gemini CLI 以及 GitHub Copilot 等 ACP 智能体。

这些 ACP 智能体将与各自的云端 AI 服务进行通信,使用前需订阅相应服务。

本文将介绍在现有硬件上运行本地 AI 的实践案例。

硬件配置

测试设备为我的工作笔记本,即一台搭载 36GB 内存的 2023 款 14 英寸 MacBook Pro M3。在 ebay.de 上,该型号的二手价格从 1.700€ 到 2.300€ 不等。

36GB 内存至关重要——32GB 不足以支持全量上下文运行。下图为搭载 pi ACP 智能体运行 Qt Creator 时的笔记本状态,内存占用率达 88%。此时并未运行 Microsoft Teams 等 Electron 应用或 Web 浏览器。

macbook-pro-m3-memory-usage

本地 AI

2025 年 8 月,OpenAI 发布了 gpt-oss 系列模型:

我们正式发布 gpt-oss-120b 与 gpt-oss-20b——两款性能卓越、成本低廉的开放权重语言模型。这两款模型采用灵活的 Apache 2.0 许可证,在推理任务上优于同等规模的开放模型,具备出色的工具调用能力,并针对消费级硬件的高效部署进行了专项优化。

gpt-oss-20b 拥有 128K 上下文窗口,是我会优先选择的模型。在笔记本电脑上,对于"Hello World"提示,其响应速度可达 40-45 tokens/s。

2026 年 4 月,Google 发布了 Gemma 4 系列模型。该系列同样采用 Apache 2.0 许可证,上下文窗口最大达 256K,是 gpt-oss-20b 的两倍。

我计划使用的模型为 gemma-4-26B-A4B-it。

与 gpt-oss-20b 相比,gemma-4-26B-A4B-it 除上下文窗口翻倍外,还是一款多模态模型——支持文本与图像输入。

此后数月,Google 相继发布了:

经过这两项优化,gemma-4-26B-A4B-it-qat 对"Hello World"提示的响应速度可达 55 tokens/s。

本地 AI 软件

我通过 homebrew 安装了 llama.cpp,并以 unsloth/gemma-4/qat 模型运行,命令如下:

#!/bin/sh
llama-server \ -hf unsloth/gemma-4-26B-A4B-it-qat-GGUF:UD-Q4_K_XL \ --spec-type draft-mtp --spec-draft-n-max 2 \ --reasoning off

测试任务

我从 Qt 博客:Qt 智能体驱动开发技能介绍中选取了一项任务,即使用 qt-cpp-docs 技能处理 renderarea.cpp 源代码。

Opencode ACP 智能体

我首先尝试了 opencode.ai ACP 智能体,并按如下方式配置了 TheQtCompanyRnD/agent-skills:

$ ln -s ~/Projects/qt.io/agent-skills/skills ~/.config/opencode/skills

我的 opencode.json 文件内容如下:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "llama-cpp": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "llama.cpp server",
      "options": {
        "baseURL": "http://127.0.0.1:8080/v1"
      },
      "models": {
        "default": {
          "name": "Default Model"
        }
      }
    }
  },
  "model": "llama-cpp/default"
}

以下是 Qt Creator 20 与 opencode ACP 智能体配合使用的录屏:

Pi ACP 智能体

随后我尝试了带有 ACP 适配器的 pi.dev,并以相同方式配置了 TheQtCompanyRnD/agent-skills:

$ ln -s ~/Projects/qt.io/agent-skills/skills ~/.pi/agent/skills

以下是 Qt Creator 20 与 pi ACP 智能体配合使用的录屏:

手动使用技能

最后,我手动尝试了通过 llama.cpp 的 Web 界面,使用相同的技能提示词与源文件进行测试。

以下为录屏:

总结

以下表格汇总了上述各次运行的结果:

ACP 智能体 时长 (mm:ss) 功耗 (Wh) 便捷性 结果
opencode 2:00 1.80 ✅ renderarea.md
pi 1:02 0.89 ✅ renderarea.md
none 0:27 0.66 ❌ renderarea.md

直接使用技能并附带相应源文件作为上下文,速度最快且能耗最低。但代价是便捷性有所下降——Markdown 文件需手动创建,技能提示词与上下文源文件的准备工作同样如此。

我暂不清楚为何 opencode ACP 智能体的耗时是 pi ACP 智能体的两倍。如有兴趣深入排查,第一步可以开启 llama-server 的详细日志,从而追踪与本地 AI 的全部通信过程。

使用本地 AI,无需为 token 付费,但需要付出电力与时间成本。不过,得益于 Apple Silicon 平台的高能效比,在搭载该芯片的设备上,电力成本相对较低。

你的 ACP 智能体处理同样任务的速度如何?欢迎在评论区分享。你是否了解所用 AI 云服务商在推理过程中消耗了多少电力与水资源?

评论

Subscribe to our blog

立即体验 Qt 6.12!

点击此处下载最新版本:www.qt.io/download

Qt 6.12 LTS 现已发布,为应用程序开发者和设备制造商带来了新功能和改进。

我们正在招聘

点击此处查看所有职位空缺并关注我们的Instagram账号,了解成为#QtPeople的感受。