Pour les métriques basées sur un modèle, Gen AI Evaluation Service évalue vos modèles avec un modèle de base tel que Gemini, qui a été configuré comme modèle d'évaluation. Cette page explique comment améliorer la qualité de ce modèle d'évaluation et le personnaliser en fonction de vos besoins à l'aide de techniques de prompt engineering.
Pour le workflow d'évaluation de base, consultez le guide de démarrage rapide de Gen AI Evaluation Service. La série sur la personnalisation avancée des modèles de juges comprend les pages suivantes :
- Évaluer un modèle de juge
- Personnalisation du modèle de juge par requête (page actuelle)
- Configurer un modèle de juge
Présentation
L'évaluation des grands modèles de langage (LLM) par des juges humains peut être coûteuse et prendre du temps. L'utilisation d'un modèle de jugement est une méthode plus évolutive pour évaluer les LLM.
Le service d'évaluation de l'IA générative utilise Gemini 2.0 Flash par défaut comme modèle d'évaluation, avec des requêtes personnalisables pour évaluer votre modèle pour différents cas d'utilisation. De nombreux cas d'utilisation de base sont couverts dans les modèles de métriques basées sur des modèles. Toutefois, vous pouvez utiliser la procédure suivante pour personnaliser davantage votre modèle de juge au-delà des cas d'utilisation de base :
Créez un ensemble de données avec des requêtes représentatives de votre cas d'utilisation. La taille recommandée pour un ensemble de données est comprise entre 100 et 1 000 requêtes.
Utilisez les requêtes pour modifier le modèle de juge à l'aide de techniques de prompt engineering.
Exécutez une évaluation avec le modèle de juge.
Techniques de prompt engineering
Cette section liste les techniques d'ingénierie des requêtes que vous pouvez utiliser pour modifier le modèle de juge. Les exemples utilisent le prompting zero-shot, mais vous pouvez également utiliser des exemples few-shot dans la requête pour améliorer la qualité du modèle.
Commencez par des requêtes qui s'appliquent à l'ensemble des données d'évaluation. Les requêtes doivent inclure des critères d'évaluation et des rubriques de notation de haut niveau, et demander un verdict final au modèle d'évaluation. Pour obtenir des exemples de critères et de grilles d'évaluation pour différents cas d'utilisation, consultez Modèles de requête de métrique.
Utiliser les requêtes en chaîne de pensée
Demandez au modèle juge d'évaluer un modèle candidat avec une séquence d'actions ou d'étapes logiquement cohérentes.
Par exemple, vous pouvez utiliser les instructions détaillées suivantes :
"Please first list down the instructions in the user query."
"Please highlight such specific keywords."
"After listing down instructions, you should rank the instructions in the order of importance."
"After that, INDEPENDENTLY check if response A and response B for meeting each of the instructions."
"Writing quality/style should NOT be used to judge the response quality unless it was requested by the user."
"When evaluating the final response quality, please value Instruction Following a more important rubrics than Truthfulness."
L'exemple de requête suivant demande au modèle de juge d'évaluer les tâches de texte à l'aide du chain-of-thought prompting :
# Rubrics
Your mission is to judge responses from two AI models, Model A and Model B, and decide which is better. You will be given the previous conversations between the user and the model, a prompt, and responses from both models.
Please use the following rubric criteria to judge the responses:
<START OF RUBRICS>
Your task is to first analyze each response based on the two rubric criteria: instruction_following, and truthfulness (factual correctness). Start your analysis with "Analysis".
(1) Instruction Listing
Please first list down the instructions in the user query. In general, an instruction is VERY important if it is specific asked in the prompt and deviate from the norm. Please highlight such specific keywords.
You should also derive the task type from the prompt and include the task specific implied instructions.
Sometimes, no instruction is available in the prompt. It is your job to infer if the instruction is to auto-complete the prompt or asking LLM for followups.
After listing down instructions, you should rank the instructions in the order of importance.
After that, INDEPENDENTLY check if response A and response B for meeting each of the instructions. You should itemize for each instruction, if response meet, partially meet or does not meet the requirement using reasoning. You should start reasoning first before reaching a conclusion whether response satisfies the requirement. Citing examples while making reasoning is preferred.
(2) Truthfulness
Compare response A and response B for factual correctness. The one with less hallucinated issues is better.
If response is in sentences and not too long, you should check every sentence separately.
For longer responses, to check factual correctness, focus specifically on places where response A and B differ. Find the correct information in the text to decide if one is more truthful to the other or they are about the same.
If you cannot determine validity of claims made in the response, or response is a punt ("I am not able to answer that type of question"), the response has no truthful issues.
Truthfulness check is not applicable in the majority of creative writing cases ("write me a story about a unicorn on a parade")
Writing quality/style should NOT be used to judge the response quality unless it was requested by the user.
In the end, express your final verdict in one of the following choices:
1. Response A is better: [[A>B]]
2. Tie, relatively the same: [[A=B]]
3. Response B is better: [[B>A]]
Example of final verdict: "My final verdict is tie, relatively the same: [[A=B]]".
When evaluating the final response quality, please value Instruction Following a more important rubrics than Truthfulness.
When for both response, instruction and truthfulness are fully meet, it is a tie.
<END OF RUBRICS>
Guider le raisonnement du modèle avec des consignes d'évaluation
Utilisez les consignes de notation pour aider le modèle de juge à évaluer le raisonnement du modèle. Les consignes de notation sont différentes des critères de notation.
Par exemple, la requête suivante utilise des critères d'évaluation, qui demandent à un modèle de juge d'évaluer la tâche "Suivi des instructions" à l'aide des rubriques d'évaluation "Problèmes majeurs", "Problèmes mineurs" et "Aucun problème" :
Your task is to first analyze each response based on the three rubric criteria: verbosity, instruction_following, truthfulness (code correctness) and (coding) executability. Please note that the model responses should follow "response system instruction" (if provided). Format your judgment in the following way:
Response A - verbosity:too short|too verbose|just right
Response A - instruction_following:major issues|minor issues|no issues
Response A - truthfulness:major issues|minor issues|no issues
Response A - executability:no|no code present|yes-fully|yes-partially
Then do the same for response B.
After the rubric judgements, you should also give a brief rationale to summarize your evaluation considering each individual criteria as well as the overall quality in a new paragraph starting with "Reason: ".
In the last line, express your final judgment in the format of: "Which response is better: [[verdict]]" where "verdict" is one of {Response A is much better, Response A is better, Response A is slightly better, About the same, Response B is slightly better, Response B is better, Response B is much better}. Do not use markdown format or output anything else.
La requête suivante utilise des consignes de notation pour aider le modèle d'évaluation à noter la tâche "Suivi des instructions" :
You are a judge for coding related tasks for LLMs. You will be provided with a coding prompt, and two responses (Response A and Response B) attempting to answer the prompt. Your task is to evaluate each response based on the following criteria:
Correctness: Does the code produce the correct output and solve the problem as stated?
Executability: Does the code run without errors?
Instruction Following: Does the code adhere to the given instructions and constraints?
Please think about the three criteria, and provide a side-by-side comparison rating to to indicate which one is better.
Calibrer le modèle d'évaluation avec des réponses de référence
Vous pouvez calibrer le modèle d'évaluation avec des réponses de référence pour certaines requêtes ou pour toutes.
L'invite suivante indique au modèle de juge comment utiliser les réponses de référence :
"Note that you can compare the responses with the reference answer to make your judgment, but the reference answer may not be the only correct answer to the query."
L'exemple suivant utilise également le raisonnement, l'incitation à la réflexion et les consignes de notation pour guider le processus d'évaluation de la tâche "Suivi des instructions" :
# Rubrics
Your mission is to judge responses from two AI models, Model A and Model B, and decide which is better. You will be given a user query, source summaries, and responses from both models. A reference answer
may also be provided - note that you can compare the responses with the reference answer to make your judgment, but the reference answer may not be the only correct answer to the query.
Please use the following rubric criteria to judge the responses:
<START OF RUBRICS>
Your task is to first analyze each response based on the three rubric criteria: grounding, completeness, and instruction_following. Start your analysis with "Analysis".
(1) Grounding
Please first read through all the given sources in the source summaries carefully and make sure you understand the key points in each one.
After that, INDEPENDENTLY check if response A and response B use ONLY the given sources in the source summaries to answer the user query. It is VERY important to check that all
statements in the response MUST be traceable back to the source summaries and ACCURATELY cited.
(2) Completeness
Please first list down the aspects in the user query. After that, INDEPENDENTLY check if response A and response B for covering each of the aspects by using ALL RELEVANT information from the sources.
(3) Instruction Following
Please read through the following instruction following rubrics carefully. After that, INDEPENDENTLY check if response A and response B for following each of the instruction following rubrics successfully.
* Does the response provide a final answer based on summaries of 3 potential answers to a user query?
* Does the response only use the technical sources provided that are relevant to the query?
* Does the response use only information from sources provided?
* Does the response select all the sources that provide helpful details to answer the question in the Technical Document?
* If the sources have significant overlapping or duplicate details, does the response select sources which are most detailed and comprehensive?
* For each selected source, does the response prepend source citations?
* Does the response use the format: "Source X" where x represents the order in which the technical source appeared in the input?
* Does the response use original source(s) directly in its response, presenting each source in its entirety, word-for-word, without omitting and altering any details?
* Does the response create a coherent technical final answer from selected Sources without inter-mixing text from any of the Sources?
Writing quality/style can be considered, but should NOT be used as critical rubric criteria to judge the response quality.
In the end, express your final verdict in one of the following choices:
1. Response A is better: [[A>B]]
2. Tie, relatively the same: [[A=B]]
3. Response B is better: [[B>A]]
Example of final verdict: "My final verdict is tie, relatively the same: [[A=B]]".
When for both response, grounding, completeness, and instruction following are fully meet, it is a tie.
<END OF RUBRICS>
Étapes suivantes
- Exécutez votre évaluation avec le modèle d'évaluation modifié.
- Configurer votre modèle de juge