在Mac M1笔记本上跑大语言模型llama3的4个步骤?(install、pull、run、ask)

embedded/2024/10/18 14:20:42/

要点

  • Ollama一个功能强大的本地大语言模型LLM运行工具,支持很多模型,并且操作极其简单
  • 快速回忆步骤:
下载ollama工具:https://ollama.com/download
下载模型:ollama pull llama3 #根据libs列表直接指定名字
运行模型:ollama run llama3
测试:直接问他问题(可以关闭网络)

步骤

Step1. 下载ollama(根据平台选择)

https://ollama.com/download
在这里插入图片描述
下载后将软件安装,解压后拷贝到应用程序:
在这里插入图片描述
安装用户态命令:(点击install)
在这里插入图片描述

Step2:下载模型文件

支持的模型列表:https://ollama.com/library
比如llama3:
在这里插入图片描述
安装步骤:命令行直接安装

ollama pull llama3

实操:
在这里插入图片描述

这里需要耗费一些时间,具体根据网络和模型大小确定,模型大小参考:

ModelParametersSizeDownload
Llama 38B4.7GBollama run llama3
Llama 370B40GBollama run llama3:70b
Mistral7B4.1GBollama run mistral
Dolphin Phi2.7B1.6GBollama run dolphin-phi
Phi-22.7B1.7GBollama run phi
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
Llama 2 13B13B7.3GBollama run llama2:13b
Llama 2 70B70B39GBollama run llama2:70b
Orca Mini3B1.9GBollama run orca-mini
LLaVA7B4.5GBollama run llava
Gemma2B1.4GBollama run gemma:2b
Gemma7B4.8GBollama run gemma:7b
Solar10.7B6.1GBollama run solar

官方的参考资源:
8 GB 内存跑 7B models
16 GB to run the 13B models
32 GB to run the 33B models
比如M1有16G内存,可以跑7B的模型。

Step:运行模型

ollama run llama3

实操:(在M1的笔记本大概是s级别的,其他比如intel笔记本可能需要十几秒,M3等笔记本应该非常快)
并且测试的时候可以尝试关闭网络。
比如让他回答一个 gcc编译的问题:
gcc
再来一个:“python如何使用list,举一个实际的例子”
py

Step:退出聊天

Ctrl + d 或者 /bye退出聊天

其他

  • ollama的github:https://github.com/ollama/ollama
  • ollama在mac本地是以类似git的方式存储的,存储的模型都是以blobs的形式,和git底层原理类似。
    在这里插入图片描述- ollama在mac上模型存储的地址: ~/.ollama/models/blobs/
  • 在models/manifests中存储了配置信息,比如llama的blob是哪个等信息
  • 运行以后会自动启动RESTful的接口,也就是可以通过局域网访问,端口是11434,比如:
    在这里插入图片描述
  • 可以通过curl使用restful方式访问:比如:
curl http://localhost:11434/api/generate -d '{"model": "llama3","prompt":"Why is the sky blue?"
}'
  • 端侧的模型也具有记忆能力,还能反馈错误并且修改正
  • 查看当前使用的模型等信息 /show info
    在这里插入图片描述

最后

实操下来,因为ollma非常简单,只需要3个步骤就能使用模型,更多模型只需要一个pull就搞定。一台稍微不错的笔记本+网络,就能把各种大模型都用起来,快速上手吧。


http://www.ppmy.cn/embedded/16961.html

相关文章

Mysql 控制语句与条件语句

IF 用法 IF()函数在条件为TRUE时返回一个值,如果条件为FALSE则返回另一个值 语法: IF(条件, 条件为真时的返回值, 条件为假时的返回值) 示例: SELECT id, name, score, IF (score > 60, 及格, 不及格 ) as grade FROM students; IFNULL 用法 IFN…

深入了解直播美颜工具与视频美颜SDK的实现与优化策略

今天,小编将为大家详解视频美颜SDK技术的视线方案与优化策略。 一、美颜工具的实现原理 利用特征提取算法提取人脸的各种特征,如皮肤色调、眼睛大小等。接下来,根据用户设定的美颜参数,对提取的特征进行修改。最后,将…

使用docker安装本地pdf工具集合Stirling-PDF

平时工作中需要处理pdf,市面上的很多工具都需要充会员才能使用,偶然发现了一个可私有化部署且易于使用的PDF在线工具,使用docker部署,使用起来非常方便,而且功能齐全。 这里是官网: https://pdf.errui.cc/…

百度沈抖:智能,生成无限可能

4月16日,Create 2024百度AI开发者大会在深圳举行。会上,百度集团执行副总裁、百度智能云事业群总裁沈抖正式发布新一代智能计算操作系统——百度智能云万源。它能管理万卡规模的集群,极致地发挥GPU、CPU的性能;它有强大的大模型作…

潜藏10年的恶意软件被发现;利用漏洞在K8S上挖矿;AWS、Google和Azure 出现信息泄露危机 | 安全周报0419

关键词:OfflRouter、恶意软件、VBA宏病毒、机密文件、可执行文件、iOS间谍软件、LightSpy、F_Warehouse、Azure CLI、AWS CLI、Google Cloud CLI 1. 近十年来,OfflRouter恶意软件在乌克兰一直未被发现 自2015年以来,部分乌克兰政府网络一直…

c# Enumerable<T>的GroupJoin方法和Join的用法和区别

在 C# 中&#xff0c;Enumerable<T> 类提供了 Join 方法和 GroupJoin 方法&#xff0c;用于对两个集合进行连接操作。这两个方法的用法和区别如下&#xff1a; Join 方法&#xff1a; 相当于 sql中的inner join Join 方法用于将两个集合中的元素根据指定的键相匹配&…

探索数学语言模型的前沿进展——人工智能在数学教育和研究中的应用

数学一直被认为是科学的基石&#xff0c;对于推动技术进步和解决现实世界问题具有重要意义。然而&#xff0c;传统的数学问题解决方式正面临着数字化转型的挑战。MLMs的出现&#xff0c;预示着数学学习和研究方式的一次革命。 MLMs&#xff0c;包括预训练语言模型&#xff08;…

区块链技术与应用学习笔记(10-11节)——北大肖臻课程

目录 10.分岔 ①什么是分叉&#xff1f; ②导致分叉的原因&#xff1f; ③在比特币新共识规则发布会会导致什么分叉&#xff1f; 什么是硬分叉&#xff1f; 硬分叉例子&#xff1f; 什么是软分叉&#xff1f; 软分叉和硬分叉区别&#xff1f; 软分叉实例 11.问答 转…