awsbedrock

package
v2.139.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2024 License: Apache-2.0 Imports: 7 Imported by: 7

README

Amazon Bedrock Construct Library

Amazon Bedrock is a fully managed service that offers a choice of foundation models (FMs) along with a broad set of capabilities for building generative AI applications.

CloudFormation does not currently support any Bedrock resource types. This construct library is a collection of constructs that can look up existing Bedrock models for use with other services' CDK constructs, such as AWS Step Functions.

To look up a Bedrock base foundation model:

import "github.com/aws/aws-cdk-go/awscdk"


bedrock.FoundationModel_FromFoundationModelId(this, jsii.String("Model"), bedrock.FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2())

To look up a Bedrock provisioned throughput model:

import bedrock "github.com/aws/aws-cdk-go/awscdk"


bedrock.ProvisionedModel_FromProvisionedModelArn(this, jsii.String("Model"), jsii.String("arn:aws:bedrock:us-east-2:123456789012:provisioned-model/abc-123"))

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnAgentAlias_CFN_RESOURCE_TYPE_NAME added in v2.139.0

func CfnAgentAlias_CFN_RESOURCE_TYPE_NAME() *string

func CfnAgentAlias_IsCfnElement added in v2.139.0

func CfnAgentAlias_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnAgentAlias_IsCfnResource added in v2.139.0

func CfnAgentAlias_IsCfnResource(x interface{}) *bool

Check whether the given object is a CfnResource.

func CfnAgentAlias_IsConstruct added in v2.139.0

func CfnAgentAlias_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func CfnAgent_CFN_RESOURCE_TYPE_NAME added in v2.139.0

func CfnAgent_CFN_RESOURCE_TYPE_NAME() *string

func CfnAgent_IsCfnElement added in v2.139.0

func CfnAgent_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnAgent_IsCfnResource added in v2.139.0

func CfnAgent_IsCfnResource(x interface{}) *bool

Check whether the given object is a CfnResource.

func CfnAgent_IsConstruct added in v2.139.0

func CfnAgent_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func CfnDataSource_CFN_RESOURCE_TYPE_NAME added in v2.139.0

func CfnDataSource_CFN_RESOURCE_TYPE_NAME() *string

func CfnDataSource_IsCfnElement added in v2.139.0

func CfnDataSource_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDataSource_IsCfnResource added in v2.139.0

func CfnDataSource_IsCfnResource(x interface{}) *bool

Check whether the given object is a CfnResource.

func CfnDataSource_IsConstruct added in v2.139.0

func CfnDataSource_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func CfnKnowledgeBase_CFN_RESOURCE_TYPE_NAME added in v2.139.0

func CfnKnowledgeBase_CFN_RESOURCE_TYPE_NAME() *string

func CfnKnowledgeBase_IsCfnElement added in v2.139.0

func CfnKnowledgeBase_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnKnowledgeBase_IsCfnResource added in v2.139.0

func CfnKnowledgeBase_IsCfnResource(x interface{}) *bool

Check whether the given object is a CfnResource.

func CfnKnowledgeBase_IsConstruct added in v2.139.0

func CfnKnowledgeBase_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func NewCfnAgentAlias_Override added in v2.139.0

func NewCfnAgentAlias_Override(c CfnAgentAlias, scope constructs.Construct, id *string, props *CfnAgentAliasProps)

func NewCfnAgent_Override added in v2.139.0

func NewCfnAgent_Override(c CfnAgent, scope constructs.Construct, id *string, props *CfnAgentProps)

func NewCfnDataSource_Override added in v2.139.0

func NewCfnDataSource_Override(c CfnDataSource, scope constructs.Construct, id *string, props *CfnDataSourceProps)

func NewCfnKnowledgeBase_Override added in v2.139.0

func NewCfnKnowledgeBase_Override(c CfnKnowledgeBase, scope constructs.Construct, id *string, props *CfnKnowledgeBaseProps)

func NewFoundationModelIdentifier_Override

func NewFoundationModelIdentifier_Override(f FoundationModelIdentifier, modelId *string)

Constructor for foundation model identifier.

Types

type CfnAgent added in v2.139.0

type CfnAgent interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggableV2
	// The action groups that belong to an agent.
	ActionGroups() interface{}
	SetActionGroups(val interface{})
	// The name of the agent.
	AgentName() *string
	SetAgentName(val *string)
	// The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.
	AgentResourceRoleArn() *string
	SetAgentResourceRoleArn(val *string)
	// The Amazon Resource Name (ARN) of the agent.
	AttrAgentArn() *string
	// The unique identifier of the agent.
	AttrAgentId() *string
	// The status of the agent and whether it is ready for use. The following statuses are possible:.
	//
	// - CREATING – The agent is being created.
	// - PREPARING – The agent is being prepared.
	// - PREPARED – The agent is prepared and ready to be invoked.
	// - NOT_PREPARED – The agent has been created but not yet prepared.
	// - FAILED – The agent API operation failed.
	// - UPDATING – The agent is being updated.
	// - DELETING – The agent is being deleted.
	AttrAgentStatus() *string
	// The version of the agent.
	AttrAgentVersion() *string
	// The time at which the agent was created.
	AttrCreatedAt() *string
	// Contains reasons that the agent-related API that you invoked failed.
	AttrFailureReasons() *[]*string
	// The time at which the agent was last prepared.
	AttrPreparedAt() *string
	// Contains recommended actions to take for the agent-related API that you invoked to succeed.
	AttrRecommendedActions() *[]*string
	// The time at which the agent was last updated.
	AttrUpdatedAt() *string
	// Specifies whether to automatically update the `DRAFT` version of the agent after making changes to the agent.
	AutoPrepare() interface{}
	SetAutoPrepare(val interface{})
	// Tag Manager which manages the tags for this resource.
	CdkTagManager() awscdk.TagManager
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The Amazon Resource Name (ARN) of the AWS KMS key that encrypts the agent.
	CustomerEncryptionKeyArn() *string
	SetCustomerEncryptionKeyArn(val *string)
	// The description of the agent.
	Description() *string
	SetDescription(val *string)
	// The foundation model used for orchestration by the agent.
	FoundationModel() *string
	SetFoundationModel(val *string)
	// The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.
	IdleSessionTtlInSeconds() *float64
	SetIdleSessionTtlInSeconds(val *float64)
	// Instructions that tell the agent what it should do and how it should interact with users.
	Instruction() *string
	SetInstruction(val *string)
	// The knowledge bases associated with the agent.
	KnowledgeBases() interface{}
	SetKnowledgeBases(val interface{})
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Contains configurations to override prompt templates in different parts of an agent sequence.
	PromptOverrideConfiguration() interface{}
	SetPromptOverrideConfiguration(val interface{})
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// Specifies whether to delete the resource even if it's in use.
	SkipResourceInUseCheckOnDelete() interface{}
	SetSkipResourceInUseCheckOnDelete(val interface{})
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Metadata that you can assign to a resource as key-value pairs.
	//
	// For more information, see the following resources:.
	Tags() *map[string]*string
	SetTags(val *map[string]*string)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Specifies an agent as a resource in a top-level template. Minimally, you must specify the following properties:.

- AgentName – Specify a name for the agent. - AgentResourceRoleArn – Specify the Amazon Resource Name (ARN) of the service role with permissions to invoke API operations on the agent. For more information, see [Create a service role for Agents for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-permissions.html) . - FoundationModel – Specify the model ID of a foundation model to use when invoking the agent. For more information, see [Supported regions and models for Agents for Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-supported.html) .

