Poyro adalah perpanjangan yang ringan dari Vitest (kerangka pengujian modern dengan API seperti Jest) untuk menguji aplikasi LLM. Membiasakan diri dengan Vitest dapat membantu Anda mendapatkan lebih banyak dari Poyro.
Poyro mengikuti praktik terbaik menggunakan LLM untuk mengevaluasi output aplikasi LLM Anda. Poyro mengubah kondisi bahasa alami menjadi tes unit biner. Pengujian unit harus gratis dan open source secara default - yang termasuk aplikasi AI - jadi kami menggunakan LLM kecil yang dijalankan secara lokal untuk mengevaluasi output aplikasi Anda.
Untuk konteks lebih lanjut tentang mengapa menggunakan Poyro dan contoh -contoh tentang cara menggunakannya bersama dengan vitest ke aplikasi unit uji llm, baca esai kami:
Pengujian AI sebagai bagian dari rekayasa full-stack
Cara menulis tes unit untuk aplikasi web AI Anda
Studi Kasus - Pengujian Unit Aplikasi AI Legal
Contoh kode runnable untuk artikel ini
Node.js 20 atau lebih
Vitest 1.6.0 atau lebih baru
Proyek Anda Harus Memiliki "Ketik": "Modul" di paketnya.json (Perpustakaan ini hanya ESM)
Direkomendasikan: GPU yang kompatibel dengan CUDA (NVIDIA) atau GPU yang kompatibel dengan logam (apel silikon) untuk kinerja terbaik, tetapi tidak diperlukan
Untuk memulai dengan cepat, cukup jalankan:
NPX POYRO INIT
Untuk menggunakan pencocokan, buat file dengan ekstensi .test.ts
di mana saja dalam proyek Anda. Inilah contohnya:
// myfirsttest.test.tsimport {gambarkan, harapkan, itu} dari "vitest"; gambarkan ("myfirsttest", () => { itu ("harus benar", async () => {// ganti ini dengan outputconst llmoutput = "Halo, World!"; Menyapa "); }, 10000); // Tingkatkan batas waktu sesuai kebutuhan dengan argumen ketiga});
toFulfillCriterion
dapat menentukan apakah output LLM memenuhi atau tidak memenuhi kriteria bahasa alami.
Pertama kali Anda menjalankan tes seperti yang di atas, file model untuk LLM yang dijalankan secara lokal kami akan diunduh. Butuh beberapa menit.
Jalankan Vitest dengan manajer paket Anda, misalnya dengan npm
:
Tes NPM
Perintah serupa bekerja dengan yarn
dan pnpm
.
Kami memberikan solusi untuk masalah umum di halaman pemecahan masalah kami. Lihatlah solusi di sana, dan jika Anda terus mengalami masalah, jangan ragu untuk menghubungi kami.
Anda dapat mengirimkan masalah dengan pergi ke repositori GitHub kami dan membuat masalah baru. Sebelum mengirimkan masalah, silakan periksa apakah masalah serupa telah diajukan.
Jika Anda ingin mendapatkan bantuan, bertukar pikiran pada eval yang baik, atau jika Anda hanya ingin mengobrol dengan pengembang Poyro lainnya, bergabunglah dengan komunitas kami di Discord!
Jika Anda ingin berkontribusi ke Poyro, silakan baca panduan berkontribusi kami.
Mulailah dengan mengkloning repositori:
Git Clone https://github.com/poyro/poyro.git
Selanjutnya, instal semua dependensi:
Instal PNPM
Saat berkembang, Anda dapat menjalankan pnpm dev
di root, yang secara otomatis akan membangun semua paket yang relevan saat perubahan dilakukan, atau Anda dapat menjalankan pnpm dev
dalam paket yang sedang Anda kerjakan.