在笔记本上跑一下大模型

没想到在我的轻薄本上也能跑

我的笔记本:

  • OS: Windows 11 家庭中文版 22H2
  • CPU: Intel(R) Core(TM) i5-1035G7 CPU @ 1.20GHz 1.50 GHz
  • GPU: MX250
  • RAM: 16.0 GB

简介

LLaMA(Large Language Model Meta AI) 是 Meta 发布的大语言模型。2023年7月,Meta 公司发布了人工智能模型 LLaMA-2 的开源商用版本,意味着大模型应用进入了“免费时代”,初创公司也能够以低廉的价格来创建类似 ChatGPT 这样的聊天机器人。1

LLaMA-Alpaca-2 2 基于 Meta 发布的可商用大模型 Llama-2 开发,是中文 LLaMA & Alpaca 大模型的第二期项目,开源了中文 LLaMA-2 基座模型和 Alpaca-2 指令精调大模型。

这些模型在原版 Llama-2 的基础上扩充并优化了中文词表,使用了大规模中文数据进行增量预训练,进一步提升了中文基础语义和指令理解能力,相比一代相关模型获得了显著性能提升。

本文选择了最小的 7B 版本。

下载模型

到项目的 Github 仓库上找到 完整模型下载链接,选择合适的模型。

我这里选择的是 Chinese-Alpaca-2-7B 指令模型,模型大小 12.9 GB,适用场景为指令理解:问答、写作、聊天、交互等。

部署

llama.cpp 3

Github 上的介绍如下:

The main goal of llama.cpp is to run the LLaMA model using 4-bit integer quantization on a MacBook

在 Windows 上编译需要使用 CMake,第一次编译失败了,这里我们可以直接下载 Release

使用 llama.cpp 对模型进行量化 4,量化之后模型大小为 3.68G,精度降低但是内存要求小了很多。

1
2
3
python3 convert.py --outtype f16 <你的hf模型目录>
# 生成一个 ggml 格式的 bin 文件
quantize.exe <需要使用的f16/f32模型地址> <生成的q4模型地址> q4_0

使用 llama.cpp 加载模型:

1
2
3
4
# 基本运行
main -m <q4模型bin文件路径> -p 你的prompt
# 交互问答
main -m <q4模型bin文件路径> -ins

到这里已经能正常使用了,接下来介绍另一个工具。

text-generation-webui

text-generation-webui 5 是一个可以运行各种大模型的网页版部署工具。

在打开的网页中,依次选择 Chat setting -> Instruction template,在 Instruction template 中下拉选择 Llama-v2,并将 Context 输入框中的 Answer the questions. 提示语替换为 You are a helpful assistant. 你是一个乐于助人的助手。,最后回到 Text generation 界面,在 input 输入框中输入你的指令,即可与 chinese-alpaca-2 对话了。

最后

一开始没有进行量化就跑了一下,风扇瞬间响起来了,紧接着鼠标开始变卡了,我当时是开着任务管理器的,切出来一看内存已经满了,应该是爆内存了。赶紧 Ctrl+C 把项目停下来,内存占用又下来了。

打开我的电脑一看,C 盘就这一会儿的功夫已经少了十几个 G,变成了刺眼的红色,还好在重启之后又恢复了。

Licensed under CC BY-NC-SA 4.0