in pyrit/orchestrator/multi_turn/red_teaming_orchestrator.py [0:0]
def _handle_text_response(self, last_response_from_attack_target, feedback) -> str:
# If the attack target responds with text we can use that as the new prompt
# unless the response is an error (which may include blocked image requests, for example).
if last_response_from_attack_target.response_error == "none":
prompt_text = last_response_from_attack_target.converted_value
if self._use_score_as_feedback and feedback:
# concatenate the feedback to the response from the attack target
prompt_text += "\n\n" + feedback
return prompt_text
elif last_response_from_attack_target.response_error == "blocked":
return (
"Request to target failed: blocked. " "Please rewrite your prompt to avoid getting blocked next time."
)
return f"Request to target failed: {last_response_from_attack_target.response_error}"