@@ -1509,6 +1509,31 @@ export interface InferenceConfiguration {
15091509 stopSequences ?: string [ ] | undefined ;
15101510}
15111511
1512+ /**
1513+ * @public
1514+ * @enum
1515+ */
1516+ export const CachePointType = {
1517+ DEFAULT : "default" ,
1518+ } as const ;
1519+
1520+ /**
1521+ * @public
1522+ */
1523+ export type CachePointType = ( typeof CachePointType ) [ keyof typeof CachePointType ] ;
1524+
1525+ /**
1526+ * <p>Defines a section of content to be cached for reuse in subsequent API calls.</p>
1527+ * @public
1528+ */
1529+ export interface CachePointBlock {
1530+ /**
1531+ * <p>Specifies the type of cache point within the CachePointBlock.</p>
1532+ * @public
1533+ */
1534+ type : CachePointType | undefined ;
1535+ }
1536+
15121537/**
15131538 * @public
15141539 * @enum
@@ -2219,6 +2244,7 @@ export interface ToolUseBlock {
22192244 * @public
22202245 */
22212246export type ContentBlock =
2247+ | ContentBlock . CachePointMember
22222248 | ContentBlock . DocumentMember
22232249 | ContentBlock . GuardContentMember
22242250 | ContentBlock . ImageMember
@@ -2245,6 +2271,7 @@ export namespace ContentBlock {
22452271 toolUse ?: never ;
22462272 toolResult ?: never ;
22472273 guardContent ?: never ;
2274+ cachePoint ?: never ;
22482275 reasoningContent ?: never ;
22492276 $unknown ?: never ;
22502277 }
@@ -2264,6 +2291,7 @@ export namespace ContentBlock {
22642291 toolUse ?: never ;
22652292 toolResult ?: never ;
22662293 guardContent ?: never ;
2294+ cachePoint ?: never ;
22672295 reasoningContent ?: never ;
22682296 $unknown ?: never ;
22692297 }
@@ -2280,6 +2308,7 @@ export namespace ContentBlock {
22802308 toolUse ?: never ;
22812309 toolResult ?: never ;
22822310 guardContent ?: never ;
2311+ cachePoint ?: never ;
22832312 reasoningContent ?: never ;
22842313 $unknown ?: never ;
22852314 }
@@ -2296,6 +2325,7 @@ export namespace ContentBlock {
22962325 toolUse ?: never ;
22972326 toolResult ?: never ;
22982327 guardContent ?: never ;
2328+ cachePoint ?: never ;
22992329 reasoningContent ?: never ;
23002330 $unknown ?: never ;
23012331 }
@@ -2312,6 +2342,7 @@ export namespace ContentBlock {
23122342 toolUse : ToolUseBlock ;
23132343 toolResult ?: never ;
23142344 guardContent ?: never ;
2345+ cachePoint ?: never ;
23152346 reasoningContent ?: never ;
23162347 $unknown ?: never ;
23172348 }
@@ -2328,6 +2359,7 @@ export namespace ContentBlock {
23282359 toolUse ?: never ;
23292360 toolResult : ToolResultBlock ;
23302361 guardContent ?: never ;
2362+ cachePoint ?: never ;
23312363 reasoningContent ?: never ;
23322364 $unknown ?: never ;
23332365 }
@@ -2349,6 +2381,24 @@ export namespace ContentBlock {
23492381 toolUse ?: never ;
23502382 toolResult ?: never ;
23512383 guardContent : GuardrailConverseContentBlock ;
2384+ cachePoint ?: never ;
2385+ reasoningContent ?: never ;
2386+ $unknown ?: never ;
2387+ }
2388+
2389+ /**
2390+ * <p>CachePoint to include in the message.</p>
2391+ * @public
2392+ */
2393+ export interface CachePointMember {
2394+ text ?: never ;
2395+ image ?: never ;
2396+ document ?: never ;
2397+ video ?: never ;
2398+ toolUse ?: never ;
2399+ toolResult ?: never ;
2400+ guardContent ?: never ;
2401+ cachePoint : CachePointBlock ;
23522402 reasoningContent ?: never ;
23532403 $unknown ?: never ;
23542404 }
@@ -2365,6 +2415,7 @@ export namespace ContentBlock {
23652415 toolUse ?: never ;
23662416 toolResult ?: never ;
23672417 guardContent ?: never ;
2418+ cachePoint ?: never ;
23682419 reasoningContent : ReasoningContentBlock ;
23692420 $unknown ?: never ;
23702421 }
@@ -2380,6 +2431,7 @@ export namespace ContentBlock {
23802431 toolUse ?: never ;
23812432 toolResult ?: never ;
23822433 guardContent ?: never ;
2434+ cachePoint ?: never ;
23832435 reasoningContent ?: never ;
23842436 $unknown : [ string , any ] ;
23852437 }
@@ -2392,6 +2444,7 @@ export namespace ContentBlock {
23922444 toolUse : ( value : ToolUseBlock ) => T ;
23932445 toolResult : ( value : ToolResultBlock ) => T ;
23942446 guardContent : ( value : GuardrailConverseContentBlock ) => T ;
2447+ cachePoint : ( value : CachePointBlock ) => T ;
23952448 reasoningContent : ( value : ReasoningContentBlock ) => T ;
23962449 _ : ( name : string , value : any ) => T ;
23972450 }
@@ -2404,6 +2457,7 @@ export namespace ContentBlock {
24042457 if ( value . toolUse !== undefined ) return visitor . toolUse ( value . toolUse ) ;
24052458 if ( value . toolResult !== undefined ) return visitor . toolResult ( value . toolResult ) ;
24062459 if ( value . guardContent !== undefined ) return visitor . guardContent ( value . guardContent ) ;
2460+ if ( value . cachePoint !== undefined ) return visitor . cachePoint ( value . cachePoint ) ;
24072461 if ( value . reasoningContent !== undefined ) return visitor . reasoningContent ( value . reasoningContent ) ;
24082462 return visitor . _ ( value . $unknown [ 0 ] , value . $unknown [ 1 ] ) ;
24092463 } ;
@@ -2524,6 +2578,7 @@ export namespace PromptVariableValues {
25242578 * @public
25252579 */
25262580export type SystemContentBlock =
2581+ | SystemContentBlock . CachePointMember
25272582 | SystemContentBlock . GuardContentMember
25282583 | SystemContentBlock . TextMember
25292584 | SystemContentBlock . $UnknownMember ;
@@ -2539,6 +2594,7 @@ export namespace SystemContentBlock {
25392594 export interface TextMember {
25402595 text : string ;
25412596 guardContent ?: never ;
2597+ cachePoint ?: never ;
25422598 $unknown ?: never ;
25432599 }
25442600
@@ -2551,6 +2607,18 @@ export namespace SystemContentBlock {
25512607 export interface GuardContentMember {
25522608 text ?: never ;
25532609 guardContent : GuardrailConverseContentBlock ;
2610+ cachePoint ?: never ;
2611+ $unknown ?: never ;
2612+ }
2613+
2614+ /**
2615+ * <p>CachePoint to include in the system prompt.</p>
2616+ * @public
2617+ */
2618+ export interface CachePointMember {
2619+ text ?: never ;
2620+ guardContent ?: never ;
2621+ cachePoint : CachePointBlock ;
25542622 $unknown ?: never ;
25552623 }
25562624
@@ -2560,18 +2628,21 @@ export namespace SystemContentBlock {
25602628 export interface $UnknownMember {
25612629 text ?: never ;
25622630 guardContent ?: never ;
2631+ cachePoint ?: never ;
25632632 $unknown : [ string , any ] ;
25642633 }
25652634
25662635 export interface Visitor < T > {
25672636 text : ( value : string ) => T ;
25682637 guardContent : ( value : GuardrailConverseContentBlock ) => T ;
2638+ cachePoint : ( value : CachePointBlock ) => T ;
25692639 _ : ( name : string , value : any ) => T ;
25702640 }
25712641
25722642 export const visit = < T > ( value : SystemContentBlock , visitor : Visitor < T > ) : T => {
25732643 if ( value . text !== undefined ) return visitor . text ( value . text ) ;
25742644 if ( value . guardContent !== undefined ) return visitor . guardContent ( value . guardContent ) ;
2645+ if ( value . cachePoint !== undefined ) return visitor . cachePoint ( value . cachePoint ) ;
25752646 return visitor . _ ( value . $unknown [ 0 ] , value . $unknown [ 1 ] ) ;
25762647 } ;
25772648}
@@ -2744,7 +2815,7 @@ export interface ToolSpecification {
27442815 * <p>Information about a tool that you can use with the Converse API. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html">Tool use (function calling)</a> in the Amazon Bedrock User Guide.</p>
27452816 * @public
27462817 */
2747- export type Tool = Tool . ToolSpecMember | Tool . $UnknownMember ;
2818+ export type Tool = Tool . CachePointMember | Tool . ToolSpecMember | Tool . $UnknownMember ;
27482819
27492820/**
27502821 * @public
@@ -2756,6 +2827,17 @@ export namespace Tool {
27562827 */
27572828 export interface ToolSpecMember {
27582829 toolSpec : ToolSpecification ;
2830+ cachePoint ?: never ;
2831+ $unknown ?: never ;
2832+ }
2833+
2834+ /**
2835+ * <p>CachePoint to include in the tool configuration.</p>
2836+ * @public
2837+ */
2838+ export interface CachePointMember {
2839+ toolSpec ?: never ;
2840+ cachePoint : CachePointBlock ;
27592841 $unknown ?: never ;
27602842 }
27612843
@@ -2764,16 +2846,19 @@ export namespace Tool {
27642846 */
27652847 export interface $UnknownMember {
27662848 toolSpec ?: never ;
2849+ cachePoint ?: never ;
27672850 $unknown : [ string , any ] ;
27682851 }
27692852
27702853 export interface Visitor < T > {
27712854 toolSpec : ( value : ToolSpecification ) => T ;
2855+ cachePoint : ( value : CachePointBlock ) => T ;
27722856 _ : ( name : string , value : any ) => T ;
27732857 }
27742858
27752859 export const visit = < T > ( value : Tool , visitor : Visitor < T > ) : T => {
27762860 if ( value . toolSpec !== undefined ) return visitor . toolSpec ( value . toolSpec ) ;
2861+ if ( value . cachePoint !== undefined ) return visitor . cachePoint ( value . cachePoint ) ;
27772862 return visitor . _ ( value . $unknown [ 0 ] , value . $unknown [ 1 ] ) ;
27782863 } ;
27792864}
@@ -3049,6 +3134,18 @@ export interface TokenUsage {
30493134 * @public
30503135 */
30513136 totalTokens : number | undefined ;
3137+
3138+ /**
3139+ * <p>The number of input tokens read from the cache for the request.</p>
3140+ * @public
3141+ */
3142+ cacheReadInputTokens ?: number | undefined ;
3143+
3144+ /**
3145+ * <p>The number of input tokens written to the cache for the request.</p>
3146+ * @public
3147+ */
3148+ cacheWriteInputTokens ?: number | undefined ;
30523149}
30533150
30543151/**
@@ -4543,6 +4640,7 @@ export const ContentBlockFilterSensitiveLog = (obj: ContentBlock): any => {
45434640 if ( obj . toolResult !== undefined ) return { toolResult : obj . toolResult } ;
45444641 if ( obj . guardContent !== undefined )
45454642 return { guardContent : GuardrailConverseContentBlockFilterSensitiveLog ( obj . guardContent ) } ;
4643+ if ( obj . cachePoint !== undefined ) return { cachePoint : obj . cachePoint } ;
45464644 if ( obj . reasoningContent !== undefined ) return { reasoningContent : SENSITIVE_STRING } ;
45474645 if ( obj . $unknown !== undefined ) return { [ obj . $unknown [ 0 ] ] : "UNKNOWN" } ;
45484646} ;
@@ -4562,6 +4660,7 @@ export const SystemContentBlockFilterSensitiveLog = (obj: SystemContentBlock): a
45624660 if ( obj . text !== undefined ) return { text : obj . text } ;
45634661 if ( obj . guardContent !== undefined )
45644662 return { guardContent : GuardrailConverseContentBlockFilterSensitiveLog ( obj . guardContent ) } ;
4663+ if ( obj . cachePoint !== undefined ) return { cachePoint : obj . cachePoint } ;
45654664 if ( obj . $unknown !== undefined ) return { [ obj . $unknown [ 0 ] ] : "UNKNOWN" } ;
45664665} ;
45674666
0 commit comments