欢迎使用 VerbaFlow,这是一种用 Go 编写的神经架构,专为语言建模任务而设计。该模型基于强大的 RWKV RNN 构建,针对标准 CPU 上的高效性能进行了优化,即使在消费类硬件上也能平稳运行相对较大的语言模型。
凭借在 Pile 数据集上利用预训练模型的能力,VerbaFlow 在预测下一个标记以及文本摘要、文本分类、问答和一般对话等其他任务中的表现与类似 GPT 的 Transformer 模型相当。
要求:
克隆此存储库或获取库:
go get -u github.com/nlpodyssey/verbaflow
要开始使用 VerbaFlow,我们建议使用 Hugging Face Hub 上提供的预训练模型RWKV-4-Pile-1B5-Instruct
。该模型已使用 Pile 数据集进行了微调,并且专门设计用于理解和执行人类指令,就像在 xP3 数据集上进行的微调一样。可以在此处访问原始RWKV-4-Pile-1B5-Instruct-test2-20230209
模型(该模型源自该模型)。
该库经过优化,可以在 x86-64 CPU 上运行。如果您想在不同的架构上运行它,可以使用
GOARCH=amd64
环境变量。
以下命令可用于构建和使用 VerbaFlow:
go build ./cmd/verbaflow
此命令构建 go 程序并创建一个名为verbaflow
的可执行文件。
./verbaflow -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct download
该命令下载指定的模型(在本例中为“models”目录下的“nlpodyssey/RWKV-4-Pile-1B5-Instruct”)
./verbaflow -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct convert
该命令将下载的模型转换为程序使用的格式。
./verbaflow -log-level trace -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct inference --address :50051
此命令在指定模型上运行 gRPC 推理端点。
在运行上述命令之前,请确保安装了必要的依赖项。
法学硕士最有趣的功能之一是能够根据提示做出反应。
使用推理中的命令运行verbaflow
gRPC 端点,然后运行prompttester
示例,输入以下提示:
迅速的:
echo 'nQ: Briefly: The Universe is expanding, its constituent galaxies flying apart like pieces of cosmic shrapnel in the aftermath of the Big Bang. Which section of a newspaper would this article likely appear in?nnA:' | go run ./examples/prompttester --dconfig ./examples/prompttester/config.yaml
预期输出:
Science and Technology
迅速的:
echo 'nQ:Translate the following text from French to English Je suis le père le plus heureux du mondennA:' | go run ./examples/prompttester --dconfig ./examples/prompttester/config.yaml
预期输出:
I am the happiest father in the world.
主要依赖项列表如下:
感谢彭博创建了 RWKV RNN 以及所有相关资源,包括预训练模型!
“VerbaFlow”结合了“verba”(拉丁语中单词的意思)和“flow”,它通过唤起流畅和连续的单词流的想法来暗示循环神经网络的特征,而这通过网络的在生成新单词时保持内部状态并“记住”以前的单词和上下文的能力。