Skip to main content
Evaluator that wraps a user-provided function for dynamic evaluation. This class allows users to create evaluators from any callable function, automatically handling parameter passing, validation, and result conversion to Score objects. Key Features:
  • Dynamic Function Wrapping: Converts any callable into an evaluator
  • Argument Validation: Validates that provided arguments match function signature
  • Smart Result Conversion: Automatically converts various return types to Score
  • Error Handling: Gracefully handles function execution and argument errors
  • Parameter Flexibility: Supports functions with any parameter signature

Parameters

Callable
required
The callable function to wrap as an evaluator.
str | None
default:"None"
Optional custom name for the score. If not provided, uses the function name.

Example

property name

score()

Execute the wrapped function and convert result to Score. Calls the wrapped function with the provided arguments and converts the result to a Score object. Validates that the provided arguments match the function’s signature.

Parameters

Any
Positional arguments to pass to the wrapped function.
Any
Keyword arguments to pass to the wrapped function. Only kwargs that match the function’s parameters are used.

Returns

A Score object representing the function’s evaluation result.

Raises

TypeError – If the provided arguments don’t match the function signature.
The function result is converted to a Score as follows:
  • bool: 1.0 for True, 0.0 for False
  • int/float: Direct value conversion
  • Score: Returns as-is