Class: AWSCDK::Wisdom::CfnAIPromptProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
wisdom/cfn_ai_prompt_props.rb

Overview

Properties for defining a CfnAIPrompt.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_format:, model_id:, template_configuration:, template_type:, type:, assistant_id: nil, description: nil, name: nil, tags: nil) ⇒ CfnAIPromptProps

Returns a new instance of CfnAIPromptProps.

Parameters:

  • api_format (String)

    The API format used for this AI Prompt.

  • model_id (String)

    The identifier of the model used for this AI Prompt. The following model Ids are supported:.

  • template_configuration (AWSCDK::IResolvable, AWSCDK::Wisdom::CfnAIPrompt::AIPromptTemplateConfigurationProperty)

    The configuration of the prompt template for this AI Prompt.

  • template_type (String)

    The type of the prompt template for this AI Prompt.

  • type (String)

    The type of this AI Prompt.

  • assistant_id (String, nil) (defaults to: nil)

    The identifier of the Amazon Q in Connect assistant.

  • description (String, nil) (defaults to: nil)

    The description of the AI Prompt.

  • name (String, nil) (defaults to: nil)

    The name of the AI Prompt.

  • tags (Hash{String => String}, nil) (defaults to: nil)

    The tags used to organize, track, or control access for this resource.



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'wisdom/cfn_ai_prompt_props.rb', line 18

def initialize(api_format:, model_id:, template_configuration:, template_type:, type:, assistant_id: nil, description: nil, name: nil, tags: nil)
  @api_format = api_format
  Jsii::Type.check_type(@api_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "apiFormat")
  @model_id = model_id
  Jsii::Type.check_type(@model_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "modelId")
  @template_configuration = template_configuration.is_a?(Hash) ? ::AWSCDK::Wisdom::CfnAIPrompt::AIPromptTemplateConfigurationProperty.new(**template_configuration.transform_keys(&:to_sym)) : template_configuration
  Jsii::Type.check_type(@template_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193aXNkb20uQ2ZuQUlQcm9tcHQuQUlQcm9tcHRUZW1wbGF0ZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "templateConfiguration")
  @template_type = template_type
  Jsii::Type.check_type(@template_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "templateType")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @assistant_id = assistant_id
  Jsii::Type.check_type(@assistant_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "assistantId") unless @assistant_id.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
end

Instance Attribute Details

#api_formatString (readonly)

The API format used for this AI Prompt.



43
44
45
# File 'wisdom/cfn_ai_prompt_props.rb', line 43

def api_format
  @api_format
end

#assistant_idString? (readonly)

The identifier of the Amazon Q in Connect assistant.

Can be either the ID or the ARN. URLs cannot contain the ARN.



88
89
90
# File 'wisdom/cfn_ai_prompt_props.rb', line 88

def assistant_id
  @assistant_id
end

#descriptionString? (readonly)

The description of the AI Prompt.



93
94
95
# File 'wisdom/cfn_ai_prompt_props.rb', line 93

def description
  @description
end

#model_idString (readonly)

The identifier of the model used for this AI Prompt. The following model Ids are supported:.

  • anthropic.claude-3-haiku--v1:0
  • apac.amazon.nova-lite-v1:0
  • apac.amazon.nova-micro-v1:0
  • apac.amazon.nova-pro-v1:0
  • apac.anthropic.claude-3-5-sonnet--v2:0
  • apac.anthropic.claude-3-haiku-20240307-v1:0
  • eu.amazon.nova-lite-v1:0
  • eu.amazon.nova-micro-v1:0
  • eu.amazon.nova-pro-v1:0
  • eu.anthropic.claude-3-7-sonnet-20250219-v1:0
  • eu.anthropic.claude-3-haiku-20240307-v1:0
  • us.amazon.nova-lite-v1:0
  • us.amazon.nova-micro-v1:0
  • us.amazon.nova-pro-v1:0
  • us.anthropic.claude-3-5-haiku-20241022-v1:0
  • us.anthropic.claude-3-7-sonnet-20250219-v1:0
  • us.anthropic.claude-3-haiku-20240307-v1:0


66
67
68
# File 'wisdom/cfn_ai_prompt_props.rb', line 66

def model_id
  @model_id
end

#nameString? (readonly)

The name of the AI Prompt.



98
99
100
# File 'wisdom/cfn_ai_prompt_props.rb', line 98

def name
  @name
end

#tagsHash{String => String}? (readonly)

The tags used to organize, track, or control access for this resource.



103
104
105
# File 'wisdom/cfn_ai_prompt_props.rb', line 103

def tags
  @tags
end

#template_configurationAWSCDK::IResolvable, AWSCDK::Wisdom::CfnAIPrompt::AIPromptTemplateConfigurationProperty (readonly)

The configuration of the prompt template for this AI Prompt.



71
72
73
# File 'wisdom/cfn_ai_prompt_props.rb', line 71

def template_configuration
  @template_configuration
end

#template_typeString (readonly)

The type of the prompt template for this AI Prompt.



76
77
78
# File 'wisdom/cfn_ai_prompt_props.rb', line 76

def template_type
  @template_type
end

#typeString (readonly)

The type of this AI Prompt.



81
82
83
# File 'wisdom/cfn_ai_prompt_props.rb', line 81

def type
  @type
end

Class Method Details

.jsii_propertiesObject



105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'wisdom/cfn_ai_prompt_props.rb', line 105

def self.jsii_properties
  {
    :api_format => "apiFormat",
    :model_id => "modelId",
    :template_configuration => "templateConfiguration",
    :template_type => "templateType",
    :type => "type",
    :assistant_id => "assistantId",
    :description => "description",
    :name => "name",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# File 'wisdom/cfn_ai_prompt_props.rb', line 119

def to_jsii
  result = {}
  result.merge!({
    "apiFormat" => @api_format,
    "modelId" => @model_id,
    "templateConfiguration" => @template_configuration,
    "templateType" => @template_type,
    "type" => @type,
    "assistantId" => @assistant_id,
    "description" => @description,
    "name" => @name,
    "tags" => @tags,
  })
  result.compact
end