Class CfnKnowledgeBase

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggableV2, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.101.0 (build b95fe5d)", date="2024-07-05T20:26:27.776Z") @Stability(Stable) public class CfnKnowledgeBase extends CfnResource implements IInspectable, ITaggableV2
Specifies a knowledge base as a resource in a top-level template. Minimally, you must specify the following properties:.

  • Name – Specify a name for the knowledge base.
  • RoleArn – Specify the Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base. For more information, see Create a service role for Knowledge base for Amazon Bedrock .
  • KnowledgeBaseConfiguration – Specify the embeddings configuration of the knowledge base. The following sub-properties are required:
  • Type – Specify the value VECTOR .
  • StorageConfiguration – Specify information about the vector store in which the data source is stored. The following sub-properties are required:
  • Type – Specify the vector store service that you are using.

Redis Enterprise Cloud vector stores are currently unsupported in AWS CloudFormation .

For more information about using knowledge bases in Amazon Bedrock , see Knowledge base for Amazon Bedrock .

See the Properties section below for descriptions of both the required and optional properties.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.bedrock.*;
 CfnKnowledgeBase cfnKnowledgeBase = CfnKnowledgeBase.Builder.create(this, "MyCfnKnowledgeBase")
         .knowledgeBaseConfiguration(KnowledgeBaseConfigurationProperty.builder()
                 .type("type")
                 .vectorKnowledgeBaseConfiguration(VectorKnowledgeBaseConfigurationProperty.builder()
                         .embeddingModelArn("embeddingModelArn")
                         .build())
                 .build())
         .name("name")
         .roleArn("roleArn")
         .storageConfiguration(StorageConfigurationProperty.builder()
                 .type("type")
                 // the properties below are optional
                 .opensearchServerlessConfiguration(OpenSearchServerlessConfigurationProperty.builder()
                         .collectionArn("collectionArn")
                         .fieldMapping(OpenSearchServerlessFieldMappingProperty.builder()
                                 .metadataField("metadataField")
                                 .textField("textField")
                                 .vectorField("vectorField")
                                 .build())
                         .vectorIndexName("vectorIndexName")
                         .build())
                 .pineconeConfiguration(PineconeConfigurationProperty.builder()
                         .connectionString("connectionString")
                         .credentialsSecretArn("credentialsSecretArn")
                         .fieldMapping(PineconeFieldMappingProperty.builder()
                                 .metadataField("metadataField")
                                 .textField("textField")
                                 .build())
                         // the properties below are optional
                         .namespace("namespace")
                         .build())
                 .rdsConfiguration(RdsConfigurationProperty.builder()
                         .credentialsSecretArn("credentialsSecretArn")
                         .databaseName("databaseName")
                         .fieldMapping(RdsFieldMappingProperty.builder()
                                 .metadataField("metadataField")
                                 .primaryKeyField("primaryKeyField")
                                 .textField("textField")
                                 .vectorField("vectorField")
                                 .build())
                         .resourceArn("resourceArn")
                         .tableName("tableName")
                         .build())
                 .build())
         // the properties below are optional
         .description("description")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnKnowledgeBase

      protected CfnKnowledgeBase(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnKnowledgeBase

      protected CfnKnowledgeBase(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnKnowledgeBase

      @Stability(Stable) public CfnKnowledgeBase(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnKnowledgeBaseProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrCreatedAt

      @Stability(Stable) @NotNull public String getAttrCreatedAt()
      The time at which the knowledge base was created.
    • getAttrFailureReasons

      @Stability(Stable) @NotNull public List<String> getAttrFailureReasons()
      A list of reasons that the API operation on the knowledge base failed.
    • getAttrKnowledgeBaseArn

      @Stability(Stable) @NotNull public String getAttrKnowledgeBaseArn()
      The Amazon Resource Name (ARN) of the knowledge base.
    • getAttrKnowledgeBaseId

      @Stability(Stable) @NotNull public String getAttrKnowledgeBaseId()
      The unique identifier of the knowledge base.
    • getAttrStatus

      @Stability(Stable) @NotNull public String getAttrStatus()
      The status of the knowledge base.
    • getAttrUpdatedAt

      @Stability(Stable) @NotNull public String getAttrUpdatedAt()
      The time at which the knowledge base was last updated.
    • getCdkTagManager

      @Stability(Stable) @NotNull public TagManager getCdkTagManager()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getCdkTagManager in interface ITaggableV2
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getKnowledgeBaseConfiguration

      @Stability(Stable) @NotNull public Object getKnowledgeBaseConfiguration()
      Contains details about the embeddings configuration of the knowledge base.
    • setKnowledgeBaseConfiguration

      @Stability(Stable) public void setKnowledgeBaseConfiguration(@NotNull IResolvable value)
      Contains details about the embeddings configuration of the knowledge base.
    • setKnowledgeBaseConfiguration

      @Stability(Stable) public void setKnowledgeBaseConfiguration(@NotNull CfnKnowledgeBase.KnowledgeBaseConfigurationProperty value)
      Contains details about the embeddings configuration of the knowledge base.
    • getName

      @Stability(Stable) @NotNull public String getName()
      The name of the knowledge base.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      The name of the knowledge base.
    • getRoleArn

      @Stability(Stable) @NotNull public String getRoleArn()
      The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
    • setRoleArn

      @Stability(Stable) public void setRoleArn(@NotNull String value)
      The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
    • getStorageConfiguration

      @Stability(Stable) @NotNull public Object getStorageConfiguration()
      Contains details about the storage configuration of the knowledge base.
    • setStorageConfiguration

      @Stability(Stable) public void setStorageConfiguration(@NotNull IResolvable value)
      Contains details about the storage configuration of the knowledge base.
    • setStorageConfiguration

      @Stability(Stable) public void setStorageConfiguration(@NotNull CfnKnowledgeBase.StorageConfigurationProperty value)
      Contains details about the storage configuration of the knowledge base.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      The description of the knowledge base.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      The description of the knowledge base.
    • getTags

      @Stability(Stable) @Nullable public Map<String,String> getTags()
      Metadata that you can assign to a resource as key-value pairs.

      For more information, see the following resources:.

    • setTags

      @Stability(Stable) public void setTags(@Nullable Map<String,String> value)
      Metadata that you can assign to a resource as key-value pairs.

      For more information, see the following resources:.