前言
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.5b1.1GB4核4~8G4GB轻量级,速率快、普通文本处置处罚deepseek-r1:7b4.7G8核16G14GB性能较好,硬件要求适中deepseek-r1:8b4.9GB8核16G14GB略强于 7b,精度更高deepseek-r1:14b9GB12核32G26GB高性能,擅长复杂任务,如数学推理、代码生成deepseek-r1:32b20GB16核64G48GB专业级,适合高精度任务deepseek-r1:70b43GB32核128G140GB顶级模型,适合大规模计算和高复杂度任务deepseek-r1:671b404GB64核512G1342GB超大规模,性能卓越,推理速率快 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 --gpus=all -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/ollama
- container_name:ollama
- restart:unless-stopped
- ports:
- -11434:11434
- volumes:
- -/data/ollama:/root/.ollama
- environment:
- # 允许局域网跨域形式访问API
- OLLAMA_HOST=0.0.0.0:11434
- OLLAMA_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:按 `WIN+R` 组合键并输入 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:7b"
- if ($modelExists) {
- Write-Host "模型已下载完成!"
- break
- }
- Write-Host "开始下载模型..."
- $process = Start-Process -FilePath "ollama" -ArgumentList "run", "deepseek-r1:7b" -PassThru -NoNewWindow
- # 等待60秒
- Start-Sleep -Seconds 60
- try {
- Stop-Process -Id $process.Id -Force -ErrorAction Stop
- Write-Host "已中断本次下载,准备重新尝试..."
- }
- catch {
- Write-Host "error"
- }
- }
复制代码 macOS / Linux 下在终端中执行:
- #!/bin/bash
- whiletrue; do
- # 检查模型是否已下载完成
- modelExists=$(ollama list | grep "deepseek-r1:7b")
- if [ -n "$modelExists" ]; then
- echo"模型已下载完成!"
- break
- fi
- # 启动ollama进程并记录
- echo"开始下载模型..."
- ollama run deepseek-r1:7b & # 在后台启动进程
- processId=$! # 获取最近启动的后台进程的PID
- # 等待60秒
- sleep 60
- # 尝试终止进程
- ifkill -0 $processId 2>/dev/null; then
- kill -9 $processId# 强制终止进程
- echo"已中断本次下载,准备重新尝试..."
- else
- echo"进程已结束,无需中断"
- 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_HOST=0.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-generator
- if ($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:main
- environment:
- -OLLAMA_API_BASE_URL=http://ollama:11434/api
- -HF_ENDPOINT=https://hf-mirror.com
- -WEBUI_NAME="LZW的LLM服务"
- # 禁用 OPENAI API 的请求。若你的网络环境无法访问 openai,请务必设置该项为 false
- # 否则在登录成功时,会因为同时请求了 openai 接口而导致白屏时间过长
- -ENABLE_OPENAI_API=false
- # 设置允许跨域请求服务的域名。* 表示允许所有域名
- -CORS_ALLOW_ORIGIN=*
- # 开启图片生成
- -ENABLE_IMAGE_GENERATION=true
- # 默认模型
- -DEFAULT_MODELS=deepseek-r1:8b
- # RAG 构建本地知识库使用的默认嵌入域名
- -RAG_EMBEDDING_MODEL=bge-m3
- ports:
- -8080:8080
- volumes:
- -./open_webui_data:/app/backend/data
- extra_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 在国内环境下的安装使用方法,并介绍了由于国内网络特色导致安装过程大概会遇到的常见题目及解决办法。
最后的最后
感谢你们的阅读和喜好,作为一位在一线互联网行业奋斗多年的老兵,我深知在这个瞬息万变的技术范畴中,连续学习和进步的重要性。
为了帮助更多热爱技术、渴望成长的朋侪,我特别整理了一份涵盖大模型范畴的宝贵资料集。
这些资料不但是我多年积累的心血结晶,也是我在行业一线实战经验的总结。
这些学习资料不但深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。如果你乐意花时间沉下心来学习,相信它们一定能为你提供实质性的帮助。
这份完备版的大模型 AI 学习资料已经上传CSDN,朋侪们如果须要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
DeepSeek全套安装摆设资料
大模型知识脑图
为了成为更好的 AI大模型 开辟者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
经典册本阅读
阅读AI大模型经典册本可以帮助读者进步技术程度,开辟视野,掌握核心技术,进步解决题目的本领,同时也可以鉴戒他人的经验。对于想要深入学习AI大模型开辟的读者来说,阅读经典册本黑白常有须要的。
实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到现实当中去,这时候可以搞点实战案例来学习。
面试资料
我们学习AI大模型一定是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
640套AI大模型报告合集
这套包罗640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研职员、工程师,还是对AI大模型感爱好的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
这份完备版的大模型 AI 学习资料已经上传CSDN,朋侪们如果须要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |