在本地电脑或者服务器安装大语言模型,安全和隐私性可以得到保证,虽然自己运行的模型对话效果没有比商业运作的模型好,但这个可以放心地用于论文的润色、保密数据的整理等使用场景(对生成的结果期望不能太高,本篇底部有使用截图)。Alpaca是一个效果还行、体积也相对小的大语言模型,大概是GPT3的水平[1-3]。硬件要求:储存空间需要4G以上,运行内存需要8G以上(运行Alpaca时占用内存),CPU大概是2核或4核以上(对话时占用CPU。经测试,在对话时2核CPU会满负荷运行,等待时间也稍长)。
本篇是安装Alpaca大语言模型的一些步骤,以及在安装过程中可能遇到的一些问题的解决方法。
下载:
git clone https://github.com/antimatter15/alpaca.cpp
下载语言模型ggml-alpaca-7b-q4.bin(https://huggingface.co/Sosaka/Alpaca-native-4bit-ggml/blob/main/ggml-alpaca-7b-q4.bin)放到alpaca.cpp文件夹中。或者使用命令:
wget https://huggingface.co/Sosaka/Alpaca-native-4bit-ggml/resolve/main/ggml-alpaca-7b-q4.bin
编译:
cd alpaca.cpp
make chat
运行
./chat
安装时可能会遇到的问题:
(1)编译报错:ggml.c:74:23: fatal error: stdatomic.h: No such file or directory。
解决方法:更新到gcc最新版(查看版本命令为gcc -v),CentOS中的命令为:
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
(2)编译报错:ggml.c:309:19: error: ‘CLOCK_MONOTONIC’ undeclared (first use in this function)
解决方法[4]:在ggml.c文件前面加以下内容
#define _POSIX_C_SOURCE 199309L
(3)./chat 运行时报错:failed to tokenize string!
解决方法[5]:将chat.cpp中的“std::string word;”语句往下移动,移到“word.resize(len);”语句前面。然后重新编译一次。
以下是个人的测试截图。可能对中文和翻译的支持不是特别的好,但勉强能听得懂。另外,上下文的语境连贯性也比较欠缺。
测试1:

测试2:

测试3:

参考资料:
[2] termux安装部署LLAMA
[3] 总结当下可用的大模型LLMs
[4] error: ‘CLOCK_MONOTONIC’ undeclared问题解决
[5] "failed to tokenize string!" #159
【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com】