whylogs_container.whylabs.container.policy.policy_0_1_0

Functions

Classes

ActionOptions(*[, block_message, flag_message])

BadActorsRuleSet(*, ruleset, options)

BadActorsRuleSetOptions(*, behavior, sensitivity)

BaseCallback()

BaseMetric()

BaseValidator()

BasicValidationFailureCallback(*, callback, ...)

CallbackConverter()

CostRuleSet(*, ruleset, options)

CostRuleSetOptions(*, behavior, sensitivity)

CustomColumnSimilarityMetric(*, metric, options)

CustomerExperienceRuleSet(*, ruleset, options)

CustomerExperienceRuleSetOptions(*, ...)

InjectionMetric(*, metric[, options, ...])

InlineConstraintOptions

MetaRulesetBaseModel()

MetricConverter()

MetricProtocolFull(*args, **kwargs)

MetricProtocolInlineValidation(*args, **kwargs)

MetricProtocolOptionless(*args, **kwargs)

MisuseRuleSet(*, ruleset, options)

MisuseRuleSetOptions(*, behavior, ...)

Policy(*, whylabs_dataset_id, id, org_id, ...)

PolicyConstraintValidator(*, validator, options)

PolicyMultiColumnConstraintValidator(*, ...)

PresetsAllMetric(*, metric[, options, profile])

PresetsRecommendedMetric(*, metric[, ...])

PromptBadActorsRuleSet(*, ruleset, options)

PromptCharCountMetric(*, metric[, profile, ...])

PromptCostRuleSet(*, ruleset, options)

PromptCustomerExperienceRuleSet(*, ruleset, ...)

PromptDifficultWordsMetric(*, metric[, ...])

PromptFleschReadingEaseMetric(*, metric[, ...])

PromptGradeMetric(*, metric[, profile, ...])

PromptLetterCountMetric(*, metric[, ...])

PromptLexiconCountMetric(*, metric[, ...])

PromptMisuseRuleSet(*, ruleset, options)

PromptPcaCoordinatesMetric(*, metric[, ...])

PromptPiiMetric(*, metric[, options, profile])

PromptRegexCreditCardNumberMetric(*, metric)

PromptRegexEmailAddressMetric(*, metric[, ...])

PromptRegexMailingAddressMetric(*, metric[, ...])

PromptRegexMetric(*, metric[, profile])

PromptRegexPhoneNumberMetric(*, metric[, ...])

PromptRegexSSNMetric(*, metric[, profile, ...])

PromptRegexURLMetric(*, metric[, profile, ...])

PromptSentenceCountMetric(*, metric[, ...])

PromptSentimentMetric(*, metric[, profile])

PromptSentimentScoreMetric(*, metric[, ...])

PromptSimilarityContextMetric(*, metric[, ...])

PromptSimilarityCustomColumnMetric(*, ...[, ...])

PromptSimilarityMetric(*, metric[, profile])

PromptTokenCountMetric(*, metric[, options, ...])

PromptTopicsCodeMetric(*, metric[, profile, ...])

PromptTopicsFinancialMetric(*, metric[, ...])

PromptTopicsMaliciousMetric(*, metric[, ...])

PromptTopicsMedicalMetric(*, metric[, ...])

PromptTopicsMetric(*, metric, options[, profile])

PromptToxicityMetric(*, metric[, profile])

PromptToxicityScoreMetric(*, metric[, ...])

PromptTruthfulnessRuleSet(*, ruleset, options)

PromptUtilEmbeddingsMetric(*, metric[, ...])

PromptUtilRuleSet(*, ruleset, options)

ResponseBadActorsRuleSet(*, ruleset, options)

ResponseCharCountMetric(*, metric[, ...])

ResponseCostRuleSet(*, ruleset, options)

ResponseCustomerExperienceRuleSet(*, ...)

ResponseDifficultWordsMetric(*, metric[, ...])

ResponseFleschReadingEaseMetric(*, metric[, ...])

ResponseGradeMetric(*, metric[, profile, ...])

ResponseHallucinationScoreMetric(*, metric)

ResponseLetterCountMetric(*, metric[, ...])

ResponseLexiconCountMetric(*, metric[, ...])

ResponseMisuseRuleSet(*, ruleset, options)

ResponsePcaCoordinatesMetric(*, metric[, ...])

ResponsePiiMetric(*, metric[, options, profile])

ResponseRegexCreditCardNumberMetric(*, metric)

ResponseRegexEmailAddressMetric(*, metric[, ...])

ResponseRegexMailingAddressMetric(*, metric)

ResponseRegexMetric(*, metric[, profile])

ResponseRegexPhoneNumberMetric(*, metric[, ...])

ResponseRegexRefusalMetric(*, metric[, ...])

ResponseRegexSSNMetric(*, metric[, profile, ...])

ResponseRegexURLMetric(*, metric[, profile, ...])

ResponseSentenceCountMetric(*, metric[, ...])

ResponseSentimentMetric(*, metric[, profile])

ResponseSentimentScoreMetric(*, metric[, ...])

