Le Poyro est une extension légère du Vitest (un cadre de test moderne avec une API en plaisantage) pour tester les applications LLM. Se familiariser avec Vitest peut vous aider à tirer le meilleur parti de Poyro.
Poyro suit la meilleure pratique de l'utilisation de LLMS pour évaluer les sorties de votre application LLM. Poyro convertit les conditions du langage naturel en tests unitaires binaires. Les tests unitaires doivent être gratuits et open source par défaut - cela inclut les applications AI - nous utilisons donc un petit LLM à exécution locale pour évaluer les sorties de votre application.
Pour plus de contexte sur les raisons pour lesquelles utiliser le Poyro et des exemples sur la façon de l'utiliser avec les applications LLM les plus vitreuses à unité, lisez nos essais:
Test d'IA dans le cadre de l'ingénierie complète
Comment rédiger des tests unitaires pour votre application Web AI
Étude de cas - Test unitaire d'une application AI légale
Exemples de code exécutables pour cet article
Node.js 20 ou version ultérieure
Vuest 1.6.0 ou version ultérieure
Votre projet doit avoir "Type": "Module" dans son package.json (cette bibliothèque est ESM uniquement)
Recommandé: GPU compatible CUDA (NVIDIA) ou GPU compatible en métal (silicium Apple) pour de meilleures performances, mais pas requis
Pour commencer rapidement, courez simplement:
npx poyro init
Pour utiliser les correspondants, créez un fichier avec l'extension .test.ts
n'importe où dans votre projet. Voici un exemple:
// myfirsttest.test.tsimport {décrire, attendez-vous, it} de "vitrest"; décrire ("myFirstTest", () => { Il ("devrait être vrai", async () => {// remplacez-le par OutputConst LlMoutput = "Hello, World!" Dit bonjour "); }, 10000); // augmente le délai d'expiration au besoin avec le troisième argument});
toFulfillCriterion
peut déterminer si une sortie LLM répond ou ne répond pas à un critère de langage naturel.
La première fois que vous exécutez un test comme celui ci-dessus, le fichier modèle de notre LLM Locally Run sera téléchargé. Cela devrait prendre quelques minutes.
Exécutez Vuest avec votre gestionnaire de packages, par exemple avec npm
:
test de NPM
Les commandes similaires fonctionnent avec yarn
et pnpm
.
Nous fournissons des solutions aux problèmes communs dans notre page de dépannage. Jetez un œil aux solutions là-bas, et si vous continuez à rencontrer des problèmes, n'hésitez pas à nous contacter.
Vous pouvez soumettre un problème en allant dans notre référentiel GitHub et en créant un nouveau problème. Avant de soumettre un problème, veuillez vérifier si un problème similaire a déjà été soumis.
Si vous voulez obtenir de l'aide, réfléchissez à de bons étions ou si vous voulez simplement discuter avec d'autres développeurs de Poyro, rejoignez notre communauté sur Discord!
Si vous souhaitez contribuer à Poyro, veuillez lire notre guide de contribution.
Commencez par cloner le référentiel:
git clone https://github.com/poyro/poyro.git
Ensuite, installez toutes les dépendances:
Installation de PNPM
Lors du développement, vous pouvez soit exécuter pnpm dev
à la racine, qui créera automatiquement tous les packages pertinents lorsque des modifications sont apportées, ou vous pouvez exécuter pnpm dev
dans le package sur lequel vous travaillez.