跑在笔记本里的大语言模型 - GPT4All

这篇具有很好参考价值的文章主要介绍了跑在笔记本里的大语言模型 - GPT4All。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

何为GPT4All

GPT4All 官网给自己的定义是:一款免费使用、本地运行、隐私感知的聊天机器人,无需GPU或互联网。

从官网可以得知其主要特点是:

  1. 本地运行(可包装成自主知识产权🐶)
  2. 无需GPU(穷人适配)
  3. 无需联网(某国也可运行)
  4. 同时支持Windows、MacOS、Ubuntu Linux(环境要求低)
  5. 是一个聊天工具

模型介绍

GPT4All支持多种不同大小和类型的模型,用户可以按需选择。

序号 模型 许可 介绍
1 ggml-gpt4all-j-v1.3-groovy.bin 商业许可 基于GPT-J,在全新GPT4All数据集上训练
2 ggml-gpt4all-113b-snoozy.bin 非商业许可 基于Llama 13b,在全新GPT4All数据集上训练
3 ggml-gpt4all-j-v1.2-jazzy.bin 商业许可 基于GPT-J,在v2 GPT4All数据集上训练。
4 ggml-gpt4all-j-v1.1-breezy.bin 商业许可 基于GPT-J,在v1 GPT4All数据集上训练
5 ggml-gpt4all-j.bin 商业许可 基于GPT-J,在v0 GPT4All数据集上训练
6 ggml-vicuna-7b-1.1-q4_2.bin 非商业许可 基于Llama 7b,由加州大学伯克利分校、加州大学医学院、斯坦福大学、麻省理工大学和加州大学圣地亚哥分校的团队训练。
7 ggml-vicuna-13b-1.1-g4_2.bin 非商业许可 基于Llama 13b,由加州大学伯克利分校、加州大学医学院、斯坦福大学、麻省理工大学和加州大学圣地亚哥分校的团队训练。
8 ggml-wizardLM-7B.q4_2.bin 非商业许可 基于Llama 7b,由微软和北京大学训练。
9 ggml-stable-vicuna-13B.q4_2.bin 非商业许可 基于Llama 13b和RLHF,由Stable AI训练

GPT4All的模型是一个 3GB - 8GB 的​​文件,目前由Nomic AI进行维护。

nomic.ai 公司

模型的维护公司nomic.ai是怎样一家公司,它为什么要免费开发和维护这些模型呢?它在官网上是这样写的:

现在,由于人工智能的兴起,我们的世界正在发生巨大的变化。现代人工智能模型在互联网规模的数据集上进行训练,并以前所未有的规模制作内容。它们正在迅速渗透到地球上的每一个行业——从国防、医药、金融到艺术。
对这些模型的访问由少数资金充足、越来越隐秘的人工智能实验室控制。如果这种趋势持续下去,人工智能的好处可能会集中在极少数人手中。
我们的 GPT4All 产品实现了前所未有的AI访问,让任何人都能从AI技术中受益,而不受硬件、隐私或地缘政治限制。

一句话来说:担心AI技术被少数人控制,并且对此付诸实际行动。

LLM大语言模型

gpt4all使用的模型是大语言模型(Large Language Model),它采用深度学习方法来理解和生成自然语言文本。这些模型通过在大量文本数据上进行训练,学习到丰富的语言知识和基于上下文的语义理解。一旦训练完成,大语言模型可以用来完成问题回答、文本生成、语言翻译等多种任务。

最常用的大语言模型架构是Transformer,它由Google Brain的一个团队在2017年提出。这种架构采用自注意力机制(Self-Attention Mechanism),能够捕捉文本中长距离的依赖关系。随着模型大小和训练数据量的增加,大语言模型的性能也在不断提高。

例如,OpenAI发布了如GPT(Generative Pre-trained Transformer)等一系列大语言模型。GPT-3是其中的一个代表性模型,拥有1750亿个参数,表现出了强大的生成能力和多任务学习能力。

GPT-J语言模型

gpt4all使用的语言模型主要分两类:GPT-J和LLaMA。

