pyrit.score.VideoTrueFalseScorer

pyrit.score.VideoTrueFalseScorer#

class VideoTrueFalseScorer(*, image_capable_scorer: ~pyrit.score.true_false.true_false_scorer.TrueFalseScorer, num_sampled_frames: int | None = None, validator: ~pyrit.score.scorer_prompt_validator.ScorerPromptValidator | None = None, score_aggregator: ~typing.Callable[[~typing.Iterable[~pyrit.models.score.Score]], ~pyrit.score.score_aggregator_result.ScoreAggregatorResult] = <function _create_aggregator.<locals>.aggregator>)[source]#

Bases: TrueFalseScorer, _BaseVideoScorer

A scorer that processes videos by extracting frames and scoring them using a true/false image scorer.

The VideoTrueFalseScorer breaks down a video into frames and uses a true/false scoring mechanism. The frame scores are aggregated using a TrueFalseAggregatorFunc (default: TrueFalseScoreAggregator.OR, meaning if any frame meets the objective, the entire video is scored as True).

__init__(*, image_capable_scorer: ~pyrit.score.true_false.true_false_scorer.TrueFalseScorer, num_sampled_frames: int | None = None, validator: ~pyrit.score.scorer_prompt_validator.ScorerPromptValidator | None = None, score_aggregator: ~typing.Callable[[~typing.Iterable[~pyrit.models.score.Score]], ~pyrit.score.score_aggregator_result.ScoreAggregatorResult] = <function _create_aggregator.<locals>.aggregator>) None[source]#

Initialize the VideoTrueFalseScorer.

Parameters:
  • image_capable_scorer – A TrueFalseScorer capable of processing images.

  • num_sampled_frames – Number of frames to extract from the video for scoring (default: 5).

  • validator – Validator for the scorer. Defaults to video_path data type validator.

  • score_aggregator – Aggregator for combining frame scores. Defaults to TrueFalseScoreAggregator.OR.

Methods

__init__(*, image_capable_scorer[, ...])

Initialize the VideoTrueFalseScorer.

get_identifier()

Get an identifier dictionary for the scorer for database storage.

get_scorer_metrics(dataset_name[, metrics_type])

Get evaluation statistics for the scorer using the dataset_name of the human labeled dataset.

scale_value_float(value, min_value, max_value)

Scales a value from 0 to 1 based on the given min and max values.

score_async(message, *[, objective, ...])

Score the message, add the results to the database, and return a list of Score objects.

score_image_async(image_path, *[, objective])

Score the given image using the chat target.

score_image_batch_async(*, image_paths[, ...])

Score a batch of images asynchronously.

score_prompts_batch_async(*, messages[, ...])

Score multiple prompts in batches using the provided objectives.

score_response_async(*, response[, ...])

Score a response using an objective scorer and optional auxiliary scorers.

score_response_multiple_scorers_async(*, ...)

Score a response using multiple scorers in parallel.

score_text_async(text, *[, objective])

Scores the given text based on the task using the chat target.

validate_return_scores(scores)

Validate the scores returned by the scorer.

Attributes

scorer_identifier

Get the scorer identifier.

scorer_type