> **Experimental**
>
> `@aws-cdk/aws-bedrock-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# AgentPromptVariantProps

Properties for creating an agent prompt variant.

Extends: AgentPromptVariantProps
Extends: CommonPromptVariantProps

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`bedrock/prompts/agent-prompt-variant.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-bedrock-alpha/bedrock/prompts/agent-prompt-variant.ts#L12)

## Example

```ts
const cmk = new kms.Key(this, 'cmk', {});

// Assuming you have an existing agent and alias
const agent = bedrock.Agent.fromAgentAttributes(this, 'ImportedAgent', {
  agentArn: 'arn:aws:bedrock:region:account:agent/agent-id',
  roleArn: 'arn:aws:iam::account:role/agent-role',
});

const agentAlias = bedrock.AgentAlias.fromAttributes(this, 'ImportedAlias', {
  aliasId: 'alias-id',
  aliasName: 'my-alias',
  agentVersion: '1',
  agent: agent,
});

const agentVariant = bedrock.PromptVariant.agent({
  variantName: 'agent-variant',
  model: bedrock.BedrockFoundationModel.ANTHROPIC_CLAUDE_3_5_SONNET_V1_0,
  agentAlias: agentAlias,
  promptText: 'Use the agent to help with: {{task}}. Please be thorough and provide detailed explanations.',
  promptVariables: ['task'],
});

new bedrock.Prompt(this, 'agentPrompt', {
  promptName: 'agent-prompt',
  description: 'Prompt for agent interactions',
  defaultVariant: agentVariant,
  variants: [agentVariant],
  kmsKey: cmk,
});
```

## Properties

- `agentAlias`: [IAgentAlias](/cdk/api/v2/docs/@aws-cdk_aws-bedrock-alpha.IAgentAlias.html) (required) — An alias pointing to the agent version to be used.

- `model`: [IBedrockInvokable](/cdk/api/v2/docs/@aws-cdk_aws-bedrock-alpha.IBedrockInvokable.html) (required) — The model which is used to run the prompt.

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

- `promptText`: string (required) — The text prompt.

  Variables are used by enclosing its name with double curly braces
  as in `{{variable_name}}`.

- `promptVariables`: string[] — The variables in the prompt template that can be filled in at runtime.

  **Default:** No variables defined.

- `variantName`: string (required) — The name of the prompt variant.
