Poyro هو امتداد خفيف الوزن لـ Vitest (إطار اختبار حديث مع واجهة برمجة تطبيقات تشبه Jest) لاختبار تطبيقات LLM. يمكن أن تساعدك التعرف على Vitest في الحصول على المزيد من Poyro.
يتبع Poyro أفضل ممارسات لاستخدام LLMs لتقييم مخرجات التطبيق LLM. يحول Poyro ظروف اللغة الطبيعية إلى اختبارات الوحدة الثنائية. يجب أن يكون اختبار الوحدة مجانيًا ومفتوحًا المصدر افتراضيًا - يتضمن تطبيقات الذكاء الاصطناعى - لذلك نستخدم LLM Small Running LLM محليًا لتقييم مخرجات التطبيق الخاصة بك.
لمزيد من السياق حول سبب استخدام Poyro وأمثلة حول كيفية استخدامه مع تطبيقات Vitest to Unit Test LLM ، اقرأ مقالاتنا:
اختبار الذكاء الاصطناعي كجزء من الهندسة الكاملة
كيفية كتابة اختبارات الوحدة لتطبيق الويب الخاص بك AI
دراسة حالة - وحدة اختبار تطبيق الذكاء الاصطناعى القانوني
أمثلة رمز Runnable لهذه المقالة
node.js 20 أو الأحدث
VITIST 1.6.0 أو أحدث
يجب أن يكون لمشروعك "نوع": "الوحدة النمطية" في الحزمة. json (هذه المكتبة هي ESM فقط)
موصى به: GPU المتوافق مع CUDA (NVIDIA) أو GPU المتوافقة مع المعادن (Silicon) للحصول على أفضل أداء ، ولكن ليس مطلوبًا
للبدء بسرعة ، ببساطة تشغيل:
NPX Poyro init
لاستخدام المطاعم ، قم بإنشاء ملف مع Extension .test.ts
في أي مكان داخل مشروعك. هنا مثال:
// myfirsttest.test.tsimport {وصف ، توقع ، من "Vitest" ؛ وصف ("myfirsttest" ، () => { IT ("يجب أن يكون صحيحًا" ، async () => {// استبدل هذا بـ LLM App الخاص بك OutputConst llmoutput = "Hello ، World!" يقول مرحبا ") ؛ } ، 10000) ؛ // زيادة المهلة حسب الحاجة مع الوسيطة الثالثة}) ؛
يمكن لـ toFulfillCriterion
تحديد ما إذا كان ناتج LLM يلتقي أو لا يفي بمعيار لغة طبيعية.
في المرة الأولى التي تقوم فيها بإجراء اختبار مثل الاختبار أعلاه ، سيتم تنزيل ملف النموذج الخاص بـ LLM المحلي. يجب أن يستغرق بضع دقائق.
قم بتشغيل ARTID مع مدير الحزمة الخاص بك ، على سبيل المثال مع npm
:
اختبار NPM
أوامر مماثلة تعمل مع yarn
و pnpm
.
نحن نقدم حلولًا للقضايا الشائعة في صفحة استكشاف الأخطاء وإصلاحها. ألقِ نظرة على الحلول هناك ، وإذا واصلت مواجهة المشكلات ، فلا تتردد في التواصل معنا.
يمكنك تقديم مشكلة من خلال الانتقال إلى مستودع GitHub وإنشاء مشكلة جديدة. قبل تقديم مشكلة ، يرجى التحقق مما إذا كان قد تم بالفعل تقديم مشكلة مماثلة.
إذا كنت ترغب في الحصول على المساعدة ، أو العصف الذهني على Evals الجيدة ، أو إذا كنت ترغب فقط في الدردشة مع مطوري Poyro الآخرين ، انضم إلى مجتمعنا على Discord!
إذا كنت ترغب في المساهمة في Poyro ، فيرجى قراءة دليلنا المساهم.
ابدأ باستنساخ المستودع:
git clone https://github.com/poyro/poyro.git
بعد ذلك ، قم بتثبيت جميع التبعيات:
تثبيت PNPM
عند التطوير ، يمكنك إما تشغيل pnpm dev
في الجذر ، والتي ستقوم تلقائيًا بإنشاء جميع الحزم ذات الصلة عند إجراء التغييرات ، أو يمكنك تشغيل pnpm dev
داخل الحزمة التي تعمل عليها.