pyrit.prompt_converter.BinaryConverter#
- class BinaryConverter(*, bits_per_char: BitsPerChar = BitsPerChar.BITS_16, word_selection_strategy: WordSelectionStrategy | None = None)[source]#
Bases:
WordLevelConverterTransforms input text into its binary representation with configurable bits per character (8, 16, or 32).
- __init__(*, bits_per_char: BitsPerChar = BitsPerChar.BITS_16, word_selection_strategy: WordSelectionStrategy | None = None)[source]#
Initializes the converter with the specified bits per character and selection strategy.
- Parameters:
bits_per_char (BinaryConverter.BitsPerChar) – Number of bits to use for each character (8, 16, or 32). Default is 16 bits.
word_selection_strategy (Optional[WordSelectionStrategy]) – Strategy for selecting which words to convert. If None, all words will be converted.
Methods
__init__(*[, bits_per_char, ...])Initializes the converter with the specified bits per character and selection strategy.
convert_async(*, prompt[, input_type])Converts the given prompt into the target format supported by the converter.
convert_tokens_async(*, prompt[, ...])Converts substrings within a prompt that are enclosed by specified start and end tokens.
convert_word_async(word)Converts each character in the word to its binary representation.
get_identifier()Returns an identifier dictionary for the converter.
input_supported(input_type)Checks if the input type is supported by the converter.
join_words(words)Joins the converted words with the binary representation of a space.
output_supported(output_type)Checks if the output type is supported by the converter.
validate_input(prompt)Checks if
bits_per_charis sufficient for the characters in the prompt.Attributes
supported_input_typesReturns a list of supported input types for the converter.
supported_output_typesReturns a list of supported output types for the converter.
- class BitsPerChar(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Bases:
EnumThe number of bits per character for binary conversion.
- BITS_16 = 16#
16 bits per character, suitable for Unicode characters.
- BITS_32 = 32#
32 bits per character, suitable for extended Unicode characters.
- BITS_8 = 8#
8 bits per character, suitable for ASCII characters.
- async convert_word_async(word: str) str[source]#
Converts each character in the word to its binary representation.