Qt Creator 20 与本地 AI
摘要
Qt Creator 20 现在通过 Agent Client Protocol 支持本地 AI 编码助手,可以集成在消费级硬件上运行的开源权重模型(如 GPT-OSS 和 Gemma 4)。
暂无内容
查看缓存全文
缓存时间: 2026/06/22 19:50
# Qt Creator 20 与本地 AI
来源:https://www.qt.io/blog/qt-creator-20-and-local-ai
Qt Creator 20 现已成为一个 Agent Client Protocol (ACP) 客户端扩展。该协议受到许多 AI 提供商的支持,并负责处理 AI 编码代理与 IDE 之间的通信细节。
在 ACP 注册中心(https://agentclientprotocol.com/get-started/registry)中,我们可以看到 *Claude Agent*、*Codex CLI*、*Gemini CLI* 或 *GitHub Copilot* 等 ACP 代理。
这些 ACP 代理将与其各自的云端 AI 服务进行通信,这需要订阅。
在本文中,我将介绍在现有硬件上运行本地 AI 的情况。
## 硬件
我将在我的工作笔记本上进行测试,这是一台 2023 年 14 英寸 MacBook Pro M3,配备 36GB 内存。eBay.de 上的售价从 1,700 欧元起,最高可达 2,300 欧元。
36GB 内存很关键,因为 32GB 不足以在全上下文下运行。下方图片显示了运行 Qt Creator 并搭载 pi ACP 代理时的笔记本内存使用情况。内存使用率达到了 88%。此时并未运行任何 Electron 应用(如 Microsoft Teams 或 Web 浏览器)。
macbook-pro-m3-memory-usage
## 本地 AI
2025 年 8 月,OpenAI 发布了 gpt-oss(https://openai.com/index/introducing-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(https://deepmind.google/models/gemma/gemma-4/)模型。许可证同样是 *Apache 2.0*,上下文大小高达 256K,是 *gpt-oss-20b* 的两倍。
我心目中的模型是 gemma-4-26B-A4B-it(https://huggingface.co/google/gemma-4-26B-A4B-it)。
与 *gpt-oss-20b* 相比,除了两倍的上下文大小外,*gemma-4-26B-A4B-it* 还是多模态的——支持文本和图像输入。
在接下来的几个月里,Google 发布了:
- 2026 年 5 月:加速 Gemma 4:通过多 token 预测草案器实现更快的推理(https://blog.google/innovation-and-ai/technology/developers-tools/multi-token-prediction-gemma-4/)
- 2026 年 6 月:Gemma 4 QAT 模型:优化模型压缩以提高移动设备和笔记本电脑效率(https://blog.google/innovation-and-ai/technology/developers-tools/quantization-aware-training-gemma-4/)
通过这两项优化,*gemma-4-26B-A4B-it-qat* 在 "Hello World" 提示下能以 55 tokens/s 的速度给出答案!
## 本地 AI 软件
我从 homebrew 安装了 llama.cpp(https://github.com/ggml-org/llama.cpp),并使用 unsloth/gemma-4/qat(https://unsloth.ai/docs/models/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 智能体开发技能(https://www.qt.io/blog/introducing-qt-agentic-development-skills?hsLang=en)的任务,即 `qt-cpp-docs` 技能中的 renderarea.cpp(https://code.qt.io/cgit/qt/qtbase.git/tree/examples/widgets/painting/basicdrawing/renderarea.cpp?h=6.11)源代码。
## Opencode ACP 代理
我首先尝试了 opencode.ai(https://opencode.ai/)的 ACP 代理。我将 TheQtCompanyRnD/agent-skills(https://github.com/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 代理
然后我尝试了 pi.dev(https://pi.dev/)及其 ACP 适配器。我同样配置了 TheQtCompanyRnD/agent-skills(https://github.com/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(https://git.qt.io/-/project/5381/uploads/98d8349dc57ee40ea013a665f70ea75f/renderarea-opencode.md) |
| pi | 1:02 | 0.89 | ✅ | renderarea.md(https://git.qt.io/-/project/5381/uploads/d9bc0b29dbc449d3dddfd743ee613242/renderarea-pi.md) |
| 无 | 0:27 | 0.66 | ❌ | renderarea.md(https://git.qt.io/-/project/5381/uploads/e5f413cbad2df3256adbd0c9bcf4b870/renderarea-no-acp.md) |
直接使用技能并将正确的源文件作为上下文是最快的,消耗的笔记本电脑电量也最少。但这是以牺牲便捷性为代价的,因为需要手动创建 Markdown 文件。同样,准备包含技能和上下文源文件的提示也需要手动操作。
我不知道为什么 opencode ACP 代理花费的时间是 pi ACP 代理的两倍。对于想找出原因的人来说,第一步是启用 *llama-server* 的更多日志记录。这样就能追踪到与本地 AI 的所有通信。
使用本地 AI 时,你不需要为 token 付费,但需要为能耗和时间买单。不过,在 Apple Silicon 电脑上,由于平台的高效性,能耗成本相对较低。
你的 ACP 代理在处理手头任务时有多快?请在评论区留言。你知道你的 AI 云提供商在进行推理时消耗了多少能量和水吗?
### 分享给好友
- http://www.facebook.com/sharer/sharer.php?u=https://www.qt.io/blog/qt-creator-20-and-local-ai
- http://x.com/share?url=https://www.qt.io/blog/qt-creator-20-and-local-ai
- https://www.linkedin.com/shareArticle?mini=true&url=https://www.qt.io/blog/qt-creator-20-and-local-ai
- [mailto:?subject=Qt%20Creator%2020%20and%20local%20AI&body=https://www.qt.io/blog/qt-creator-20-and-local-ai](mailto:?subject=Qt%20Creator%2020%20and%20local%20AI&body=https://www.qt.io/blog/qt-creator-20-and-local-ai)
相似文章
现在运行本地模型已经很不错了
作者报告说,运行本地AI模型如今已经表现出色,最近发布的GPT-OSS和Gemma 4等模型使得在本地进行自主编码的准确率达到了前沿模型的大约75%,与几个月前相比有了显著提升。
本地AI代理如何才能对开发者真正有用?
作者探讨了什么样的特性能让本地AI代理对开发者真正有用,包括处理文件和仓库、安全使用终端、支持硬件/机器人项目以及离线能力。
VS Code 的新“Agents window”让你可以使用本地AI模型,但仍需联网和GitHub Copilot订阅(因为好事总轮不到我们)
VS Code 的新“Agents window”允许开发者使用本地AI模型,但仍需互联网连接和GitHub Copilot订阅。
Ask HN: 有没有人用本地模型替代 Claude/GPT 进行日常编码?
Hacker News 上的一场讨论探讨了开发者是否可以在日常编码中用本地模型替代像 Claude 这样的云端 AI 模型。参与者分享了经验,指出本地模型(例如 Qwen、Gemma)对爱好者来说可行,但在专业使用上仍落后于顶级云端模型。
@SigGravitas: https://x.com/SigGravitas/status/2061554698285404289
Microsoft Build 2025 将设立开源专区,展示四个开源 AI 项目:OpenClaw、AutoGPT、Open WebUI 和 prompts.chat,突出它们在个人智能体、自主智能体、本地 AI 平台和提示工程方面的作用。