Skip to content

Commit c529758

Browse files
authored
feat(bedrock): add prompt chat templates (#876)
1 parent ceb8f13 commit c529758

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1719
-301
lines changed

.gitignore

+8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.npmignore

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.projen/deps.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.projen/tasks.json

+69
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.projenrc.ts

+103-44
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,17 @@ import {
2929
const GITHUB_USER = 'awslabs';
3030
const PUBLICATION_NAMESPACE = 'cdklabs';
3131
const PROJECT_NAME = 'generative-ai-cdk-constructs';
32-
const CDK_VERSION: string = '2.166.0';
32+
const CDK_VERSION: string = '2.174.0';
3333

3434
function camelCaseIt(input: string): string {
3535
// Hypens and dashes to spaces and then CamelCase...
36-
return input.replace(/-/g, ' ').replace(/_/g, ' ').replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, _) { if (+match === 0) return ''; return match.toUpperCase(); });
36+
return input
37+
.replace(/-/g, ' ')
38+
.replace(/_/g, ' ')
39+
.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, _) {
40+
if (+match === 0) return '';
41+
return match.toUpperCase();
42+
});
3743
}
3844

3945
const project = new awscdk.AwsCdkConstructLibrary({
@@ -65,14 +71,8 @@ const project = new awscdk.AwsCdkConstructLibrary({
6571
'@aws-cdk/assert',
6672
`@aws-cdk/integ-tests-alpha@${CDK_VERSION}-alpha.0`,
6773
],
68-
deps: [
69-
'cdk-nag',
70-
71-
72-
],
73-
bundledDeps: [
74-
'deepmerge',
75-
],
74+
deps: ['cdk-nag'],
75+
bundledDeps: ['deepmerge'],
7676
// Keep synchronized with https://github.com/nodejs/release#release-schedule
7777
minNodeVersion: '18.12.0', // 'MAINTENANCE' (first LTS)
7878
maxNodeVersion: '20.x', // 'CURRENT'
@@ -83,7 +83,7 @@ const project = new awscdk.AwsCdkConstructLibrary({
8383

8484
publishToPypi: {
8585
distName: PUBLICATION_NAMESPACE + '.' + PROJECT_NAME,
86-
module: (PUBLICATION_NAMESPACE.replace(/-/g, '_')) + '.' + (PROJECT_NAME.replace(/-/g, '_')), // PEP 8, convert hypens
86+
module: PUBLICATION_NAMESPACE.replace(/-/g, '_') + '.' + PROJECT_NAME.replace(/-/g, '_'), // PEP 8, convert hypens
8787
// twineRegistryUrl: '${{ secrets.TWINE_REGISTRY_URL }}',
8888
},
8989

@@ -109,7 +109,8 @@ const project = new awscdk.AwsCdkConstructLibrary({
109109

110110
githubOptions: {
111111
pullRequestLintOptions: {
112-
contributorStatement: 'By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.',
112+
contributorStatement:
113+
'By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.',
113114
contributorStatementOptions: {
114115
exemptUsers: [
115116
'amazon-auto',
@@ -127,15 +128,7 @@ const project = new awscdk.AwsCdkConstructLibrary({
127128
license: 'Apache-2.0',
128129
copyrightPeriod: '2023-',
129130
copyrightOwner: 'Amazon.com, Inc. or its affiliates. All Rights Reserved.',
130-
gitignore: [
131-
'*.DS_STORE',
132-
'!.node-version',
133-
'*.pyc',
134-
'__pycache__/',
135-
'!.ort.yml',
136-
'.idea',
137-
'.vscode',
138-
],
131+
gitignore: ['*.DS_STORE', '!.node-version', '*.pyc', '__pycache__/', '!.ort.yml', '.idea', '.vscode'],
139132
stability: 'experimental',
140133
sampleCode: false,
141134
stale: true,
@@ -164,16 +157,23 @@ if (workflowUpgradeMain) {
164157
}
165158

166159
// Update Snapshots
167-
project.upgradeWorkflow?.postUpgradeTask.spawn(
168-
project.tasks.tryFind('integ:snapshot-all')!,
169-
);
160+
project.upgradeWorkflow?.postUpgradeTask.spawn(project.tasks.tryFind('integ:snapshot-all')!);
170161

171162
// Add specific overrides https://projen.io/docs/integrations/github/#actions-versions
172163
project.github?.actions.set('actions/checkout@v3', 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'); // https://github.com/projen/projen/issues/3529
173164
project.github?.actions.set('actions/checkout@v4', 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11');
174-
project.github?.actions.set('actions/download-artifact@v3', 'actions/download-artifact@b4aefff88e83a2676a730654e1ce3dce61880379'); // https://github.com/projen/projen/issues/3529
175-
project.github?.actions.set('actions/download-artifact@v4', 'actions/download-artifact@b4aefff88e83a2676a730654e1ce3dce61880379');
176-
project.github?.actions.set('actions/github-script@v6', 'actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410');
165+
project.github?.actions.set(
166+
'actions/download-artifact@v3',
167+
'actions/download-artifact@b4aefff88e83a2676a730654e1ce3dce61880379',
168+
); // https://github.com/projen/projen/issues/3529
169+
project.github?.actions.set(
170+
'actions/download-artifact@v4',
171+
'actions/download-artifact@b4aefff88e83a2676a730654e1ce3dce61880379',
172+
);
173+
project.github?.actions.set(
174+
'actions/github-script@v6',
175+
'actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410',
176+
);
177177
project.github?.actions.set('actions/setup-dotnet@v3', 'actions/setup-dotnet@4d6c8fcf3c8f7a60068d26b594648e99df24cee3');
178178
project.github?.actions.set('actions/setup-dotnet@v4', 'actions/setup-dotnet@4d6c8fcf3c8f7a60068d26b594648e99df24cee3');
179179
project.github?.actions.set('actions/setup-go@v5', 'actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32');
@@ -184,22 +184,67 @@ project.github?.actions.set('actions/setup-python@v5', 'actions/setup-python@82c
184184
project.github?.actions.set('actions/setup-java@v3', 'actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9');
185185
project.github?.actions.set('actions/setup-java@v4', 'actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9');
186186
project.github?.actions.set('actions/stale@v4', 'actions/stale@a20b814fb01b71def3bd6f56e7494d667ddf28da');
187-
project.github?.actions.set('actions/upload-artifact@v3', 'actions/upload-artifact@18bf333cd2249fbbbdb605fd9d9ed57efd7adf34'); // https://github.com/projen/projen/issues/3529
188-
project.github?.actions.set('actions/upload-artifact@v4', 'actions/upload-artifact@18bf333cd2249fbbbdb605fd9d9ed57efd7adf34');
189-
project.github?.actions.set('amannn/[email protected]', 'amannn/action-semantic-pull-request@01d5fd8a8ebb9aafe902c40c53f0f4744f7381eb');
190-
project.github?.actions.set('amannn/[email protected]', 'amannn/action-semantic-pull-request@e9fabac35e210fea40ca5b14c0da95a099eff26f');
191-
project.github?.actions.set('aws-github-ops/github-merit-badger@main', 'aws-github-ops/github-merit-badger@70d1c47f7051d6e324d4ddc48d676ba61ef69a3e');
192-
project.github?.actions.set('codecov/codecov-action@v3', 'codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed'); // https://github.com/projen/projen/issues/3529
193-
project.github?.actions.set('codecov/codecov-action@v4', 'codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed');
187+
project.github?.actions.set(
188+
'actions/upload-artifact@v3',
189+
'actions/upload-artifact@18bf333cd2249fbbbdb605fd9d9ed57efd7adf34',
190+
); // https://github.com/projen/projen/issues/3529
191+
project.github?.actions.set(
192+
'actions/upload-artifact@v4',
193+
'actions/upload-artifact@18bf333cd2249fbbbdb605fd9d9ed57efd7adf34',
194+
);
195+
project.github?.actions.set(
196+
197+
'amannn/action-semantic-pull-request@01d5fd8a8ebb9aafe902c40c53f0f4744f7381eb',
198+
);
199+
project.github?.actions.set(
200+
201+
'amannn/action-semantic-pull-request@e9fabac35e210fea40ca5b14c0da95a099eff26f',
202+
);
203+
project.github?.actions.set(
204+
'aws-github-ops/github-merit-badger@main',
205+
'aws-github-ops/github-merit-badger@70d1c47f7051d6e324d4ddc48d676ba61ef69a3e',
206+
);
207+
project.github?.actions.set(
208+
'codecov/codecov-action@v3',
209+
'codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed',
210+
); // https://github.com/projen/projen/issues/3529
211+
project.github?.actions.set(
212+
'codecov/codecov-action@v4',
213+
'codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed',
214+
);
194215
project.github?.actions.set('github/issue-metrics@v2', 'github/issue-metrics@6bc5254e72971dbb7462db077779f1643f772afd');
195-
project.github?.actions.set('hmarr/[email protected]', 'hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363');
196-
project.github?.actions.set('minicli/[email protected]', 'minicli/action-contributors@20ec03af008cb51110a3137fbf77f59a4fd7ff5a');
197-
project.github?.actions.set('oss-review-toolkit/ort-ci-github-action@v1', 'oss-review-toolkit/ort-ci-github-action@7f23c1f8d169dad430e41df223d3b8409c7a156e');
198-
project.github?.actions.set('peter-evans/create-issue-from-file@v4', 'peter-evans/create-issue-from-file@433e51abf769039ee20ba1293a088ca19d573b7f');
199-
project.github?.actions.set('peter-evans/create-pull-request@v4', 'peter-evans/create-pull-request@38e0b6e68b4c852a5500a94740f0e535e0d7ba54');
200-
project.github?.actions.set('peter-evans/create-pull-request@v5', 'peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38');
201-
project.github?.actions.set('peter-evans/create-pull-request@v6', 'peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50');
202-
project.github?.actions.set('aws-actions/[email protected]', 'aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502');
216+
project.github?.actions.set(
217+
218+
'hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363',
219+
);
220+
project.github?.actions.set(
221+
'minicli/[email protected]',
222+
'minicli/action-contributors@20ec03af008cb51110a3137fbf77f59a4fd7ff5a',
223+
);
224+
project.github?.actions.set(
225+
'oss-review-toolkit/ort-ci-github-action@v1',
226+
'oss-review-toolkit/ort-ci-github-action@7f23c1f8d169dad430e41df223d3b8409c7a156e',
227+
);
228+
project.github?.actions.set(
229+
'peter-evans/create-issue-from-file@v4',
230+
'peter-evans/create-issue-from-file@433e51abf769039ee20ba1293a088ca19d573b7f',
231+
);
232+
project.github?.actions.set(
233+
'peter-evans/create-pull-request@v4',
234+
'peter-evans/create-pull-request@38e0b6e68b4c852a5500a94740f0e535e0d7ba54',
235+
);
236+
project.github?.actions.set(
237+
'peter-evans/create-pull-request@v5',
238+
'peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38',
239+
);
240+
project.github?.actions.set(
241+
'peter-evans/create-pull-request@v6',
242+
'peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50',
243+
);
244+
project.github?.actions.set(
245+
'aws-actions/[email protected]',
246+
'aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502',
247+
);
203248
project.github?.actions.set('imjohnbo/issue-bot@v3', 'imjohnbo/issue-bot@3daae12aa54d38685d7ff8459fc8a2aee8cea98b');
204249

205250
// We don't want to package certain things
@@ -240,7 +285,19 @@ project.eslint?.addIgnorePattern('DockerLambdaCustomProps.ts');
240285
new ProjenStruct(project, { name: 'DockerLambdaCustomProps', filePath: 'src/common/props/DockerLambdaCustomProps.ts' })
241286
.mixin(Struct.fromFqn('aws-cdk-lib.aws_lambda.DockerImageFunctionProps'))
242287
.withoutDeprecated()
243-
.omit('tracing', 'functionName', 'description', 'role', 'vpc', 'vpcSubnets', 'securityGroups', 'role', 'layers', 'allowPublicSubnet', 'allowAllOutbound');
288+
.omit(
289+
'tracing',
290+
'functionName',
291+
'description',
292+
'role',
293+
'vpc',
294+
'vpcSubnets',
295+
'securityGroups',
296+
'role',
297+
'layers',
298+
'allowPublicSubnet',
299+
'allowAllOutbound',
300+
);
244301

245302
const packageJson = project.tryFindObjectFile('package.json');
246303
packageJson?.patch(JsonPatch.add('/scripts/prepare', 'husky install')); // yarn 1
@@ -274,7 +331,9 @@ project.addTask('generate-models-containers', {
274331

275332
const postCompile = project.tasks.tryFind('post-compile');
276333
if (postCompile) {
277-
postCompile.exec('npx typedoc --plugin typedoc-plugin-markdown --out apidocs --readme none --categoryOrder "Namespaces,Classes,Interfaces,*" --disableSources ./src/index.ts');
334+
postCompile.exec(
335+
'npx typedoc --plugin typedoc-plugin-markdown --out apidocs --readme none --categoryOrder "Namespaces,Classes,Interfaces,*" --disableSources ./src/index.ts',
336+
);
278337
}
279338

280339
project.synth();

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# CDK Generative AI Constructs V0.1.289 (2025-01-08)
2+
3+
Based on CDK library version 2.174.0
4+
15
# CDK Generative AI Constructs V0.1.283 (2024-11-20)
26

37
Based on CDK library version 2.166.0

DEVELOPER_GUIDE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Default output format [None]: json
1616
```
1717

1818
- [Node](https://nodejs.org/en) >= v20.9.0
19-
- [AWS CDK](https://github.com/aws/aws-cdk/releases/tag/v2.166.0) >= 2.166.0
19+
- [AWS CDK](https://github.com/aws/aws-cdk/releases/tag/v2.174.0) >= 2.174.0
2020
- [Python](https://www.python.org/downloads/) >=3.9
2121
- [Projen](https://github.com/projen/projen) >= 0.78.8
2222
- [Yarn](https://classic.yarnpkg.com/lang/en/docs/cli/install/) >= 1.22.19

apidocs/interfaces/DockerLambdaCustomProps.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -669,7 +669,7 @@ stable
669669
> `readonly` `optional` **snapStart**: `SnapStartConf`
670670
671671
Enable SnapStart for Lambda Function.
672-
SnapStart is currently supported only for Java 11, 17 runtime
672+
SnapStart is currently supported for Java 11, Java 17, Python 3.12, Python 3.13, and .NET 8 runtime
673673

674674
#### Default
675675

0 commit comments

Comments
 (0)