Puntuadores basados en código

Los evaluadores basados en código son funciones de Python que crea. Úselas cuando los jueces DE LLM integrados y los jueces DE LLM personalizados no se ajusten a sus necesidades de evaluación. Por ejemplo, los puntuadores basados en código le permiten:

  • Defina una métrica de evaluación heurística o programática personalizada.
  • Personalice cómo se asignan los datos de seguimiento a un juez LLM integrado de Databricks.
  • Use su propio LLM (en lugar de un juez LLM hospedado en Databricks) para su evaluación.
  • Otros casos de uso en los que necesita más flexibilidad y control que los proporcionados por jueces LLM personalizados.

Puede usar el mismo puntuador basado en código para la evaluación en desarrollo y supervisión en producción.

Elegir un estilo de definición

MLflow admite dos maneras de definir un scorer basado en código:

Enfoque Se utiliza cuando Supervisión de producción
@scorer decorador La mayoría de los casos. Punto de partida recomendado. Compatible (cuando se define y registra desde un cuaderno de Databricks).
Scorer clase Necesitas puntuadores con estado, una inicialización compleja o campos de Pydantic. No está soportado.

:::note Compatibilidad con la supervisión de producción

La supervisión de producción admite evaluadores de LLM integrados y @scorerfunciones decoradas. Las subclases basadas en Scorer clases no son compatibles con la supervisión de producción. Si necesita evaluadores con estado en producción, use el decorador @scorer y gestione el estado dentro del cuerpo de la función.

@scorerLas funciones decoradas que se usan en la supervisión de producción deben definirse y registrarse desde un cuaderno de Databricks. El servicio de supervisión serializa el código de función para la ejecución remota y esta serialización requiere el entorno del cuaderno. Para obtener más información, consulte Uso de funciones de puntuación personalizadas.

:::

Recursos adicionales