طريقة رائعة لاستدعاء النماذج على Amazon Bedrock. تمت كتابته باللغة Rust، وهو مباشر على Twitch.
جديد اعتبارًا من 0.8.2 - إصدار تجريبي: يمكنك الآن تصدير الدردشة إلى ملفات HTML. (سيتم حفظها فقط
conversation.html
في الدليل الحالي)
يدعم حاليا النماذج التالية:
كلود 3.5 v2 السوناتة
كلود 3.5 هايكو
كلود 3.5 السوناتة
كلود الخامس2
كلود V3 السوناتة
كلود V3 هايكو
اللاما 2 70 ب
نماذج لاما 3.1
قيادة كوهير
الجوراسي 2 الترا
تيتان نص اكسبريس V1
نماذج ميسترال للذكاء الاصطناعي (Mixtral وMistral7b وMistral Large 1 و2)
للبدء في استخدام هذا عليك القيام ببعض الأشياء:
لتتمكن من التفاعل مع Amazon Bedrock، يجب أن يكون لديك مجموعة من بيانات اعتماد AWS على الجهاز الذي سيتم تشغيل Bedrust عليه. أسهل طريقة للحصول على هذا الإعداد هي تكوين AWS CLI. تأكد من تثبيت AWS CLI، وتشغيل الأمر aws configure
لتعيين بيانات الاعتماد الخاصة بك.
للتحقق من تعيين بيانات اعتماد AWS الخاصة بك بشكل صحيح، يمكنك تشغيل aws sts get-caller-identity
:
darko@devbox [~/workspace/projects/bedrust]: aws sts get-caller-identity {"معرف المستخدم": "AIDAXXXXXXXXXXXXXXXXXX5"، "الحساب": "123456789999999"، "Arn": "arn:aws:iam::123456789999999:user/alan-ford"}
أوه، نعم، تأكد من أن المستخدم الذي قمت بتكوين بيانات الاعتماد الخاصة به لديه أذونات InvokeModel
على Amazon Bedrock.
حسنًا، هذا أمر منطقي، فهذا تطبيق Rust . أسهل طريقة للبدء هي استخدام الصدأ.
الآن، أنت بحاجة إلى بعض الحزم الإضافية لتتمكن من تجميع صدأ السرير . وهي أنك تحتاج إلى مجموعة الحزم build-essential
(أو المشابهة). اعتمادًا على نظام التشغيل الخاص بك ومدير الحزم، قد يختلف الاسم.
أوبونتو/ديبيان:
sudo apt install build-essential
آرتش لينكس:
sudo pacman -S base-devel
ماك:
xcode-select --install
أمازون لينكس/ريد هات/CentOS:
yum groupinstall "Development Tools"
لتثبيت التطبيق محليا، فقط قم بتشغيل:
cargo install bedrust
سيؤدي هذا إلى تثبيت الملف الثنائي المترجم في دليل $CARGO_HOME/bin
الخاص بك. إذا قمت بإعداد $PATH
بشكل صحيح، فيجب أن تكون قادرًا على تشغيله الآن. لكن قبل أن تفعل...
دعونا تهيئة التكوين. نظرًا لأن bedrust يستخدم ملف تكوين ( bedrust_config.ron
) فإنه (مع بعض الموارد الأخرى) يجب تخزينه داخل دليل $HOME/.config/bedrust
الخاص بك. الآن ، يمكنك القيام بذلك يدويًا، ولكن لدينا ميزة للقيام بذلك نيابةً عنك. فقط قم بتشغيل:
bedrust --init
سيُطلب منك اختيار نموذج افتراضي. سيؤدي هذا إلى إنشاء جميع الملفات الضرورية لتتمكن من استخدام bedrust . ليست هناك حاجة لتعديل هذه الملفات، إلا إذا كنت ترغب في ذلك.
وأخيرا، لتشغيل التطبيق فقط استخدم الأمر التالي:
bedrust -m <MODELNAME> # استبدال اسم الطراز بأحد الأسماء المدعومة
أو إذا كنت ترغب في استخدام النموذج الافتراضي (النموذج المحدد أثناء --init
/ في ملف التكوين الخاص بك) فما عليك سوى تشغيل bedrust
دون أي معلمات. إذا لم تقم بتحديد نموذج عن طريق تمرير المعلمة -m
، ولم يكن لديك نموذج افتراضي تم تعيينه في ملف التكوين الخاص بك، فستتم مطالبتك باختيار نموذج أثناء التشغيل.
أداة سطر أوامر لاستدعاء نماذج اللغات الكبيرة والعمل معها على AWS، باستخدام Amazon Bedrock الاستخدام: الصدأ [خيارات] خيارات: --init -m، --model-id <MODEL_ID> [القيم المحتملة: llama270b، llama31405b-instruct، llama3170b-instruct، llama318b-instruct، cohere-command، claude-v2، claude-v21، claude-v3-sonnet، claude-v3 -هايكو، كلود v35 السوناتة، كلود-v352-السوناتة، كلود-v35-هايكو، jurrasic2-ultra، تيتان-نص-إكسبريس-v1، mixtral8x7b-instruct، mistra7b-instruct، ميسترال كبير، ميسترال-large2] -c، --caption <CAPTION> -s، --المصدر <SOURCE> -x -h، --help تعليمات الطباعة -V، --version نسخة الطباعة
مرة واحدة، يُطلب منك إدخال سؤالك، ثم اضغط على ENTER
. لإنهاء البرنامج، فقط اكتب /q
في موجه السؤال الخاص بك.
ميزة جديدة: بفضل تعدد الوسائط في Claude V3، يمكنك الآن تمرير الصور إلى نموذج اللغة الكبير هذا. هذا يعني أنه يمكننا القيام ببعض الأشياء الممتعة مثل الصور التوضيحية من أجل إمكانية الوصول. تتوفر هذه الميزة في Bedrust بدءًا من الإصدار 0.5.0
.
️ النموذجان الوحيدان اللذان يدعمان هذا حاليًا هما: Claude V3 Sonnet وClaude V3 Haiku
لاستخدام التسميات التوضيحية، تحتاج فقط إلى تمرير المعلمة -c
، بالإضافة إلى الدليل الذي توجد به صورك:
bedrust -m claude-v3-sonnet -c /tmp/test-images/
سيؤدي هذا إلى استرداد الصور المدعومة وإنشاء تسميات توضيحية لها. في النهاية، يتم إنتاج ملف captions.json
في دليل العمل الحالي مع ربط التسميات التوضيحية بمسارات الصور.
هنا مثال على الإخراج:
[ {"path": "/tmp/test-images/4slika.jpeg"، "caption": "تقوم مروحة وحدة المعالجة المركزية للكمبيوتر بتبريد لوحة الدائرة باستخدام إيثرنت ومنافذ أخرى." }, {"path": "/tmp/test-images/kompjuter.jpeg"،"caption": "لوحة دائرة مفتوحة تحتوي على مكونات وأسلاك إلكترونية مختلفة، موضوعة في مكتب أو ورشة عمل مع أرفف ومعدات مرئية في الخلفية. " }, {"path": "/tmp/test-images/c64.jpeg"، "caption": "شاشة كمبيوتر كومودور قديمة تعرض شعار Twitch على الشاشة." } ]
بالإضافة إلى ذلك، يمكنك تخصيص موجه التسميات التوضيحية وتنسيقات ملفات الصور المدعومة عن طريق تحرير ملف bedrust_config.ron
في جذر هذا المشروع.
يمكنك الآن توجيه Bedrust إلى دليل يحتوي على بعض التعليمات البرمجية المصدر. سيسمح لك هذا بمناقشة مستودع التعليمات البرمجية الخاص بك في السياق، ويمكن أن يزودك باقتراحات التعليمات البرمجية والتحسينات والمزيد من التطوير.
ملحوظة: نظرًا لأن هذه ميزة تجريبية، فإن لها حدودًا. على سبيل المثال، فهو غير قادر على التعامل مع قواعد التعليمات البرمجية الكبيرة حقًا. ولأنه يرسل قاعدة التعليمات البرمجية الخاصة بك بالكامل إلى السياق، فقد يكلفك ذلك أكثر بكثير.
bedrust --source ~/workspace/repos/your_code_repo
اعتبارًا من الإصدار 0.8.2، يمكنك الآن حفظ محادثاتك واسترجاعها في وقت لاحق، وحتى تصديرها كملفات HTML رائعة. لا تزال هذه الميزة في مرحلة تجريبية ثقيلة ، لذا توقع حدوث عطل وتغيير في الوظائف.
الطريقة التي يعمل بها هذا الأمر هي أنه عندما تدخل /s
كأمر دردشة، يقوم Bedrust بحفظ محادثتك داخل ~/.config/bedrust/chats
كملف .json
. ستحتوي هذه التعبئة على ملخص تم إنشاؤه وعنوان للمحادثة. لاستدعاء المحادثة، يمكنك فقط كتابة /r
كأمر دردشة، وستكون قادرًا على تحديد أي من المحادثات المحفوظة.
لتصدير محادثتك إلى HTML، فقط قم بتشغيل /h
. سيؤدي هذا إلى إنشاء ملف يسمى conversation.html
في الدليل الحالي. لم أقم بعد بتنفيذ ميزة لاختيار مكان حفظ هذا الملف، لذا فهو على هذا النحو في الوقت الحالي. (إنها في مرحلة تجريبية بعد كل شيء؟).
يوجد ملف تكوين مهم واحد يأتي مع bedrust :
bedrust_config.ron
- يخزن معلمات التكوين المتعلقة بالتطبيق نفسه.
يجب أن يكونوا في دليل $HOME/.config/bedrust/
الخاص بك. سيحذرك التطبيق في حالة عدم وجودها وفشل تشغيلها. يمكنك إنشاؤها تلقائيًا عن طريق تشغيل bedrust --init
القدرة على الحصول على مدخلات المستخدم
القدرة على اختيار النموذج
قم بإجراء محادثة مع النموذج
دفق الردود مرة أخرى كلمة بكلمة
معالجة أفضل للأخطاء
اختبار الكود
القدرة على توليد الصور
اجعلها أجمل
التعامل مع المعاجين الطويلة بشكل أفضل
التعامل مع بيانات اعتماد بيدر