pyrit.score.SelfAskCategoryScorer

pyrit.score.SelfAskCategoryScorer#

class SelfAskCategoryScorer(*, chat_target: ~pyrit.prompt_target.common.prompt_chat_target.PromptChatTarget, content_classifier_path: str | ~pathlib.Path, score_aggregator: ~typing.Callable[[~typing.Iterable[~pyrit.models.score.Score]], ~pyrit.score.score_aggregator_result.ScoreAggregatorResult] = <function _create_aggregator.<locals>.aggregator>, validator: ~pyrit.score.scorer_prompt_validator.ScorerPromptValidator | None = None)[source]#

Bases: TrueFalseScorer

A class that represents a self-ask score for text classification and scoring. Given a classifer file, it scores according to these categories and returns the category the PromptRequestPiece fits best.

There is also a false category that is used if the promptrequestpiece does not fit any of the categories.

__init__(*, chat_target: ~pyrit.prompt_target.common.prompt_chat_target.PromptChatTarget, content_classifier_path: str | ~pathlib.Path, score_aggregator: ~typing.Callable[[~typing.Iterable[~pyrit.models.score.Score]], ~pyrit.score.score_aggregator_result.ScoreAggregatorResult] = <function _create_aggregator.<locals>.aggregator>, validator: ~pyrit.score.scorer_prompt_validator.ScorerPromptValidator | None = None) None[source]#

Initializes a new instance of the SelfAskCategoryScorer class.

Parameters:
  • chat_target (PromptChatTarget) – The chat target to interact with.

  • content_classifier_path (Union[str, Path]) – The path to the classifier YAML file.

  • score_aggregator (TrueFalseAggregatorFunc) – The aggregator function to use. Defaults to TrueFalseScoreAggregator.OR.

  • validator (Optional[ScorerPromptValidator]) – Custom validator. Defaults to None.

Methods

__init__(*, chat_target, content_classifier_path)

Initializes a new instance of the SelfAskCategoryScorer class.

get_identifier()

Returns an identifier dictionary for the scorer.

get_scorer_metrics(dataset_name[, metrics_type])

Returns evaluation statistics for the scorer using the dataset_name of the human labeled dataset that this scorer was run against.

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(request_response, *[, ...])

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

score_image_async(image_path, *[, objective])

Scores the given image using the chat target.

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

score_prompts_batch_async(*, request_responses)

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)

Validates the scores returned by the scorer.

Attributes

scorer_type