Guide_Evaluation_LLM / pages /19_IV.6._Conseils et astuces.py
bourdoiscatie's picture
Upload 44 files
1162aae verified
import streamlit as st
st.set_page_config(layout="wide")
from streamlit_extras.switch_page_button import switch_page
st.markdown("""
## Conseils et astuces
### Atténuer les biais bien connus des *LLM-as-a-judge*
- **Manque de cohérence interne**<br>Un juge peut vous donner des avis différents si vous l'interrogez plusieurs fois (si la température n'est pas fixée à 0).<br><u>Atténuation</u> :<br>Vous pouvez atténuer ce problème en demandant à votre juge de faire preuve de cohérence interne en l'interrogeant plusieurs fois pour ne conserver que la sortie revenant le plus souvent.
- **Auto-préférence**<br>Ils ont tendance à [favoriser leurs propres sorties](https://arxiv.org/abs/2404.13076) lorsqu'ils notent les réponses.<br><u>Atténuation</u> :<br>Vous pouvez atténuer ce phénomène en utilisant un jury.
- **Cécité à la perturbation de l'entrée**<br>Les modèles sont mauvais pour identifier [l'entrée perturbée](https://arxiv.org/abs/2406.13439) et tangentiellement [mauvais pour fournir des plages de notation cohérentes](https://twitter.com/aparnadhinak/status/1748368364395721128) (des expériences étendues à ce sujet sont disponibles [ici](https://github.com/LeonEricsson/llmjudge/blob/main/README.md)). Par exemple, si on leur demande de classer la qualité d'un texte dans lequel du bruit a été ajouté sur une échelle cohérente, les notes prédites ne reflètent pas cette échelle.<br><u>Atténuation</u> :
- demander au modèle d'expliquer son raisonnement [avant de fournir une note](https://twitter.com/seungonekim/status/1749289437165769177).
- fournir une échelle de notation cohérente dans l'instruction.
- **Biais de position**<br>Ils ont tendance à [favoriser des positions de réponse spécifiques](https://arxiv.org/abs/2306.05685). Par exemple, lorsqu'on leur présente des comparaisons par paires, Claude et GPT3.5 ont tendance à préférer assez systématiquement soit le premier choix, soit le second choix.<br><u>Atténuation</u> :
- changer les positions des réponses de manière aléatoire.
- calculer les log-probabilités de tous les choix possibles pour obtenir une réponse normalisée.
- **Biais de verbosité** (ou de longueur)<br>Ils ont tendance à préférer les réponses plus verbeuses.<br><u>Atténuation</u> :<br>Vous pouvez [tenir compte de la différence de longueur des réponses](https://arxiv.org/abs/2404.04475).
- **Leur cohérence [avec les réponses humaines](https://arxiv.org/abs/2308.15812) est contestable**<br>Cependant, il est aussi [discutable que des humains non experts constituent une bonne *baseline* pour absolument toutes les évaluations](https://arxiv.org/abs/2202.06935). Pour certains domaines spécifiques (médical, juridique, mathématique, etc.), l'utilisation d'annotateurs humains non experts est une base aussi mauvaise que l'utilisation directe d'un LLM.
- **Biais de format**<br>Ils ont tendance à ne pas évaluer avec précision si le format de l'instruction [est trop éloigné](https://arxiv.org/abs/2310.17631) de ce avec quoi ils ont été entraînés. Par exemple, un modèle entraîné à effectuer des comparaisons par paire avec une réponse de référence échouera si cette réponse n'est pas fournie. Des échecs se produiront également dans l'autre sens.<br><u>Atténuation</u> :<br>Vous pouvez atténuer ce problème en prêtant attention au format de l'instruction d'entraînement (si le modèle a été entraîné) et en veillant à le respecter.
""", unsafe_allow_html=True)
st.markdown(""" """)
st.markdown(""" """)
st.markdown(""" """)
st.markdown("""
### Choisir les bonnes tâches à soumettre au juge
Les modèles utilisés comme juge :
- sont en général **mauvais pour identifier les hallucinations**. En particulier ce qu'on appelle les hallucinations partielles (qui semblent proches de la vérité mais sont en fait légèrement différentes) (voir notamment [ce papier](https://arxiv.org/abs/2305.11747) et [celui-ci](https://arxiv.org/abs/2303.08896)).
- ont une corrélation faible avec les annotateurs humains en ce qui concerne [le résumé](https://arxiv.org/abs/2304.02554) (voir aussi [ici](https://arxiv.org/abs/2303.16634)), [la fidélité](https://arxiv.org/abs/2307.16877), et ne sont pas corrélés de manière cohérente avec le jugement humain de manière plus générale en ce qui concerne [un éventail de tâches](https://arxiv.org/abs/2406.18403).
""", unsafe_allow_html=True)
st.markdown(""" """)
st.markdown(""" """)
st.markdown(""" """)
col1, col2, col3= st.columns(3)
with col1:
if st.button('Section précédente', use_container_width=True):
switch_page("IV.5._Modèles de récompense")
with col2:
if st.button("Accueil", use_container_width=True):
switch_page("Home")
with col3:
if st.button("Section suivante", use_container_width=True):
switch_page("V._Dépannage")