pyrit.executor.attack.MultiTurnAttackContext#

class MultiTurnAttackContext(objective: str, start_time: float = 0.0, memory_labels: Dict[str, str] = <factory>, related_conversations: set[ConversationReference] = <factory>, prepended_conversation: list[PromptRequestResponse] = <factory>, session: ConversationSession = <factory>, executed_turns: int = 0, last_response: Optional[PromptRequestResponse] = None, last_score: Optional[Score] = None, custom_prompt: Optional[str] = None)[source]#

Bases: AttackContext

Context for multi-turn attacks

__init__(objective: str, start_time: float = 0.0, memory_labels: Dict[str, str] = <factory>, related_conversations: set[ConversationReference] = <factory>, prepended_conversation: list[PromptRequestResponse] = <factory>, session: ConversationSession = <factory>, executed_turns: int = 0, last_response: Optional[PromptRequestResponse] = None, last_score: Optional[Score] = None, custom_prompt: Optional[str] = None) None#

Methods

__init__(objective[, start_time, ...])

duplicate()

Create a deep copy of the context.

Attributes

custom_prompt

executed_turns

last_response

last_score

start_time

session

objective

memory_labels

related_conversations

prepended_conversation

custom_prompt: str | None = None#
executed_turns: int = 0#
last_response: PromptRequestResponse | None = None#
last_score: Score | None = None#
session: ConversationSession#