En el caso de las métricas basadas en modelos, el servicio de evaluación de IA generativa evalúa tus modelos con un modelo fundamental, como Gemini, que se configuró como modelo de juez. En esta página, se describe cómo puedes mejorar la calidad de ese modelo de juez y personalizarlo para tus necesidades con técnicas de ingeniería de instrucciones.
Descripción general
El uso de evaluadores humanos para evaluar modelos de lenguaje grandes (LLM) puede ser costoso y llevar mucho tiempo. El uso de un modelo de juez es una forma más escalable de evaluar los LLM.
El servicio de evaluación de IA generativa usa Gemini 1.5 Pro de forma predeterminada como modelo de juez, con instrucciones personalizables para evaluar tu modelo en varios casos de uso. Muchos casos de uso básicos se abordan en Plantillas de métricas basadas en modelos, pero puedes usar el siguiente proceso para personalizar aún más tu modelo de juez más allá de los casos de uso básicos:
Crea un conjunto de datos con instrucciones que sean representativas de tu caso de uso. El tamaño recomendado del conjunto de datos es de entre 100 y 1,000 instrucciones.
Usa las instrucciones para modificar el modelo de juez con técnicas de ingeniería de instrucciones.
Ejecuta una evaluación con el modelo de juez.
Técnicas de ingeniería de instrucciones
En esta sección, se enumeran las técnicas de ingeniería de instrucciones que puedes usar para modificar el modelo de juez. Los ejemplos usan instrucciones sin ejemplos, pero también puedes usar ejemplos de pocos intentos en la instrucción para mejorar la calidad del modelo.
Comienza con instrucciones que se apliquen a todo el conjunto de datos de evaluación. Las indicaciones deben incluir criterios de evaluación de alto nivel y rúbricas para las calificaciones, y solicitar un veredicto final del modelo de juez. Para ver ejemplos de criterios de evaluación y rúbricas en varios casos de uso, consulta Plantillas de instrucciones de métricas.
Usa la cadena de pensamientos
Pídele al modelo de juez que evalúe un modelo candidato con una secuencia de acciones o pasos lógicamente coherentes.
Por ejemplo, puedes usar las siguientes instrucciones paso a paso:
"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."
En el siguiente ejemplo de instrucción, se le pide al modelo de juez que evalúe tareas de texto con instrucciones de Cadena de pensamiento:
# 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>
Guía el razonamiento del modelo con los lineamientos de calificación
Usa los lineamientos de calificación para ayudar al modelo de juez a evaluar el razonamiento del modelo. Los lineamientos de calificación son diferentes de los criterios de calificación.
Por ejemplo, la siguiente instrucción usa criterios de calificación, que le indican a un modelo de juez que califique la tarea de “seguir instrucciones” con las rúbricas de calificación “problemas importantes”, “problemas menores” y “sin problemas”:
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.
En la siguiente consigna, se usan lineamientos de calificación para ayudar al modelo de juez a calificar la tarea de “seguir instrucciones”:
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.
Calibra el modelo de juez con respuestas de referencia
Puedes calibrar el modelo de juez con respuestas de referencia para algunas o todas las instrucciones.
La siguiente instrucción guía al modelo de juez sobre cómo usar las respuestas de referencia:
"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."
En el siguiente ejemplo, también se usan el razonamiento, las indicaciones de Cadena de pensamiento y los lineamientos de calificación para guiar el proceso de evaluación de la tarea “Seguir instrucciones”:
# 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>
¿Qué sigue?
- Ejecuta la evaluación con el modelo de juez modificado.