Class: AWSCDK::Bedrock::CfnEnforcedGuardrailConfigurationProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
bedrock/cfn_enforced_guardrail_configuration_props.rb

Overview

Properties for defining a CfnEnforcedGuardrailConfiguration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(guardrail_identifier:, guardrail_version:, model_enforcement: nil, selective_content_guarding: nil) ⇒ CfnEnforcedGuardrailConfigurationProps

Returns a new instance of CfnEnforcedGuardrailConfigurationProps.

Parameters:



13
14
15
16
17
18
19
20
21
22
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 13

def initialize(guardrail_identifier:, guardrail_version:, model_enforcement: nil, selective_content_guarding: nil)
  @guardrail_identifier = guardrail_identifier
  Jsii::Type.check_type(@guardrail_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "guardrailIdentifier")
  @guardrail_version = guardrail_version
  Jsii::Type.check_type(@guardrail_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "guardrailVersion")
  @model_enforcement = model_enforcement.is_a?(Hash) ? ::AWSCDK::Bedrock::CfnEnforcedGuardrailConfiguration::ModelEnforcementProperty.new(**model_enforcement.transform_keys(&:to_sym)) : model_enforcement
  Jsii::Type.check_type(@model_enforcement, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iZWRyb2NrLkNmbkVuZm9yY2VkR3VhcmRyYWlsQ29uZmlndXJhdGlvbi5Nb2RlbEVuZm9yY2VtZW50UHJvcGVydHkifV19fQ==")), "modelEnforcement") unless @model_enforcement.nil?
  @selective_content_guarding = selective_content_guarding.is_a?(Hash) ? ::AWSCDK::Bedrock::CfnEnforcedGuardrailConfiguration::SelectiveContentGuardingProperty.new(**selective_content_guarding.transform_keys(&:to_sym)) : selective_content_guarding
  Jsii::Type.check_type(@selective_content_guarding, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iZWRyb2NrLkNmbkVuZm9yY2VkR3VhcmRyYWlsQ29uZmlndXJhdGlvbi5TZWxlY3RpdmVDb250ZW50R3VhcmRpbmdQcm9wZXJ0eSJ9XX19")), "selectiveContentGuarding") unless @selective_content_guarding.nil?
end

Instance Attribute Details

#guardrail_identifierString (readonly)

Identifier for the guardrail, could be the ID or the ARN.



28
29
30
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 28

def guardrail_identifier
  @guardrail_identifier
end

#guardrail_versionString (readonly)

Numerical guardrail version (not DRAFT).



33
34
35
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 33

def guardrail_version
  @guardrail_version
end

#model_enforcementAWSCDK::IResolvable, ... (readonly)

Model-specific information for the enforced guardrail configuration.

If not present, the configuration is enforced on all models



40
41
42
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 40

def model_enforcement
  @model_enforcement
end

#selective_content_guardingAWSCDK::IResolvable, ... (readonly)

Selective content guarding controls for enforced guardrails.



45
46
47
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 45

def selective_content_guarding
  @selective_content_guarding
end

Class Method Details

.jsii_propertiesObject



47
48
49
50
51
52
53
54
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 47

def self.jsii_properties
  {
    :guardrail_identifier => "guardrailIdentifier",
    :guardrail_version => "guardrailVersion",
    :model_enforcement => "modelEnforcement",
    :selective_content_guarding => "selectiveContentGuarding",
  }
end

Instance Method Details

#to_jsiiObject



56
57
58
59
60
61
62
63
64
65
# File 'bedrock/cfn_enforced_guardrail_configuration_props.rb', line 56

def to_jsii
  result = {}
  result.merge!({
    "guardrailIdentifier" => @guardrail_identifier,
    "guardrailVersion" => @guardrail_version,
    "modelEnforcement" => @model_enforcement,
    "selectiveContentGuarding" => @selective_content_guarding,
  })
  result.compact
end