Cuando se le hace una pregunta a un Modelo de Lenguaje Grande (LLM), el modelo genera una probabilidad para cada token posible en su vocabulario.
Después de muestrear un token de esta distribución de probabilidad, podemos agregar el token seleccionado a nuestro mensaje de entrada para que el LLM pueda generar las probabilidades para el próximo token.
Este proceso de muestreo se puede controlar mediante parámetros como el famoso temperature
y top_p
.
En este artículo, explicaré y visualizaré las estrategias de muestreo que definen el comportamiento de salida de los LLM. Al comprender qué hacen estos parámetros y configurarlos según nuestro caso de uso, podemos mejorar la salida generada por los LLM.
Para este artículo, utilizaré Muy bueno como el motor de inferencia y el nuevo de Microsoft Phi-3.5-mini-instrucciones Modelo con cuantificación AWQ. Para ejecutar este modelo localmente, utilizo la GPU NVIDIA GeForce RTX 2060 de mi computadora portátil.
Tabla de contenido
· Comprensión del muestreo con Logprobs
∘ Teoría de la decodificación de LLM
∘ Recuperación de Logprobs con el SDK de Python de OpenAI
· Descodificación codiciosa
· Temperatura
· Muestreo de los mejores k
· Muestreo de top-p
· Combinando Top-p…