For more information about using agents in Amazon Bedrock , see [Agents for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html) .

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 "github.com/aws/aws-cdk-go/awscdk"

cfnAgent := awscdk.Aws_bedrock.NewCfnAgent(this, jsii.String("MyCfnAgent"), &CfnAgentProps{
	AgentName: jsii.String("agentName"),

	// the properties below are optional
	ActionGroups: []interface{}{
		&AgentActionGroupProperty{
			ActionGroupName: jsii.String("actionGroupName"),

			// the properties below are optional
			ActionGroupExecutor: &ActionGroupExecutorProperty{
				Lambda: jsii.String("lambda"),
			},
			ActionGroupState: jsii.String("actionGroupState"),
			ApiSchema: &APISchemaProperty{
				Payload: jsii.String("payload"),
				S3: &S3IdentifierProperty{
					S3BucketName: jsii.String("s3BucketName"),
					S3ObjectKey: jsii.String("s3ObjectKey"),
				},
			},
			Description: jsii.String("description"),
			ParentActionGroupSignature: jsii.String("parentActionGroupSignature"),
			SkipResourceInUseCheckOnDelete: jsii.Boolean(false),
		},
	},
	AgentResourceRoleArn: jsii.String("agentResourceRoleArn"),
	AutoPrepare: jsii.Boolean(false),
	CustomerEncryptionKeyArn: jsii.String("customerEncryptionKeyArn"),
	Description: jsii.String("description"),
	FoundationModel: jsii.String("foundationModel"),
	IdleSessionTtlInSeconds: jsii.Number(123),
	Instruction: jsii.String("instruction"),
	KnowledgeBases: []interface{}{
		&AgentKnowledgeBaseProperty{
			Description: jsii.String("description"),
			KnowledgeBaseId: jsii.String("knowledgeBaseId"),

			// the properties below are optional
			KnowledgeBaseState: jsii.String("knowledgeBaseState"),
		},
	},
	PromptOverrideConfiguration: &PromptOverrideConfigurationProperty{
		PromptConfigurations: []interface{}{
			&PromptConfigurationProperty{
				BasePromptTemplate: jsii.String("basePromptTemplate"),
				InferenceConfiguration: &InferenceConfigurationProperty{
					MaximumLength: jsii.Number(123),
					StopSequences: []*string{
						jsii.String("stopSequences"),
					},
					Temperature: jsii.Number(123),
					TopK: jsii.Number(123),
					TopP: jsii.Number(123),
				},
				ParserMode: jsii.String("parserMode"),
				PromptCreationMode: jsii.String("promptCreationMode"),
				PromptState: jsii.String("promptState"),
				PromptType: jsii.String("promptType"),
			},
		},

		// the properties below are optional
		OverrideLambda: jsii.String("overrideLambda"),
	},
	SkipResourceInUseCheckOnDelete: jsii.Boolean(false),
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html

func NewCfnAgent added in v2.139.0

func NewCfnAgent(scope constructs.Construct, id *string, props *CfnAgentProps) CfnAgent

type CfnAgentAlias added in v2.139.0

type CfnAgentAlias interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggableV2
	// The name of the alias of the agent.
	AgentAliasName() *string
	SetAgentAliasName(val *string)
	// The unique identifier of the agent.
	AgentId() *string
	SetAgentId(val *string)
	// The Amazon Resource Name (ARN) of the alias of the agent.
	AttrAgentAliasArn() *string
	// Contains details about the history of the alias.
	AttrAgentAliasHistoryEvents() awscdk.IResolvable
	// The unique identifier of the alias of the agent.
	AttrAgentAliasId() *string
	// The status of the alias of the agent and whether it is ready for use.
	//
	// The following statuses are possible:
	//
	// - CREATING – The agent alias is being created.
	// - PREPARED – The agent alias is finished being created or updated and is ready to be invoked.
	// - FAILED – The agent alias API operation failed.
	// - UPDATING – The agent alias is being updated.
	// - DELETING – The agent alias is being deleted.
	AttrAgentAliasStatus() *string
	// The time at which the alias of the agent was created.
	AttrCreatedAt() *string
	// The time at which the alias was last updated.
	AttrUpdatedAt() *string
	// Tag Manager which manages the tags for this resource.
	CdkTagManager() awscdk.TagManager
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The description of the alias of the agent.
	Description() *string
	SetDescription(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// Contains details about the routing configuration of the alias.
	RoutingConfiguration() interface{}
	SetRoutingConfiguration(val interface{})
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Metadata that you can assign to a resource as key-value pairs.
	//
	// For more information, see the following resources:.
	Tags() *map[string]*string
	SetTags(val *map[string]*string)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Specifies an agent alias as a resource in a top-level template. Minimally, you must specify the following properties:.

- AgentAliasName – Specify a name for the alias.

For more information about creating aliases for an agent in Amazon Bedrock , see [Deploy an Amazon Bedrock agent](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-deploy.html) .

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 "github.com/aws/aws-cdk-go/awscdk"

cfnAgentAlias := awscdk.Aws_bedrock.NewCfnAgentAlias(this, jsii.String("MyCfnAgentAlias"), &CfnAgentAliasProps{
	AgentAliasName: jsii.String("agentAliasName"),
	AgentId: jsii.String("agentId"),

	// the properties below are optional
	Description: jsii.String("description"),
	RoutingConfiguration: []interface{}{
		&AgentAliasRoutingConfigurationListItemProperty{
			AgentVersion: jsii.String("agentVersion"),
		},
	},
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html

func NewCfnAgentAlias added in v2.139.0

func NewCfnAgentAlias(scope constructs.Construct, id *string, props *CfnAgentAliasProps) CfnAgentAlias

type CfnAgentAliasProps added in v2.139.0

type CfnAgentAliasProps struct {
	// The name of the alias of the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html#cfn-bedrock-agentalias-agentaliasname
	//
	AgentAliasName *string `field:"required" json:"agentAliasName" yaml:"agentAliasName"`
	// The unique identifier of the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html#cfn-bedrock-agentalias-agentid
	//
	AgentId *string `field:"required" json:"agentId" yaml:"agentId"`
	// The description of the alias of the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html#cfn-bedrock-agentalias-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// Contains details about the routing configuration of the alias.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html#cfn-bedrock-agentalias-routingconfiguration
	//
	RoutingConfiguration interface{} `field:"optional" json:"routingConfiguration" yaml:"routingConfiguration"`
	// Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:.
	//
	// - [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions)
	// - [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices)
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html#cfn-bedrock-agentalias-tags
	//
	Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnAgentAlias`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnAgentAliasProps := &CfnAgentAliasProps{
	AgentAliasName: jsii.String("agentAliasName"),
	AgentId: jsii.String("agentId"),

	// the properties below are optional
	Description: jsii.String("description"),
	RoutingConfiguration: []interface{}{
		&AgentAliasRoutingConfigurationListItemProperty{
			AgentVersion: jsii.String("agentVersion"),
		},
	},
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html

type CfnAgentAlias_AgentAliasHistoryEventProperty added in v2.139.0

type CfnAgentAlias_AgentAliasHistoryEventProperty struct {
	// The date that the alias stopped being associated to the version in the `routingConfiguration` object.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliashistoryevent.html#cfn-bedrock-agentalias-agentaliashistoryevent-enddate
	//
	EndDate *string `field:"optional" json:"endDate" yaml:"endDate"`
	// Contains details about the version of the agent with which the alias is associated.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliashistoryevent.html#cfn-bedrock-agentalias-agentaliashistoryevent-routingconfiguration
	//
	RoutingConfiguration interface{} `field:"optional" json:"routingConfiguration" yaml:"routingConfiguration"`
	// The date that the alias began being associated to the version in the `routingConfiguration` object.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliashistoryevent.html#cfn-bedrock-agentalias-agentaliashistoryevent-startdate
	//
	StartDate *string `field:"optional" json:"startDate" yaml:"startDate"`
}

Contains details about the history of the alias.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

agentAliasHistoryEventProperty := &AgentAliasHistoryEventProperty{
	EndDate: jsii.String("endDate"),
	RoutingConfiguration: []interface{}{
		&AgentAliasRoutingConfigurationListItemProperty{
			AgentVersion: jsii.String("agentVersion"),
		},
	},
	StartDate: jsii.String("startDate"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliashistoryevent.html

type CfnAgentAlias_AgentAliasRoutingConfigurationListItemProperty added in v2.139.0

type CfnAgentAlias_AgentAliasRoutingConfigurationListItemProperty struct {
	// The version of the agent with which the alias is associated.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem.html#cfn-bedrock-agentalias-agentaliasroutingconfigurationlistitem-agentversion
	//
	AgentVersion *string `field:"required" json:"agentVersion" yaml:"agentVersion"`
}

Contains details about the routing configuration of the alias.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

agentAliasRoutingConfigurationListItemProperty := &AgentAliasRoutingConfigurationListItemProperty{
	AgentVersion: jsii.String("agentVersion"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem.html

type CfnAgentProps added in v2.139.0

type CfnAgentProps struct {
	// The name of the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-agentname
	//
	AgentName *string `field:"required" json:"agentName" yaml:"agentName"`
	// The action groups that belong to an agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-actiongroups
	//
	ActionGroups interface{} `field:"optional" json:"actionGroups" yaml:"actionGroups"`
	// The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-agentresourcerolearn
	//
	AgentResourceRoleArn *string `field:"optional" json:"agentResourceRoleArn" yaml:"agentResourceRoleArn"`
	// Specifies whether to automatically update the `DRAFT` version of the agent after making changes to the agent.
	//
	// The `DRAFT` version can be continually iterated upon during internal development. By default, this value is `false` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-autoprepare
	//
	// Default: - false.
	//
	AutoPrepare interface{} `field:"optional" json:"autoPrepare" yaml:"autoPrepare"`
	// The Amazon Resource Name (ARN) of the AWS KMS key that encrypts the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-customerencryptionkeyarn
	//
	CustomerEncryptionKeyArn *string `field:"optional" json:"customerEncryptionKeyArn" yaml:"customerEncryptionKeyArn"`
	// The description of the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// The foundation model used for orchestration by the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-foundationmodel
	//
	FoundationModel *string `field:"optional" json:"foundationModel" yaml:"foundationModel"`
	// The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.
	//
	// A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-idlesessionttlinseconds
	//
	IdleSessionTtlInSeconds *float64 `field:"optional" json:"idleSessionTtlInSeconds" yaml:"idleSessionTtlInSeconds"`
	// Instructions that tell the agent what it should do and how it should interact with users.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-instruction
	//
	Instruction *string `field:"optional" json:"instruction" yaml:"instruction"`
	// The knowledge bases associated with the agent.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-knowledgebases
	//
	KnowledgeBases interface{} `field:"optional" json:"knowledgeBases" yaml:"knowledgeBases"`
	// Contains configurations to override prompt templates in different parts of an agent sequence.
	//
	// For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-promptoverrideconfiguration
	//
	PromptOverrideConfiguration interface{} `field:"optional" json:"promptOverrideConfiguration" yaml:"promptOverrideConfiguration"`
	// Specifies whether to delete the resource even if it's in use.
	//
	// By default, this value is `false` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-skipresourceinusecheckondelete
	//
	// Default: - false.
	//
	SkipResourceInUseCheckOnDelete interface{} `field:"optional" json:"skipResourceInUseCheckOnDelete" yaml:"skipResourceInUseCheckOnDelete"`
	// Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:.
	//
	// - [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions)
	// - [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices)
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-tags
	//
	Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnAgent`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnAgentProps := &CfnAgentProps{
	AgentName: jsii.String("agentName"),

	// the properties below are optional
	ActionGroups: []interface{}{
		&AgentActionGroupProperty{
			ActionGroupName: jsii.String("actionGroupName"),

			// the properties below are optional
			ActionGroupExecutor: &ActionGroupExecutorProperty{
				Lambda: jsii.String("lambda"),
			},
			ActionGroupState: jsii.String("actionGroupState"),
			ApiSchema: &APISchemaProperty{
				Payload: jsii.String("payload"),
				S3: &S3IdentifierProperty{
					S3BucketName: jsii.String("s3BucketName"),
					S3ObjectKey: jsii.String("s3ObjectKey"),
				},
			},
			Description: jsii.String("description"),
			ParentActionGroupSignature: jsii.String("parentActionGroupSignature"),
			SkipResourceInUseCheckOnDelete: jsii.Boolean(false),
		},
	},
	AgentResourceRoleArn: jsii.String("agentResourceRoleArn"),
	AutoPrepare: jsii.Boolean(false),
	CustomerEncryptionKeyArn: jsii.String("customerEncryptionKeyArn"),
	Description: jsii.String("description"),
	FoundationModel: jsii.String("foundationModel"),
	IdleSessionTtlInSeconds: jsii.Number(123),
	Instruction: jsii.String("instruction"),
	KnowledgeBases: []interface{}{
		&AgentKnowledgeBaseProperty{
			Description: jsii.String("description"),
			KnowledgeBaseId: jsii.String("knowledgeBaseId"),

			// the properties below are optional
			KnowledgeBaseState: jsii.String("knowledgeBaseState"),
		},
	},
	PromptOverrideConfiguration: &PromptOverrideConfigurationProperty{
		PromptConfigurations: []interface{}{
			&PromptConfigurationProperty{
				BasePromptTemplate: jsii.String("basePromptTemplate"),
				InferenceConfiguration: &InferenceConfigurationProperty{
					MaximumLength: jsii.Number(123),
					StopSequences: []*string{
						jsii.String("stopSequences"),
					},
					Temperature: jsii.Number(123),
					TopK: jsii.Number(123),
					TopP: jsii.Number(123),
				},
				ParserMode: jsii.String("parserMode"),
				PromptCreationMode: jsii.String("promptCreationMode"),
				PromptState: jsii.String("promptState"),
				PromptType: jsii.String("promptType"),
			},
		},

		// the properties below are optional
		OverrideLambda: jsii.String("overrideLambda"),
	},
	SkipResourceInUseCheckOnDelete: jsii.Boolean(false),
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html

type CfnAgent_APISchemaProperty added in v2.139.0

type CfnAgent_APISchemaProperty struct {
	// The JSON or YAML-formatted payload defining the OpenAPI schema for the action group.
	//
	// For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-apischema.html#cfn-bedrock-agent-apischema-payload
	//
	Payload *string `field:"optional" json:"payload" yaml:"payload"`
	// Contains details about the S3 object containing the OpenAPI schema for the action group.
	//
	// For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-apischema.html#cfn-bedrock-agent-apischema-s3
	//
	S3 interface{} `field:"optional" json:"s3" yaml:"s3"`
}

Contains details about the OpenAPI schema for the action group.

For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html) . You can either include the schema directly in the `payload` field or you can upload it to an S3 bucket and specify the S3 bucket location in the `s3` field.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

aPISchemaProperty := &APISchemaProperty{
	Payload: jsii.String("payload"),
	S3: &S3IdentifierProperty{
		S3BucketName: jsii.String("s3BucketName"),
		S3ObjectKey: jsii.String("s3ObjectKey"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-apischema.html

type CfnAgent_ActionGroupExecutorProperty added in v2.139.0

type CfnAgent_ActionGroupExecutorProperty struct {
	// The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupexecutor.html#cfn-bedrock-agent-actiongroupexecutor-lambda
	//
	Lambda *string `field:"required" json:"lambda" yaml:"lambda"`
}

Contains details about the Lambda function containing the business logic that is carried out upon invoking the action.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

actionGroupExecutorProperty := &ActionGroupExecutorProperty{
	Lambda: jsii.String("lambda"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupexecutor.html

type CfnAgent_AgentActionGroupProperty added in v2.139.0

type CfnAgent_AgentActionGroupProperty struct {
	// The name of the action group.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-actiongroupname
	//
	ActionGroupName *string `field:"required" json:"actionGroupName" yaml:"actionGroupName"`
	// The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-actiongroupexecutor
	//
	ActionGroupExecutor interface{} `field:"optional" json:"actionGroupExecutor" yaml:"actionGroupExecutor"`
	// Specifies whether the action group is available for the agent to invoke or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-actiongroupstate
	//
	ActionGroupState *string `field:"optional" json:"actionGroupState" yaml:"actionGroupState"`
	// Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema.
	//
	// For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-apischema
	//
	ApiSchema interface{} `field:"optional" json:"apiSchema" yaml:"apiSchema"`
	// The description of the action group.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// If this field is set as `AMAZON.UserInput` , the agent can request the user for additional information when trying to complete a task. The `description` , `apiSchema` , and `actionGroupExecutor` fields must be blank for this action group.
	//
	// During orchestration, if the agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an [Observation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Observation.html) reprompting the user for more information.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-parentactiongroupsignature
	//
	ParentActionGroupSignature *string `field:"optional" json:"parentActionGroupSignature" yaml:"parentActionGroupSignature"`
	// Specifies whether to delete the resource even if it's in use.
	//
	// By default, this value is `false` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-skipresourceinusecheckondelete
	//
	// Default: - false.
	//
	SkipResourceInUseCheckOnDelete interface{} `field:"optional" json:"skipResourceInUseCheckOnDelete" yaml:"skipResourceInUseCheckOnDelete"`
}

Contains details about an action group.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

agentActionGroupProperty := &AgentActionGroupProperty{
	ActionGroupName: jsii.String("actionGroupName"),

	// the properties below are optional
	ActionGroupExecutor: &ActionGroupExecutorProperty{
		Lambda: jsii.String("lambda"),
	},
	ActionGroupState: jsii.String("actionGroupState"),
	ApiSchema: &APISchemaProperty{
		Payload: jsii.String("payload"),
		S3: &S3IdentifierProperty{
			S3BucketName: jsii.String("s3BucketName"),
			S3ObjectKey: jsii.String("s3ObjectKey"),
		},
	},
	Description: jsii.String("description"),
	ParentActionGroupSignature: jsii.String("parentActionGroupSignature"),
	SkipResourceInUseCheckOnDelete: jsii.Boolean(false),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html

type CfnAgent_AgentKnowledgeBaseProperty added in v2.139.0

type CfnAgent_AgentKnowledgeBaseProperty struct {
	// The description of the association between the agent and the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentknowledgebase.html#cfn-bedrock-agent-agentknowledgebase-description
	//
	Description *string `field:"required" json:"description" yaml:"description"`
	// The unique identifier of the association between the agent and the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentknowledgebase.html#cfn-bedrock-agent-agentknowledgebase-knowledgebaseid
	//
	KnowledgeBaseId *string `field:"required" json:"knowledgeBaseId" yaml:"knowledgeBaseId"`
	// Specifies whether to use the knowledge base or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentknowledgebase.html#cfn-bedrock-agent-agentknowledgebase-knowledgebasestate
	//
	KnowledgeBaseState *string `field:"optional" json:"knowledgeBaseState" yaml:"knowledgeBaseState"`
}

Contains details about a knowledge base that is associated with an agent.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

agentKnowledgeBaseProperty := &AgentKnowledgeBaseProperty{
	Description: jsii.String("description"),
	KnowledgeBaseId: jsii.String("knowledgeBaseId"),

	// the properties below are optional
	KnowledgeBaseState: jsii.String("knowledgeBaseState"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentknowledgebase.html

type CfnAgent_InferenceConfigurationProperty added in v2.139.0

type CfnAgent_InferenceConfigurationProperty struct {
	// The maximum number of tokens to allow in the generated response.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html#cfn-bedrock-agent-inferenceconfiguration-maximumlength
	//
	MaximumLength *float64 `field:"optional" json:"maximumLength" yaml:"maximumLength"`
	// A list of stop sequences.
	//
	// A stop sequence is a sequence of characters that causes the model to stop generating the response.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html#cfn-bedrock-agent-inferenceconfiguration-stopsequences
	//
	StopSequences *[]*string `field:"optional" json:"stopSequences" yaml:"stopSequences"`
	// The likelihood of the model selecting higher-probability options while generating a response.
	//
	// A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html#cfn-bedrock-agent-inferenceconfiguration-temperature
	//
	Temperature *float64 `field:"optional" json:"temperature" yaml:"temperature"`
	// While generating a response, the model determines the probability of the following token at each point of generation.
	//
	// The value that you set for `topK` is the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set `topK` to 50, the model selects the next token from among the top 50 most likely choices.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html#cfn-bedrock-agent-inferenceconfiguration-topk
	//
	TopK *float64 `field:"optional" json:"topK" yaml:"topK"`
	// While generating a response, the model determines the probability of the following token at each point of generation.
	//
	// The value that you set for `Top P` determines the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set `topP` to 80, the model only selects the next token from the top 80% of the probability distribution of next tokens.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html#cfn-bedrock-agent-inferenceconfiguration-topp
	//
	TopP *float64 `field:"optional" json:"topP" yaml:"topP"`
}

Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the `promptType` .

For more information, see [Inference parameters for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html) .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

inferenceConfigurationProperty := &InferenceConfigurationProperty{
	MaximumLength: jsii.Number(123),
	StopSequences: []*string{
		jsii.String("stopSequences"),
	},
	Temperature: jsii.Number(123),
	TopK: jsii.Number(123),
	TopP: jsii.Number(123),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-inferenceconfiguration.html

type CfnAgent_PromptConfigurationProperty added in v2.139.0

type CfnAgent_PromptConfigurationProperty struct {
	// Defines the prompt template with which to replace the default prompt template.
	//
	// You can use placeholder variables in the base prompt template to customize the prompt. For more information, see [Prompt template placeholder variables](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-placeholders.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-baseprompttemplate
	//
	BasePromptTemplate *string `field:"optional" json:"basePromptTemplate" yaml:"basePromptTemplate"`
	// Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the `promptType` .
	//
	// For more information, see [Inference parameters for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-inferenceconfiguration
	//
	InferenceConfiguration interface{} `field:"optional" json:"inferenceConfiguration" yaml:"inferenceConfiguration"`
	// Specifies whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the `promptType` .
	//
	// If you set the field as `OVERRIDEN` , the `overrideLambda` field in the [PromptOverrideConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptOverrideConfiguration.html) must be specified with the ARN of a Lambda function.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-parsermode
	//
	ParserMode *string `field:"optional" json:"parserMode" yaml:"parserMode"`
	// Specifies whether to override the default prompt template for this `promptType` .
	//
	// Set this value to `OVERRIDDEN` to use the prompt that you provide in the `basePromptTemplate` . If you leave it as `DEFAULT` , the agent uses a default prompt template.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-promptcreationmode
	//
	PromptCreationMode *string `field:"optional" json:"promptCreationMode" yaml:"promptCreationMode"`
	// Specifies whether to allow the agent to carry out the step specified in the `promptType` .
	//
	// If you set this value to `DISABLED` , the agent skips that step. The default state for each `promptType` is as follows.
	//
	// - `PRE_PROCESSING` – `ENABLED`
	// - `ORCHESTRATION` – `ENABLED`
	// - `KNOWLEDGE_BASE_RESPONSE_GENERATION` – `ENABLED`
	// - `POST_PROCESSING` – `DISABLED`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-promptstate
	//
	PromptState *string `field:"optional" json:"promptState" yaml:"promptState"`
	// The step in the agent sequence that this prompt configuration applies to.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html#cfn-bedrock-agent-promptconfiguration-prompttype
	//
	PromptType *string `field:"optional" json:"promptType" yaml:"promptType"`
}

Contains configurations to override a prompt template in one part of an agent sequence.

For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html) .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

promptConfigurationProperty := &PromptConfigurationProperty{
	BasePromptTemplate: jsii.String("basePromptTemplate"),
	InferenceConfiguration: &InferenceConfigurationProperty{
		MaximumLength: jsii.Number(123),
		StopSequences: []*string{
			jsii.String("stopSequences"),
		},
		Temperature: jsii.Number(123),
		TopK: jsii.Number(123),
		TopP: jsii.Number(123),
	},
	ParserMode: jsii.String("parserMode"),
	PromptCreationMode: jsii.String("promptCreationMode"),
	PromptState: jsii.String("promptState"),
	PromptType: jsii.String("promptType"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptconfiguration.html

type CfnAgent_PromptOverrideConfigurationProperty added in v2.139.0

type CfnAgent_PromptOverrideConfigurationProperty struct {
	// Contains configurations to override a prompt template in one part of an agent sequence.
	//
	// For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptoverrideconfiguration.html#cfn-bedrock-agent-promptoverrideconfiguration-promptconfigurations
	//
	PromptConfigurations interface{} `field:"required" json:"promptConfigurations" yaml:"promptConfigurations"`
	// The ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence.
	//
	// If you specify this field, at least one of the `promptConfigurations` must contain a `parserMode` value that is set to `OVERRIDDEN` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptoverrideconfiguration.html#cfn-bedrock-agent-promptoverrideconfiguration-overridelambda
	//
	OverrideLambda *string `field:"optional" json:"overrideLambda" yaml:"overrideLambda"`
}

Contains configurations to override prompts in different parts of an agent sequence.

For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html) .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

promptOverrideConfigurationProperty := &PromptOverrideConfigurationProperty{
	PromptConfigurations: []interface{}{
		&PromptConfigurationProperty{
			BasePromptTemplate: jsii.String("basePromptTemplate"),
			InferenceConfiguration: &InferenceConfigurationProperty{
				MaximumLength: jsii.Number(123),
				StopSequences: []*string{
					jsii.String("stopSequences"),
				},
				Temperature: jsii.Number(123),
				TopK: jsii.Number(123),
				TopP: jsii.Number(123),
			},
			ParserMode: jsii.String("parserMode"),
			PromptCreationMode: jsii.String("promptCreationMode"),
			PromptState: jsii.String("promptState"),
			PromptType: jsii.String("promptType"),
		},
	},

	// the properties below are optional
	OverrideLambda: jsii.String("overrideLambda"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-promptoverrideconfiguration.html

type CfnAgent_S3IdentifierProperty added in v2.139.0

type CfnAgent_S3IdentifierProperty struct {
	// The name of the S3 bucket.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-s3identifier.html#cfn-bedrock-agent-s3identifier-s3bucketname
	//
	S3BucketName *string `field:"optional" json:"s3BucketName" yaml:"s3BucketName"`
	// The S3 object key containing the resource.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-s3identifier.html#cfn-bedrock-agent-s3identifier-s3objectkey
	//
	S3ObjectKey *string `field:"optional" json:"s3ObjectKey" yaml:"s3ObjectKey"`
}

Contains information about the S3 object containing the resource.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

s3IdentifierProperty := &S3IdentifierProperty{
	S3BucketName: jsii.String("s3BucketName"),
	S3ObjectKey: jsii.String("s3ObjectKey"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-s3identifier.html

type CfnDataSource added in v2.139.0

type CfnDataSource interface {
	awscdk.CfnResource
	awscdk.IInspectable
	// The time at which the data source was created.
	AttrCreatedAt() *string
	// The unique identifier of the data source.
	AttrDataSourceId() *string
	// The status of the data source. The following statuses are possible:.
	//
	// - Available – The data source has been created and is ready for ingestion into the knowledge base.
	// - Deleting – The data source is being deleted.
	AttrDataSourceStatus() *string
	// The time at which the data source was last updated.
	AttrUpdatedAt() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// Contains details about how the data source is stored.
	DataSourceConfiguration() interface{}
	SetDataSourceConfiguration(val interface{})
	// The description of the data source.
	Description() *string
	SetDescription(val *string)
	// The unique identifier of the knowledge base to which the data source belongs.
	KnowledgeBaseId() *string
	SetKnowledgeBaseId(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The name of the data source.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// Contains details about the configuration of the server-side encryption.
	ServerSideEncryptionConfiguration() interface{}
	SetServerSideEncryptionConfiguration(val interface{})
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Contains details about how to ingest the documents in the data source.
	VectorIngestionConfiguration() interface{}
	SetVectorIngestionConfiguration(val interface{})
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Specifies a data source as a resource in a top-level template. Minimally, you must specify the following properties:.

- Name – Specify a name for the data source. - KnowledgeBaseId – Specify the ID of the knowledge base for the data source to belong to. - DataSourceConfiguration – Specify information about the Amazon S3 bucket containing the data source. The following sub-properties are required:

- Type – Specify the value `S3` .

For more information about setting up data sources in Amazon Bedrock , see [Set up a data source for your knowledge base](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html) .

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 "github.com/aws/aws-cdk-go/awscdk"

cfnDataSource := awscdk.Aws_bedrock.NewCfnDataSource(this, jsii.String("MyCfnDataSource"), &CfnDataSourceProps{
	DataSourceConfiguration: &DataSourceConfigurationProperty{
		S3Configuration: &S3DataSourceConfigurationProperty{
			BucketArn: jsii.String("bucketArn"),

			// the properties below are optional
			InclusionPrefixes: []*string{
				jsii.String("inclusionPrefixes"),
			},
		},
		Type: jsii.String("type"),
	},
	KnowledgeBaseId: jsii.String("knowledgeBaseId"),
	Name: jsii.String("name"),

	// the properties below are optional
	Description: jsii.String("description"),
	ServerSideEncryptionConfiguration: &ServerSideEncryptionConfigurationProperty{
		KmsKeyArn: jsii.String("kmsKeyArn"),
	},
	VectorIngestionConfiguration: &VectorIngestionConfigurationProperty{
		ChunkingConfiguration: &ChunkingConfigurationProperty{
			ChunkingStrategy: jsii.String("chunkingStrategy"),

			// the properties below are optional
			FixedSizeChunkingConfiguration: &FixedSizeChunkingConfigurationProperty{
				MaxTokens: jsii.Number(123),
				OverlapPercentage: jsii.Number(123),
			},
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html

func NewCfnDataSource added in v2.139.0

func NewCfnDataSource(scope constructs.Construct, id *string, props *CfnDataSourceProps) CfnDataSource

type CfnDataSourceProps added in v2.139.0

type CfnDataSourceProps struct {
	// Contains details about how the data source is stored.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-datasourceconfiguration
	//
	DataSourceConfiguration interface{} `field:"required" json:"dataSourceConfiguration" yaml:"dataSourceConfiguration"`
	// The unique identifier of the knowledge base to which the data source belongs.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-knowledgebaseid
	//
	KnowledgeBaseId *string `field:"required" json:"knowledgeBaseId" yaml:"knowledgeBaseId"`
	// The name of the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// The description of the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// Contains details about the configuration of the server-side encryption.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-serversideencryptionconfiguration
	//
	ServerSideEncryptionConfiguration interface{} `field:"optional" json:"serverSideEncryptionConfiguration" yaml:"serverSideEncryptionConfiguration"`
	// Contains details about how to ingest the documents in the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-vectoringestionconfiguration
	//
	VectorIngestionConfiguration interface{} `field:"optional" json:"vectorIngestionConfiguration" yaml:"vectorIngestionConfiguration"`
}

Properties for defining a `CfnDataSource`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnDataSourceProps := &CfnDataSourceProps{
	DataSourceConfiguration: &DataSourceConfigurationProperty{
		S3Configuration: &S3DataSourceConfigurationProperty{
			BucketArn: jsii.String("bucketArn"),

			// the properties below are optional
			InclusionPrefixes: []*string{
				jsii.String("inclusionPrefixes"),
			},
		},
		Type: jsii.String("type"),
	},
	KnowledgeBaseId: jsii.String("knowledgeBaseId"),
	Name: jsii.String("name"),

	// the properties below are optional
	Description: jsii.String("description"),
	ServerSideEncryptionConfiguration: &ServerSideEncryptionConfigurationProperty{
		KmsKeyArn: jsii.String("kmsKeyArn"),
	},
	VectorIngestionConfiguration: &VectorIngestionConfigurationProperty{
		ChunkingConfiguration: &ChunkingConfigurationProperty{
			ChunkingStrategy: jsii.String("chunkingStrategy"),

			// the properties below are optional
			FixedSizeChunkingConfiguration: &FixedSizeChunkingConfigurationProperty{
				MaxTokens: jsii.Number(123),
				OverlapPercentage: jsii.Number(123),
			},
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html

type CfnDataSource_ChunkingConfigurationProperty added in v2.139.0

type CfnDataSource_ChunkingConfigurationProperty struct {
	// Knowledge base can split your source data into chunks.
	//
	// A *chunk* refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for `NONE` , then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.
	//
	// - `FIXED_SIZE` – Amazon Bedrock splits your source data into chunks of the approximate size that you set in the `fixedSizeChunkingConfiguration` .
	// - `NONE` – Amazon Bedrock treats each file as one chunk. If you choose this option, you may want to pre-process your documents by splitting them into separate files.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-chunkingconfiguration.html#cfn-bedrock-datasource-chunkingconfiguration-chunkingstrategy
	//
	ChunkingStrategy *string `field:"required" json:"chunkingStrategy" yaml:"chunkingStrategy"`
	// Configurations for when you choose fixed-size chunking.
	//
	// If you set the `chunkingStrategy` as `NONE` , exclude this field.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-chunkingconfiguration.html#cfn-bedrock-datasource-chunkingconfiguration-fixedsizechunkingconfiguration
	//
	FixedSizeChunkingConfiguration interface{} `field:"optional" json:"fixedSizeChunkingConfiguration" yaml:"fixedSizeChunkingConfiguration"`
}

Details about how to chunk the documents in the data source.

A *chunk* refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

chunkingConfigurationProperty := &ChunkingConfigurationProperty{
	ChunkingStrategy: jsii.String("chunkingStrategy"),

	// the properties below are optional
	FixedSizeChunkingConfiguration: &FixedSizeChunkingConfigurationProperty{
		MaxTokens: jsii.Number(123),
		OverlapPercentage: jsii.Number(123),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-chunkingconfiguration.html

type CfnDataSource_DataSourceConfigurationProperty added in v2.139.0

type CfnDataSource_DataSourceConfigurationProperty struct {
	// Contains details about the configuration of the S3 object containing the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-datasourceconfiguration.html#cfn-bedrock-datasource-datasourceconfiguration-s3configuration
	//
	S3Configuration interface{} `field:"required" json:"s3Configuration" yaml:"s3Configuration"`
	// The type of storage for the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-datasourceconfiguration.html#cfn-bedrock-datasource-datasourceconfiguration-type
	//
	Type *string `field:"required" json:"type" yaml:"type"`
}

Contains details about how a data source is stored.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

dataSourceConfigurationProperty := &DataSourceConfigurationProperty{
	S3Configuration: &S3DataSourceConfigurationProperty{
		BucketArn: jsii.String("bucketArn"),

		// the properties below are optional
		InclusionPrefixes: []*string{
			jsii.String("inclusionPrefixes"),
		},
	},
	Type: jsii.String("type"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-datasourceconfiguration.html

type CfnDataSource_FixedSizeChunkingConfigurationProperty added in v2.139.0

type CfnDataSource_FixedSizeChunkingConfigurationProperty struct {
	// The maximum number of tokens to include in a chunk.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-fixedsizechunkingconfiguration.html#cfn-bedrock-datasource-fixedsizechunkingconfiguration-maxtokens
	//
	MaxTokens *float64 `field:"required" json:"maxTokens" yaml:"maxTokens"`
	// The percentage of overlap between adjacent chunks of a data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-fixedsizechunkingconfiguration.html#cfn-bedrock-datasource-fixedsizechunkingconfiguration-overlappercentage
	//
	OverlapPercentage *float64 `field:"required" json:"overlapPercentage" yaml:"overlapPercentage"`
}

Configurations for when you choose fixed-size chunking.

If you set the `chunkingStrategy` as `NONE` , exclude this field.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

fixedSizeChunkingConfigurationProperty := &FixedSizeChunkingConfigurationProperty{
	MaxTokens: jsii.Number(123),
	OverlapPercentage: jsii.Number(123),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-fixedsizechunkingconfiguration.html

type CfnDataSource_S3DataSourceConfigurationProperty added in v2.139.0

type CfnDataSource_S3DataSourceConfigurationProperty struct {
	// The Amazon Resource Name (ARN) of the bucket that contains the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-bucketarn
	//
	BucketArn *string `field:"required" json:"bucketArn" yaml:"bucketArn"`
	// A list of S3 prefixes that define the object containing the data sources.
	//
	// For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-inclusionprefixes
	//
	InclusionPrefixes *[]*string `field:"optional" json:"inclusionPrefixes" yaml:"inclusionPrefixes"`
}

Contains information about the S3 configuration of the data source.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

s3DataSourceConfigurationProperty := &S3DataSourceConfigurationProperty{
	BucketArn: jsii.String("bucketArn"),

	// the properties below are optional
	InclusionPrefixes: []*string{
		jsii.String("inclusionPrefixes"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html

type CfnDataSource_ServerSideEncryptionConfigurationProperty added in v2.139.0

type CfnDataSource_ServerSideEncryptionConfigurationProperty struct {
	// The Amazon Resource Name (ARN) of the AWS KMS key used to encrypt the resource.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-serversideencryptionconfiguration.html#cfn-bedrock-datasource-serversideencryptionconfiguration-kmskeyarn
	//
	KmsKeyArn *string `field:"optional" json:"kmsKeyArn" yaml:"kmsKeyArn"`
}

Contains the configuration for server-side encryption.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

serverSideEncryptionConfigurationProperty := &ServerSideEncryptionConfigurationProperty{
	KmsKeyArn: jsii.String("kmsKeyArn"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-serversideencryptionconfiguration.html

type CfnDataSource_VectorIngestionConfigurationProperty added in v2.139.0

type CfnDataSource_VectorIngestionConfigurationProperty struct {
	// Details about how to chunk the documents in the data source.
	//
	// A *chunk* refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-vectoringestionconfiguration.html#cfn-bedrock-datasource-vectoringestionconfiguration-chunkingconfiguration
	//
	ChunkingConfiguration interface{} `field:"optional" json:"chunkingConfiguration" yaml:"chunkingConfiguration"`
}

Contains details about how to ingest the documents in a data source.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

vectorIngestionConfigurationProperty := &VectorIngestionConfigurationProperty{
	ChunkingConfiguration: &ChunkingConfigurationProperty{
		ChunkingStrategy: jsii.String("chunkingStrategy"),

		// the properties below are optional
		FixedSizeChunkingConfiguration: &FixedSizeChunkingConfigurationProperty{
			MaxTokens: jsii.Number(123),
			OverlapPercentage: jsii.Number(123),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-vectoringestionconfiguration.html

type CfnKnowledgeBase added in v2.139.0

type CfnKnowledgeBase interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggableV2
	// The time at which the knowledge base was created.
	AttrCreatedAt() *string
	// A list of reasons that the API operation on the knowledge base failed.
	AttrFailureReasons() *[]*string
	// The Amazon Resource Name (ARN) of the knowledge base.
	AttrKnowledgeBaseArn() *string
	// The unique identifier of the knowledge base.
	AttrKnowledgeBaseId() *string
	// The status of the knowledge base.
	AttrStatus() *string
	// The time at which the knowledge base was last updated.
	AttrUpdatedAt() *string
	// Tag Manager which manages the tags for this resource.
	CdkTagManager() awscdk.TagManager
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The description of the knowledge base.
	Description() *string
	SetDescription(val *string)
	// Contains details about the embeddings configuration of the knowledge base.
	KnowledgeBaseConfiguration() interface{}
	SetKnowledgeBaseConfiguration(val interface{})
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The name of the knowledge base.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
	RoleArn() *string
	SetRoleArn(val *string)
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Metadata that you can assign to a resource as key-value pairs.
	//
	// For more information, see the following resources:.
	Tags() *map[string]*string
	SetTags(val *map[string]*string)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

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](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html) . - 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](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.html) .

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 "github.com/aws/aws-cdk-go/awscdk"

cfnKnowledgeBase := awscdk.Aws_bedrock.NewCfnKnowledgeBase(this, jsii.String("MyCfnKnowledgeBase"), &CfnKnowledgeBaseProps{
	KnowledgeBaseConfiguration: &KnowledgeBaseConfigurationProperty{
		Type: jsii.String("type"),
		VectorKnowledgeBaseConfiguration: &VectorKnowledgeBaseConfigurationProperty{
			EmbeddingModelArn: jsii.String("embeddingModelArn"),
		},
	},
	Name: jsii.String("name"),
	RoleArn: jsii.String("roleArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html

func NewCfnKnowledgeBase added in v2.139.0

func NewCfnKnowledgeBase(scope constructs.Construct, id *string, props *CfnKnowledgeBaseProps) CfnKnowledgeBase

type CfnKnowledgeBaseProps added in v2.139.0

type CfnKnowledgeBaseProps struct {
	// Contains details about the embeddings configuration of the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration
	//
	KnowledgeBaseConfiguration interface{} `field:"required" json:"knowledgeBaseConfiguration" yaml:"knowledgeBaseConfiguration"`
	// The name of the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-rolearn
	//
	RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"`
	// The description of the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:.
	//
	// - [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions)
	// - [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices)
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-tags
	//
	Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnKnowledgeBase`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnKnowledgeBaseProps := &CfnKnowledgeBaseProps{
	KnowledgeBaseConfiguration: &KnowledgeBaseConfigurationProperty{
		Type: jsii.String("type"),
		VectorKnowledgeBaseConfiguration: &VectorKnowledgeBaseConfigurationProperty{
			EmbeddingModelArn: jsii.String("embeddingModelArn"),
		},
	},
	Name: jsii.String("name"),
	RoleArn: jsii.String("roleArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html

type CfnKnowledgeBase_KnowledgeBaseConfigurationProperty added in v2.139.0

type CfnKnowledgeBase_KnowledgeBaseConfigurationProperty struct {
	// The type of data that the data source is converted into for the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type
	//
	Type *string `field:"required" json:"type" yaml:"type"`
	// Contains details about the embeddings model that'sused to convert the data source.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration
	//
	VectorKnowledgeBaseConfiguration interface{} `field:"required" json:"vectorKnowledgeBaseConfiguration" yaml:"vectorKnowledgeBaseConfiguration"`
}

Contains details about the embeddings configuration of the knowledge base.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

knowledgeBaseConfigurationProperty := &KnowledgeBaseConfigurationProperty{
	Type: jsii.String("type"),
	VectorKnowledgeBaseConfiguration: &VectorKnowledgeBaseConfigurationProperty{
		EmbeddingModelArn: jsii.String("embeddingModelArn"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html

type CfnKnowledgeBase_VectorKnowledgeBaseConfigurationProperty added in v2.139.0

type CfnKnowledgeBase_VectorKnowledgeBaseConfigurationProperty struct {
	// The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn
	//
	EmbeddingModelArn *string `field:"required" json:"embeddingModelArn" yaml:"embeddingModelArn"`
}

Contains details about the model used to create vector embeddings for the knowledge base.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

vectorKnowledgeBaseConfigurationProperty := &VectorKnowledgeBaseConfigurationProperty{
	EmbeddingModelArn: jsii.String("embeddingModelArn"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html

type FoundationModel

type FoundationModel interface {
	IModel
	// The foundation model ARN.
	ModelArn() *string
	// The foundation model ID.
	//
	// Example:
	//   "amazon.titan-text-express-v1"
	//
	ModelId() *string
}

A Bedrock base foundation model.

Example:

import "github.com/aws/aws-cdk-go/awscdk"

bedrock.FoundationModel_FromFoundationModelId(this, jsii.String("Model"), bedrock.FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2())

See: https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html

func FoundationModel_FromFoundationModelId

func FoundationModel_FromFoundationModelId(scope constructs.Construct, _id *string, foundationModelId FoundationModelIdentifier) FoundationModel

Construct a Bedrock base foundation model given the model identifier.

Returns: A Bedrock base foundation model. See: https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids-arns.html

type FoundationModelIdentifier

type FoundationModelIdentifier interface {
	// the model identifier.
	ModelId() *string
}

The model identifiers for the Bedrock base foundation models.

Example:

import "github.com/aws/aws-cdk-go/awscdk"

bedrock.FoundationModel_FromFoundationModelId(this, jsii.String("Model"), bedrock.FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2())

See: https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html

func FoundationModelIdentifier_AI21_J2_GRANDE_INSTRUCT added in v2.134.0

func FoundationModelIdentifier_AI21_J2_GRANDE_INSTRUCT() FoundationModelIdentifier

func FoundationModelIdentifier_AI21_J2_JUMBO_INSTRUCT added in v2.134.0

func FoundationModelIdentifier_AI21_J2_JUMBO_INSTRUCT() FoundationModelIdentifier

func FoundationModelIdentifier_AI21_J2_MID added in v2.134.0

func FoundationModelIdentifier_AI21_J2_MID() FoundationModelIdentifier

func FoundationModelIdentifier_AI21_J2_ULTRA added in v2.134.0

func FoundationModelIdentifier_AI21_J2_ULTRA() FoundationModelIdentifier

func FoundationModelIdentifier_AI21_LABS_JURASSIC_2_MID_V1

func FoundationModelIdentifier_AI21_LABS_JURASSIC_2_MID_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AI21_LABS_JURASSIC_2_ULTRA_V1

func FoundationModelIdentifier_AI21_LABS_JURASSIC_2_ULTRA_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_EMBEDDINGS_G1_TEXT_V1

func FoundationModelIdentifier_AMAZON_TITAN_EMBEDDINGS_G1_TEXT_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_G1_TEXT_02 added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_G1_TEXT_02() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_IMAGE_V1_0 added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_IMAGE_V1_0() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_TEXT_V1_2_8K added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_EMBED_TEXT_V1_2_8K() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_IMAGE_GENERATOR_G1_V1

func FoundationModelIdentifier_AMAZON_TITAN_IMAGE_GENERATOR_G1_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_IMAGE_GENERATOR_V1_0 added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_IMAGE_GENERATOR_V1_0() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_MULTIMODAL_EMBEDDINGS_G1_V1

func FoundationModelIdentifier_AMAZON_TITAN_MULTIMODAL_EMBEDDINGS_G1_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_EXPRESS_V1_0_8K added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_EXPRESS_V1_0_8K() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_G1_EXPRESS_V1

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_G1_EXPRESS_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_LITE_V1 added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_LITE_V1() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_LITE_V1_0_4K added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_TEXT_LITE_V1_0_4K() FoundationModelIdentifier

func FoundationModelIdentifier_AMAZON_TITAN_TG1_LARGE added in v2.134.0

func FoundationModelIdentifier_AMAZON_TITAN_TG1_LARGE() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0 added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0_200K added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0_200K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0_48K added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_HAIKU_20240307_V1_0_48K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_OPUS_20240229_V1_0 added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_OPUS_20240229_V1_0() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0 added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0_200K added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0_200K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0_28K added in v2.139.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_3_SONNET_20240229_V1_0_28K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_INSTANT_V1

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_INSTANT_V1() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_INSTANT_V1_2_100K added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_INSTANT_V1_2_100K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V1

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V1() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_0_100K added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_0_100K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_0_18K added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_0_18K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1_18K added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1_18K() FoundationModelIdentifier

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1_200K added in v2.134.0

func FoundationModelIdentifier_ANTHROPIC_CLAUDE_V2_1_200K() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_COMMAND_LIGHT_TEXT_V14_7_4K added in v2.134.0

func FoundationModelIdentifier_COHERE_COMMAND_LIGHT_TEXT_V14_7_4K() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_COMMAND_LIGHT_V14

func FoundationModelIdentifier_COHERE_COMMAND_LIGHT_V14() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_COMMAND_TEXT_V14_7_4K added in v2.134.0

func FoundationModelIdentifier_COHERE_COMMAND_TEXT_V14_7_4K() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_COMMAND_V14

func FoundationModelIdentifier_COHERE_COMMAND_V14() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_EMBED_ENGLISH_V3

func FoundationModelIdentifier_COHERE_EMBED_ENGLISH_V3() FoundationModelIdentifier

func FoundationModelIdentifier_COHERE_EMBED_MULTILINGUAL_V3

func FoundationModelIdentifier_COHERE_EMBED_MULTILINGUAL_V3() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_13B_CHAT_V1_0_4K added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_13B_CHAT_V1_0_4K() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_13B_V1 added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_13B_V1() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_13B_V1_0_4K added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_13B_V1_0_4K() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_70B_CHAT_V1_0_4K added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_70B_CHAT_V1_0_4K() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_70B_V1 added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_70B_V1() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_70B_V1_0_4K added in v2.134.0

func FoundationModelIdentifier_META_LLAMA_2_70B_V1_0_4K() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_CHAT_13B_V1

func FoundationModelIdentifier_META_LLAMA_2_CHAT_13B_V1() FoundationModelIdentifier

func FoundationModelIdentifier_META_LLAMA_2_CHAT_70B_V1

func FoundationModelIdentifier_META_LLAMA_2_CHAT_70B_V1() FoundationModelIdentifier

func FoundationModelIdentifier_MISTRAL_MISTRAL_7B_INSTRUCT_V0_2 added in v2.134.0

func FoundationModelIdentifier_MISTRAL_MISTRAL_7B_INSTRUCT_V0_2() FoundationModelIdentifier

func FoundationModelIdentifier_MISTRAL_MIXTRAL_8X7B_INSTRUCT_V0_1 added in v2.134.0

func FoundationModelIdentifier_MISTRAL_MIXTRAL_8X7B_INSTRUCT_V0_1() FoundationModelIdentifier

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL added in v2.134.0

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL() FoundationModelIdentifier

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V0 added in v2.130.0

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V0() FoundationModelIdentifier

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V1 added in v2.130.0

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V1() FoundationModelIdentifier

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V1_0 added in v2.134.0

func FoundationModelIdentifier_STABILITY_STABLE_DIFFUSION_XL_V1_0() FoundationModelIdentifier

func NewFoundationModelIdentifier

func NewFoundationModelIdentifier(modelId *string) FoundationModelIdentifier

Constructor for foundation model identifier.

type IModel

Represents a Bedrock model.

The model could be a foundation model, a custom model, or a provisioned model.

func ProvisionedModel_FromProvisionedModelArn

func ProvisionedModel_FromProvisionedModelArn(_scope constructs.Construct, _id *string, provisionedModelArn *string) IModel

Import an provisioned model given an ARN.

type ProvisionedModel

type ProvisionedModel interface {
	IModel
	// The ARN of the provisioned model.
	ModelArn() *string
}

A Bedrock provisioned model.

Note: CloudFormation does not currently support creating Bedrock Provisioned Throughput resources outside of a custom resource. You can import provisioned models created by provisioning throughput in Bedrock outside the CDK or via a custom resource with {@link ProvisionedModel#fromProvisionedModelArn }.

Example:

import bedrock "github.com/aws/aws-cdk-go/awscdk"

bedrock.ProvisionedModel_FromProvisionedModelArn(this, jsii.String("Model"), jsii.String("arn:aws:bedrock:us-east-2:123456789012:provisioned-model/abc-123"))

See: https://docs.aws.amazon.com/bedrock/latest/userguide/prov-throughput.html

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL