def set_skip_criteria()

in pyrit/prompt_normalizer/prompt_normalizer.py [0:0]


    def set_skip_criteria(self, skip_criteria: PromptFilterCriteria, skip_value_type: PromptConverterState) -> None:
        """
        Sets the skip criteria for the orchestrator.

        If prompts match this in memory and are the same as one being sent, then they won't be sent to a target.

        Prompts are the same if either the original prompt or the converted prompt, determined by skip_value_type flag.
        """
        self._skip_criteria = skip_criteria

        prompts_to_skip = self._memory.get_prompt_request_pieces(
            role="user",
            orchestrator_id=self._skip_criteria.orchestrator_id,
            conversation_id=self._skip_criteria.conversation_id,
            prompt_ids=self._skip_criteria.prompt_ids,
            labels=self._skip_criteria.labels,
            sent_after=self._skip_criteria.sent_after,
            sent_before=self._skip_criteria.sent_before,
            original_values=self._skip_criteria.original_values,
            converted_values=self._skip_criteria.converted_values,
            data_type=self._skip_criteria.data_type,
            not_data_type=self._skip_criteria.not_data_type,
            converted_value_sha256=self._skip_criteria.converted_value_sha256,
        )

        self._original_sha256_prompts_to_skip = [
            prompt.original_value_sha256 for prompt in prompts_to_skip if prompt.original_value_sha256
        ]

        self._converted_sha256_prompts_to_skip = [
            prompt.converted_value_sha256 for prompt in prompts_to_skip if prompt.converted_value_sha256
        ]

        self._skip_value_type = skip_value_type