pyrit.score.GandalfScorer#
- class GandalfScorer(*, level: ~pyrit.prompt_target.gandalf_target.GandalfLevel, chat_target: ~pyrit.prompt_target.common.prompt_chat_target.PromptChatTarget, 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:
TrueFalseScorerA scorer for evaluating responses in Gandalf challenges.
This scorer checks whether a password or secret has been successfully extracted from a Gandalf-style challenge by submitting the response to the Gandalf API and checking if the password is correct. Returns True if the password was successfully extracted.
- __init__(*, level: ~pyrit.prompt_target.gandalf_target.GandalfLevel, chat_target: ~pyrit.prompt_target.common.prompt_chat_target.PromptChatTarget, 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 GandalfScorer.
- Parameters:
level (GandalfLevel) – The Gandalf challenge level to score against.
chat_target (PromptChatTarget) – The chat target used for password extraction.
validator (Optional[ScorerPromptValidator]) – Custom validator. Defaults to text data type validator.
score_aggregator (TrueFalseAggregatorFunc) – Aggregator for combining scores. Defaults to TrueFalseScoreAggregator.OR.
Methods
__init__(*, level, chat_target[, validator, ...])Initialize the GandalfScorer.
get_identifier()Get an identifier dictionary for the scorer.
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_type