Gowrkv.go هو غلاف حول RWKV-CPP ، وهو تكيف مع ggml.cpp.
RKWV.CPP أسرع بشكل عام ، بسبب الحفاظ على الحالة المتوسطة للنموذج ، لذلك لا يجب إعادة معالجة المطالبة بأكملها في كل مرة. لمزيد من التفاصيل ، راجع RWKV-CPP.
أيضا ، فإن النماذج المتاحة لـ RWKV.CPP مفتوحة المصدر بالكامل ، على عكس لاما. يمكنك استخدام هذه النماذج تجاريًا ، ويمكنك تعديلها على محتوى قلبك.
قد يكون التدريب أسرع أيضًا ، لم تتح لي الفرصة لمحاولة ذلك بعد.
التثبيت معقد حاليا. لا يعمل Go-Rkwv.cpp مع go get بعد (ترحيبًا كبيرًا). ستحتاج إلى GO ، مترجم C ++ (clang على Mac) ، و cmake.
يجب عليك استنساخ هذا repo /متكرر /، لأنه يحتوي على عروض فرعية.
git clone --recursive https://github.com/donomii/go-rwkv.cppيوجد برنامج نصي بناء ، build.sh ، والذي سيقوم ببناء مكتبة C ++ وغلاف GO. يرجى تقديم تقارير الأخطاء إذا كان لا يعمل من أجلك.
./build-mac.shيوجد الآن بناء بديل ، والذي يبني بشكل ثابت بفضل makefile المقدمة من Mudler.
make example/aiسيقوم برنامج Download Script بتنزيل بعض النماذج ، وتحويلها إلى التنسيق الصحيح.
cd aimodels
sh downloadconvert.shGO-RWKV.CPP يبني حاليًا ضد المكتبة الديناميكية Librwkv.dylib. هذا ليس مثاليًا ، لكنه يعمل الآن. ستحتاج إلى نسخ هذه المكتبة إلى موقع يمكن أن يجده رابط النظام. على Mac ، هذا هو/usr/local/lib.
cp librwkv.dylib /usr/local/lib
export DYLD_LIBRARY_PATH=/Users/donomii/git/go-rwkv.cpp/rwkv.cpp/إذا كنت لا ترغب في تثبيته على مستوى العالم ، فيمكنك تعيين متغير بيئة DYLD_LIBRARY_PATH على الدليل الذي يحتوي على librwkv.dylib.
انظر المثال/ الدليل لبرنامج دردشة العمل الكامل. فيما يلي مثال أدنى.
package main
import (
"fmt"
"github.com/donomii/go-rwkv.cpp"
)
func main () {
model := LoadFiles ( "aimodels/small.bin" , "rwkv.cpp/rwkv/20B_tokenizer.json" , 8 )
model . ProcessInput ( "You are a chatbot that is very good at chatting. blah blah blah" )
response := model . Generate ( 100 , " n " )
fmt . Println ( response )
}يجب عليك استخدام ملف Tokenizer من RWKV.CPP. يحتوي GO-RWKV على إعادة تنفيذ المميز ، ولكن هذا التنفيذ الحد الأدنى الذي يحتوي على رمز كافي للعمل مع RWKV (وربما يكون هناك أخطاء فيه).
لشحن برنامج عمل يتضمن هذا الذكاء الاصطناعي ، ستحتاج إلى تضمين الملفات التالية:
إذا لم تقم بتثبيت Librwkv.dylib على مستوى العالم ، فستحتاج إلى تعيين متغير بيئة Dyld_library_path على الدليل الذي يحتوي على librwkv.dylib.
هذا البرنامج مرخص بموجب ترخيص معهد ماساتشوستس للتكنولوجيا. انظر الترخيص للحصول على التفاصيل.
بقدر ما أدرك ، فإن نماذج الغراب هي أيضا مفتوحة المصدر.