当前位置: 首页 > java >正文

自己动手,在Mac开发机上利用ollama部署一款轻量级的大模型Phi-3:mini

首先你需要认识Ollama,Ollama本身并不是一个大语言模型(LLM)。它是一款开源的大语言模型运行框架或平台,专门设计用来简化在本地计算机上部署和运行各种大语言模型的过程135。你可以把它理解为一个强大的“模型管理器”和“运行环境”。
我选择了在Mac开发机上先安装docker,然后在docker中安装ollama,命令如下:
docker run -d --name ollama -p 11434:11434 -v ollama_data:/root/.ollama --restart unless-stopped ollama/ollama

第一步:进入正在运行的 Ollama 容器

打开您的终端(Terminal),执行以下命令来进入名为 ollama 的 Docker 容器内部:

docker exec -it ollama bash
  • docker exec: 在运行的容器中执行命令
  • -it: 以交互模式进入容器
  • ollama: 您的容器名称
  • bash: 启动 Bash shell

执行成功后,您的命令行提示符会发生变化,表示您现在已经在容器内部了。

第二步:拉取并运行一个轻量级模型

在容器内部的命令行中,使用 ollama pull 命令来下载模型。对于 Mac 电脑的练习和学习,我强烈推荐以下几款轻量级且性能优秀的模型:

  1. Phi-3:mini (微软) - 极佳入门选择
# 这是一个3.8B参数的超强小模型,智能程度高,非常适合Mac
ollama pull phi3:mini
  1. Llama 3.2:1B (Meta) - 最新、极速
# 这是Meta在2024年7月发布的最新1B参数模型,非常轻快,性能很好
ollama pull llama3.2:1b

💡 建议:
对于初次练习,直接从 phi3:mini 或 llama3.2:1b 开始是最好的选择。它们在小体型下提供了惊人的智能水平。

执行示例:

# 这是一个3.8B参数的超强小模型,智能程度高,非常适合Mac
ollama pull phi3:mini

你会看到下载进度条,等待它完成即可。模型会自动存放在您之前通过 -v ollama_data:/root/.ollama 映射的卷中,所以下次启动容器时模型依然存在。

第三步:与模型互动测试

模型拉取完成后,您就可以直接运行它并进行对话测试了。

方法A:在容器内直接进行命令行对话

# 在容器内部,运行刚下载的模型
ollama run phi3:mini

然后您就可以开始输入问题了,例如:

>>> 请用简单的语言解释一下什么是机器学习?

输入 /bye 可以退出对话。

方法B:通过API接口调用(更常用的方式)

退出容器(输入 exit),在您本地Mac的终端中,您可以通过curl命令直接访问Docker容器的API:

# 向容器内的Ollama API发送一个请求
curl http://localhost:11434/api/generate -d '{"model": "phi3:mini","prompt": "为什么天空是蓝色的?","stream": false
}'

您将会收到一个JSON格式的响应,其中包含模型的回答。

第四步:安装Open-WebUI(可选,强烈推荐)

命令行操作可能不够直观,安装一个Web界面可以极大地提升体验。Open-WebUI是一个开源项目,可以连接到您的Ollama。

1. 在您Mac的终端(不是在Ollama容器里)运行以下命令:

docker run -d \--name open-webui \-p 3000:8080 \--add-host=host.docker.internal:host-gateway \-v open-webui-data:/app/backend/data \--restart always \ghcr.io/open-webui/open-webui:main

2. 访问Web界面:

打开浏览器,访问 http://localhost:3000

3. 首次设置:

  • 创建一个管理员账户

  • 进入设置(Settings)→ 模型(Models)→ Ollama API Base URL
    在这里插入图片描述
    在这里插入图片描述

  • 将其设置为:http://host.docker.internal:11434 (这是关键一步,让WebUI能找到Docker中的Ollama)
    在这里插入图片描述

  • 点击“保存”,然后就可以在Web页面上选择模型并愉快地聊天了!
    在这里插入图片描述

其它

可能遇到的问题

运行ollama run phi3:mini时可能会遇到 Error: 500 Internal Server Error: model requires more system memory (3.8 GiB) than is available (1.1 GiB)
上述错误表示colima分配的内存不足,重启并指定memory即可,命令如下
colima stop
colima start --memory 6 --cpu 2

总结与常用命令

查看已拉取的模型 docker exec ollama ollama list
删除一个模型 docker exec ollama ollama rm
重启Ollama容器 docker restart ollama
查看容器日志 docker logs ollama

http://www.xdnf.cn/news/18373.html

相关文章:

  • Python Excel 通用筛选函数
  • 麒麟系统播放图片 速度比较
  • Python工程师进阶学习道路分析
  • 【Django:基础知识】
  • 数据结构-ArrayList
  • Redis实战-基于Session实现分布式登录
  • PyTorch API 1
  • PyTorch API 5
  • 372. 超级次方
  • IIS访问报错:HTTP 错误 500.19 - Internal Server Error
  • Spring Retry实战指南_让你的应用更具韧性
  • 区块链技术:重塑未来互联网的伟大动力
  • Python Day32 JavaScript 数组与对象核心知识点整理
  • 源码编译部署 LAMP 架构详细步骤说明
  • Java设计模式-命令模式
  • python的校园顺路代送系统
  • Day 40:训练和测试的规范写法
  • Flink实现Exactly-Once语义的完整技术分解
  • 利用无事务方式插入数据库解决并发插入问题(最小主键id思路)
  • idea进阶技能掌握, 自带HTTP测试工具HTTP client使用方法详解,完全可替代PostMan
  • 暖哇科技AI调查智能体上线,引领保险调查风控智能化升级
  • 【数据结构】排序算法全解析:概念与接口
  • RK android14 Setting一级菜单IR遥控器无法聚焦问题解决方法
  • Apache ShenYu和Nacos之间的通信原理
  • VPS海外节点性能监控全攻略:从基础配置到高级优化
  • Android 入门到实战(三):ViewPager及ViewPager2多页面布局
  • 数据预处理学习心得:从理论到实践的桥梁搭建
  • 比剪映更轻量!SolveigMM 视频无损剪切实战体验
  • 29.Linux rsync+inotify解决同步数据实时性
  • 3D检测笔记:相机模型与坐标变换