本地 AI 开发环境一站式搭建指南
本地 AI 开发环境一站式搭建指南
WEB项目地址:AI智能商品导购系统
安卓APP下载地址:精打细算
手把手教你在自己电脑上跑起大模型,全程离线、不用花一分钱
你有没有这样的经历:想把 AI 集成到自己的项目里,但一看那些在线 API 的收费,随便跑几次就能吃掉小半个月的零花钱。又或者你正在写一个处理敏感数据的工具,实在不放心把代码和文档往外发。其实完全可以在自己电脑上跑大模型——隐私在自己手里,没有网络也能用,而且效果并不比云端的差。
这篇文章从头开始,Miniconda → PyCharm → Ollama → 本地对话,一步步带你搭起自己的本地 AI 开发环境。
一、Miniconda 是什么?为什么要装它?
如果你写过 Python 程序,多半遇到过这种情况:这个项目需要 Python 3.9 和某个库的 1.0 版本,另一个项目需要 Python 3.13 和同一个库的 2.0 版本。两个项目放在一起,依赖库互相打架,装上这个那个就坏了。
Conda 就是解决这个问题的。Miniconda 是 Anaconda 的轻量版,只带了最核心的东西——conda 包管理器和基础的 Python 运行时,体积小、干净、灵活,后面用的时候缺什么再装什么就行。
去官网下载:https://docs.conda.io/en/latest/miniconda.html
Windows 用户直接双击 .exe 安装包,一路“Next”就行。但有一步非常关键:在 Advanced Options 这一步,一定要勾选 Add Miniconda3 to my PATH environment variable。不勾的话装完了在命令行里打 conda 会提示找不到命令。
装完之后打开命令行(Windows 可以在开始菜单里找 “Anaconda Prompt”),输入下面这个命令验证一下:
conda --version
如果显示出版本号(比如 conda 24.x.x),说明安装成功了。
接下来创建一个专属于本教程的虚拟环境。后面的所有操作都在这个环境里进行,不会影响你电脑上其他的 Python 项目。
conda create -n local_ai python=3.11 -y
conda activate local_ai
第一行命令的意思是:创建一个名叫 local_ai 的环境,Python 版本用 3.11。-y 表示自动确认,不用手动输 yes。第二行是激活这个环境——激活之后,命令行前面会多出一个 (local_ai) 的标识,代表你现在已经在这个独立的“小房间”里了。
二、把 PyCharm 和新环境连起来
环境建好了,但 PyCharm 还不知道这个环境的存在,需要手动告诉它。
打开 PyCharm 和你准备写代码的项目,在顶部菜单栏找到:
- Windows/Linux:File → Settings
- macOS:PyCharm → Preferences
然后依次点击 Project: 你的项目名 → Python Interpreter,你会看到一个空的解释器列表。
点击右上角的齿轮图标,选择 Add…。在弹出的窗口里,左边选 Conda Environment,然后选 Existing environment。
接下来需要告诉 PyCharm 刚才创建的 local_ai 环境里的 Python 解释器在哪里。点击右边那个浏览按钮,找到这个路径:
- Windows:
C:\Users\你的用户名\miniconda3\envs\local_ai\python.exe - macOS/Linux:
~/miniconda3/envs/local_ai/bin/python
选好之后点 OK。现在 PyCharm 右上角应该能显示 Python 3.11 的解释器了。为了确认是不是真的连上了,新建一个 .py 文件,输入:
import sys
print(sys.executable)
右键点 Run,如果打印出来的路径里包含 envs\local_ai 字样,就说明配置对了。
三、Ollama——把大模型拉到本地来
Ollama 是目前最好用的本地大模型运行工具。它做的事情很简单:一条命令就能把一个模型下载到本地,再一条命令就能跑起来,自动识别你的显卡(如果有的话)、自动做量化压缩,不需要折腾复杂的配置。
去 Ollama 官网 https://ollama.com/download,下载你对应系统的安装包。Windows 用户下载 .exe,双击安装,跟装普通软件没有区别。
安装完之后打开命令行(注意是普通的 CMD 或者 PowerShell,不是刚才那个 Anaconda Prompt),输入:
ollama --version
有输出就说明装好了。
现在拉一个模型试试。新手建议先用一个小体量的模型——跑得动,速度快,体验好。下面这条命令会从 Ollama 的模型库里下载一个 0.8B(8亿参数)的通义千问轻量版:
ollama pull qwen3:0.8b
国内网络拉模型可能会比较慢。如果发现下载速度很慢甚至卡住,可以设置一个环境变量来加速。Ollama 默认从海外官方服务器拉取模型,国内直连容易受阻,通过环境变量切换到国内镜像源可以显著提升下载速度。
具体做法是:
- Windows:打开“系统属性 → 高级 → 环境变量”,在“系统变量”里新建一个,变量名写
OLLAMA_BASE_URL,变量值写https://mirrors.ollama.ai。 - macOS/Linux:在终端执行
export OLLAMA_BASE_URL=https://mirrors.ollama.ai,然后重新打开终端。
设置好之后再用 ollama pull,下载速度会快不少。实测切换到镜像源后,下载速度平均能提升 3 到 5 倍。
等待下载完成(大概一两分钟),然后用命令行直接跟模型对话看看:
ollama run qwen3:0.8b
出现一个 >>> 提示符后,打个招呼试试。比如输入“你好,介绍一下你自己”,回车,看它怎么回答。能正常回复的话,Ollama 就配好了。
如果跑完发现模型对话质量不太满意,可以换更大的模型。把模型名字里的 0.8b 换成 7b 就是 70 亿参数的版本,效果会好很多,但对电脑内存的要求也更高。可以根据自己电脑的配置来选:
- 8GB 内存以下:建议用
qwen3:0.8b - 16GB 内存左右:可以用
qwen3:4b或qwen3:7b - 32GB 内存或以上:可以尝试更大的模型,也可以试试
llama3:8b、deepseek-coder:6.7b等
四、用 Python 代码调用本地模型——而不是只在命令行里打字
命令行里跟模型对话只是验证 Ollama 能跑通。真正的需求往往是在自己的 Python 代码里调用它——比如写一个自动生成文档的工具,或者把 AI 集成到某个业务逻辑里。
Ollama 自带一个 HTTP API 服务,默认跑在本地的 11434 端口上。也就是说,不管 Ollama 是否在 ollama run 的对话模式中,这个 API 都一直在后台提供服务。
先确保你已经在 PyCharm 里激活了 local_ai 虚拟环境(终端里执行 conda activate local_ai),然后装一个请求库:
pip install requests
新建一个 Python 文件,把下面的代码粘进去:
import requests
import json
def chat_with_local_ai(prompt, model="qwen3:0.8b"):
url = "http://localhost:11434/api/chat"
payload = {
"model": model,
"messages": [{"role": "user", "content": prompt}],
"stream": False
}
response = requests.post(url, json=payload)
if response.status_code == 200:
result = response.json()
return result["message"]["content"]
else:
return f"请求失败: {response.status_code} - {response.text}"
# 试一试
if __name__ == "__main__":
answer = chat_with_local_ai("用一句话解释什么是递归")
print(answer)
这里面最关键的是这段代码做的事情:向 Ollama 的 /api/chat 接口发送一个 POST 请求,带着你输入的提示词,模型在本地完成推理后把结果返回来。Ollama API 还有两个核心接口值得了解:/api/generate 用于纯文本生成,/api/chat 用于多轮对话。/api/chat 更适合用来处理带上下文的多轮交互。
运行这段代码,应该能看到模型返回的一句话解释。
如果想让模型更“有创意”一点——比如让 AI 写首诗或者随机生成一些内容——可以调整一个叫 temperature 的参数。temperature 越低(接近 0),模型回答越保守、越确定;temperature 越高(接近 1),模型回答越随意、越发散。修改 payload 里的部分:
"options": {
"temperature": 0.7,
"num_predict": 100
}
num_predict 控制模型最多返回多少个词。
五、能跑通但报错?这几个问题是必踩的坑
🔴 端口被占用(报错 bind: address already in use)
Ollama 默认用 11434 端口,如果你之前已经启动了一个 Ollama 服务,或者别的软件占用了这个端口,启动 Ollama 就会报错。用下面的命令查是谁占用了这个端口:
- Windows:
netstat -ano | findstr :11434 - macOS/Linux:
lsof -i :11434
从输出结果里找到占用端口的进程 PID(一个数字),然后结束它:
- Windows:
taskkill /PID 数字 /F - macOS/Linux:
kill -9 数字
或者直接改 Ollama 的端口,启动时加上:ollama serve --port 11435。
🔴 能连上本机但程序连不上(Connection refused)
这种情况通常有两个原因。第一,防火墙拦截了端口。Windows Defender 默认可能会拦截 11434 端口的入站请求。去“高级安全 Windows Defender 防火墙”里新建一个入站规则,端口写 11434,协议选 TCP,操作选“允许连接”。
第二,Ollama 可能只绑定了 localhost,只接受本机访问。如果想让局域网内其他电脑也能调用这个模型,启动 Ollama 之前设置一下:在命令行里执行 $env:OLLAMA_HOST="0.0.0.0:11434"(Windows PowerShell)或 export OLLAMA_HOST="0.0.0.0:11434"(macOS/Linux),然后再启动 Ollama 服务。
六、怎么让模型跑得更快?有个最简单的办法
Ollama 默认会自动检测显卡并尽可能利用 GPU 加速。所以如果电脑上有 NVIDIA 显卡,不用做额外配置,Ollama 会优先跑在 GPU 上;如果没有独显或者显存不够,就自动降级到 CPU。
想让模型跑得更快,可以留意以下三点:
第一,选对量化版本。 同一个 7B 的模型,不量化的话显存要占 14GB,用 Q4_K_M 量化后只占 4GB 左右。具体来说,Q4_K_M 是目前最通用的量化方案——在速度和效果之间做得最平衡。qwen3:7b-q4_K_M 这种带 q4_K_M 后缀的就是量化版本。
Ollama 里的绝大部分模型默认都是量化好的。你也可以主动挑选量化版本:用 ollama list 看本机已有的模型,用 ollama pull qwen3:7b-q4_K_M 拉取特定量化版本。
第二,控制上下文长度。 模型对话时的上下文窗口越长,占用的显存(或内存)就越大。如果只是简单问答,把对话历史控制在 4096 token 以内能省出 1 到 2 GB 的显存。
第三,关掉后台不用的软件。 浏览器十几个标签页、IDE 开着多个项目、微信钉钉都挂着,这些都会抢占内存。跑大模型之前把不必要的软件关掉能省出不少资源。
七、离线运行和隐私安全注意事项
Ollama 的所有计算都在本地完成,模型下载一次之后可以完全离线使用,不上传任何数据。这是本地部署最大的优势——代码、文档、私有数据不会往外传,不用担心 API 调用记录被别人看到。
但有一个很重要的安全问题要提醒你:Ollama 默认没有任何身份验证和访问控制。如果你在公网服务器上部署了 Ollama,并且让它监听了 0.0.0.0(也就是允许外网访问),那么任何人都可能调你的模型、甚至修改你的配置。
对于本教程的场景——在个人电脑上运行——默认配置是没有安全隐患的,因为 localhost 和 127.0.0.1 只允许本机访问,其他设备连不上。但如果你想把模型共享给局域网内的其他电脑,建议确保网络环境是受信任的(比如家庭网络或公司内网)。
另外,如果你打算迁移模型存储路径,建议先把 Ollama 服务停了,设置完新的 OLLAMA_HOME 环境变量之后再重启服务。
最后
走到这一步,你的电脑上已经跑起来一个完全属于你自己的本地 AI 了。从 Miniconda 虚拟环境到 PyCharm 的配置,从 Ollama 模型拉取到第一个 Python 调用,所有数据和代码都留在了你电脑上,没有发到任何云端。
如果还想再往前走一步:试试把 model 参数换成更大的模型;或者自己在 PyCharm 里写一个简单的命令行对话程序,加上对话历史记录;甚至把 Ollama 接入到现有的业务逻辑里,让它帮你做代码审查或文档翻译。
整个过程里踩过的那些坑——端口冲突、防火墙拦截、网络慢——都是你以后在其他环境部署时会再次遇到的经验。这里面的排查方法,可以留着以后直接用。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)