Selamat datang di VerbaFlow, arsitektur saraf yang ditulis dalam Go yang dirancang khusus untuk tugas pemodelan bahasa. Dibangun pada RNN RWKV yang tangguh, model ini dioptimalkan untuk kinerja yang efisien pada CPU standar, memungkinkan kelancaran model bahasa yang relatif besar bahkan pada perangkat keras konsumen.
Dengan kemampuan untuk memanfaatkan model yang telah dilatih sebelumnya pada kumpulan data Pile, kinerja VerbaFlow sebanding dengan model Transformer mirip GPT dalam memprediksi token berikutnya, serta dalam tugas lain seperti peringkasan teks, klasifikasi teks, menjawab pertanyaan, dan percakapan umum.
Persyaratan:
Kloning repo ini atau dapatkan perpustakaannya:
go get -u github.com/nlpodyssey/verbaflow
Untuk mulai menggunakan VerbaFlow, sebaiknya gunakan model terlatih RWKV-4-Pile-1B5-Instruct
, yang tersedia di Hugging Face Hub. Model ini telah disempurnakan menggunakan kumpulan data Pile dan telah dirancang khusus untuk memahami dan menjalankan instruksi manusia, sebagaimana disempurnakan pada kumpulan data xP3. Model RWKV-4-Pile-1B5-Instruct-test2-20230209
asli, yang merupakan asal model ini, dapat diakses di sini.
Pustaka dioptimalkan untuk dijalankan pada CPU x86-64. Jika Anda ingin menjalankannya pada arsitektur yang berbeda, Anda dapat menggunakan variabel lingkungan
GOARCH=amd64
.
Perintah berikut dapat digunakan untuk membangun dan menggunakan VerbaFlow:
go build ./cmd/verbaflow
Perintah ini membangun program go dan membuat sebuah executable bernama verbaflow
.
./verbaflow -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct download
Perintah ini mengunduh model yang ditentukan (dalam hal ini, "nlpodyssey/RWKV-4-Pile-1B5-Instruct" di bawah direktori "models")
./verbaflow -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct convert
Perintah ini mengubah model yang diunduh ke format yang digunakan oleh program.
./verbaflow -log-level trace -model-dir models/nlpodyssey/RWKV-4-Pile-1B5-Instruct inference --address :50051
Perintah ini menjalankan titik akhir inferensi gRPC pada model yang ditentukan.
Harap pastikan untuk menginstal dependensi yang diperlukan sebelum menjalankan perintah di atas.
Salah satu fitur paling menarik dari LLM adalah kemampuan bereaksi berdasarkan perintah.
Jalankan titik akhir gRPC verbaflow
dengan perintah dalam inferensi, lalu jalankan contoh prompttester
dengan memasukkan perintah berikut:
Mengingatkan:
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
Hasil yang diharapkan:
Science and Technology
Mengingatkan:
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
Hasil yang diharapkan:
I am the happiest father in the world.
Daftar dependensi utama adalah sebagai berikut:
Terima kasih PENG Bo karena telah membuat RNN RWKV dan semua sumber daya terkait, termasuk model terlatih!
"VerbaFlow" menggabungkan "verba", yang merupakan kata Latin untuk kata-kata , dan "flow", yang mengacu pada karakteristik jaringan saraf berulang dengan membangkitkan gagasan aliran kata yang lancar dan berkelanjutan, yang dimungkinkan oleh jaringan kemampuan untuk mempertahankan keadaan internal dan "mengingat" kata-kata dan konteks sebelumnya ketika menghasilkan kata-kata baru.