Ollama部署Deepseek
在mac系统中,这些点击图标打开的软件的环境变量,是不读取~/.zshrc等配置文件的,它们有着其它的环境变量逻辑。于是在修改了.zshrc环境变量后,通过执行ollama serve命令的方式启动ollama,执行lsof -i :11434,果然生效了。Ollama是一款专注于本地化部署和运行大型语言模型(LLM)的开源工具,其核心理念是简化大模型的安装、管理和交互流程,支持主流开源模型(
近年来,大语言模型(LLM)飞速发展,OpenAI 的 ChatGPT、Meta 的 LLaMA 系列、Mistral、Gemma 等模型不断刷新性能记录。而Ollama作为一个轻量级的本地大模型部署工具,让我们可以像运行 Docker 一样,快速运行 LLM,不再依赖于云端 API!
1.什么是 Ollama?
Ollama是一款专注于本地化部署和运行大型语言模型(LLM)的开源工具,其核心理念是简化大模型的安装、管理和交互流程,支持主流开源模型(如LLaMA、Mistral、DeepSeek等),适用于开发者、研究人员及AI爱好者。
2.Ollama 安装
Ollama 支持多种操作系统,包括 macOS、Windows、Linux 以及通过 Docker 容器运行。
下载地址:Ollama
选择对应的系统版本,下载后安装,安装完后终端输入
ollama --version
如果显示版本号,则说明安装成功。
3.Ollama 运行模型
Ollama 运行模型使用 ollama run 命令,Ollama官网上有很多Model可供下载,以deepseek为例:
找到deepseek-r1模型,点击可看到模型包括:
版本:1.5b,适用于一般文字编辑使用(需要1.1GB空余空间)ollama run deepseek-r1:1.5b
版本:7b,DeepSeek的第一代推理模型,性能与OpenAl-01相当,包括从基于Llama和Qwen的DeepSeek-R1中提取的六个密集模型(需要4.7GB空余空间)ollama run deepseek-r1:7b
版本:8b,(需要4.9GB空余空间)ollama run deepseek-r1:8b
版本:14b,(需要9GB空余空间)ollama run deepseek-r1:14b
版本:32b,(需要20GB空余空间)ollama run deepseek-r1:32b
版本:70b,(需要43GB空余空间)ollama run deepseek-r1:70b
版本:671b,(需要404GB空余空间)ollama run deepseek-r1:671b
电脑配置参考:
可以通过执行如下命令安装:
ollama run deepseek-r1:7b
安装完后即可进行对话。按Ctrl + d 或者/bye即可退出对话。
4.Ollama本地服务无法通过IP访问的解决方案
在系统上启动 Ollama 服务后,通过 localhost 可以正常访问 API,但通过本地 IP(如 192.168.1.106)访问时却报错 Connection refused。
1)检查ollama 配置
Ollama 默认仅监听 localhost,需配置为监听 0.0.0.0。
执行以下命令检查 ollama 监听的 ip
lsof -i :11434
若返回
其中localhost:11434,说明 ollama 只监听了localhost,这样当你使用 ip 访问 ollama 服务的时候就会被 refused。
2)环境变量强制覆盖配置(关键解决方案)
临时方案:
通过设置当前终端会话环境变量 OLLAMA_HOST 强制临时指定监听地址:
# 临时生效(当前终端会话)
export OLLAMA_HOST="0.0.0.0:11434"
ollama serve
永久生效方案:
将环境变量添加到 Shell 配置文件(如 ~/.bashrc 或 ~/.zshrc):
echo 'export OLLAMA_HOST="0.0.0.0:11434"' >> ~/.zshrc
source ~/.zshrc
正常返回应如下:
3)Mac设置OLLAMA_HOST
但当我在Mac本如此操作时,并未生效。在mac系统中,这些点击图标打开的软件的环境变量,是不读取~/.zshrc等配置文件的,它们有着其它的环境变量逻辑。于是在修改了.zshrc环境变量后,通过执行ollama serve命令的方式启动ollama,执行lsof -i :11434,果然生效了。但是通过桌面图标打开Ollama,仍然为localhost:11434。
于是改用下面的命令进行设置:
launchctl setenv OLLAMA_HOST 0.0.0.0:11434
可以通过下面的命令检查是否设置成功:
launchctl getenv OLLAMA_HOST
执行后,再通过图标打开ollama.app就可以生效了。
然而,这个设置环境变量的命令,重启电脑就失效了!或者说注销当前用户后,这个环境变量就失效了。当然,鉴于苹果电脑有不关机的传统,这个launchctl setenv方案也算是可以解决问题。
4)plist完美解决方案
为了追求更加完美的解决方案,可以考虑通过.plist编辑开机启动项。
新增com.sunan.test.plist(名称随意,但是名字字母排序会影响启动顺序)文件,位置/Users/***/Library/LaunchAgents/(意味着用户登陆之后才会被执行):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.sunan.test</string>
<key>EnvironmentVariables</key>
<dict>
<key>OLLAMA_HOST</key>
<string>0.0.0.0:11434</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/ollama</string>
<string>serve</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
然后执行命令:
launchctl load ~/Library/LaunchAgents/com.sunan.test.plist
不能执行多次load,会报错input or output error。所以适当的时候,可以执行:
launchctl unload ~/Library/LaunchAgents/com.sunan.test.plist
这里写的.plist脚本,可能会被系统标记为了“不明开发者”,同时会在执行的时候在右上角进行重点提示。这种方案下,重启系统后,依然也是生效的。
这个plist所表述的方式,类似下面这条常见的node项目的语句:
OLLAMA_HOST=0.0.0.0:11434 && /usr/local/bin/ollama serve
5)通过IP可访问

如上图可看到获取到了模型的回答。
这里提供ollama部署过程中其他可能会用的到的环境变量列表:
1. OLLAMA_HOST:这个变量定义了Ollama监听的网络接口。通过设置参数值为 0.0.0.0,我们可以让Ollama监听所有可用的网络接口,从而允许外部网络访问。
2. OLLAMA_MODELS:这个变量指定了模型镜像的存储路径。通过设置参数值为新模型所在路径,如E:\ollama\models,我们可以将模型镜像存储在E盘,避免C盘空间不足的问题。
3. OLLAMA_KEEP_ALIVE:这个变量控制模型在内存中的存活时间。设置参数值为24h可以让模型在内存中保持24小时,提高访问速度。
4. OLLAMA_PORT:这个变量允许我们更改Ollama的默认端口。例如,设置参数值为8080可以将服务端口从默认的11434更改为8080。
5. OLLAMA_NUM_PARALLEL:这个变量决定了Ollama可以同时处理的用户请求数量。设置参数值为4可以让Ollama同时处理两个并发请求。
6. OLLAMA_MAX_LOADED_MODELS:这个变量限制了Ollama可以同时加载的模型数量。设置参数值为4可以确保系统资源得到合理分配。
7. OLLAMA_ORIGINS: 允许的源列表,星号*或使用逗号分隔。
更多推荐


所有评论(0)