Skip to main content
Ceci est un notebook interactif. Vous pouvez l’exécuter localement ou utiliser les liens suivants :
Ce notebook montre comment utiliser Weave avec l’acheminement personnalisé de Not Diamond pour acheminer des prompts de LLM vers le modèle le plus adapté en fonction des résultats d’évaluation. À la fin de ce notebook, vous aurez entraîné un routeur personnalisé pour des prompts de programmation, vous l’aurez utilisé pour choisir un modèle cible pour un nouveau prompt, puis vous aurez comparé ses performances à celles du meilleur modèle pris individuellement.

Acheminement des prompts

Cette section explique l’intérêt d’un acheminement personnalisé lorsque vous travaillez avec plusieurs LLM. Lorsque vous créez des flux de travail LLM complexes, vous pouvez avoir besoin d’envoyer des prompts à différents modèles en fonction de la précision, du coût ou de la latence des appels. Vous pouvez utiliser Not Diamond pour acheminer les prompts de ces flux de travail vers le modèle le mieux adapté à vos besoins, afin de maximiser la précision tout en réduisant les coûts liés aux modèles. Quelle que soit la distribution des données, il est rare qu’un seul modèle surpasse tous les autres sur chaque requête. En combinant plusieurs modèles au sein d’un « méta-modèle » qui apprend quand appeler chaque LLM, vous pouvez dépasser les performances de chaque modèle pris individuellement, et même réduire les coûts et la latence.

Acheminement personnalisé

Pour entraîner un routeur personnalisé pour vos prompts, vous devez fournir les entrées suivantes :
  1. Un ensemble de prompts de LLM : les prompts doivent être des chaînes de caractères représentatives des prompts utilisés dans votre application.
  2. Réponses des LLM : les réponses des LLM candidats pour chaque entrée. Les LLM candidats peuvent inclure aussi bien des LLM pris en charge que vos propres modèles personnalisés.
  3. Scores d’évaluation des réponses des LLM candidats aux entrées : les scores sont des nombres et peuvent correspondre à n’importe quelle métrique adaptée à vos besoins.
Une fois ces éléments soumis à l’API Not Diamond, vous pouvez entraîner un routeur personnalisé adapté à chacun de vos flux de travail.

Configurer les données d’entraînement

Dans cette section, vous préparez les données d’entraînement et de test sur lesquelles le routeur personnalisé s’appuie pour apprendre. En pratique, vous utilisez vos propres évaluations pour entraîner un routeur personnalisé. Dans ce notebook d’exemple, en revanche, vous utilisez des réponses de LLM sur le dataset HumanEval afin d’entraîner un routeur personnalisé pour des tâches de programmation. Commencez par télécharger le dataset préparé pour cet exemple, puis analysez les réponses des LLM pour les convertir en EvaluationResults pour chaque modèle. Cette répartition entre données d’entraînement et de test sert dans les sections suivantes à entraîner le routeur et à évaluer ses performances hors échantillon.

Entraîner un routeur personnalisé

Une fois les EvaluationResults préparés, vous pouvez les soumettre à Not Diamond pour entraîner un routeur personnalisé. Assurez-vous d’avoir créé un compte et généré une clé API, puis insérez votre clé API dans le code ci-dessous. Cette clé API sert à authentifier la requête d’entraînement.
Créer une clé API
Vous pouvez ensuite suivre l’entraînement de votre routeur personnalisé dans l’application Not Diamond.
Suivre la progression de l’entraînement du routeur
Une fois l’entraînement de votre routeur personnalisé terminé, vous pouvez l’utiliser pour acheminer vos prompts.
Cet exemple a également tiré parti de la compatibilité de Not Diamond avec le traçage automatique de Weave. Vous pouvez consulter les résultats dans l’interface utilisateur de Weights & Biases. Interface utilisateur de Weights & Biases pour l’acheminement personnalisé

Évaluez votre routeur personnalisé

Cette section explique comment déterminer si le routeur personnalisé fait mieux que le meilleur modèle pris individuellement. Une fois votre routeur personnalisé entraîné, vous pouvez évaluer ses performances de l’une des manières suivantes :
  • Performances sur l’échantillon d’entraînement, en soumettant les prompts d’entraînement.
  • Performances hors échantillon, en soumettant de nouveaux prompts ou des prompts réservés à la validation.
Dans l’exemple suivant, vous soumettez le jeu de test au routeur personnalisé pour évaluer ses performances.
Dans ce cas, le « méta-modèle » de Not Diamond achemine les prompts vers plusieurs modèles différents. L’entraînement du routeur personnalisé via Weave exécute également des évaluations et téléverse les résultats dans l’interface utilisateur de Weights & Biases. Une fois l’entraînement du routeur personnalisé terminé, vous pouvez examiner les résultats dans l’interface utilisateur de Weights & Biases. Dans l’interface utilisateur, vous pouvez constater que le « méta-modèle » de Not Diamond surpasse le modèle le plus performant en acheminant les prompts vers d’autres modèles plus susceptibles d’y répondre correctement.
Évaluation de Not Diamond
Dernière modification le 30 septembre 2026