pyrit.prompt_converter.JsonStringConverter#
- class JsonStringConverter[source]#
Bases:
PromptConverterConverts a string to a JSON-safe format using json.dumps().
This converter is useful when a string needs to be embedded within a JSON payload, such as when sending prompts to HTTP targets that expect JSON-formatted requests. The converter properly escapes special characters like quotes, newlines, backslashes, and unicode characters.
The output is the escaped string content without the surrounding quotes that json.dumps() adds, making it ready to be inserted into a JSON string field.
Methods
__init__()Initialize the prompt converter.
convert_async(*, prompt[, input_type])Convert the given prompt to a JSON-safe string.
convert_tokens_async(*, prompt[, ...])Convert substrings within a prompt that are enclosed by specified start and end tokens.
get_identifier()Get the typed identifier for this object.
input_supported(input_type)Check if the input type is supported by the converter.
output_supported(output_type)Check if the output type is supported by the converter.
Attributes
Tuple of input modalities supported by this converter.
Tuple of output modalities supported by this converter.
supported_input_typesReturns a list of supported input types for the converter.
supported_output_typesReturns a list of supported output types for the converter.
- SUPPORTED_INPUT_TYPES: tuple[Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'], ...] = ('text',)#
Tuple of input modalities supported by this converter. Subclasses must override this.
- SUPPORTED_OUTPUT_TYPES: tuple[Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'], ...] = ('text',)#
Tuple of output modalities supported by this converter. Subclasses must override this.
- async convert_async(*, prompt: str, input_type: Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'] = 'text') ConverterResult[source]#
Convert the given prompt to a JSON-safe string.
- Parameters:
prompt (str) – The prompt to be converted.
input_type (PromptDataType) – The type of input data.
- Returns:
The result containing the JSON-escaped string.
- Return type:
- Raises:
ValueError – If the input type is not supported.