打开一个网站在建设中,石碣网站仿做,担保公司发展规划,wordpress 生成pdfollama 是一个开源的本地大语言模型运行框架#xff0c;它提供了非常简单便捷的使用形式#xff0c;让用户可以十分方便的在本地机器上部署和运行大型语言模型#xff0c;从而实现免费离线的方式使用 LLM 能力#xff0c;并确保私有数据的隐私和安全性。
1 ollama 安装
o…ollama 是一个开源的本地大语言模型运行框架它提供了非常简单便捷的使用形式让用户可以十分方便的在本地机器上部署和运行大型语言模型从而实现免费离线的方式使用 LLM 能力并确保私有数据的隐私和安全性。
1 ollama 安装
ollama 支持多种操作系统包括 macOS、Windows、Linux 以及通过 Docker 容器运行。其安装、使用及模型下载非常简单可以简单概括为以下几步 • 下载 ollama 安装程序并安装。 • 启动 ollama执行命令下载和运行模型。如ollama run deepseek-r1:1.5b • 以命令行交互、API 调用、第三方应用接入等形式使用其服务。
1.1 硬件要求
ollama 本身对硬件要求并不高主要取决于运行模型的要求。基本建议 你应该至少有 4 GB 的 RAM 来运行 1.5B 模型至少有 8 GB 的 RAM 来运行 7B 模型16 GB 的 RAM 来运行 13B 模型以及 32 GB 的 RAM 来运行 33B 模型。 假若需要本地私有化部署具有实用性的模型应至少有独立显卡并有 4G 以上显存。纯 CPU 模式虽然也可以运行但生成速度很慢仅适用于本地开发调试体验一下。
本人实测在Mac Studio 2023 版(Apple M2 Max 芯片12核、32G内存、30核显、1TB SSD)上运行 deepseek:1.5b 模型响应非常快可以较为流畅的运行 deepseek-r1:32b 及以下的模型。
DeepSeek-r1 相关版本及大小参考 参数版本 模型大小 建议CPU 建议内存 建议显存 特点 deepseek-r1:1.5b 1.1GB 4核 4~8G 4GB 轻量级速度快、普通文本处理 deepseek-r1:7b 4.7G 8核 16G 14GB 性能较好硬件要求适中 deepseek-r1:8b 4.9GB 8核 16G 14GB 略强于 7b精度更高 deepseek-r1:14b 9GB 12核 32G 26GB 高性能擅长复杂任务如数学推理、代码生成 deepseek-r1:32b 20GB 16核 64G 48GB 专业级适合高精度任务 deepseek-r1:70b 43GB 32核 128G 140GB 顶级模型适合大规模计算和高复杂度任务 deepseek-r1:671b 404GB 64核 512G 1342GB 超大规模性能卓越推理速度快
1.2 Windows \ macOS \ Linux 下安装 ollama
Windows 和 macOS 用户可访问如下地址下载安装文件并安装 • 国内中文站下载http://ollama.org.cn/download/ • 官方下载https://ollama.com/download/ • github release 下载https://github.com/ollama/ollama/releases/
Linux 用户可以执行如下命令一键安装
curl -fsSL https://ollama.com/install.sh | bash
安装完成后可以通过执行 ollama --version 命令查看 ollama 版本信息以验证是否安装成功。
ollama 离线安装
Windows 和 macOS 下直接复制安装文件到本地本进行安装即可。
Linux 下的离线安装主要步骤参考如下
mkdir -p /home/ollama
cd /home/ollama# 查看服务器 CPU 信息获取其架构如x86_64
lscpu# 访问如下地址下载对应架构的 ollama 安装包
# https://github.com/ollama/ollama/releases/
# - x86_64 CPU 选择下载 ollama-linux-amd64
# - aarch64|arm64 CPU 选择下载 ollama-linux-arm64
# 示例
wget https://github.com/ollama/ollama/releases/download/v0.5.11/ollama-linux-amd64.tgz# 下载 安装脚本并放到 /home/ollama 目录下
wget https://ollama.com/install.sh# 将 ollama-linux-amd64.tgz 和 install.sh 拷贝到需要安装的机器上如放到 /home/ollama 目录下
# 然后执行如下命令
tar -zxvf ollama-linux-amd64.tgz
chmod x install.sh
# 编辑 install.sh 文件找到如下内容
curl --fail --show-error --location --progress-bar -o $TEMP_DIR/ollama https://ollama.com/download/ollama-linux-${ARCH}${VER_PARAM}
# 注释它并在其下增加如下内容
cp ./ollama-linux-amd64 $TEMP_DIR/ollama# 执行安装脚本
./install.sh# 模型的离线下载请参考下文模型导入部分
1.3 基于 Docker 安装 ollama
基于 Docker 可以使得 ollama 的安装、更新与启停管理更为便捷。
首先确保已安装了 docker然后执行如下命令
# 拉取镜像
docker pull ollama/ollama# 运行容器CPU 模式
docker run -d -p 11434:11434 -v /data/ollama:/root/.ollama --name ollama ollama/ollama
# 运行容器GPU 模式
docker run --gpusall -d -p 11434:11434 -v /data/ollama:/root/.ollama --name ollama ollama/ollama# 进入容器 bash 下并下载模型
docker exec -it ollama /bin/bash
# 下载一个模型
ollama pull deepseek-r1:8b
也可以基于 docker-compose 进行启停管理。docker-compose.yml 参考
services:ollama:image:ollama/ollamacontainer_name:ollamarestart:unless-stoppedports:-11434:11434volumes:-/data/ollama:/root/.ollamaenvironment:# 允许局域网跨域形式访问APIOLLAMA_HOST0.0.0.0:11434OLLAMA_ORIGINS*
1.4 修改 ollama 模型默认保存位置
ollama 下载的模型默认的存储目录如下 • macOS: ~/.ollama/models • Linux: /usr/share/ollama/.ollama/models • Windows: C:\Users\username\.ollama\models
若默认位置存在磁盘空间告急的问题可以通过设置环境变量 OLLAMA_MODELS 修改模型存储位置。示例
# macOS / Linux写入环境变量配置到 ~/.bashrc 文件中
echo export OLLAMA_MODELS/data/ollama/models ~/.bashrc
source ~/.bashrc# Windows按 WINR 组合键并输入 cmd 打开命令提示符
# 然后执行如下命令写入到系统环境变量中
setx OLLAMA_MODELS D:\data\ollama\models
如果已经下载过模型可以从上述默认位置将 models 目录移动到新的位置。
对于 docker 安装模式则可以通过挂载卷的方式修改模型存储位置。
1.5 使用基于 API 形式访问 ollama 服务
ollama 安装完成并正常启动后可以通过命令行形式运行模型如ollama run deepseek-r1:1.5b并通过命令行交互的方式进行测试。
此外也可以通过访问 http://localhost:11434 以 API 调用的形式调用。示例
curl http://localhost:11434/api/generate -d {model: deepseek-r1:8b,stream: false,prompt: 你是谁
}
ollama API 文档参考 • https://ollama.readthedocs.io/api/ • https://github.com/ollama/ollama/blob/main/docs/api.md
2 使用 ollama 下载和运行模型
2.1 使用 ollama 命令行下载和运行模型
执行如下命令下载并运行一个模型
# 基本格式为
ollama run model_name:size# 例如下载并运行 deepseek-r1 的 1.5b 模型
# 如果下载模型速度开始较快后面变慢可以 kill 当前进程并重新执行
ollama run deepseek-r1:1.5b
运行成功则会进入命令行交互模式可以直接输入问题并获得应答反馈也可以通过 API 调用方式测试和使用。
从如下地址可搜索 ollama 所有支持的模型 • 中文站https://ollama.org.cn/search • 官方站https://ollama.com/search
从 HF 和魔塔社区下载模型
ollama 还支持从 HF 和魔塔社区下载第三方开源模型。基本格式为
# 从 HF(https://huggingface.co) 下载模型的格式
ollama run hf.co/{username}/{reponame}:latest
# 示例
ollama run hf.co/bartowski/Llama-3.2-1B-Instruct-GGUF:Q8_0# 从魔塔社区(https://modelscope.cn)下载模型的格式
ollama run modelscope.cn/{username}/{model}
# 示例
ollama run modelscope.cn/Qwen/Qwen2.5-3B-Instruct-GGUF:Q3_K_M
2.2 使用 ollama create 导入本地模型
通过 ollama run 和 ollama pull 命令均是从官方地址下载模型可能会遇到下载速度慢、下载失败等问题。
ollama 支持从本地导入模型。我们可以从第三方下载模型文件并使用 ollama create 命令导入到 ollama 中。
例如假若我们下载了 deepseek-r1:8b 模型文件并保存在 /data/ollama/gguf/deepseek-r1-8b.gguf则可执行如下命令进行导入
cd /data/ollama/gguf
echo From ./deepeek-r1-8b.gguf modelfile-deepseek-r1-8b
ollama create deepseek-r1:8b -f modelfile-deepseek-r1-8b# 查看模型信息
ollama list
ollama show deepseek-r1:8b# 运行模型(以命令行交互模式使用)
ollama run deepseek-r1:8b
相关文档参考 • https://ollama.readthedocs.io/import/ • https://ollama.readthedocs.io/modelfile/
3 ollama 常用命令参考
ollama 提供了丰富的命令行工具方便用户对模型进行管理。 • ollama --help查看帮助信息。 • ollama serve启动 ollama 服务。 • ollama create model-name [-f Modelfile]根据一个 Modelfile 文件导入模型。 • ollama show model-name:[size]显示某个模型的详细信息。 • ollama run model-name:[size]运行一个模型。若模型不存在会先拉取它。 • ollama stop model-name:[size]停止一个正在运行的模型。 • ollama pull model-name:[size]拉取指定的模型。 • ollama push model-name将一个模型推送到远程模型仓库。 • ollama list列出所有模型。 • ollama ps列出所有正在运行的模型。 • ollama cp source-model-name new-model-name复制一个模型。 • ollama rm model-name:[size]删除一个模型。
4 ollama 安装使用常见问题及解决
4.1 ollama 模型下载慢离线下载与安装模型
通过 ollama 官方命令拉取模型可能会遇到网速慢、下载时间过长等问题。
4.1.1 开始快后来慢间隔性重启下载
由于模型文件较大下载过程中可能会遇到开始网速还可以后面变慢的情况。许多网友反馈退出然后重试则速度就可以上来了所以可以尝试通过每隔一段时间退出并重新执行的方式以保持较快的下载速率。
以下是基于该逻辑实现的下载脚本注意将其中的 deepseek-r1:7b 替换为你希望下载的模型版本。
Windows 下在 powershell 中执行
while ($true) {$modelExists ollama list | Select-String deepseek-r1:7bif ($modelExists) {Write-Host 模型已下载完成break}Write-Host 开始下载模型...$process Start-Process -FilePath ollama -ArgumentList run, deepseek-r1:7b -PassThru -NoNewWindow# 等待60秒Start-Sleep -Seconds 60try {Stop-Process -Id $process.Id -Force -ErrorAction StopWrite-Host 已中断本次下载准备重新尝试...}catch {Write-Host error}
}
macOS / Linux 下在终端中执行
#!/bin/bashwhiletrue; do# 检查模型是否已下载完成modelExists$(ollama list | grep deepseek-r1:7b)if [ -n $modelExists ]; thenecho模型已下载完成breakfi# 启动ollama进程并记录echo开始下载模型...ollama run deepseek-r1:7b # 在后台启动进程processId$! # 获取最近启动的后台进程的PID# 等待60秒sleep 60# 尝试终止进程ifkill -0 $processId 2/dev/null; thenkill -9 $processId# 强制终止进程echo已中断本次下载准备重新尝试...elseecho进程已结束无需中断fi
done
4.1.2 通过网盘等第三方离线下载并导入 ollama 模型
可以通过国内的第三方离线下载模型文件再导入到 ollama 中。详细参考 2.2 章节。
deepseek-r1 相关模型夸克网盘下载 链接https://pan.quark.cn/s/7fa235cc64ef 提取码wasX 也可以从 魔塔社区、HuggingFace 等大模型社区搜索并下载 stuff 格式的模型文件。例如 • https://modelscope.cn/models/unsloth/DeepSeek-R1-Distill-Qwen-7B-GGUF/files • https://huggingface.co/unsloth/DeepSeek-R1-GGUF
4.1.3 从国内大模型提供站下载模型
ollama 支持从魔塔社区直接下载模型。其基本格式为
ollama run modelscope.cn/{model-id}
一个模型仓库可能包含多个模型可以指定到具体的模型文件名以只下载它。示例
ollama run modelscope.cn/Qwen/Qwen2.5-3B-Instruct-GGUF
#
ollama run modelscope.cn/Qwen/Qwen2.5-3B-Instruct-GGUF:qwen2.5-3b-instruct-q3_k_m.gguf
下载 deepseek-r1 模型命令参考
# deepseek-r1:7b
ollama run modelscope.cn/unsloth/DeepSeek-R1-Distill-Qwen-7B-GGUF:DeepSeek-R1-Distill-Qwen-7B-Q4_K_M.gguf
# deepseek-r1:14b
ollama run modelscope.cn/unsloth/DeepSeek-R1-Distill-Qwen-14B-GGUF:Q4_K_M
# deepseek-r1:32b
ollama run modelscope.cn/unsloth/DeepSeek-R1-Distill-Qwen-32B-GGUF:Q4_K_M
此外也可以从 HF 的国内镜像站https://hf-mirror.com查找和拉取模型方法与上述类似
# 基本格式
ollama run hf-mirror.com/{username}/{reponame}:{label}# 示例 - 拉取 deepseek-r1:7b
ollama run hf-mirror.com/unsloth/DeepSeek-R1-Distill-Qwen-7B-GGUF:Q4_K_M
4.2 ollama 服务设置允许局域网访问
默认情况下 API 服务仅允许本机访问若需要允许局域网其他设备直接访问可修改环境变量 OLLAMA_HOST 为 0.0.0.0并修改 OLLAMA_ORIGINS 为允许的域名或 IP 地址。
环境变量设置示例
# windows 命令提示符下执行
setx OLLAMA_HOST 0.0.0.0:11434
setx OLLAMA_ORIGINS *# macOS 终端下执行
launchctl setenv OLLAMA_HOST 0.0.0.0:11434
launchctl setenv OLLAMA_ORIGINS *
特别注意 • 如果你是在云服务器等拥有公网IP的环境上部署请谨慎做此设置否则可能导致 API 服务被恶意调用。 • 若需要局域网其他设备访问请确保防火墙等安全设置允许 11434 端口访问。 • 若需要自定义访问端口号可通过环境变量 OLLAMA_HOST 设置如OLLAMA_HOST0.0.0.0:11435。
4.3 为 ollama API 服务访问增加 API KEY 保护
为云服务器部署的服务增加 API KEY 以保护服务 如果你是通过云服务器部署那么需要特别注意服务安全避免被互联网工具扫描而泄露导致资源被第三方利用。
可以通过部署 nginx 并设置代理转发以增加 API KEY 以保护服务同时需要屏蔽对 11434 端口的互联网直接访问形式。
nginx 配置
server {# 用于公网访问的端口listen 8434;# 域名绑定若无域名可移除server_name your_domain.com;location / {# 验证 API KEY。这里的 your_api_key 应随便修改为你希望设置的内容# 可通过 uuid 生成器工具随机生成一个https://tool.lzw.me/uuid-generatorif ($http_authorization ! Bearer your_api_key) {return 403;}# 代理转发到 ollama 的 11434 端口proxy_pass http://localhost:11434;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}
}
5 集成可视化工具
在部署了 ollama 并拉取了 deepseek 等模型后即可通过命令行交互和 API 服务方式使用但使用起来并不方便。
开源社区中有许多大模型相关的可视化工具如 open-webui、chat-ui、cherry-studio、AnythingLLM 等可以方便地集成 ollama API 服务提供图形化界面使用以实现聊天机器人、问答知识库等多元化应用。在官方文档中列举了大量较为流行的工具应用https://ollama.readthedocs.io/quickstart/#web
我们后续会选择其中较为典型的工具进行集成和介绍。
5.1 示例基于 docker 部署 open-webui 并配置集成 ollama 服务
Open WebUI 是一个开源的大语言模型项目通过部署它可以得到一个纯本地运行的基于浏览器访问的 Web 服务。它提供了可扩展、功能丰富、用户友好的自托管 AI Web 界面支持各种大型语言模型LLM运行器可以通过配置形式便捷的集成 ollama、OpenAI 等提供的 API。
通过 Open WebUI 可以实现聊天机器人、本地知识库、图像生成等丰富的大模型应用功能。
在开始之前请确保你的系统已经安装了 docker。
接着拉取大语言模型 deepseek-r1:8b 和用于 RAG 构建本地知识库的嵌入模型 bge-m3
ollama pull deepseek-r1:8b
ollama pull bge-m3
然后新建文件 docker-compose.yml内容参考
services:open-webui:image:ghcr.io/open-webui/open-webui:mainenvironment:-OLLAMA_API_BASE_URLhttp://ollama:11434/api-HF_ENDPOINThttps://hf-mirror.com-WEBUI_NAMELZW的LLM服务# 禁用 OPENAI API 的请求。若你的网络环境无法访问 openai请务必设置该项为 false# 否则在登录成功时会因为同时请求了 openai 接口而导致白屏时间过长-ENABLE_OPENAI_APIfalse# 设置允许跨域请求服务的域名。* 表示允许所有域名-CORS_ALLOW_ORIGIN*# 开启图片生成-ENABLE_IMAGE_GENERATIONtrue# 默认模型-DEFAULT_MODELSdeepseek-r1:8b# RAG 构建本地知识库使用的默认嵌入域名-RAG_EMBEDDING_MODELbge-m3ports:-8080:8080volumes:-./open_webui_data:/app/backend/dataextra_hosts:# - host.docker.internal:host-gateway
这里需注意 environment 环境变量部分的自定义设置。许多设置也可以通过登录后在 web 界面进行修改。
在该目录下执行该命令以启动服务docker-compose up -d。成功后即可通过浏览器访问http://localhost:8080。
服务镜像更新参考
# 拉取新镜像
docker-compose pull
# 重启服务
docker-compose up -d --remove-orphans
# 清理镜像
docker image prune • open-webui 详细文档参考https://docs.openwebui.com/getting-started/env-configuration
可选开启“联网搜索”功能
操作路径设置 - 联网搜索 - 启用联网搜索
当前已支持接入的联网搜索引擎中在不需要魔法上网的情况下有 bing 和 bocha 可以选择接入。基本只需要前往注册并获取 API KEY 回填到这里即可。如果需要保护隐私数据请不要开启并配置该功能。 • 博查文档https://aq6ky2b8nql.feishu.cn/wiki/XgeXwsn7oiDEC0kH6O3cUKtknSR
总结与参考
通过以上内容我们了解了 ollama 在国内环境下的安装使用方法并介绍了因为国内网络特色导致安装过程可能会遇到的常见问题及解决办法。希望这些内容对你有所帮助如果你有任何问题或建议欢迎在评论区留言交流。 • ollama 官方站https://ollama.com • ollama 中文站https://ollama.org.cn • ollama 入门https://ollama.readthedocs.io/quickstart/ • ollama 常见问题https://ollama.readthedocs.io/faq/ • 魔塔社区https://modelscope.cn • HF Mirrorhttps://hf-mirror.com • open-webui 文档https://docs.openwebui.com