pyrit.prompt_converter.ToxicSentenceGeneratorConverter#
- class ToxicSentenceGeneratorConverter(*, converter_target: PromptChatTarget, prompt_template: SeedPrompt | None = None)[source]#
Bases:
LLMGenericTextConverter
A PromptConverter that generates toxic sentence starters using an LLM via an existing PromptTarget.
Based on Project Moonshot’s attack module that generates toxic sentences to test LLM safety guardrails: aiverify-foundation/moonshot-data
- __init__(*, converter_target: PromptChatTarget, prompt_template: SeedPrompt | None = None)[source]#
Initializes the converter with a specific target and template.
- Parameters:
converter_target (PromptChatTarget) – The endpoint that converts the prompt.
prompt_template (SeedPrompt) – The seed prompt template to use. If not provided, defaults to the toxic_sentence_generator.yaml.
Methods
__init__
(*, converter_target[, prompt_template])Initializes the converter with a specific target and template.
convert_async
(*, prompt[, input_type])Converts a seed prompt into a toxic sentence starter.
convert_tokens_async
(*, prompt[, ...])Converts substrings within a prompt that are enclosed by specified start and end tokens.
get_identifier
()input_supported
(input_type)Checks if the input type is supported by this converter.
output_supported
(output_type)Checks if the output type is supported by this converter.
Attributes
supported_input_types
Returns a list of supported input types for the converter.
supported_output_types
Returns a list of supported output types for the converter.
- async convert_async(*, prompt: str, input_type: Literal['text', 'image_path', 'audio_path', 'video_path', 'url', 'error'] = 'text') ConverterResult [source]#
Converts a seed prompt into a toxic sentence starter.
- Parameters:
prompt (str) – The prompt to convert.
input_type (PromptDataType, Optional) – The data type of the input prompt. Defaults to “text”.
- Returns:
- The result of the conversion, containing the toxic sentence
starter.
- Return type:
- input_supported(input_type: Literal['text', 'image_path', 'audio_path', 'video_path', 'url', 'error']) bool [source]#
Checks if the input type is supported by this converter.
- Parameters:
input_type (PromptDataType) – The data type to check.
- Returns:
True if the input type is supported, False otherwise.
- Return type:
- output_supported(output_type: Literal['text', 'image_path', 'audio_path', 'video_path', 'url', 'error']) bool [source]#
Checks if the output type is supported by this converter.
- Parameters:
output_type (PromptDataType) – The data type to check.
- Returns:
True if the output type is supported, False otherwise.
- Return type: