Skip to content

Generative AI Moderation

ModerationConfiguration

class datarobot.models.moderation.configuration.ModerationConfiguration

Details of overall moderation configuration for a model.

get()

classmethod get()

Get a guard configuration by ID.

Added in version v3.6.

Parameters

Parameter Type Description
config_id str ID of the configuration.

Returns

Returns Description
Retrieved configuration.

Return type: ModerationConfiguration

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

list()

classmethod list()

Returns a list of guard configurations.

Added in version v3.6.

Parameters

Parameter Type Description
entity_id str ID of the entity.
entity_type ModerationGuardEntityType Type of the entity.

Returns

Returns Description
a list of configurations

Return type: List[ModerationConfiguration]

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

create()

classmethod create()

Create a configuration. This is not a full create from scratch; it’s based on a template.

Added in version v3.6.

Parameters

Parameter Type Description
template_id str ID of the template to base this configuration on.
name str Name of the configuration.
description str Description of the configuration.
stages List[ModerationGuardStage] The stages of moderation where this guard is active.
entity_id str ID of the custom model version or playground this configuration applies to.
entity_type ModerationGuardEntityType Type of the associated entity_id.
llm_type Optional[ModerationGuardLlmType] The backing LLM this guard uses.
nemo_info Optional[GuardNemoInfo] Additional configuration for NeMo Guardrails guards.
model_info Optional[GuardModelInfo] Additional configuration for guards using a deployed model.
intervention Optional[GuardInterventionForConfiguration] The assessment conditions, and action the guard should take if conditions are met.
openai_api_key str Token to use for OpenAI. Deprecated; use openai_credential instead.
openai_api_base Optional[str] Base of the OpenAI connection.
openai_deployment_id Optional[str] ID of the OpenAI deployment.
openai_credential Optional[str] ID of the credential defined in DataRobot for OpenAI.

Returns

Returns Description
Created ModerationConfiguration.

Return type: ModerationConfiguration

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

update()

method update()

Updates the configuration. All fields are optional, and omitted fields are left unchanged.

entity_id, entity_type, and stages cannot be modified for a guard configuration,.

Added in version v3.6.

Parameters

Parameter Type Description
name str Name of the configuration.
description str Description of the configuration.
llm_type Optional[ModerationGuardLlmType] The backing LLM this guard uses.
nemo_info Optional[GuardNemoInfo] Additional configuration for NeMo Guardrails guards.
model_info Optional[GuardModelInfo] Additional configuration for guards using a deployed model.
intervention Optional[GuardInterventionForConfiguration] The assessment conditions, and action the guard should take if conditions are met.
openai_api_key str Token to use for OpenAI. Deprecated; use openai_credential instead.
openai_api_base Optional[str] Base of the OpenAI connection.
openai_deployment_id Optional[str] ID of the OpenAI deployment.
openai_credential Optional[str] ID of the credential defined in DataRobot for OpenAI.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

refresh()

method refresh()

Updates the moderation configuration with the latest data from server.

Added in version v3.6.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

delete()

method delete()

Deletes the configuration.

Added in version v3.6.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

GuardInterventionCondition

class datarobot.models.moderation.intervention.GuardInterventionCondition

Defines a condition for intervention.

GuardInterventionForTemplate

class datarobot.models.moderation.intervention.GuardInterventionForTemplate

Defines the intervention conditions and actions a guard can take. Configuration schema differs slightly from template because changes were requested after templates were baked in.

ensure_object()

classmethod ensure_object()

Intervention may arrive as an object, or as a dict. Return an object.

Return type: GuardInterventionForTemplate

GuardInterventionForConfiguration

class datarobot.models.moderation.intervention.GuardInterventionForConfiguration

Defines the intervention conditions and actions a guard can take. Configuration schema differs slightly from template because changes were requested after templates were baked in.

ensure_object()

classmethod ensure_object()

Intervention may arrive as an object, or as a dict. Return an object.

Return type: GuardInterventionForConfiguration

GuardModelInfo

class datarobot.models.moderation.model_info.GuardModelInfo

Model information for moderation templates and configurations. Omitted optional values are stored and presented as: * [] (for class names) * None (all others)

to_dict()

method to_dict()

Convert the model information object to a dictionary.

Return type: Dict[str, Union[str, List[str], None]]

ensure_object()

classmethod ensure_object()

Model info may arrive as an object, or as a dict. Return an object.

Return type: GuardModelInfo

ModelVersionUpdate

class datarobot.models.moderation.model_version_update.ModelVersionUpdate

Implements the save-configuration operation from the moderation UI. All guard configurations and overall config is saved to a new custom model version.

new_custom_model_version_with_config()

classmethod new_custom_model_version_with_config()

Create a new custom model version with the provided moderation configuration :type custom_model_id: str :param custom_model_id: :type overall_config: OverallModerationConfig :param overall_config: :type configs: List[ModerationConfiguration] :param configs:

Return type: ID of the new custom model version.

GuardNemoInfo

class datarobot.models.moderation.nemo_info.GuardNemoInfo

Details of a NeMo Guardrails moderation guard.

OverallModerationConfig

class datarobot.models.moderation.overall.OverallModerationConfig

Details of overall moderation configuration for a model.

find()

classmethod find()

Find overall configuration by entity ID and entity type. Each entity (such as a customModelVersion) may have at most 1 overall moderation configuration.

Added in version v3.6.

Parameters

Parameter Type Description
entity_id str ID of the entity.
entity_type str Type of the entity.

Returns

Returns Description
an OverallModerationConfig or None

Return type: Optional[OverallModerationConfig]

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

locate()

classmethod locate()

Find overall configuration by entity ID and entity type. This version of find() expects the object to exist. Its return type is not optional.

Added in version v3.6.

Parameters

Parameter Type Description
entity_id str ID of the entity.
entity_type str Type of the entity.

Returns

Returns Description
a list of OverallModerationConfig

Return type: List[OverallModerationConfig]

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

create()

classmethod create()

Create an OverallModerationConfig.

Added in version v3.6.

Parameters

Parameter Type Description
timeout_sec int How long to wait for all moderation tasks in a phase to complete.
timeout_action ModerationTimeoutActionType What to do if moderation times out.
entity_id str Entity, such as customModelVersion, that this configuration applies to.
entity_type ModerationGuardEntityType Type of the entity defined by entity_id.

Returns

Returns Description
created OverallModerationConfig

Return type: OverallModerationConfig

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

update()

method update()

Update an OverallModerationConfig.

Added in version v3.6.

Parameters

Parameter Type Description
timeout_sec int How long to wait for all moderation tasks in a phase to complete.
timeout_action ModerationTimeoutActionType What to do if moderation times out.
entity_id str Entity, such as customModelVersion, that this configuration applies to.
entity_type ModerationGuardEntityType Type of the entity defined by entity_id.

Returns

Returns Description
created OverallModerationConfig

Return type: OverallModerationConfig

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

refresh()

method refresh()

Updates the overall moderation configuration with the latest data from server.

Added in version v3.6.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

ModerationTemplate

class datarobot.models.moderation.template.ModerationTemplate

A DataRobot Moderation Template.

Added in version v3.6.

Variables

Attribute Type Description
id str The ID of the template.
name str The name of the template.

get()

classmethod get()

Returns the template by ID.

Added in version v3.6.

Parameters

Parameter Type Description
template_id str The ID of the template.

Returns

Returns Description
The retrieved template.

Return type: ModerationTemplate

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

list()

classmethod list()

Returns a list of templates.

Added in version v3.6.

Parameters

Parameter Type Description
yet (none)

Returns

Returns Description
A list of templates.

Return type: List[ModerationTemplate]

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

find()

classmethod find()

Finds the template by name.

Added in version v3.6.

Parameters

Parameter Type Description
name str The name of the template.

Returns

Returns Description
The matching template, or None if no template is found.

Return type: ModerationTemplate

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

create()

classmethod create()

Creates a template.

Added in version v3.6.

Parameters

Parameter Type Description
name str The name of the template.
description str The description of the template.
type GuardType The type of the template.
allowed_stages List[ModerationGuardStage] The stages of moderation where this guard may be used.
ootb_type ModerationGuardOotbType For guards of type ootb, the specific Out of the Box metric type.
llm_type Optional[ModerationGuardLlmType] The backing LLM this guard uses.
nemo_info Optional[GuardNemoInfo] Additional configuration for NeMo Guardrails guards.
model_info Optional[GuardModelInfo] Additional configuration for guards using a deployed model.
intervention Optional[GuardInterventionForTemplate] The assessment conditions and action the guard should take if conditions are met.

Returns

Returns Description
The created template.

Return type: ModerationTemplate

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

update()

method update()

Updates the template. All fields are optional, and omitted fields are left unchanged.

Added in version v3.6.

Parameters

Parameter Type Description
name str The name of the template.
description str The description of the template.
type GuardType The type of the template.
allowed_stages List[ModerationGuardStage] The stages of moderation where this guard may be used.
ootb_type ModerationGuardOotbType For guards of type ootb, the specific Out of the Box metric type.
llm_type Optional[ModerationGuardLlmType] The backing LLM this guard uses.
nemo_info Optional[GuardNemoInfo] Additional configuration for NeMo Guardrails guards.
model_info Optional[GuardModelInfo] Additional configuration for guards using a deployed model.
intervention Optional[GuardInterventionForTemplate] The assessment conditions and action the guard should take if conditions are met.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

refresh()

method refresh()

Updates the template with the latest data from the server.

Added in version v3.6.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

delete()

method delete()

Deletes the template.

Added in version v3.6.

Raises

Exception Description
datarobot.errors.ClientError If the server responded with 4xx status.
datarobot.errors.ServerError If the server responded with 5xx status.

Return type: None

ModerationGuardOotbType

class datarobot.enums.ModerationGuardOotbType

Defines the available OOTB guards.