我用开源大模型搭了一套本地 AI 助手:不花钱、不联网、数据全留在自己电脑上

适合关注数据隐私、不想付 API 费用、想在自己电脑上跑 AI 的开发者。
本文从模型选型到部署到实际使用,附完整步骤和踩坑记录。

为什么跑本地模型

用云端 AI(GPT-4、Claude)有三个问题:

  1. 数据隐私:你的代码、文档、笔记都要上传到云端,公司项目可能有合规要求
  2. 费用:GPT-4 API 按 token 收费,写一篇 3000 字文章大约花 1-3 元,一个月下来不少
  3. 网络依赖:没网就不能用,国内访问有时不稳定

本地模型的好处:免费、隐私安全、离线可用

坏处也有:模型能力比 GPT-4/Claude 差一档,需要显卡。

模型选型:哪些开源模型值得跑

我测了 5 个主流开源模型,用同一任务(写一篇 500 字技术文章)对比:

模型 参数量 显存需求 中文能力 代码能力 推荐场景
DeepSeek-V3 671B 40GB+ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ 中文写作首选
Qwen2.5-72B 72B 40GB ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ 性价比最高
Qwen2.5-14B 14B 10GB ⭐⭐⭐⭐ ⭐⭐⭐ 消费级显卡首选
Llama3.1-8B 8B 6GB ⭐⭐⭐ ⭐⭐⭐⭐ 英文为主场景
DeepSeek-R1-8B 8B 6GB ⭐⭐⭐⭐ ⭐⭐⭐ 推理任务

选型建议

你的显卡 推荐模型 说明
24GB(RTX 4090) Qwen2.5-72B(Q4量化) 中文最强,能跑 72B 量化版
12GB(RTX 4070) Qwen2.5-14B 消费级显卡最佳选择
8GB(RTX 4060) DeepSeek-R1-8B / Llama3.1-8B 轻量级,速度快
没有显卡 Qwen2.5-7B(CPU推理) 纯 CPU 能跑,但很慢

部署步骤

第一步:安装 Ollama

Ollama 是最简单的本地模型运行工具,一行命令搞定。

# Windows/Mac/Linux 都支持
# 下载地址:https://ollama.com/download

# 安装完成后验证
ollama --version

第二步:下载模型

# 下载 Qwen2.5-14B(约 9GB)
ollama pull qwen2.5:14b

# 或者下载 DeepSeek-R1-8B(约 5GB)
ollama pull deepseek-r1:8b

# 查看已下载的模型
ollama list

第三步:运行模型

# 命令行对话
ollama run qwen2.5:14b

# 或者通过 API 调用(兼容 OpenAI 格式)
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2.5:14b",
    "messages": [{"role": "user", "content": "用 Python 写一个快速排序"}]
  }'

第四步:Python 集成

from openai import OpenAI

# 指向本地 Ollama,兼容 OpenAI SDK
client = OpenAI(
    base_url="http://localhost:11434/v1",
    api_key="ollama"  # 随便填,不需要真实 key
)

def local_chat(prompt, model="qwen2.5:14b"):
    """本地模型对话"""
    response = client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": prompt}],
        temperature=0.7
    )
    return response.choices[0].message.content

# 使用
answer = local_chat("用 Python 写一个快速排序算法,附注释")
print(answer)

进阶:搭一套完整的本地 AI 工作流

光能对话还不够,我把本地模型集成到了日常工作流中:

本地知识库问答

import chromadb

# 本地向量数据库
db = chromadb.PersistentClient(path="./local_kb")
collection = db.get_or_create_collection("my_docs")

def local_rag(question, top_k=3):
    """本地 RAG:向量搜索 + 本地模型回答"""
    # 1. 搜索知识库(用本地 embedding 模型)
    results = collection.query(query_texts=[question], n_results=top_k)
    context = "\n\n".join(results["documents"][0])

    # 2. 用本地模型生成回答
    prompt = f"""基于以下资料回答问题。如果资料中没有相关内容就说没找到。

资料:
{context}

问题:{question}
回答:"""

    return local_chat(prompt)

