Experimental
@aws-cdk/aws-bedrock-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.
FunctionToolProps Struct
Properties for creating a function tool.
Example
ts
const cmk = new kms.Key(this, 'cmk', {});
const variantChat = bedrock.PromptVariant.chat({
variantName: 'variant1',
model: bedrock.BedrockFoundationModel.ANTHROPIC_CLAUDE_3_5_SONNET_V1_0,
messages: [
bedrock.ChatMessage.user('From now on, you speak Japanese!'),
bedrock.ChatMessage.assistant('Konnichiwa!'),
bedrock.ChatMessage.user('From now on, you speak {{language}}!'),
],
system: 'You are a helpful assistant that only speaks the language you`re told.',
promptVariables: ['language'],
toolConfiguration: {
toolChoice: bedrock.ToolChoice.AUTO,
tools: [
bedrock.Tool.function({
name: 'top_song',
description: 'Get the most popular song played on a radio station.',
inputSchema: {
type: 'object',
properties: {
sign: {
type: 'string',
description: 'The call sign for the radio station for which you want the most popular song. Example calls signs are WZPZ and WKR.',
},
},
required: ['sign'],
},
}),
],
},
});
new bedrock.Prompt(this, 'prompt1', {
promptName: 'prompt-chat',
description: 'my first chat prompt',
defaultVariant: variantChat,
variants: [variantChat],
kmsKey: cmk,
});
Properties
A description of what the function does.
The input schema for the function parameters.
The name of the function.