在自己电脑上把 AI 跑起来:三件开源工具就够了
现在用 AI,多半绕不开网页:登录、订阅、把数据传到别人的服务器。一旦断网、超配额,或涉及不想出门的文档,就傻眼。其实把 AI 留在自己机器上已经不难,问题是工具太多、各管一摊。这篇把最常一起被提到的三个开源项目摆在一起,讲清各自做什么、怎么装、坑在哪。
三件套速览
| 工具 | 在你工作流里的角色 | 语言 | 协议 | 一句话定位 |
|---|---|---|---|---|
| Ollama | 模型运行时(引擎) | Go | MIT | 把开源大模型跑在本机,并暴露统一 API |
| Open WebUI | 聊天界面(驾驶舱) | Python / Svelte | Open WebUI License(带品牌保留) | 自托管、可离线的 ChatGPT 替代界面 |
| ck | 代码检索(眼睛) | Rust | Apache-2.0 / MIT | 本地语义代码搜索,能直接喂给 AI agent |
Ollama:把模型跑起来的引擎
做什么:本地大模型运行时。一条命令就能把 Llama、Qwen、DeepSeek、Gemma 等开源模型拉到本机运行,对外暴露统一的 REST API(默认 localhost:11434),还能直接对接 Claude Code、Codex、Copilot CLI 等编码工具,让本地模型替你写代码。
怎么用:官方 README 的装法(macOS / Linux 与 Windows 不同):
curl -fsSL https://ollama.com/install.sh | sh
irm https://ollama.com/install.ps1 | iex
装完拉一个模型直接聊:
ollama run gemma4
要接编码工具,用 launch 子命令:
ollama launch claude
优点:MIT 协议、完全免费;装完即用,模型生态广;API 统一,方便接自己的脚本和 agent;macOS / Windows / Linux 都支持。
缺点:首次运行要联网下载模型权重,体积大、吃带宽和磁盘;量化模型有质量取舍;推理吃内存和显卡,老机器会慢;模型来自 ollama.com 模型库,首次拉取需要网络。
Open WebUI:本地聊天界面
做什么:自托管的 AI 聊天界面,相当于把 ChatGPT 的网页搬回你自己的服务器。支持 Ollama 与 OpenAI 兼容 API,可完全离线运行,带多模型切换、文档问答、插件等能力。
怎么用:README 给出两条路,命令逐字如下。pip 路线(建议 Python 3.11,启动后访问 localhost:8080):
pip install open-webui open-webui serve
Docker 路线(访问 localhost:3000):
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
优点:自托管、可离线;功能丰富、界面友好;和 Ollama 无缝衔接,本地模型也能有图形化聊天体验。
缺点:许可证非标准——采用「Open WebUI License」并强制保留「Open WebUI」品牌标识,做产品化或二次分发前要先读 LICENSE;本体偏重,依赖 Python 3.11 或 Docker;资源占用高,首次配置有门槛。
ck:让本地 AI 看懂你的代码
做什么:本地优先的语义代码搜索,能按「含义」而非关键词找代码——搜 error handling 能命中 try/catch、错误返回和异常处理,即使这些词没出现。兼容传统 grep,还能起 MCP 服务让 AI agent 直接调用。
怎么用:README 的安装与常用命令:
cargo install ck-search
ck --sem "error handling" src/ ck --hybrid "connection timeout" src/
ck --serve ck --tui
优点:Apache-2.0 / MIT 双许可,免费可商用;纯本地离线、无需联网;grep 兼容、上手低;有 MCP 接口,能喂给 AI agent。
缺点:要走 Rust 的 Cargo(或 npm 全局)安装;嵌入在 CPU 上跑;对 Java / PHP / Swift 等语言覆盖还不全;ANN 检索已退役改暴力扫描,约 5 万代码块内可用、更大仓库偏慢;索引额外占 1–3 倍空间;个别小坑(如 .ckignore 跳过项、裸名递归遍历)。
最终效果:怎么配合,谁适合
三件怎么配合:Ollama 是引擎,Open WebUI 是驾驶舱,ck 是让 AI 看懂你仓库的「眼睛」。最小可用组合:先装 Ollama 跑通一个模型,再装 Open WebUI 有图形界面聊天;若要让本地 AI 检索项目代码,加 ck 起 MCP。
适合:在意数据不出本机、已被网页版配额和登录劝退、愿意花半小时搭环境的开发者和个人。
不适合:只想「装个 App 点开就用」、不愿碰命令行和 Docker 的小白;机器内存偏小、无独显、跑不动本地模型的用户。
下期预告
顺着「本地优先」主线继续往下走,下一期做把本地模型接进你的编辑器——Continue / Cline 类开源编码助手横向对比,看本地模型怎么真正进到写代码的那一刻。
