Skip to content

Latest commit

 

History

History
43 lines (28 loc) · 1.28 KB

README.md

File metadata and controls

43 lines (28 loc) · 1.28 KB

Llama2RNN.c:一个用C语言实现的终身 RNN 模型

zh en

这是一个使用 Llama2 权重设计的循环神经网络(RNN)模型,旨在无限期运行(终身)。

  • llama2: 可以使用 llama2 各种版本模型的权重
  • rnn: 每个token的 attention sequence 长度固定,计算和内存开销不会增加,理论上支持无限长序列,可以从硬盘读取和保存记忆
  • .c: 可以在本地设备上运行,甚至是移动平台

如何训练

数据处理

参考README_llama2.c.md处理好数据

python3 tinystories.py download
python3 tinystories.py train_vocab --vocab_size=4096
python3 tinystories.py pretokenize --vocab_size=4096

训练

python3 train.py config/train_tinystories_token4096_memorynorm.py

保存

python3 tokenizer.py --tokenizer-model ./data/tok4096.model
export.py out_path/model_q80.bin --version 2 --mem --checkpoint out_path/ckpt.pt

其它

更多细节说明见llama2Rnn.c/README.md at main · siyuanseever/llama2Rnn.c (github.com)

许可证

MIT