本地代码助手

def code_helper(task, code=None):
    """本地代码助手:写代码/解释代码/找 bug"""
    if code:
        prompt = f"""你是 Python 代码助手。用户给了以下代码和任务:

代码:
```python
{code}

任务:{task}

请给出修改后的完整代码,附注释说明改了什么。“”"
else:
prompt = f"""你是 Python 代码助手。请完成以下任务,给出完整可运行的代码:

任务:{task}

要求:代码附中文注释。“”"

return local_chat(prompt)

示例:写代码

result = code_helper(“写一个批量重命名文件的函数”)

示例:找 bug

buggy_code = “”"
def add(a, b):
return a - b
“”"
result = code_helper(“找出这段代码的 bug 并修复”, buggy_code)


### 本地文章润色

```python
def polish_article draft):
    """用本地模型润色文章"""
    prompt = f"""你是技术文章编辑。请润色以下文章草稿:

要求:
- 保持原意,不改变核心观点
- 删除冗余的句子
- 口语化,不要"首先...其次...最后"这类模板句
- 段落不超过 4 句

草稿:
{draft}

润色后的版本:"""

    return local_chat(prompt)

性能实测

同一台电脑(RTX 4070 12GB),不同模型的推理速度:

模型 首 token 延迟 生成速度 500 字耗时
Qwen2.5-14B 0.8 秒 35 tokens/s 约 15 秒
DeepSeek-R1-8B 0.5 秒 50 tokens/s 约 10 秒
Qwen2.5-72B-Q4 2 秒 12 tokens/s 约 45 秒

对比云端模型(GPT-4):首 token 约 1 秒,生成约 40 tokens/s。本地 14B 模型速度已经接近云端。

踩坑记录

坑 1:模型下载到 C 盘,空间爆了

症状:Ollama 默认把模型存在 C:\Users\用户名\.ollama\models,14B 模型占 9GB。

解决:设置环境变量改存储路径。

# Windows
set OLLAMA_MODELS=D:\ollama\models

# Linux/Mac
export OLLAMA_MODELS=/data/ollama/models

坑 2:显存不够,模型加载失败

症状:跑 72B 模型时报 CUDA out of memory。

原因:显存不够。72B 模型全精度需要 140GB+ 显存。

解决:用量化版(Q4),72B Q4 只需约 40GB。显卡不够就用 14B 或 8B。

坑 3:CPU 推理太慢

症状:没有显卡,纯 CPU 跑 7B 模型,500 字要等 2 分钟。

解决:CPU 推理建议用 7B 以下模型,或者用 llama.cpp 的 CPU 优化版本。

坑 4:中文输出乱码

症状:部分模型输出中文时偶尔出现乱码。

原因:模型的 tokenizer 对中文支持不好。

解决:优先选 Qwen 系列(阿里出品,中文原生支持),避免 Llama 系列(英文为主)。

坑 5:API 兼容性问题

症状:用 OpenAI SDK 调 Ollama,某些参数不支持报错。

原因:Ollama 的 API 不是 100% 兼容 OpenAI。

解决:不用的参数(如 frequency_penalty)删掉,只保留基本的 modelmessagestemperature

总结

3 条核心经验:

  1. 14B 模型是性价比甜点。中文能力接近 72B,显存需求只有 1/3,RTX 4070 就能跑。

  2. Ollama 是最简单的本地部署方案。一行命令下载,一行命令运行,API 兼容 OpenAI 格式,Python 代码几乎不用改。

  3. 本地模型适合"初稿+润色",不适合"从零创作"。让它帮你写初稿、改 bug、润色文字够用,但让它写高质量长文还是得靠 GPT-4/Claude。


你有在本地跑过 AI 模型吗?遇到过什么问题?评论区交流。

更多推荐