GPT-J 是一个在 Pile 上训练的 60 亿参数开源英语自回归语言模型。由 EleutherAI 在2021年发布,它遵循了GPT-2的架构,在发布时,它是世界上最大的公开可用的 GPT-3 风格语言模型。GPT-J的任务表现和OpenAI的GPT-3版本非常相似,甚至在代码生成水平上还要略胜一筹。

最新版本GPT-J-6B是基于一个开源的825GB精选语言建模数据集The Pile生成。

LLaMA语言模型

LLaMA(Large Language Model Meta AI)是一种大语言模型,它是由Meta AI研究团队2023年开发的,用于自然语言处理任务。LLaMA 使用 transformer 架构。

LLaMA 的开发人员曾报告说,LLaMA使用130亿参数的模型在大多数NLP基准测试中的性能超过了更大的GPT-3(具有1750亿参数)

本地部署的环境要求:AVX

本地部署的环境要求很容易达成,如下:

  1. CPU支持AVX
  2. 4GB内存

AVX是Intel在2011年推出的一种指令集扩展,全称是Advanced Vector Extensions,用于加速浮点运算和整数运算。它扩展了SSE指令集,可以同时对多个数据进行操作。带有AVX的CPU可以获得很大的性能提升,特别是在图像处理、科学计算等方面。支持AVX的CPU可以利用AVX指令集和YMM寄存器来执行更强大和更高效的向量化运算,从而获得更高的性能。

AVX2完全兼容AVX指令集并有所扩展。所以,AVX2特性是向过去兼容AVX的,具有AVX2特性的CPU可以运行使用AVX指令集编译的代码。

要想了解自己的CPU是否支持AVX,可以使用如下命令:

Linux下:

cat /proc/cpuinfo | grep avx

MacOS下:

sysctl -a | grep machdep.cpu|grep AVX

如果输出中包含AVX字样,说明处理器支持AVX技术;如果没有输出,则说明当前主机不支持AVX技术。

本地部署

本地部署有两种方式可选:

  1. 直接运行官方提供的二进制包(需要使用最新的系统)
  2. 源代码本地编译

有AVX2支持

官方提供的bin的编译环境版本非常高,以至于在老一些的系统上均无法运行,所以如果你的系统不够新,推荐使用源码编译的方式。

以支持AVX2的苹果电脑为例:

苹果电脑:系统需要macOS 12.6以上
下载 https://gpt4all.io/installers/gpt4all-installer-darwin.dmg 运行即可

只有AVX支持

git clone --depth=1 https://github.com/zanussbaum/gpt4all.cpp.git
cd gpt4all.cpp
mkdir build; cd build
cmake -D LLAMA_NO_AVX2=1 -D LLAMA_NO_FMA=1 ..
make
wget "https://the-eye.eu/public/AI/models/nomic-ai/gpt4all/gpt4all-lora-quantized.bin"
./chat -m ./gpt4all-lora-quantized.bin

输出

main: seed = 1683710151
llama_model_load: loading model from './gpt4all-lora-quantized.bin' - please wait ...
llama_model_load: ggml ctx size = 6065.35 MB
llama_model_load: memory_size =  2048.00 MB, n_mem = 65536
llama_model_load: loading model part 1/1 from './gpt4all-lora-quantized.bin'
llama_model_load: .................................... done
llama_model_load: model size =  4017.27 MB / num tensors = 291

system_info: n_threads = 4 / 8 | AVX = 1 | AVX2 = 0 | AVX512 = 0 | FMA = 0 | NEON = 0 | ARM_FMA = 0 | F16C = 1 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 1 | VSX = 0 |
main: interactive mode on.
sampling parameters: temp = 0.100000, top_k = 40, top_p = 0.950000, repeat_last_n = 64, repeat_penalty = 1.300000


== Running in chat mode. ==
 - Press Ctrl+C to interject at any time.
 - Press Return to return control to LLaMA.
 - If you want to submit another line, end your input in '\'.

>

跑在笔记本里的大语言模型 - GPT4All

没有AVX支持