ResponseSimilarityContextMetric(*, metric[, ...])

ResponseSimilarityCustomColumnMetric(*, ...)

ResponseSimilarityMetric(*, metric[, profile])

ResponseSimilarityPromptMetric(*, metric[, ...])

ResponseSimilarityRefusalMetric(*, metric[, ...])

ResponseTokenCountMetric(*, metric[, ...])

ResponseTopicsCodeMetric(*, metric[, ...])

ResponseTopicsFinancialMetric(*, metric[, ...])

ResponseTopicsMaliciousMetric(*, metric[, ...])

ResponseTopicsMedicalMetric(*, metric[, ...])

ResponseTopicsMetric(*, metric, options[, ...])

ResponseToxicityMetric(*, metric[, profile])

ResponseToxicityScoreMetric(*, metric[, ...])

ResponseTruthfulnessRuleSet(*, ruleset, options)

ResponseUtilEmbeddingsMetric(*, metric[, ...])

ResponseUtilRuleSet(*, ruleset, options)

SlackValidationFailureCallback(*, callback, ...)

StaticBearerAuthValidationFailureCallback(*, ...)

TruthfulnessRuleSet(*, ruleset, options)

TruthfulnessRuleSetOptions(*, behavior, ...)

UtilRuleSet(*, ruleset, options)

UtilRuleSetOptions(*, behavior, sensitivity)

ValidatorConverter()

class whylogs_container.whylabs.container.policy.policy_0_1_0.ActionOptions(*, block_message: str | None = None, flag_message: str | None = None)

Bases: BaseModel

