pyrit.identifiers.TargetIdentifier#

class TargetIdentifier(class_name: str, class_module: str, class_description: str, identifier_type: IdentifierType, endpoint: str = '', model_name: str = '', temperature: Optional[float] = None, top_p: Optional[float] = None, max_requests_per_minute: Optional[int] = None, target_specific_params: Optional[Dict[str, Any]] = None, *, hash: str | None = None, pyrit_version: str = <factory>)[source]#

Bases: Identifier

Identifier for PromptTarget instances.

This frozen dataclass extends Identifier with target-specific fields. It provides a stable, hashable identifier for prompt targets that can be used for scorer evaluation, registry tracking, and memory storage.

__init__(class_name: str, class_module: str, class_description: str, identifier_type: IdentifierType, endpoint: str = '', model_name: str = '', temperature: Optional[float] = None, top_p: Optional[float] = None, max_requests_per_minute: Optional[int] = None, target_specific_params: Optional[Dict[str, Any]] = None, *, hash: str | None = None, pyrit_version: str = <factory>) None#

Methods

__init__(class_name, class_module, ...[, ...])

from_dict(data)

Create a TargetIdentifier from a dictionary (e.g., retrieved from database).

normalize(value)

Normalize a value to an Identifier instance.

to_dict()

Return only fields suitable for DB storage.

Attributes

endpoint

The target endpoint URL.

hash

max_requests_per_minute

Maximum number of requests per minute.

model_name

The model or deployment name.

target_specific_params

Additional target-specific parameters.

temperature

The temperature parameter for generation.

top_p

The top_p parameter for generation.

class_name

class_module

class_description

identifier_type

snake_class_name

unique_name

pyrit_version

endpoint: str = ''#

The target endpoint URL.

classmethod from_dict(data: dict[str, Any]) TargetIdentifier[source]#

Create a TargetIdentifier from a dictionary (e.g., retrieved from database).

Extends the base Identifier.from_dict() to handle legacy key mappings.

Parameters:

data – The dictionary representation.

Returns:

A new TargetIdentifier instance.

Return type:

TargetIdentifier

max_requests_per_minute: int | None = None#

Maximum number of requests per minute.

model_name: str = ''#

The model or deployment name.

target_specific_params: Dict[str, Any] | None = None#

Additional target-specific parameters.

temperature: float | None = None#

The temperature parameter for generation.

top_p: float | None = None#

The top_p parameter for generation.