Class: AWSCDK::Wisdom::CfnKnowledgeBaseProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Wisdom::CfnKnowledgeBaseProps
- Defined in:
- wisdom/cfn_knowledge_base_props.rb
Overview
Properties for defining a CfnKnowledgeBase.
Instance Attribute Summary collapse
-
#description ⇒ String?
readonly
The description.
-
#knowledge_base_type ⇒ String
readonly
The type of knowledge base.
-
#name ⇒ String
readonly
The name of the knowledge base.
-
#rendering_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Information about how to render the content.
-
#server_side_encryption_configuration ⇒ AWSCDK::IResolvable, ...
readonly
This customer managed key must have a policy that allows
kms:CreateGrantandkms:DescribeKeypermissions to the IAM identity using the key to invoke Wisdom. -
#source_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The source of the knowledge base content.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags used to organize, track, or control access for this resource.
-
#vector_ingestion_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Contains details about how to ingest the documents in a data source.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(knowledge_base_type:, name:, description: nil, rendering_configuration: nil, server_side_encryption_configuration: nil, source_configuration: nil, tags: nil, vector_ingestion_configuration: nil) ⇒ CfnKnowledgeBaseProps
constructor
A new instance of CfnKnowledgeBaseProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(knowledge_base_type:, name:, description: nil, rendering_configuration: nil, server_side_encryption_configuration: nil, source_configuration: nil, tags: nil, vector_ingestion_configuration: nil) ⇒ CfnKnowledgeBaseProps
Returns a new instance of CfnKnowledgeBaseProps.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 17 def initialize(knowledge_base_type:, name:, description: nil, rendering_configuration: nil, server_side_encryption_configuration: nil, source_configuration: nil, tags: nil, vector_ingestion_configuration: nil) @knowledge_base_type = knowledge_base_type Jsii::Type.check_type(@knowledge_base_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "knowledgeBaseType") @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @rendering_configuration = rendering_configuration.is_a?(Hash) ? ::AWSCDK::Wisdom::CfnKnowledgeBase::RenderingConfigurationProperty.new(**rendering_configuration.transform_keys(&:to_sym)) : rendering_configuration Jsii::Type.check_type(@rendering_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193aXNkb20uQ2ZuS25vd2xlZGdlQmFzZS5SZW5kZXJpbmdDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "renderingConfiguration") unless @rendering_configuration.nil? @server_side_encryption_configuration = server_side_encryption_configuration.is_a?(Hash) ? ::AWSCDK::Wisdom::CfnKnowledgeBase::ServerSideEncryptionConfigurationProperty.new(**server_side_encryption_configuration.transform_keys(&:to_sym)) : server_side_encryption_configuration Jsii::Type.check_type(@server_side_encryption_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193aXNkb20uQ2ZuS25vd2xlZGdlQmFzZS5TZXJ2ZXJTaWRlRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "serverSideEncryptionConfiguration") unless @server_side_encryption_configuration.nil? @source_configuration = source_configuration.is_a?(Hash) ? ::AWSCDK::Wisdom::CfnKnowledgeBase::SourceConfigurationProperty.new(**source_configuration.transform_keys(&:to_sym)) : source_configuration Jsii::Type.check_type(@source_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193aXNkb20uQ2ZuS25vd2xlZGdlQmFzZS5Tb3VyY2VDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "sourceConfiguration") unless @source_configuration.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @vector_ingestion_configuration = vector_ingestion_configuration.is_a?(Hash) ? ::AWSCDK::Wisdom::CfnKnowledgeBase::VectorIngestionConfigurationProperty.new(**vector_ingestion_configuration.transform_keys(&:to_sym)) : vector_ingestion_configuration Jsii::Type.check_type(@vector_ingestion_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193aXNkb20uQ2ZuS25vd2xlZGdlQmFzZS5WZWN0b3JJbmdlc3Rpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "vectorIngestionConfiguration") unless @vector_ingestion_configuration.nil? end |
Instance Attribute Details
#description ⇒ String? (readonly)
The description.
52 53 54 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 52 def description @description end |
#knowledge_base_type ⇒ String (readonly)
The type of knowledge base.
Only CUSTOM knowledge bases allow you to upload your own content. EXTERNAL knowledge bases support integrations with third-party systems whose content is synchronized automatically.
42 43 44 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 42 def knowledge_base_type @knowledge_base_type end |
#name ⇒ String (readonly)
The name of the knowledge base.
47 48 49 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 47 def name @name end |
#rendering_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Information about how to render the content.
57 58 59 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 57 def rendering_configuration @rendering_configuration end |
#server_side_encryption_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
This customer managed key must have a policy that allows kms:CreateGrant and kms:DescribeKey permissions to the IAM identity using the key to invoke Wisdom.
For more information about setting up a customer managed key for Wisdom, see Enable Connect Customer Wisdom for your instance . For information about valid ID values, see Key identifiers (KeyId) in the AWS Key Management Service Developer Guide .
64 65 66 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 64 def server_side_encryption_configuration @server_side_encryption_configuration end |
#source_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The source of the knowledge base content.
Only set this argument for EXTERNAL or Managed knowledge bases.
71 72 73 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 71 def source_configuration @source_configuration end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags used to organize, track, or control access for this resource.
76 77 78 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 76 def @tags end |
#vector_ingestion_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Contains details about how to ingest the documents in a data source.
81 82 83 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 81 def vector_ingestion_configuration @vector_ingestion_configuration end |
Class Method Details
.jsii_properties ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 83 def self.jsii_properties { :knowledge_base_type => "knowledgeBaseType", :name => "name", :description => "description", :rendering_configuration => "renderingConfiguration", :server_side_encryption_configuration => "serverSideEncryptionConfiguration", :source_configuration => "sourceConfiguration", :tags => "tags", :vector_ingestion_configuration => "vectorIngestionConfiguration", } end |
Instance Method Details
#to_jsii ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'wisdom/cfn_knowledge_base_props.rb', line 96 def to_jsii result = {} result.merge!({ "knowledgeBaseType" => @knowledge_base_type, "name" => @name, "description" => @description, "renderingConfiguration" => @rendering_configuration, "serverSideEncryptionConfiguration" => @server_side_encryption_configuration, "sourceConfiguration" => @source_configuration, "tags" => @tags, "vectorIngestionConfiguration" => @vector_ingestion_configuration, }) result.compact end |