洋食の日記

「だ・である」調ではなく「です・ます」調で書きはじめれば良かったなと後悔してる人のブログです

llama_cpp.rbでチャットボットのサンプルを作った

はじめに

以前に作ったllama.cppのRuby bindingsであるllama_cpp.rbでチャットボットのサンプルを作った。llama.cppのexamples/main/main.cppをいい感じにRubyにすれば作れるので「誰か作ってくれないかな」という他人まかせな気持ちでいたが、作る時間がとれたので作った。

github.com

使い方

thorで作ったので、llama_cpp.rbの他にthorもインストールする。

$ gem install thor llama_cpp

で、git cloneするなりで取ってきたchat.rbを動かす。--threads オプションでCPUにあわせてスレッド数を増やしたほうが速くなって良い。モデルは適当に用意してください。

$ ./chat.rb -m /path/to/quantized-model.bin --threads 4

こんな感じ。実は最初の「User: 」が出るまで少し待ちがある。

おわりに

チャットできるとLLMs感でますね。