Recherche

Automatiser l'évaluation des LLM : un cas pratique chez Spotify

Spotify a exploré diverses options pour automatiser l'évaluation des réponses d'un modèle génératif destiné à l'analyse de factures fournisseurs.

Publié par Clément Bohic le - mis à jour à
Lecture
4 min
  • Imprimer
Automatiser l'évaluation des LLM : un cas pratique chez Spotify
© généré par IA

Combien de LLM faut-il pour en évaluer un autre ?

La question s'est posée chez Spotify dans le cadre d'un projet d'automatisation financière axé sur l'analyse des factures fournisseurs. La diversité des langues, des formats et des structures rendait inadéquats les modèles déterministes. Aussi a-t-il a été décidé de recourir à de la GenAI. Un choix qui a induit, autant pour des raisons pratiques que réglementaires, de pouvoir accorder un niveau de confiance à chaque réponse.

Spotify a exploré l'usage d'un modèle spécifique à cette tâche et pouvant être amélioré après sa mise en prod. Une piste finalement non retenue : les scores, en plus d'être difficiles à interpréter voire parfois contre-intuitifs, n'étaient pas constants d'une exécution à l'autre.

Autre option expérimentée : l'usage des logprobs du modèle chargé d'analyser les factures. C'est-à-dire, dans les grandes lignes, de la probabilité qu'il a de produire différents tokens (un logprob plus élevé traduisant une plus grande confiance). Cette méthode peut parfois manquer de transparence : on ne sait pas toujours comment sont calculées les logprobs. En outre, elle apparaît peu fiable : il ne ressort pas corrélation claire entre le niveau de confiance mesuré pour une réponse (Spotify l'a calculé en faisant la moyenne des logprobs de chaque token) et la précision réelle de cette réponse.

Une autre technique l'a emporté : le vote à la majorité. Elle consiste à choisir la réponse la plus fréquente sur un éventail de modèles et/ou de prompts. Le score de confiance est fonction du taux de modèles en accord. Elle engendre des résultats assez consistants et interprétables, corrélés assez fortement à la précision réelle.

Vote à la majorité : la question du nombre...

Le nombre optimal de modèles pour le vote à la majorité dépend de nombreux paramètres : complexité de la tâche, diversité des LLM, ressources disponibles, etc. Un plus grand échantillon sera généralement plus stable, mais introduira une complexité supplémentaire et consommera davantage de ressources. Une forme de mise en application de la loi des rendements décroissants.

De ses lectures sur le sujet, Spotify a estimé la fenêtre idéale de 4 à 7 modèles. Il s'y est tenu, en en utilisant 5 ou 6 en fonctions des évaluations. Il a implémenté une pondération des votes (le poids des modèles étant basé sur leur précision). Une solution qui donne davantage d'influence aux modèles performants et minimise les chances d'égalité dans le vote. Des poids linéaires ont été préférés aux poids exponentiels pour des raisons d'explicabilité, mais aussi de consistance. Si est ajouté un étalonnage de Platt (technique de calibratoin des outputs probabilistes) pour mieux aligner les scores "bruts" sur la précision réelle.

... et du consensus

Le vote à la majorité se révèle efficace pour les champs numériques et les réponses texte courtes. C'est plus difficile avec des éléments longs comme les adresses et les descriptions d'articles : il est moins probable que les modèles trouvent un consensus. Dans ce contexte, Spotify a exploré deux approches. D'une part, clusteriser les réponses texte en fonction de la proximité de leurs représentations vectorielles (le plus gros cluster correspondant au vote). De l'autre, utiliser un modèle génératif distinct pour trancher le vote. L'une et l'autre ont amélioré les choses, mais aucune n'est passée en production Entre autres de par leur incapacité à détecter des différences orthotypographiques telle celle entre O (o majuscule) et 0 (zéro). En guise de méthode de contournement, les textes longs ont été divisés en fragments. Par exemple, l'adresse en rue, ville, pays et code postal.

Autre écueil du vote à la majorité : un niveau de granularité dépendant du nombre participants. Moins on utilise de modèles, plus chacun a une grande influence sur la décision finale. Avec les applications qui ont besoin d'un haut niveau de confiance, un seul vote divergent peut causer une chute suffisamment importante du score de confiance pour entraîner le rejet d'une réponse. La solution adoptée a consisté à utiliser plusieurs prompts par modèle, augmentant ainsi le nombre de votes et réduisant par là même le poids de chacun. Une technique effiace, mais qui implique des coûts supplémentaires, en temps comme en ressources de calcul, tout en accroissant les chances d'échec.

Illustration générée par IA

Sur le même thème

Voir tous les articles Data & IA

Livres Blancs

Voir tous les livres blancs

Vos prochains événements

Voir tous les événements

Voir tous les événements

S'abonner
au magazine
Se connecter
Retour haut de page