【大模型私有化部署】实战部分:Ollama 部署教程
文章目录
- 一、Ollama 简介
- 二、环境搭建
- 1)安装 Ollama
- 2)使用 Docker 容器运行 Ollama(可选)
- 三、Ollama 模型管理
- 1)模型下载
- 2)模型列表查看
- 3)模型运行
- 4)模型删除
- 5)其他常用命令
- 6)查看 Ollama 官方可用模型
- 四、根据显卡配置选择模型参数
- 五、应用示例 - 生成小红书文案
- 1)需求分析
- 2)利用 Ollama 生成文案
一、Ollama 简介
-
定位:私有化大模型管理(LLMOps)领域的开源项目,提供下载、运行和管理大语言模型(LLMs)的工具与服务,简化部署流程,降低使用门槛。
-
核心特性
- 开箱即用:无需复杂配置,简单命令即可完成模型下载与运行,适合新手。
- 模型兼容:支持主流开源大模型,如 Llama 系列、Gemma 系列、DeepSeek 系列等。
- 轻量架构:占用系统资源少,可在个人电脑、服务器等多种硬件环境稳定运行。
-
生态与社区
- 活跃开源社区,方便开发者交流经验、解决问题,获取技术动态和技巧。
- 社区持续贡献新功能和插件,丰富生态,且与其他工具、平台集成便捷。
二、环境搭建
1)安装 Ollama
- 系统要求:支持 macOS(11 Big Sur 及以上)、Linux(常见发行版如 Ubuntu、CentOS 等)、Windows(10 及以上)。
- 安装方式
curl -fsSL https://ollama.com/install.sh | sh
安装过程可能需输入管理员密码进行系统配置。
- 一键安装(推荐):终端执行命令
- 手动安装:若一键安装有问题,前往 Ollama 官方网站(https://ollama.com/download),按对应操作系统下载安装包,依据官方文档操作,如 Linux 系统解压后执行安装脚本、配置环境变量等。
2)使用 Docker 容器运行 Ollama(可选)
若系统环境复杂,或需便捷的环境隔离与迁移,可使用 Docker 容器。
- 安装 Docker:根据操作系统,前往 Docker 官方网站(https://www.docker.com/products/docker-desktop)下载安装。如 Ubuntu 系统,终端执行
sudo apt-get update
sudo apt-get install -y docker.io
- 拉取 Ollama 镜像:安装好 Docker 后,终端执行
docker pull ollama/ollama
- 启动 Ollama 容器
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
其中,-d
为守护进程模式;-v
实现数据持久化;-p
映射端口;--name
命名容器。
# 配置仓库
curl -fsSL https://nvidia.github.io/nvidia-container-runtime/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/nvidia-container-runtime/ubuntu22.04/amd64/nvidia-container-toolkit.list | sed's#deb https:#deb \[signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https:#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.listsudo apt-get update
sudo apt-get install -y nvidia-container-toolkit# 配置Docker使用Nvidia驱动
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
安装完成后,终端执行
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
--gpus=all
表示分配所有 GPU 设备给容器。
- 使用 CPU 运行:终端执行
- 使用 Nvidia GPU 运行:先安装 NVIDIA Container Toolkit
三、Ollama 模型管理
1)模型下载
- 命令行方式:终端执行命令可下载模型,如下载 Llama 3.1 模型(70B 参数,注意需匹配显卡配置)
ollama run llama3.1:70b
命令执行后,Ollama 会检查本地是否有该模型,无则从模型仓库下载,下载过程显示进度,完成后即可使用。
- 管理界面方式(若有):在浏览器输入 Ollama 服务地址(如
http://localhost:11434
)进入管理界面,找到模型下载选项,从可下载模型列表点击对应模型名称开始下载。
2)模型列表查看
终端执行命令查看本地已下载模型列表
ollama list
输出信息含模型名称、大小、最后修改时间等,示例如下:
ID | SIZE | MODIFIED |
---|---|---|
llama3.1:Latest | 4.7GB | 2 months ago |
gemma2:2b | 1.6GB | 2 days ago |
deepseek-r1:8b | 5.2GB | 1 week ago |
3)模型运行
终端执行ollama run
命令运行已下载模型并交互,如运行 Llama 3.1 模型
ollama run llama3.1:70b
运行后进入模型交互界面,输入问题或指令,模型会返回回答,示例如下:
>>> 请介绍一下人工智能的发展历程。人工智能的发展历程可以追溯到20世纪50年代...(模型回答内容)
4)模型删除
终端执行命令删除不再使用的模型以释放磁盘空间
ollama rm <模型名称>
如删除deepseek-r1:8b
模型,执行
ollama rm deepseek-r1:8b
5)其他常用命令
- 模型复制:创建模型副本,语法
ollama cp <源模型名称> <目标模型名称>
如将llama3.1:70b
复制为llama3.1-copy:70b
,执行
ollama cp llama3.1:70b llama3.1-copy:70b
- 模型查看:了解模型详细信息,如描述、参数等,使用命令
ollama show <模型名称>
如查看gemma2:2b
的信息,执行
ollama show gemma2:2b
- 服务停止与启动:停止 Ollama 服务执行
ollama stop
重新启动服务执行
ollama start
- 版本查看:查看当前 Ollama 版本信息,执行
ollama version
- 模型推送:将本地模型推送到远程仓库,语法
ollama push <模型名称>:<标签>
如推送deepseek-r1:8b
到远程仓库,执行
ollama push deepseek-r1:8b
- 模型拉取:从远程仓库拉取模型到本地,与
push
对应,语法
ollama pull <模型名称>:<标签>
如拉取llama3.1:70b
,执行
ollama pull llama3.1:70b
6)查看 Ollama 官方可用模型
可通过 Ollama 官方网站查看,进入Ollama 模型库页面,即可浏览官方提供的各种可用模型及其相关信息,如模型名称、描述、参数大小等。
四、根据显卡配置选择模型参数
-
计算逻辑:一般来说,模型所需显存约为模型参数大小(以字节为单位)乘以 2(考虑计算过程中的临时数据等)。
-
参数单位换算:1B(10 亿)参数,若每个参数以 FP16(半精度)存储,1B 参数约占 2GB 显存(1B×2 字节 = 2GB);以 INT4(4 位整数)存储,1B 参数约占 0.5GB 显存(1B×0.5 字节 = 0.5GB)。
-
示例:如 7B 参数模型,FP16 存储约需 14GB 显存,INT4 存储约需 3.5GB 显存。消费级显卡如 RTX 4090 显存为 24GB,大致可支持 FP16 存储的 10B 左右参数模型,或 INT4 存储的 40B 左右参数模型(具体需结合模型类型、优化方式等)。
五、应用示例 - 生成小红书文案
1)需求分析
为一款运动手表生成小红书爆款文案,需有吸引眼球的标题、生动活泼的正文,包含相关热门标签和表情符号,以增加曝光率和互动性。
2)利用 Ollama 生成文案
- 选择合适模型:如选择
deepseek-r1:8b
模型(假设其文本生成表现较好),若未下载,先执行ollama run deepseek-r1:8b
命令下载。 - 构建提示词:
请为一款运动手表生成一篇小红书爆款文案。要求标题要吸引眼球,突出运动手表的特色功能,如精准的运动监测、长续航等。正文要生动活泼,分享使用这款运动手表的真实体验,包括佩戴感受、功能使用感受等。文案中要包含至少5个相关标签和5个表情符号。
- 与模型交互生成文案:在 Ollama 模型交互界面输入上述提示词,模型生成文案示例如下:
>>> 请为一款运动手表生成一篇小红书爆款文案。要求标题要吸引眼球,突出运动手表的特色功能,如精准的运动监测、长续航等。正文要生动活泼,分享使用这款运动手表的真实体验,包括佩戴感受、功能使用感受等。文案中要包含至少5个相关标签和5个表情符号。
思考中...
【运动达人必备!这款运动手表简直开挂了🏃♂️】
宝子们,我最近挖到了一款超牛的运动手表,必须分享给你们!
它的运动监测功能精准到可怕,跑步时的配速、距离,运动消耗的卡路里,都能实时且精准地记录下来,就像有个专属私人教练在身边一样👩🏫
而且续航超给力,充一次电,我高强度使用一周都还有电,完全不用担心在运动途中没电失联😜
佩戴起来也很舒服,表带柔软亲肤,不会勒手腕。
\#运动手表推荐 #运动必备好物 #长续航手表 #精准运动监测 #运动装备 
实际应用中,可根据生成效果调整提示词,以获得更满意结果。