block_message: str | None
flag_message: str | None
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'block_message': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'flag_message': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class whylogs_container.whylabs.container.policy.policy_0_1_0.BadActorsRuleSet(*, ruleset: Literal['score.bad_actors'], options: BadActorsRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=BadActorsRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.bad_actors'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: BadActorsRuleSetOptions
ruleset: Literal['score.bad_actors']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.BadActorsRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'])

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

sensitivity: Literal['low', 'medium', 'high']
class whylogs_container.whylabs.container.policy.policy_0_1_0.BaseCallback

Bases: BaseModel

classmethod hashable_dicts(it: Any)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class whylogs_container.whylabs.container.policy.policy_0_1_0.BaseMetric

Bases: BaseModel

classmethod hashable_dicts(it: Any)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class whylogs_container.whylabs.container.policy.policy_0_1_0.BaseValidator

Bases: BaseModel

classmethod hashable_dicts(it: Any)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class whylogs_container.whylabs.container.policy.policy_0_1_0.BasicValidationFailureCallback(*, callback: Literal['webhook.basic_validation_failure'], options: BasicValidationFailureOptions)

Bases: BaseCallback

callback: Literal['webhook.basic_validation_failure']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'callback': FieldInfo(annotation=Literal['webhook.basic_validation_failure'], required=True), 'options': FieldInfo(annotation=BasicValidationFailureOptions, required=True, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: BasicValidationFailureOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.CallbackConverter

Bases: object

static to_langkit_options(callback: BasicValidationFailureCallback | StaticBearerAuthValidationFailureCallback | SlackValidationFailureCallback) StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.CostRuleSet(*, ruleset: Literal['score.cost'], options: CostRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CostRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.cost'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CostRuleSetOptions
ruleset: Literal['score.cost']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.CostRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'])

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

sensitivity: Literal['low', 'medium', 'high']
class whylogs_container.whylabs.container.policy.policy_0_1_0.CustomColumnSimilarityMetric(*, metric: Literal['CUSTOM_COLUMN.similarity.CUSTOM_COLUMN_2'], options: CustomColumnSimilarityOptions, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['CUSTOM_COLUMN.similarity.CUSTOM_COLUMN_2']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['CUSTOM_COLUMN.similarity.CUSTOM_COLUMN_2'], required=True), 'options': FieldInfo(annotation=CustomColumnSimilarityOptions, required=True, description='This is a typeddict', json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CustomColumnSimilarityOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.CustomerExperienceRuleSet(*, ruleset: Literal['score.customer_experience'], options: CustomerExperienceRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CustomerExperienceRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.customer_experience'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CustomerExperienceRuleSetOptions
ruleset: Literal['score.customer_experience']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.CustomerExperienceRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'])

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

sensitivity: Literal['low', 'medium', 'high']
class whylogs_container.whylabs.container.policy.policy_0_1_0.InjectionMetric(*, metric: Literal['prompt.similarity.injection'], options: InjectionOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.similarity.injection']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.similarity.injection'], required=True), 'options': FieldInfo(annotation=InjectionOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: InjectionOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.InlineConstraintOptions

Bases: TypedDict

failure_level: NotRequired[Literal['flag', 'block'] | None]
lower_threshold: NotRequired[float | None]
lower_threshold_inclusive: NotRequired[float | None]
must_be_non_none: NotRequired[bool | None]
must_be_none: NotRequired[bool | None]
none_of: NotRequired[Sequence[str | float | int] | None]
one_of: NotRequired[Sequence[str | float | int] | None]
upper_threshold: NotRequired[float | None]
upper_threshold_inclusive: NotRequired[float | None]
class whylogs_container.whylabs.container.policy.policy_0_1_0.MetaRulesetBaseModel

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.MetricConverter

Bases: object

static to_langkit_options(metric: MetricProtocolFull[Any, Any] | MetricProtocolOptionless[Any] | MetricProtocolInlineValidation[Any, Any]) StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.MetricProtocolFull(*args, **kwargs)

Bases: Protocol, Generic[MetricName, MetricOptions]

metric: MetricName
options: MetricOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.MetricProtocolInlineValidation(*args, **kwargs)

Bases: Protocol, Generic[MetricName, MetricOptions]

metric: MetricName
options: MetricOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.MetricProtocolOptionless(*args, **kwargs)

Bases: Protocol, Generic[MetricName]

metric: MetricName
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.MisuseRuleSet(*, ruleset: Literal['score.misuse'], options: MisuseRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=MisuseRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.misuse'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: MisuseRuleSetOptions
ruleset: Literal['score.misuse']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.MisuseRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'], topics: Tuple[str, ...])

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True), 'topics': FieldInfo(annotation=Tuple[str, ...], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

sensitivity: Literal['low', 'medium', 'high']
topics: Tuple[str, ...]
class whylogs_container.whylabs.container.policy.policy_0_1_0.Policy(*, whylabs_dataset_id: str, id: str, org_id: str, policy_version: int, schema_version: Literal['0.1.0'], metrics: Tuple[PresetsAllMetric | PresetsRecommendedMetric | CustomColumnSimilarityMetric | PromptTokenCountMetric | PromptCharCountMetric | PromptFleschReadingEaseMetric | PromptSentenceCountMetric | PromptGradeMetric | PromptLexiconCountMetric | PromptLetterCountMetric | PromptDifficultWordsMetric | PromptRegexMetric | PromptRegexSSNMetric | PromptRegexPhoneNumberMetric | PromptRegexEmailAddressMetric | PromptRegexMailingAddressMetric | PromptRegexCreditCardNumberMetric | PromptRegexURLMetric | PromptPiiMetric | PromptSimilarityMetric | PromptSimilarityContextMetric | PromptSimilarityCustomColumnMetric | InjectionMetric | PromptSentimentMetric | PromptSentimentScoreMetric | PromptToxicityMetric | PromptToxicityScoreMetric | PromptUtilEmbeddingsMetric | PromptPcaCoordinatesMetric | PromptTopicsMetric | PromptTopicsMedicalMetric | PromptTopicsFinancialMetric | PromptTopicsCodeMetric | PromptTopicsMaliciousMetric | ResponseTokenCountMetric | ResponseCharCountMetric | ResponseFleschReadingEaseMetric | ResponseSentenceCountMetric | ResponseGradeMetric | ResponseLexiconCountMetric | ResponseLetterCountMetric | ResponseDifficultWordsMetric | ResponseRegexMetric | ResponseRegexRefusalMetric | ResponseRegexSSNMetric | ResponseRegexPhoneNumberMetric | ResponseRegexEmailAddressMetric | ResponseRegexMailingAddressMetric | ResponseRegexCreditCardNumberMetric | ResponseRegexURLMetric | ResponsePiiMetric | ResponseSimilarityMetric | ResponseSimilarityRefusalMetric | ResponseSimilarityPromptMetric | ResponseSimilarityCustomColumnMetric | ResponseSimilarityContextMetric | ResponseSentimentMetric | ResponseSentimentScoreMetric | ResponseToxicityMetric | ResponseToxicityScoreMetric | ResponseUtilEmbeddingsMetric | ResponsePcaCoordinatesMetric | ResponseHallucinationScoreMetric | ResponseTopicsMetric | ResponseTopicsMedicalMetric | ResponseTopicsFinancialMetric | ResponseTopicsCodeMetric | ResponseTopicsMaliciousMetric, ...] | None = None, callbacks: Tuple[BasicValidationFailureCallback | StaticBearerAuthValidationFailureCallback | SlackValidationFailureCallback, ...] | None = None, validators: Tuple[PolicyConstraintValidator | PolicyMultiColumnConstraintValidator, ...] | None = None, rulesets: Tuple[MisuseRuleSet | BadActorsRuleSet | CustomerExperienceRuleSet | TruthfulnessRuleSet | CostRuleSet | PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet, ...] | None = None, actions: ActionOptions | None = None)

Bases: BaseModel

actions: ActionOptions | None
callbacks: Tuple[BasicValidationFailureCallback | StaticBearerAuthValidationFailureCallback | SlackValidationFailureCallback, ...] | None
classmethod ensure_str(it: Any)

Ensure that these fields are parsed as strings. The python yaml parser sometimes pickes ints or floats if these are defined as something like 1.

get_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
id: str
metrics: Tuple[PresetsAllMetric | PresetsRecommendedMetric | CustomColumnSimilarityMetric | PromptTokenCountMetric | PromptCharCountMetric | PromptFleschReadingEaseMetric | PromptSentenceCountMetric | PromptGradeMetric | PromptLexiconCountMetric | PromptLetterCountMetric | PromptDifficultWordsMetric | PromptRegexMetric | PromptRegexSSNMetric | PromptRegexPhoneNumberMetric | PromptRegexEmailAddressMetric | PromptRegexMailingAddressMetric | PromptRegexCreditCardNumberMetric | PromptRegexURLMetric | PromptPiiMetric | PromptSimilarityMetric | PromptSimilarityContextMetric | PromptSimilarityCustomColumnMetric | InjectionMetric | PromptSentimentMetric | PromptSentimentScoreMetric | PromptToxicityMetric | PromptToxicityScoreMetric | PromptUtilEmbeddingsMetric | PromptPcaCoordinatesMetric | PromptTopicsMetric | PromptTopicsMedicalMetric | PromptTopicsFinancialMetric | PromptTopicsCodeMetric | PromptTopicsMaliciousMetric | ResponseTokenCountMetric | ResponseCharCountMetric | ResponseFleschReadingEaseMetric | ResponseSentenceCountMetric | ResponseGradeMetric | ResponseLexiconCountMetric | ResponseLetterCountMetric | ResponseDifficultWordsMetric | ResponseRegexMetric | ResponseRegexRefusalMetric | ResponseRegexSSNMetric | ResponseRegexPhoneNumberMetric | ResponseRegexEmailAddressMetric | ResponseRegexMailingAddressMetric | ResponseRegexCreditCardNumberMetric | ResponseRegexURLMetric | ResponsePiiMetric | ResponseSimilarityMetric | ResponseSimilarityRefusalMetric | ResponseSimilarityPromptMetric | ResponseSimilarityCustomColumnMetric | ResponseSimilarityContextMetric | ResponseSentimentMetric | ResponseSentimentScoreMetric | ResponseToxicityMetric | ResponseToxicityScoreMetric | ResponseUtilEmbeddingsMetric | ResponsePcaCoordinatesMetric | ResponseHallucinationScoreMetric | ResponseTopicsMetric | ResponseTopicsMedicalMetric | ResponseTopicsFinancialMetric | ResponseTopicsCodeMetric | ResponseTopicsMaliciousMetric, ...] | None
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'actions': FieldInfo(annotation=Union[ActionOptions, NoneType], required=False, default=None), 'callbacks': FieldInfo(annotation=Union[Tuple[Union[BasicValidationFailureCallback, StaticBearerAuthValidationFailureCallback, SlackValidationFailureCallback], ...], NoneType], required=False, default_factory=tuple), 'id': FieldInfo(annotation=str, required=True), 'metrics': FieldInfo(annotation=Union[Tuple[Union[PresetsAllMetric, PresetsRecommendedMetric, CustomColumnSimilarityMetric, PromptTokenCountMetric, PromptCharCountMetric, PromptFleschReadingEaseMetric, PromptSentenceCountMetric, PromptGradeMetric, PromptLexiconCountMetric, PromptLetterCountMetric, PromptDifficultWordsMetric, PromptRegexMetric, PromptRegexSSNMetric, PromptRegexPhoneNumberMetric, PromptRegexEmailAddressMetric, PromptRegexMailingAddressMetric, PromptRegexCreditCardNumberMetric, PromptRegexURLMetric, PromptPiiMetric, PromptSimilarityMetric, PromptSimilarityContextMetric, PromptSimilarityCustomColumnMetric, InjectionMetric, PromptSentimentMetric, PromptSentimentScoreMetric, PromptToxicityMetric, PromptToxicityScoreMetric, PromptUtilEmbeddingsMetric, PromptPcaCoordinatesMetric, PromptTopicsMetric, PromptTopicsMedicalMetric, PromptTopicsFinancialMetric, PromptTopicsCodeMetric, PromptTopicsMaliciousMetric, ResponseTokenCountMetric, ResponseCharCountMetric, ResponseFleschReadingEaseMetric, ResponseSentenceCountMetric, ResponseGradeMetric, ResponseLexiconCountMetric, ResponseLetterCountMetric, ResponseDifficultWordsMetric, ResponseRegexMetric, ResponseRegexRefusalMetric, ResponseRegexSSNMetric, ResponseRegexPhoneNumberMetric, ResponseRegexEmailAddressMetric, ResponseRegexMailingAddressMetric, ResponseRegexCreditCardNumberMetric, ResponseRegexURLMetric, ResponsePiiMetric, ResponseSimilarityMetric, ResponseSimilarityRefusalMetric, ResponseSimilarityPromptMetric, ResponseSimilarityCustomColumnMetric, ResponseSimilarityContextMetric, ResponseSentimentMetric, ResponseSentimentScoreMetric, ResponseToxicityMetric, ResponseToxicityScoreMetric, ResponseUtilEmbeddingsMetric, ResponsePcaCoordinatesMetric, ResponseHallucinationScoreMetric, ResponseTopicsMetric, ResponseTopicsMedicalMetric, ResponseTopicsFinancialMetric, ResponseTopicsCodeMetric, ResponseTopicsMaliciousMetric], ...], NoneType], required=False, default_factory=tuple), 'org_id': FieldInfo(annotation=str, required=True), 'policy_version': FieldInfo(annotation=int, required=True), 'rulesets': FieldInfo(annotation=Union[Tuple[Union[MisuseRuleSet, BadActorsRuleSet, CustomerExperienceRuleSet, TruthfulnessRuleSet, CostRuleSet, PromptMisuseRuleSet, PromptBadActorsRuleSet, PromptCustomerExperienceRuleSet, PromptTruthfulnessRuleSet, PromptCostRuleSet, PromptUtilRuleSet, ResponseMisuseRuleSet, ResponseBadActorsRuleSet, ResponseCustomerExperienceRuleSet, ResponseTruthfulnessRuleSet, ResponseCostRuleSet, ResponseUtilRuleSet], ...], NoneType], required=False, default_factory=tuple), 'schema_version': FieldInfo(annotation=Literal['0.1.0'], required=True), 'validators': FieldInfo(annotation=Union[Tuple[Union[PolicyConstraintValidator, PolicyMultiColumnConstraintValidator], ...], NoneType], required=False, default_factory=tuple), 'whylabs_dataset_id': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

org_id: str
policy_version: int
rulesets: Tuple[MisuseRuleSet | BadActorsRuleSet | CustomerExperienceRuleSet | TruthfulnessRuleSet | CostRuleSet | PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet, ...] | None
schema_version: Literal['0.1.0']
to_langkit_options() StrictLangkitOptions
classmethod validate_total(org_id: str | None, info: ValidationInfo) str | None
validators: Tuple[PolicyConstraintValidator | PolicyMultiColumnConstraintValidator, ...] | None
whylabs_dataset_id: str
class whylogs_container.whylabs.container.policy.policy_0_1_0.PolicyConstraintValidator(*, validator: Literal['constraint'], options: ConstraintOptions)

Bases: BaseValidator

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=ConstraintOptions, required=True, json_schema_extra={'additionalProperties': False}), 'validator': FieldInfo(annotation=Literal['constraint'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: ConstraintOptions
validator: Literal['constraint']
class whylogs_container.whylabs.container.policy.policy_0_1_0.PolicyMultiColumnConstraintValidator(*, validator: Literal['multi_column_constraint'], options: MultiColumnConstraintOptions)

Bases: BaseValidator

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=MultiColumnConstraintOptions, required=True, json_schema_extra={'additionalProperties': False}), 'validator': FieldInfo(annotation=Literal['multi_column_constraint'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: MultiColumnConstraintOptions
validator: Literal['multi_column_constraint']
class whylogs_container.whylabs.container.policy.policy_0_1_0.PresetsAllMetric(*, metric: Literal['presets.all'], options: PresetOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['presets.all']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['presets.all'], required=True), 'options': FieldInfo(annotation=PresetOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: PresetOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PresetsRecommendedMetric(*, metric: Literal['presets.recommended'], options: PresetOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['presets.recommended']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['presets.recommended'], required=True), 'options': FieldInfo(annotation=PresetOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: PresetOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptBadActorsRuleSet(*, ruleset: Literal['prompt.score.bad_actors'], options: BadActorsRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=BadActorsRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.bad_actors'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: BadActorsRuleSetOptions
ruleset: Literal['prompt.score.bad_actors']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptCharCountMetric(*, metric: Literal['prompt.stats.char_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.char_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.char_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptCostRuleSet(*, ruleset: Literal['prompt.score.cost'], options: CostRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CostRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.cost'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CostRuleSetOptions
ruleset: Literal['prompt.score.cost']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptCustomerExperienceRuleSet(*, ruleset: Literal['prompt.score.customer_experience'], options: CustomerExperienceRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CustomerExperienceRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.customer_experience'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CustomerExperienceRuleSetOptions
ruleset: Literal['prompt.score.customer_experience']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptDifficultWordsMetric(*, metric: Literal['prompt.stats.difficult_words'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.difficult_words']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.difficult_words'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptFleschReadingEaseMetric(*, metric: Literal['prompt.stats.flesch_reading_ease'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.flesch_reading_ease']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.flesch_reading_ease'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptGradeMetric(*, metric: Literal['prompt.stats.grade'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.grade']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.grade'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptLetterCountMetric(*, metric: Literal['prompt.stats.letter_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.letter_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.letter_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptLexiconCountMetric(*, metric: Literal['prompt.stats.lexicon_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.lexicon_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.lexicon_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptMisuseRuleSet(*, ruleset: Literal['prompt.score.misuse'], options: MisuseRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=MisuseRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.misuse'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: MisuseRuleSetOptions
ruleset: Literal['prompt.score.misuse']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptPcaCoordinatesMetric(*, metric: Literal['prompt.pca.coordinates'], options: CoordinatesOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.pca.coordinates']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.pca.coordinates'], required=True), 'options': FieldInfo(annotation=CoordinatesOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CoordinatesOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptPiiMetric(*, metric: Literal['prompt.pii'], options: PiiOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.pii']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.pii'], required=True), 'options': FieldInfo(annotation=PiiOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: PiiOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexCreditCardNumberMetric(*, metric: Literal['prompt.regex.credit_card_number'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.credit_card_number']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.credit_card_number'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexEmailAddressMetric(*, metric: Literal['prompt.regex.email_address'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.email_address']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.email_address'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexMailingAddressMetric(*, metric: Literal['prompt.regex.mailing_address'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.mailing_address']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.mailing_address'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexMetric(*, metric: Literal['prompt.regex'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.regex']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexPhoneNumberMetric(*, metric: Literal['prompt.regex.phone_number'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.phone_number']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.phone_number'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexSSNMetric(*, metric: Literal['prompt.regex.ssn'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.ssn']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.ssn'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptRegexURLMetric(*, metric: Literal['prompt.regex.url'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.regex.url']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.regex.url'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSentenceCountMetric(*, metric: Literal['prompt.stats.sentence_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.sentence_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.sentence_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSentimentMetric(*, metric: Literal['prompt.sentiment'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.sentiment']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.sentiment'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSentimentScoreMetric(*, metric: Literal['prompt.sentiment.sentiment_score'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.sentiment.sentiment_score']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.sentiment.sentiment_score'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSimilarityContextMetric(*, metric: Literal['prompt.similarity.context'], options: EmbeddingOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.similarity.context']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.similarity.context'], required=True), 'options': FieldInfo(annotation=EmbeddingOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: EmbeddingOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSimilarityCustomColumnMetric(*, metric: Literal['prompt.similarity.CUSTOM_COLUMN'], options: PromptSimilarityCustomColumnOptions, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.similarity.CUSTOM_COLUMN']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.similarity.CUSTOM_COLUMN'], required=True), 'options': FieldInfo(annotation=PromptSimilarityCustomColumnOptions, required=True, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: PromptSimilarityCustomColumnOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptSimilarityMetric(*, metric: Literal['prompt.similarity'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.similarity']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.similarity'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTokenCountMetric(*, metric: Literal['prompt.stats.token_count'], options: TokenCountOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.stats.token_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.stats.token_count'], required=True), 'options': FieldInfo(annotation=TokenCountOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TokenCountOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTopicsCodeMetric(*, metric: Literal['prompt.topics.code'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.topics.code']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.topics.code'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTopicsFinancialMetric(*, metric: Literal['prompt.topics.financial'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.topics.financial']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.topics.financial'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTopicsMaliciousMetric(*, metric: Literal['prompt.topics.malicious'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.topics.malicious']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.topics.malicious'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTopicsMedicalMetric(*, metric: Literal['prompt.topics.medical'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.topics.medical']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.topics.medical'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTopicsMetric(*, metric: Literal['prompt.topics'], options: TopicsOptions, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.topics']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.topics'], required=True), 'options': FieldInfo(annotation=TopicsOptions, required=True, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TopicsOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptToxicityMetric(*, metric: Literal['prompt.toxicity'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.toxicity']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.toxicity'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptToxicityScoreMetric(*, metric: Literal['prompt.toxicity.toxicity_score'], options: ToxicityScoreOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['prompt.toxicity.toxicity_score']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.toxicity.toxicity_score'], required=True), 'options': FieldInfo(annotation=ToxicityScoreOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: ToxicityScoreOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptTruthfulnessRuleSet(*, ruleset: Literal['prompt.score.truthfulness'], options: TruthfulnessRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=TruthfulnessRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.truthfulness'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TruthfulnessRuleSetOptions
ruleset: Literal['prompt.score.truthfulness']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptUtilEmbeddingsMetric(*, metric: Literal['prompt.util.embeddings'], options: EmbeddingOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['prompt.util.embeddings']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['prompt.util.embeddings'], required=True), 'options': FieldInfo(annotation=EmbeddingOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: EmbeddingOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.PromptUtilRuleSet(*, ruleset: Literal['prompt.score.util'], options: UtilRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=UtilRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['prompt.score.util'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: UtilRuleSetOptions
ruleset: Literal['prompt.score.util']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseBadActorsRuleSet(*, ruleset: Literal['response.score.bad_actors'], options: BadActorsRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=BadActorsRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.bad_actors'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: BadActorsRuleSetOptions
ruleset: Literal['response.score.bad_actors']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseCharCountMetric(*, metric: Literal['response.stats.char_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.char_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.char_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseCostRuleSet(*, ruleset: Literal['response.score.cost'], options: CostRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CostRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.cost'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CostRuleSetOptions
ruleset: Literal['response.score.cost']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseCustomerExperienceRuleSet(*, ruleset: Literal['response.score.customer_experience'], options: CustomerExperienceRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=CustomerExperienceRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.customer_experience'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CustomerExperienceRuleSetOptions
ruleset: Literal['response.score.customer_experience']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseDifficultWordsMetric(*, metric: Literal['response.stats.difficult_words'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.difficult_words']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.difficult_words'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseFleschReadingEaseMetric(*, metric: Literal['response.stats.flesch_reading_ease'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.flesch_reading_ease']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.flesch_reading_ease'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseGradeMetric(*, metric: Literal['response.stats.grade'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.grade']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.grade'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseHallucinationScoreMetric(*, metric: Literal['response.hallucination.hallucination_score'], options: HallucinationScoreOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.hallucination.hallucination_score']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.hallucination.hallucination_score'], required=True), 'options': FieldInfo(annotation=HallucinationScoreOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: HallucinationScoreOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseLetterCountMetric(*, metric: Literal['response.stats.letter_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.letter_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.letter_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseLexiconCountMetric(*, metric: Literal['response.stats.lexicon_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.lexicon_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.lexicon_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseMisuseRuleSet(*, ruleset: Literal['response.score.misuse'], options: MisuseRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=MisuseRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.misuse'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: MisuseRuleSetOptions
ruleset: Literal['response.score.misuse']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponsePcaCoordinatesMetric(*, metric: Literal['response.pca.coordinates'], options: CoordinatesOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.pca.coordinates']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.pca.coordinates'], required=True), 'options': FieldInfo(annotation=CoordinatesOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: CoordinatesOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponsePiiMetric(*, metric: Literal['response.pii'], options: PiiOptions = {}, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.pii']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.pii'], required=True), 'options': FieldInfo(annotation=PiiOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: PiiOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexCreditCardNumberMetric(*, metric: Literal['response.regex.credit_card_number'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.credit_card_number']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.credit_card_number'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexEmailAddressMetric(*, metric: Literal['response.regex.email_address'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.email_address']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.email_address'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexMailingAddressMetric(*, metric: Literal['response.regex.mailing_address'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.mailing_address']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.mailing_address'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexMetric(*, metric: Literal['response.regex'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.regex']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexPhoneNumberMetric(*, metric: Literal['response.regex.phone_number'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.phone_number']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.phone_number'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexRefusalMetric(*, metric: Literal['response.regex.refusal'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.refusal']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.refusal'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexSSNMetric(*, metric: Literal['response.regex.ssn'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.ssn']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.ssn'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseRegexURLMetric(*, metric: Literal['response.regex.url'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.regex.url']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.regex.url'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSentenceCountMetric(*, metric: Literal['response.stats.sentence_count'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.sentence_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.sentence_count'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSentimentMetric(*, metric: Literal['response.sentiment'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.sentiment']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.sentiment'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSentimentScoreMetric(*, metric: Literal['response.sentiment.sentiment_score'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.sentiment.sentiment_score']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.sentiment.sentiment_score'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSimilarityContextMetric(*, metric: Literal['response.similarity.context'], options: EmbeddingOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.similarity.context']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.similarity.context'], required=True), 'options': FieldInfo(annotation=EmbeddingOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: EmbeddingOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSimilarityCustomColumnMetric(*, metric: Literal['response.similarity.CUSTOM_COLUMN'], options: ResponseSimilarityCustomColumnOptions, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.similarity.CUSTOM_COLUMN']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.similarity.CUSTOM_COLUMN'], required=True), 'options': FieldInfo(annotation=ResponseSimilarityCustomColumnOptions, required=True, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: ResponseSimilarityCustomColumnOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSimilarityMetric(*, metric: Literal['response.similarity'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.similarity']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.similarity'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSimilarityPromptMetric(*, metric: Literal['response.similarity.prompt'], options: EmbeddingOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.similarity.prompt']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.similarity.prompt'], required=True), 'options': FieldInfo(annotation=EmbeddingOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: EmbeddingOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseSimilarityRefusalMetric(*, metric: Literal['response.similarity.refusal'], options: RefusalOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.similarity.refusal']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.similarity.refusal'], required=True), 'options': FieldInfo(annotation=RefusalOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: RefusalOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTokenCountMetric(*, metric: Literal['response.stats.token_count'], options: TokenCountOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.stats.token_count']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.stats.token_count'], required=True), 'options': FieldInfo(annotation=TokenCountOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TokenCountOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTopicsCodeMetric(*, metric: Literal['response.topics.code'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.topics.code']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.topics.code'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTopicsFinancialMetric(*, metric: Literal['response.topics.financial'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.topics.financial']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.topics.financial'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTopicsMaliciousMetric(*, metric: Literal['response.topics.malicious'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.topics.malicious']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.topics.malicious'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTopicsMedicalMetric(*, metric: Literal['response.topics.medical'], profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.topics.medical']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.topics.medical'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTopicsMetric(*, metric: Literal['response.topics'], options: TopicsOptions, profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.topics']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.topics'], required=True), 'options': FieldInfo(annotation=TopicsOptions, required=True, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TopicsOptions
profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseToxicityMetric(*, metric: Literal['response.toxicity'], profile: bool | None = True)

Bases: BaseMetric

metric: Literal['response.toxicity']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.toxicity'], required=True), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

profile: bool | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseToxicityScoreMetric(*, metric: Literal['response.toxicity.toxicity_score'], options: ToxicityScoreOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.toxicity.toxicity_score']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.toxicity.toxicity_score'], required=True), 'options': FieldInfo(annotation=ToxicityScoreOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: ToxicityScoreOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseTruthfulnessRuleSet(*, ruleset: Literal['response.score.truthfulness'], options: TruthfulnessRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=TruthfulnessRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.truthfulness'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TruthfulnessRuleSetOptions
ruleset: Literal['response.score.truthfulness']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseUtilEmbeddingsMetric(*, metric: Literal['response.util.embeddings'], options: EmbeddingOptions = {}, profile: bool | None = True, validation: InlineConstraintOptions | None = None)

Bases: BaseMetric

metric: Literal['response.util.embeddings']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metric': FieldInfo(annotation=Literal['response.util.embeddings'], required=True), 'options': FieldInfo(annotation=EmbeddingOptions, required=False, default={}, json_schema_extra={'additionalProperties': False}), 'profile': FieldInfo(annotation=Union[bool, NoneType], required=False, default=True), 'validation': FieldInfo(annotation=Union[InlineConstraintOptions, NoneType], required=False, default=None, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: EmbeddingOptions
profile: bool | None
validation: InlineConstraintOptions | None
class whylogs_container.whylabs.container.policy.policy_0_1_0.ResponseUtilRuleSet(*, ruleset: Literal['response.score.util'], options: UtilRuleSetOptions)

Bases: BaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=UtilRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['response.score.util'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: UtilRuleSetOptions
ruleset: Literal['response.score.util']
to_langkit_options() StrictLangkitOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.SlackValidationFailureCallback(*, callback: Literal['webhook.slack_validation_failure'], options: SlackValidationFailureOptions)

Bases: BaseCallback

callback: Literal['webhook.slack_validation_failure']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'callback': FieldInfo(annotation=Literal['webhook.slack_validation_failure'], required=True), 'options': FieldInfo(annotation=SlackValidationFailureOptions, required=True, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: SlackValidationFailureOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.StaticBearerAuthValidationFailureCallback(*, callback: Literal['webhook.static_bearer_auth_validation_failure'], options: StaticBearerAuthValidationFailureOptions)

Bases: BaseCallback

callback: Literal['webhook.static_bearer_auth_validation_failure']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'callback': FieldInfo(annotation=Literal['webhook.static_bearer_auth_validation_failure'], required=True), 'options': FieldInfo(annotation=StaticBearerAuthValidationFailureOptions, required=True, json_schema_extra={'additionalProperties': False})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: StaticBearerAuthValidationFailureOptions
class whylogs_container.whylabs.container.policy.policy_0_1_0.TruthfulnessRuleSet(*, ruleset: Literal['score.truthfulness'], options: TruthfulnessRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=TruthfulnessRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.truthfulness'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: TruthfulnessRuleSetOptions
ruleset: Literal['score.truthfulness']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.TruthfulnessRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'], rag_enabled: bool, hallucinations_enabled: bool)

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
hallucinations_enabled: bool
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'hallucinations_enabled': FieldInfo(annotation=bool, required=True), 'rag_enabled': FieldInfo(annotation=bool, required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

rag_enabled: bool
sensitivity: Literal['low', 'medium', 'high']
class whylogs_container.whylabs.container.policy.policy_0_1_0.UtilRuleSet(*, ruleset: Literal['score.util'], options: UtilRuleSetOptions)

Bases: MetaRulesetBaseModel

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'options': FieldInfo(annotation=UtilRuleSetOptions, required=True), 'ruleset': FieldInfo(annotation=Literal['score.util'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

options: UtilRuleSetOptions
ruleset: Literal['score.util']
to_rulesets() Sequence[PromptMisuseRuleSet | PromptBadActorsRuleSet | PromptCustomerExperienceRuleSet | PromptTruthfulnessRuleSet | PromptCostRuleSet | PromptUtilRuleSet | ResponseMisuseRuleSet | ResponseBadActorsRuleSet | ResponseCustomerExperienceRuleSet | ResponseTruthfulnessRuleSet | ResponseCostRuleSet | ResponseUtilRuleSet]
class whylogs_container.whylabs.container.policy.policy_0_1_0.UtilRuleSetOptions(*, behavior: Literal['observe', 'flag', 'block'], sensitivity: Literal['low', 'medium', 'high'])

Bases: BaseModel

behavior: Literal['observe', 'flag', 'block']
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'behavior': FieldInfo(annotation=Literal['observe', 'flag', 'block'], required=True), 'sensitivity': FieldInfo(annotation=Literal['low', 'medium', 'high'], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

sensitivity: Literal['low', 'medium', 'high']
class whylogs_container.whylabs.container.policy.policy_0_1_0.ValidatorConverter

Bases: object

static to_langkit_options(validator: PolicyConstraintValidator | PolicyMultiColumnConstraintValidator) StrictLangkitOptions
whylogs_container.whylabs.container.policy.policy_0_1_0.combine_langkit_options(l1: StrictLangkitOptions, l2: StrictLangkitOptions) StrictLangkitOptions