Traçage
Il est important de stocker les traces des applications de modèles de langage dans un emplacement centralisé, aussi bien pendant le développement qu’en production. Ces traces sont utiles pour le débogage et peuvent servir de jeu de données pour améliorer votre application. Weave capture automatiquement les traces d’Instructor. Pour commencer à suivre vos appels, appelezweave.init(project_name="[YOUR-WANDB-PROJECT-NAME]"), puis utilisez la bibliothèque comme d’habitude.
Suivre vos propres ops
Encapsuler une fonction avec@weave.op permet de capturer les entrées, les sorties et la logique de votre application afin de déboguer la circulation des données dans celle-ci. Vous pouvez imbriquer les ops sur plusieurs niveaux et construire une arborescence des fonctions que vous souhaitez suivre. Le code est également versionné automatiquement au fil de vos expériences, ce qui permet de capturer les modifications ponctuelles qui n’ont pas encore été validées dans Git.
Créez une fonction décorée avec @weave.op.
Dans l’exemple suivant, la fonction extract_person est la fonction de métrique encapsulée avec @weave.op. Vous pouvez ainsi voir les étapes intermédiaires, comme l’appel de complétion de chat OpenAI.
Créer un Model pour faciliter l’expérimentation
Il est difficile d’organiser ses expériences lorsque de nombreux éléments évoluent en même temps. La classe Model vous permet de capturer et d’organiser les détails expérimentaux de votre application, comme votre prompt système ou le modèle que vous utilisez. Vous pouvez ainsi organiser et comparer plus facilement les différentes itérations de votre application.
En plus de gérer les versions du code et de capturer les entrées et les sorties, les Models capturent des paramètres structurés qui contrôlent le comportement de votre application, ce qui vous permet d’identifier les paramètres les plus efficaces. Vous pouvez également utiliser les Weave Models avec serve et les Evaluations.
Dans l’exemple suivant, vous pouvez expérimenter avec PersonExtractor. Chaque fois que vous modifiez l’un de ces éléments, vous obtenez une nouvelle version de PersonExtractor.
Servir un Weave Model
Après avoir enregistré unweave.Model, vous pouvez le servir en tant que point de terminaison FastAPI afin de le tester en dehors du notebook ou de l’intégrer à d’autres applications. À partir d’une référence Weave vers un objet weave.Model, vous pouvez démarrer un serveur FastAPI et le servir avec serve.
Pour servir votre modèle, exécutez la commande suivante dans votre terminal :