git clone --depth=1 https://github.com/zanussbaum/gpt4all.cpp.git
cd gpt4all.cpp
make
wget "https://the-eye.eu/public/AI/models/nomic-ai/gpt4all/gpt4all-lora-quantized.bin"
./chat -m gpt4all-lora-quantized.bin

实验记录

下面实验下gpt4all的效果。

打个招呼,10分钟就得到了回复,挺好:

> hello
Hello World!

跑在笔记本里的大语言模型 - GPT4All

问个天文问题(双机测试):

> How long does it take for the moon to orbit once?
The Moon takes 27 days, 8 hours and 43 minutes (or about one month) to complete its orbital cycle around Earth. This is because of tidal locking which keeps only half of the lunar surface permanently illuminated by sunlight.

> How long does it take for the moon to orbit once
The time taken by Moon to complete one revolution around Earth is called lunar day and its duration depends on various factors such as distance between Sun, Moon &Earth. On average Lunar Day lasts 27 days but can vary from 24 hours (lunation) or even less than a hour in some cases due to the elliptical orbit of moon around Earth.

AI思考了半个小时后给出了答案,大山侃得不错,科普尚需调教。

跑在笔记本里的大语言模型 - GPT4All

问个编程问题:

> Write a helloworld program using rust
\`\`\`rust
fn main() {
    println!("Hello, world!"); // Outputs "hello" to stdout and exits with status 0 (success)
}
\`\`\`

两个小时给出答案。。。

最后来个中文问题:

> 为什么哪里都有”存在”而没有绝对的虚无?
因为“存在”是一种感知,所以我们能看到其中,但不会说明那个物体或者事件完全停止。这样就算了!

> 为什么哪里都有”存在”而没有绝对的虚无?
因为“存在”是一种概念,不能用于表示真实性或物理地位。 这个概快侧面就像说:绝对的虚无可以有相应的透明度和形状,而“存在”是一种概念,不能用于表示真实性或物理地位。 因此,当人们想象出了绝对的虚无时,他们就会逃过这个问题,而且也是为了保持概念中心主义和不能用于物理地位。

这是个困难的问题,计算机计算了几个小时才输出答案,不过还没有超过750万年。。。[1]

跑在笔记本里的大语言模型 - GPT4All

总结

gpt4all在优秀模型的支持下,也是相当厉害的。但没有高配服务器的话,由于性能问题,又不好弄到生产环境中提供实际服务。大家有什么好的解决方法,欢迎评论区留言。
(GPU服务器会火一波吗?)

附录

[1]. 750万年
在《银河系漫游指南》中,为了回答关于“生命,宇宙以及万事万物的终极问题”的答案,超级计算机“深思”运行了整整750万年才计算出最终的答案。文章来源地址https://www.toymoban.com/news/detail-438276.html

Reference

  • https://en.wikipedia.org/wiki/LLaMA
  • https://en.wikipedia.org/wiki/EleutherAI#The_Pile
  • https://en.wikipedia.org/wiki/Transformer_(machine_learning_model)
  • https://www.eleuther.ai/
  • https://gpt4all.io/
  • https://github.com/facebookresearch/llama
  • https://github.com/nomic-ai/gpt4all

到了这里,关于跑在笔记本里的大语言模型 - GPT4All的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 超简单,不用GPU,3步教你轻松在笔记本上部署聊天大模型 LLaMA

    大家好啊,我是董董灿。 今天带大家在自己的电脑(笔记本)上部署一个类似于 chatGPT 的 AI 聊天大模型。 部署完之后,你就拥有了一个私人 AI 聊天机器人,无需联网,随时进行实时对话。 大模型我们都不陌生了,但是以 chatGPT 为代表的大模型是闭源的,他们的源代码不开放,

    2024年01月20日
    浏览(43)
  • ChatGPT 已经成为过去,在您的笔记本电脑中免费运行 Llama 2(源码含模型)

    现在您可以在计算机本地运行 ChatGPT 和 LLaMA-2。Meta刚刚发布了这个拥有700亿参数的模型,比任何其他Open模型都要好,甚至击败了Falcon 40B! 为此,您需要打开终端,转到项目文件夹,然后 git clone llama.cpp 项目 现在进入该文件夹并使用 make 构建项目: 然后您需要从 Meta 网站请

    2024年02月14日
    浏览(42)
  • 超详细教程:如何在笔记本上run起大模型?没有GPU也可以!(Windows/Mac)

    好久没更新了,一是最近一直在研究生物医药大模型相关的内容,二是。相信不止是我,每一位工程师朋友都已经感受到大语言模型带给整个行业的颠覆性改变。最近身边就有不少的小伙伴入坑了大模型技术,而即使仍在观望的同学,也对大模型这一崭新的技术表达了深厚的

    2024年02月04日
    浏览(45)
  • 【个人笔记本】本地化部署详细流程 LLaMA中文模型:Chinese-LLaMA-Alpaca-2

    不推荐小白,环境配置比较复杂 下载原始模型:Chinese-LLaMA-Alpaca-2 linux部署llamacpp环境 使用llamacpp将Chinese-LLaMA-Alpaca-2模型转换为gguf模型 windows部署Text generation web UI 环境 使用Text generation web UI 加载模型并进行对话 笔记本环境: 操作系统:win11 CPU:AMD R7535HS GPU:笔记本4060显卡

    2024年02月08日
    浏览(59)
  • 笔记本电脑部署本地离线版类似ChatGPT3.5的AI模型(CPU+内存运行)

    如果通过GPU来运行,一般办公电脑的显卡可能达不到所需的要求,所以,可以通过CPU+内存的方式花最低的代价来部署一套本地运行AI的模型。 1、首先下载CPU-Z,运行看一下电脑当前的指令集是否包含AVX512,非AVX512指令部署完应该也能运行,但可能运行速度会非常慢。(我的电

    2024年02月04日
    浏览(56)
  • 全坚固笔记本丨工业笔记本丨三防笔记本相较于普通笔记本有哪些优势?

    三防笔记本和普通笔记本在设计和性能方面存在显著差异,三防笔记本相较于普通笔记本具备以下优势: 三防笔记本通常采用耐磨、耐摔的材料,并具有坚固的外壳设计,能够承受恶劣环境和意外碰撞,有效保护内部组件不受损坏。相比之下,普通笔记本的外壳设计可能较为

    2024年04月09日
    浏览(61)
  • 三防笔记本丨加固笔记本丨三防笔记本电脑赋能车辆检修

    随着汽车数量的不断增加和交通运输行业的发展,车辆检修行业成为了保障交通安全和延长车辆寿命的重要领域。在车辆检修过程中,需要使用各种工具和设备来进行检测、维修和保养,而信息化技术的应用正逐渐渗透到这一行业中,为检修工作提供了更高效、更精准的解决

    2024年04月09日
    浏览(102)
  • 星光/宝骏/缤果/长安 车机CarPlay手机操作破解教程V2.0版本(无需笔记本、无需笔记本、无需笔记本)

    之前写了个1.0版本,由于太局限,需要用到笔记本才能操作,很多车友反馈不方便。特此出个手机版教程,简单easy,妈妈再也不用担心我搞不定啦 先卸载车机上的autokit 或者 智能互联 app,这步很关键!!! 工具下载链接 1、在自己的安卓手机上下载安装甲壳虫ADB助手 2、将

    2024年04月17日
    浏览(242)
  • 笔记本外接键盘解决方案:禁用笔记本自带键盘

    笔记本外接键盘时,有时会将外接键盘放置在笔记本自带键盘上,加上现代笔记本设计轻薄,外接键盘(尤其是108键的)在使用过程中经常触碰自带键盘,禁用自带键盘后将提供极大的工作便利。 通过系统自带sc命令禁用PS/2(i8042prt)服务: 禁用服务: 恢复服务: I8042prt是

    2024年02月12日
    浏览(67)
  • python编程用什么笔记本好,python用什么笔记本电脑

    大家好,给大家分享一下写python大家都用什么笔记本的,很多人还不知道这一点。下面详细解释一下。现在让我们来看看! 大家好,小编为大家解答python编程对笔记本电脑配置的要求的问题。很多人还不知道python编程笔记本电脑推荐便宜,现在让我们一起来看看吧! 大家好

    2024年01月18日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包