第 116 期 · 本地优先 AI 工具

在自己电脑上把 AI 跑起来:三件开源工具就够了

Ollama 跑模型 · Open WebUI 做界面 · ck 让 AI 读懂你的代码
一句话判断:想摆脱网页版 ChatGPT 的账号、配额和隐私顾虑,又不想碰云,这套本地优先三件套值得搭。但先说清分工——Ollama 负责把模型跑起来,Open WebUI负责聊天界面,ck负责让本地 AI 能检索你的代码库,三者各管一段,合起来才是一套工作流。

现在用 AI,多半绕不开网页:登录、订阅、把数据传到别人的服务器。一旦断网、超配额,或涉及不想出门的文档,就傻眼。其实把 AI 留在自己机器上已经不难,问题是工具太多、各管一摊。这篇把最常一起被提到的三个开源项目摆在一起,讲清各自做什么、怎么装、坑在哪。

三件套速览

工具在你工作流里的角色语言协议一句话定位
Ollama模型运行时(引擎)GoMIT把开源大模型跑在本机,并暴露统一 API
Open WebUI聊天界面(驾驶舱)Python / SvelteOpen WebUI License(带品牌保留)自托管、可离线的 ChatGPT 替代界面
ck代码检索(眼睛)RustApache-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 的小白;机器内存偏小、无独显、跑不动本地模型的用户。

三个坑:第一,Open WebUI 的许可证带品牌保留条款,做产品化或二次分发前先读 LICENSE;第二,Ollama 首次下载模型吃流量和磁盘;第三,ck 在大体量仓库里检索偏慢,先在小项目试水。

下期预告

顺着「本地优先」主线继续往下走,下一期做把本地模型接进你的编辑器——Continue / Cline 类开源编码助手横向对比,看本地模型怎么真正进到写代码的那一刻。

本文基于 ollama/ollama、open-webui/open-webui、BeaconBay/ck 三个官方仓库的 README 与许可证信息整理;安装与命令逐字取自各 README。Ollama 采用 MIT 协议;Open WebUI 采用含品牌保留要求的 Open WebUI License;ck 采用 Apache-2.0 / MIT 双协议。抓取时间 2026-09-15。