@strands-agents/sdk 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/agent/agent-as-tool.d.ts.map +1 -1
- package/dist/src/agent/agent-as-tool.js +8 -2
- package/dist/src/agent/agent-as-tool.js.map +1 -1
- package/dist/src/agent/agent.d.ts +27 -7
- package/dist/src/agent/agent.d.ts.map +1 -1
- package/dist/src/agent/agent.js +118 -24
- package/dist/src/agent/agent.js.map +1 -1
- package/dist/src/agent/continuation.d.ts +36 -0
- package/dist/src/agent/continuation.d.ts.map +1 -0
- package/dist/src/agent/continuation.js +126 -0
- package/dist/src/agent/continuation.js.map +1 -0
- package/dist/src/agent/tool-caller.d.ts.map +1 -1
- package/dist/src/agent/tool-caller.js +1 -0
- package/dist/src/agent/tool-caller.js.map +1 -1
- package/dist/src/context-manager/context-manager.d.ts +30 -0
- package/dist/src/context-manager/context-manager.d.ts.map +1 -0
- package/dist/src/context-manager/context-manager.js +89 -0
- package/dist/src/context-manager/context-manager.js.map +1 -0
- package/dist/src/context-manager/methods/summarize.d.ts +41 -0
- package/dist/src/context-manager/methods/summarize.d.ts.map +1 -0
- package/dist/src/context-manager/methods/summarize.js +108 -0
- package/dist/src/context-manager/methods/summarize.js.map +1 -0
- package/dist/src/context-manager/methods/truncate.d.ts +36 -0
- package/dist/src/context-manager/methods/truncate.d.ts.map +1 -0
- package/dist/src/context-manager/methods/truncate.js +86 -0
- package/dist/src/context-manager/methods/truncate.js.map +1 -0
- package/dist/src/context-manager/modes/agentic/agentic-context.d.ts +1 -2
- package/dist/src/context-manager/modes/agentic/agentic-context.d.ts.map +1 -1
- package/dist/src/context-manager/modes/agentic/agentic-context.js +6 -3
- package/dist/src/context-manager/modes/agentic/agentic-context.js.map +1 -1
- package/dist/src/context-manager/strategies/offload/base.d.ts +140 -0
- package/dist/src/context-manager/strategies/offload/base.d.ts.map +1 -0
- package/dist/src/context-manager/strategies/offload/base.js +376 -0
- package/dist/src/context-manager/strategies/offload/base.js.map +1 -0
- package/dist/src/context-manager/strategies/offload/drop.d.ts +19 -0
- package/dist/src/context-manager/strategies/offload/drop.d.ts.map +1 -0
- package/dist/src/context-manager/strategies/offload/drop.js +31 -0
- package/dist/src/context-manager/strategies/offload/drop.js.map +1 -0
- package/dist/src/context-manager/strategies/offload/index.d.ts +43 -0
- package/dist/src/context-manager/strategies/offload/index.d.ts.map +1 -0
- package/dist/src/context-manager/strategies/offload/index.js +37 -0
- package/dist/src/context-manager/strategies/offload/index.js.map +1 -0
- package/dist/src/context-manager/strategies/offload/summarize.d.ts +22 -0
- package/dist/src/context-manager/strategies/offload/summarize.d.ts.map +1 -0
- package/dist/src/context-manager/strategies/offload/summarize.js +104 -0
- package/dist/src/context-manager/strategies/offload/summarize.js.map +1 -0
- package/dist/src/context-manager/strategies/offload/truncate.d.ts +21 -0
- package/dist/src/context-manager/strategies/offload/truncate.d.ts.map +1 -0
- package/dist/src/context-manager/strategies/offload/truncate.js +66 -0
- package/dist/src/context-manager/strategies/offload/truncate.js.map +1 -0
- package/dist/src/context-manager/types.d.ts +50 -0
- package/dist/src/context-manager/types.d.ts.map +1 -0
- package/dist/src/context-manager/types.js +5 -0
- package/dist/src/context-manager/types.js.map +1 -0
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/injection/message-injection.d.ts +12 -9
- package/dist/src/injection/message-injection.d.ts.map +1 -1
- package/dist/src/injection/message-injection.js +17 -16
- package/dist/src/injection/message-injection.js.map +1 -1
- package/dist/src/mcp/client.d.ts.map +1 -1
- package/dist/src/mcp/client.js +9 -0
- package/dist/src/mcp/client.js.map +1 -1
- package/dist/src/middleware/stages.d.ts +15 -2
- package/dist/src/middleware/stages.d.ts.map +1 -1
- package/dist/src/middleware/stages.js.map +1 -1
- package/dist/src/mime.d.ts +1 -0
- package/dist/src/mime.d.ts.map +1 -1
- package/dist/src/mime.js.map +1 -1
- package/dist/src/models/anthropic.d.ts +26 -1
- package/dist/src/models/anthropic.d.ts.map +1 -1
- package/dist/src/models/anthropic.js +178 -54
- package/dist/src/models/anthropic.js.map +1 -1
- package/dist/src/models/bedrock.d.ts +25 -17
- package/dist/src/models/bedrock.d.ts.map +1 -1
- package/dist/src/models/bedrock.js +105 -24
- package/dist/src/models/bedrock.js.map +1 -1
- package/dist/src/models/model.d.ts +68 -5
- package/dist/src/models/model.d.ts.map +1 -1
- package/dist/src/models/model.js +15 -0
- package/dist/src/models/model.js.map +1 -1
- package/dist/src/models/openai/model.d.ts.map +1 -1
- package/dist/src/models/openai/model.js +5 -0
- package/dist/src/models/openai/model.js.map +1 -1
- package/dist/src/multiagent/plugins.d.ts +3 -1
- package/dist/src/multiagent/plugins.d.ts.map +1 -1
- package/dist/src/multiagent/plugins.js +6 -1
- package/dist/src/multiagent/plugins.js.map +1 -1
- package/dist/src/plugins/registry.d.ts +3 -1
- package/dist/src/plugins/registry.d.ts.map +1 -1
- package/dist/src/plugins/registry.js +6 -1
- package/dist/src/plugins/registry.js.map +1 -1
- package/dist/src/storage/in-memory-storage.d.ts +8 -1
- package/dist/src/storage/in-memory-storage.d.ts.map +1 -1
- package/dist/src/storage/in-memory-storage.js +10 -0
- package/dist/src/storage/in-memory-storage.js.map +1 -1
- package/dist/src/storage/local-file-storage.d.ts +8 -1
- package/dist/src/storage/local-file-storage.d.ts.map +1 -1
- package/dist/src/storage/local-file-storage.js +10 -0
- package/dist/src/storage/local-file-storage.js.map +1 -1
- package/dist/src/storage/s3-storage.d.ts +8 -1
- package/dist/src/storage/s3-storage.d.ts.map +1 -1
- package/dist/src/storage/s3-storage.js +10 -0
- package/dist/src/storage/s3-storage.js.map +1 -1
- package/dist/src/storage/search/index.d.ts +13 -0
- package/dist/src/storage/search/index.d.ts.map +1 -0
- package/dist/src/storage/search/index.js +11 -0
- package/dist/src/storage/search/index.js.map +1 -0
- package/dist/src/storage/search/keyword.d.ts +23 -0
- package/dist/src/storage/search/keyword.d.ts.map +1 -0
- package/dist/src/storage/search/keyword.js +53 -0
- package/dist/src/storage/search/keyword.js.map +1 -0
- package/dist/src/storage/search/types.d.ts +24 -0
- package/dist/src/storage/search/types.d.ts.map +1 -0
- package/dist/src/storage/search/types.js +2 -0
- package/dist/src/storage/search/types.js.map +1 -0
- package/dist/src/storage/storage.d.ts +46 -1
- package/dist/src/storage/storage.d.ts.map +1 -1
- package/dist/src/storage/storage.js +22 -0
- package/dist/src/storage/storage.js.map +1 -1
- package/dist/src/tools/executors/executor.d.ts +2 -0
- package/dist/src/tools/executors/executor.d.ts.map +1 -1
- package/dist/src/tools/executors/executor.js +6 -4
- package/dist/src/tools/executors/executor.js.map +1 -1
- package/dist/src/tools/executors/sequential.d.ts +1 -1
- package/dist/src/tools/executors/sequential.js +2 -2
- package/dist/src/tools/executors/sequential.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +2 -1
- package/dist/src/tools/mcp-tool.d.ts.map +1 -1
- package/dist/src/tools/mcp-tool.js +2 -1
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/tool.d.ts +2 -0
- package/dist/src/tools/tool.d.ts.map +1 -1
- package/dist/src/tools/tool.js.map +1 -1
- package/dist/src/tools/types.d.ts +8 -0
- package/dist/src/tools/types.d.ts.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/src/types/agent.d.ts +2 -2
- package/dist/src/types/media.d.ts +65 -3
- package/dist/src/types/media.d.ts.map +1 -1
- package/dist/src/types/media.js +68 -1
- package/dist/src/types/media.js.map +1 -1
- package/dist/src/types/messages.d.ts +6 -4
- package/dist/src/types/messages.d.ts.map +1 -1
- package/dist/src/types/messages.js +4 -1
- package/dist/src/types/messages.js.map +1 -1
- package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.d.ts +11 -0
- package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.d.ts.map +1 -1
- package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.js +53 -3
- package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.js.map +1 -1
- package/dist/src/vended-memory-stores/file-memory-store/index.d.ts +3 -0
- package/dist/src/vended-memory-stores/file-memory-store/index.d.ts.map +1 -0
- package/dist/src/vended-memory-stores/file-memory-store/index.js +2 -0
- package/dist/src/vended-memory-stores/file-memory-store/index.js.map +1 -0
- package/dist/src/vended-memory-stores/file-memory-store/store.d.ts +82 -0
- package/dist/src/vended-memory-stores/file-memory-store/store.d.ts.map +1 -0
- package/dist/src/vended-memory-stores/file-memory-store/store.js +219 -0
- package/dist/src/vended-memory-stores/file-memory-store/store.js.map +1 -0
- package/dist/src/vended-memory-stores/test-memory-store/store.d.ts.map +1 -1
- package/dist/src/vended-memory-stores/test-memory-store/store.js +2 -25
- package/dist/src/vended-memory-stores/test-memory-store/store.js.map +1 -1
- package/dist/src/vended-plugins/context-offloader/plugin.d.ts.map +1 -1
- package/dist/src/vended-plugins/context-offloader/plugin.js +2 -8
- package/dist/src/vended-plugins/context-offloader/plugin.js.map +1 -1
- package/dist/src/vended-tools/http-request/http-request.d.ts +1 -1
- package/dist/src/vended-tools/http-request/http-request.js +2 -2
- package/dist/src/vended-tools/http-request/http-request.js.map +1 -1
- package/dist/src/vended-tools/sleep/make-sleep.d.ts +4 -6
- package/dist/src/vended-tools/sleep/make-sleep.d.ts.map +1 -1
- package/dist/src/vended-tools/sleep/make-sleep.js +5 -7
- package/dist/src/vended-tools/sleep/make-sleep.js.map +1 -1
- package/package.json +10 -2
|
@@ -2,7 +2,7 @@ import type { MiddlewareStage } from './types.js';
|
|
|
2
2
|
import type { LocalAgent, AgentStreamEvent, InvocationState, InvokeArgs, InvokeOptions, AgentResult } from '../types/agent.js';
|
|
3
3
|
import type { Message, SystemPrompt, ToolResultBlock } from '../types/messages.js';
|
|
4
4
|
import type { ToolSpec, ToolChoice } from '../tools/types.js';
|
|
5
|
-
import type { StreamAggregatedResult } from '../models/model.js';
|
|
5
|
+
import type { Model, StreamAggregatedResult } from '../models/model.js';
|
|
6
6
|
import type { ToolUseData } from '../hooks/events.js';
|
|
7
7
|
import type { Tool } from '../tools/tool.js';
|
|
8
8
|
import type { InterruptParams } from '../types/interrupt.js';
|
|
@@ -51,11 +51,14 @@ export declare function createStage<TContext, TResult, TEvent>(name: string): Mi
|
|
|
51
51
|
/**
|
|
52
52
|
* Context passed to model-stage middleware.
|
|
53
53
|
* All inputs to the model call are explicit — middleware can inspect and transform
|
|
54
|
-
* any of them by passing a modified context to next().
|
|
54
|
+
* any of them by passing a modified context to next(). Collection fields are
|
|
55
|
+
* defensive copies; invocationState and model are shared references.
|
|
55
56
|
*/
|
|
56
57
|
export interface InvokeModelContext {
|
|
57
58
|
/** The agent instance (escape hatch for advanced use cases). */
|
|
58
59
|
readonly agent: LocalAgent;
|
|
60
|
+
/** The model this call invokes. Initialized from agent.model and replaceable per call. */
|
|
61
|
+
readonly model: Model;
|
|
59
62
|
/** The messages to send to the model. */
|
|
60
63
|
readonly messages: readonly Message[];
|
|
61
64
|
/** System prompt to guide the model's behavior. */
|
|
@@ -68,6 +71,14 @@ export interface InvokeModelContext {
|
|
|
68
71
|
readonly invocationState: InvocationState;
|
|
69
72
|
/** Estimated input token count for this model call, or undefined if estimation failed. */
|
|
70
73
|
readonly projectedInputTokens?: number;
|
|
74
|
+
/**
|
|
75
|
+
* How many trailing blocks of the last user message are rebuilt on every call.
|
|
76
|
+
*
|
|
77
|
+
* Producers add to this; a provider placing cache points keeps its own ahead of the
|
|
78
|
+
* count, since a prefix that changes every call is never read back. Counted from the end of the
|
|
79
|
+
* message so it survives a provider's content cleaning, which only drops earlier blocks.
|
|
80
|
+
*/
|
|
81
|
+
readonly dynamicTrailingBlocks?: number;
|
|
71
82
|
}
|
|
72
83
|
/**
|
|
73
84
|
* Result from model-stage middleware.
|
|
@@ -90,6 +101,8 @@ export interface ExecuteToolContext extends MiddlewareInterruptible {
|
|
|
90
101
|
readonly toolUse: ToolUseData;
|
|
91
102
|
/** Per-invocation state. Shared by reference — mutations are visible to hooks, tools, and AgentResult. */
|
|
92
103
|
readonly invocationState: InvocationState;
|
|
104
|
+
/** Executor-owned cancellation signal for this tool call; middleware can observe but cannot replace it. */
|
|
105
|
+
readonly cancelSignal: AbortSignal;
|
|
93
106
|
}
|
|
94
107
|
/**
|
|
95
108
|
* Result from tool-stage middleware.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stages.d.ts","sourceRoot":"","sources":["../../../src/middleware/stages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"stages.d.ts","sourceRoot":"","sources":["../../../src/middleware/stages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;;GAIG;AACH,MAAM,WAAW,yBAAyB,CAAC,CAAC,GAAG,SAAS;IACtD;;;;;OAKG;IACH,QAAQ,EAAE,CAAC,CAAA;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,eAAe,GAAG,yBAAyB,CAAC,CAAC,CAAC,CAAA;CAChF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAO/G;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;IACrC,mDAAmD;IACnD,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IACpC,kDAAkD;IAClD,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAA;IACvC,4CAA4C;IAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAA;IAChC,0GAA0G;IAC1G,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,0FAA0F;IAC1F,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAEtC;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAA;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAA;IAC/B,qDAAqD;IACrD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAA;IAC7B,0GAA0G;IAC1G,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,2GAA2G;IAC3G,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAA;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,4FAA4F;IAC5F,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAA;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,0EAAsF,CAAA;AAEnH;;;GAGG;AACH,eAAO,MAAM,gBAAgB,0EAAsF,CAAA;AAEnH;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,0EAAsF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stages.js","sourceRoot":"","sources":["../../../src/middleware/stages.ts"],"names":[],"mappings":"AAoDA;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAA4B,IAAY;IACjE,wGAAwG;IACxG,MAAM,KAAK,GAAG,EAAE,IAAI,EAAgD,CAAA;IACpE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACtE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;AAC1F,CAAC;
|
|
1
|
+
{"version":3,"file":"stages.js","sourceRoot":"","sources":["../../../src/middleware/stages.ts"],"names":[],"mappings":"AAoDA;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAA4B,IAAY;IACjE,wGAAwG;IACxG,MAAM,KAAK,GAAG,EAAE,IAAI,EAAgD,CAAA;IACpE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACtE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;AAC1F,CAAC;AAkGD;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAA0D,aAAa,CAAC,CAAA;AAEnH;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAA0D,aAAa,CAAC,CAAA;AAEnH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAA0D,aAAa,CAAC,CAAA"}
|
package/dist/src/mime.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Provides bidirectional mapping between media formats and MIME types.
|
|
5
5
|
*/
|
|
6
6
|
export declare const IMAGE_FORMATS: readonly ["png", "jpg", "jpeg", "gif", "webp"];
|
|
7
|
+
export type AudioFormat = 'mp3' | 'opus' | 'wav' | 'aac' | 'flac' | 'mp4' | 'ogg' | 'mkv' | 'mka' | 'x-aac' | 'm4a' | 'mpeg' | 'mpga' | 'pcm' | 'webm';
|
|
7
8
|
export type ImageFormat = (typeof IMAGE_FORMATS)[number];
|
|
8
9
|
export type VideoFormat = 'mkv' | 'mov' | 'mp4' | 'webm' | 'flv' | 'mpeg' | 'mpg' | 'wmv' | '3gp';
|
|
9
10
|
export type DocumentFormat = 'pdf' | 'csv' | 'doc' | 'docx' | 'xls' | 'xlsx' | 'html' | 'txt' | 'md' | 'json' | 'xml';
|
package/dist/src/mime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mime.d.ts","sourceRoot":"","sources":["../../src/mime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,aAAa,gDAAiD,CAAA;AAE3E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAEjG,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;AAErH,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,CAAA;AA8DpE;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEvE"}
|
|
1
|
+
{"version":3,"file":"mime.d.ts","sourceRoot":"","sources":["../../src/mime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,aAAa,gDAAiD,CAAA;AAE3E,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,MAAM,GACN,KAAK,GACL,KAAK,GACL,MAAM,GACN,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,OAAO,GACP,KAAK,GACL,MAAM,GACN,MAAM,GACN,KAAK,GACL,MAAM,CAAA;AAEV,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAEjG,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;AAErH,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,CAAA;AA8DpE;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEvE"}
|
package/dist/src/mime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mime.js","sourceRoot":"","sources":["../../src/mime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"mime.js","sourceRoot":"","sources":["../../src/mime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAA;AA2B3E,MAAM,YAAY,GAAgC;IAChD,SAAS;IACT,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,SAAS;IACT,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,gBAAgB;IACrB,KAAK,EAAE,YAAY;IACnB,YAAY;IACZ,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,oBAAoB;IACzB,IAAI,EAAE,yEAAyE;IAC/E,GAAG,EAAE,0BAA0B;IAC/B,IAAI,EAAE,mEAAmE;IACzE,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,YAAY;IACjB,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,iBAAiB;CACvB,CAAA;AAED,MAAM,eAAe,GAAgC;IACnD,SAAS;IACT,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,MAAM;IACpB,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,MAAM;IACpB,SAAS;IACT,kBAAkB,EAAE,KAAK;IACzB,iBAAiB,EAAE,KAAK;IACxB,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,MAAM;IACpB,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,MAAM;IACpB,gBAAgB,EAAE,KAAK;IACvB,YAAY,EAAE,KAAK;IACnB,YAAY;IACZ,iBAAiB,EAAE,KAAK;IACxB,UAAU,EAAE,KAAK;IACjB,oBAAoB,EAAE,KAAK;IAC3B,yEAAyE,EAAE,MAAM;IACjF,0BAA0B,EAAE,KAAK;IACjC,mEAAmE,EAAE,MAAM;IAC3E,WAAW,EAAE,MAAM;IACnB,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,IAAI;IACrB,kBAAkB,EAAE,MAAM;IAC1B,iBAAiB,EAAE,KAAK;CACzB,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,OAAO,YAAY,CAAC,MAAM,CAAC,WAAW,EAAiB,CAAC,CAAA;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,OAAO,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;AAChD,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Anthropic, { type ClientOptions } from '@anthropic-ai/sdk';
|
|
2
|
-
import { Model, type BaseModelConfig, type CountTokensOptions, type StreamOptions } from '../models/model.js';
|
|
2
|
+
import { Model, type BaseModelConfig, type CountTokensOptions, type StreamOptions, type CacheConfig } from '../models/model.js';
|
|
3
3
|
import type { Message } from '../types/messages.js';
|
|
4
4
|
import type { ModelStreamEvent } from '../models/streaming.js';
|
|
5
5
|
export interface AnthropicModelConfig extends BaseModelConfig {
|
|
@@ -31,6 +31,13 @@ export interface AnthropicModelConfig extends BaseModelConfig {
|
|
|
31
31
|
* @defaultValue false
|
|
32
32
|
*/
|
|
33
33
|
useNativeTokenCount?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Prompt caching configuration. Setting it caches the tool definitions and adds a cache point
|
|
36
|
+
* to the last user message; caching is off when unset.
|
|
37
|
+
*
|
|
38
|
+
* `strategy` has no effect here, since prompt caching is supported on every active Claude model.
|
|
39
|
+
*/
|
|
40
|
+
cacheConfig?: CacheConfig;
|
|
34
41
|
}
|
|
35
42
|
export interface AnthropicModelOptions extends AnthropicModelConfig {
|
|
36
43
|
apiKey?: string;
|
|
@@ -56,6 +63,24 @@ export declare class AnthropicModel extends Model<AnthropicModelConfig> {
|
|
|
56
63
|
countTokens(messages: Message[], options?: CountTokensOptions): Promise<number>;
|
|
57
64
|
stream(messages: Message[], options?: StreamOptions): AsyncIterable<ModelStreamEvent>;
|
|
58
65
|
private _buildRequestOptions;
|
|
66
|
+
/** Resolves a cache section, disabled when `cacheConfig` is unset or its strategy is unknown. */
|
|
67
|
+
private _cacheSection;
|
|
68
|
+
/** Builds an Anthropic `cache_control` value. A falsy `ttl` leaves the API default. */
|
|
69
|
+
private _formatCacheControl;
|
|
70
|
+
/**
|
|
71
|
+
* Marks the last formatted block the API accepts `cache_control` on, mutating `content` in place.
|
|
72
|
+
* Scans backwards because the nearest block may be a rejected type or dropped in translation.
|
|
73
|
+
*
|
|
74
|
+
* @returns True when a block was marked.
|
|
75
|
+
*/
|
|
76
|
+
private _attachCacheControl;
|
|
77
|
+
/**
|
|
78
|
+
* Formats the system prompt for the Anthropic API, auto-injecting a cache point at its end.
|
|
79
|
+
*
|
|
80
|
+
* @param systemPrompt - The system prompt as a string or content blocks.
|
|
81
|
+
* @returns The API system value (string or text blocks), or undefined when nothing cacheable remains.
|
|
82
|
+
*/
|
|
83
|
+
private _formatSystemPrompt;
|
|
59
84
|
private _formatRequest;
|
|
60
85
|
private _formatMessages;
|
|
61
86
|
private _isCacheableBlock;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/models/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EACL,KAAK,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,aAAa,
|
|
1
|
+
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/models/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EACL,KAAK,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAGlB,KAAK,WAAW,EAEjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,OAAO,EAA8B,MAAM,sBAAsB,CAAA;AAC/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AA2B9D,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEhC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAEhB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,YAAY,CAAC,EAAE,aAAa,CAAA;CAC7B;AAED,qBAAa,cAAe,SAAQ,KAAK,CAAC,oBAAoB,CAAC;IAC7D,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAW;gBAEd,OAAO,CAAC,EAAE,qBAAqB;IAqC3C,YAAY,CAAC,WAAW,EAAE,oBAAoB,GAAG,IAAI;IAIrD,SAAS,IAAI,oBAAoB;IAIjC;;;;;;;;;OASG;IACY,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BvF,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,CAAC,gBAAgB,CAAC;IA+I5F,OAAO,CAAC,oBAAoB;IAM5B,iGAAiG;IACjG,OAAO,CAAC,aAAa;IAerB,uFAAuF;IACvF,OAAO,CAAC,mBAAmB;IAS3B;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAyC3B,OAAO,CAAC,cAAc;IA8DtB,OAAO,CAAC,eAAe;IAwEvB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAkK3B,OAAO,CAAC,cAAc;CAmBvB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Anthropic, {} from '@anthropic-ai/sdk';
|
|
2
|
-
import { Model, resolveConfigMetadata, } from '../models/model.js';
|
|
2
|
+
import { Model, resolveConfigMetadata, resolveCacheSection, } from '../models/model.js';
|
|
3
3
|
import { createEmptyUsage } from '../models/streaming.js';
|
|
4
4
|
import { ContextWindowOverflowError, ModelThrottledError, normalizeError } from '../errors.js';
|
|
5
5
|
import { encodeBase64 } from '../types/media.js';
|
|
@@ -17,6 +17,10 @@ const CONTEXT_WINDOW_OVERFLOW_ERRORS = [
|
|
|
17
17
|
'input length exceeds context window',
|
|
18
18
|
'input and output tokens exceed your context limit',
|
|
19
19
|
];
|
|
20
|
+
/**
|
|
21
|
+
* `ephemeral` is the only cache type the Anthropic API supports.
|
|
22
|
+
*/
|
|
23
|
+
const ANTHROPIC_CACHE_TYPE = 'ephemeral';
|
|
20
24
|
const TEXT_FILE_FORMATS = ['txt', 'md', 'markdown', 'csv', 'json', 'xml', 'html', 'yml', 'yaml', 'js', 'ts', 'py'];
|
|
21
25
|
export class AnthropicModel extends Model {
|
|
22
26
|
_config;
|
|
@@ -231,50 +235,126 @@ export class AnthropicModel extends Model {
|
|
|
231
235
|
return undefined;
|
|
232
236
|
return { headers: { 'anthropic-beta': betas.join(',') } };
|
|
233
237
|
}
|
|
238
|
+
/** Resolves a cache section, disabled when `cacheConfig` is unset or its strategy is unknown. */
|
|
239
|
+
_cacheSection(section) {
|
|
240
|
+
const cacheConfig = this._config.cacheConfig;
|
|
241
|
+
if (!cacheConfig) {
|
|
242
|
+
return { enabled: false };
|
|
243
|
+
}
|
|
244
|
+
const strategy = cacheConfig.strategy ?? 'auto';
|
|
245
|
+
if (strategy !== 'auto' && strategy !== 'anthropic') {
|
|
246
|
+
logger.warn(`strategy=<${strategy}> | unknown cache strategy, prompt caching disabled`);
|
|
247
|
+
return { enabled: false };
|
|
248
|
+
}
|
|
249
|
+
return resolveCacheSection(cacheConfig[section], cacheConfig.ttl);
|
|
250
|
+
}
|
|
251
|
+
/** Builds an Anthropic `cache_control` value. A falsy `ttl` leaves the API default. */
|
|
252
|
+
_formatCacheControl(ttl) {
|
|
253
|
+
const cacheControl = { type: ANTHROPIC_CACHE_TYPE };
|
|
254
|
+
if (ttl) {
|
|
255
|
+
// The API validates TTL values server-side, so any string is passed through.
|
|
256
|
+
cacheControl.ttl = ttl;
|
|
257
|
+
}
|
|
258
|
+
return cacheControl;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Marks the last formatted block the API accepts `cache_control` on, mutating `content` in place.
|
|
262
|
+
* Scans backwards because the nearest block may be a rejected type or dropped in translation.
|
|
263
|
+
*
|
|
264
|
+
* @returns True when a block was marked.
|
|
265
|
+
*/
|
|
266
|
+
_attachCacheControl(content, ttl, skipTrailing = 0) {
|
|
267
|
+
// Skip trailing blocks rebuilt every call so the cache point stays ahead of them; a prefix that
|
|
268
|
+
// changes every call is written every call and never read.
|
|
269
|
+
for (let i = content.length - 1 - skipTrailing; i >= 0; i--) {
|
|
270
|
+
const block = content[i];
|
|
271
|
+
if (block && this._isCacheableBlock(block)) {
|
|
272
|
+
block.cache_control = this._formatCacheControl(ttl);
|
|
273
|
+
return true;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
return false;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Formats the system prompt for the Anthropic API, auto-injecting a cache point at its end.
|
|
280
|
+
*
|
|
281
|
+
* @param systemPrompt - The system prompt as a string or content blocks.
|
|
282
|
+
* @returns The API system value (string or text blocks), or undefined when nothing cacheable remains.
|
|
283
|
+
*/
|
|
284
|
+
_formatSystemPrompt(systemPrompt) {
|
|
285
|
+
const systemCache = this._cacheSection('systemPromptTTL');
|
|
286
|
+
if (typeof systemPrompt === 'string') {
|
|
287
|
+
if (!systemCache.enabled)
|
|
288
|
+
return systemPrompt;
|
|
289
|
+
return [{ type: 'text', text: systemPrompt, cache_control: this._formatCacheControl(systemCache.ttl) }];
|
|
290
|
+
}
|
|
291
|
+
const systemBlocks = [];
|
|
292
|
+
let hasPlacedCachePoint = false;
|
|
293
|
+
for (let index = 0; index < systemPrompt.length; index++) {
|
|
294
|
+
const block = systemPrompt[index];
|
|
295
|
+
if (!block)
|
|
296
|
+
continue;
|
|
297
|
+
if (block.type === 'guardContentBlock') {
|
|
298
|
+
logger.warn('block_type=<guardContentBlock> | guard content not supported in anthropic system prompt | skipping');
|
|
299
|
+
continue;
|
|
300
|
+
}
|
|
301
|
+
if (block.type !== 'textBlock')
|
|
302
|
+
continue;
|
|
303
|
+
const nextBlock = systemPrompt[index + 1];
|
|
304
|
+
const cacheControl = nextBlock?.type === 'cachePointBlock' ? this._formatCacheControl(nextBlock.ttl || systemCache.ttl) : undefined;
|
|
305
|
+
systemBlocks.push({ type: 'text', text: block.text, ...(cacheControl && { cache_control: cacheControl }) });
|
|
306
|
+
if (cacheControl) {
|
|
307
|
+
hasPlacedCachePoint = true;
|
|
308
|
+
index++;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
if (systemBlocks.length === 0)
|
|
312
|
+
return undefined;
|
|
313
|
+
if (systemCache.enabled && !hasPlacedCachePoint) {
|
|
314
|
+
const lastBlock = systemBlocks[systemBlocks.length - 1];
|
|
315
|
+
if (lastBlock)
|
|
316
|
+
lastBlock.cache_control = this._formatCacheControl(systemCache.ttl);
|
|
317
|
+
}
|
|
318
|
+
return systemBlocks;
|
|
319
|
+
}
|
|
234
320
|
_formatRequest(messages, options) {
|
|
235
321
|
if (!this._config.modelId)
|
|
236
322
|
throw new Error('Model ID is required');
|
|
323
|
+
const messagesCache = this._cacheSection('messagesTTL');
|
|
324
|
+
// The cache point goes on the last user message with content, not counting cache point blocks.
|
|
325
|
+
let cacheTargetMessage = -1;
|
|
326
|
+
if (messagesCache.enabled) {
|
|
327
|
+
for (let messageIndex = messages.length - 1; messageIndex >= 0 && cacheTargetMessage < 0; messageIndex--) {
|
|
328
|
+
const message = messages[messageIndex];
|
|
329
|
+
if (message?.role === 'user' && message.content.some((block) => block.type !== 'cachePointBlock')) {
|
|
330
|
+
cacheTargetMessage = messageIndex;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
237
334
|
const request = {
|
|
238
335
|
model: this._config.modelId,
|
|
239
336
|
max_tokens: this._config.maxTokens ?? MODEL_DEFAULTS.anthropic.maxTokens,
|
|
240
|
-
messages: this._formatMessages(messages),
|
|
337
|
+
messages: this._formatMessages(messages, messagesCache, cacheTargetMessage, options?.dynamicTrailingBlocks ?? 0),
|
|
241
338
|
stream: true,
|
|
242
339
|
};
|
|
243
340
|
if (options?.systemPrompt) {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
else if (Array.isArray(options.systemPrompt)) {
|
|
248
|
-
const systemBlocks = [];
|
|
249
|
-
for (let i = 0; i < options.systemPrompt.length; i++) {
|
|
250
|
-
const block = options.systemPrompt[i];
|
|
251
|
-
if (!block)
|
|
252
|
-
continue;
|
|
253
|
-
if (block.type === 'textBlock') {
|
|
254
|
-
const nextBlock = options.systemPrompt[i + 1];
|
|
255
|
-
const cacheControl = nextBlock?.type === 'cachePointBlock' ? { type: 'ephemeral' } : undefined;
|
|
256
|
-
systemBlocks.push({
|
|
257
|
-
type: 'text',
|
|
258
|
-
text: block.text,
|
|
259
|
-
...(cacheControl && { cache_control: cacheControl }),
|
|
260
|
-
});
|
|
261
|
-
if (cacheControl)
|
|
262
|
-
i++;
|
|
263
|
-
}
|
|
264
|
-
else if (block.type === 'guardContentBlock') {
|
|
265
|
-
logger.warn('block_type=<guardContentBlock> | guard content not supported in anthropic system prompt | skipping');
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
if (systemBlocks.length > 0)
|
|
269
|
-
request.system = systemBlocks;
|
|
270
|
-
}
|
|
341
|
+
const system = this._formatSystemPrompt(options.systemPrompt);
|
|
342
|
+
if (system !== undefined)
|
|
343
|
+
request.system = system;
|
|
271
344
|
}
|
|
272
345
|
if (options?.toolSpecs?.length) {
|
|
273
|
-
|
|
346
|
+
const tools = options.toolSpecs.map((tool) => ({
|
|
274
347
|
name: tool.name,
|
|
275
348
|
description: tool.description,
|
|
276
349
|
input_schema: tool.inputSchema,
|
|
277
350
|
}));
|
|
351
|
+
// A cache_control on the last tool caches all of them, so one cache point suffices.
|
|
352
|
+
const toolsCache = this._cacheSection('toolsTTL');
|
|
353
|
+
const lastTool = tools[tools.length - 1];
|
|
354
|
+
if (toolsCache.enabled && lastTool) {
|
|
355
|
+
lastTool.cache_control = this._formatCacheControl(toolsCache.ttl);
|
|
356
|
+
}
|
|
357
|
+
request.tools = tools;
|
|
278
358
|
if (options.toolChoice) {
|
|
279
359
|
if ('auto' in options.toolChoice) {
|
|
280
360
|
request.tool_choice = { type: 'auto' };
|
|
@@ -297,23 +377,51 @@ export class AnthropicModel extends Model {
|
|
|
297
377
|
Object.assign(request, this._config.params);
|
|
298
378
|
return request;
|
|
299
379
|
}
|
|
300
|
-
_formatMessages(messages) {
|
|
301
|
-
|
|
380
|
+
_formatMessages(messages, messagesCache = { enabled: false }, cacheTargetMessage = -1, dynamicTrailingBlocks = 0) {
|
|
381
|
+
let strippedCachePoints = 0;
|
|
382
|
+
const cacheManaged = messagesCache.enabled;
|
|
383
|
+
const formatted = messages.map((msg, messageIndex) => {
|
|
302
384
|
const role = msg.role === 'tool' ? 'user' : msg.role;
|
|
385
|
+
const isCacheTarget = cacheManaged && messageIndex === cacheTargetMessage;
|
|
303
386
|
const content = [];
|
|
304
|
-
|
|
305
|
-
|
|
387
|
+
let marked = false;
|
|
388
|
+
let honored = false;
|
|
389
|
+
for (const block of msg.content) {
|
|
306
390
|
if (!block)
|
|
307
391
|
continue;
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
392
|
+
if (block.type === 'cachePointBlock') {
|
|
393
|
+
if (!cacheManaged) {
|
|
394
|
+
if (!this._attachCacheControl(content, block.ttl)) {
|
|
395
|
+
logger.warn('no preceding block accepts a cache point | skipped cache point');
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
else if (isCacheTarget && !honored) {
|
|
399
|
+
// A TTL written on the point is more specific than the configured one.
|
|
400
|
+
honored = true;
|
|
401
|
+
marked = this._attachCacheControl(content, block.ttl || messagesCache.ttl);
|
|
402
|
+
if (!marked) {
|
|
403
|
+
logger.warn(`msg_idx=<${messageIndex}> | nothing ahead of the placed cache point can carry one, ` +
|
|
404
|
+
`falling back to automatic placement`);
|
|
405
|
+
}
|
|
315
406
|
}
|
|
407
|
+
else {
|
|
408
|
+
strippedCachePoints += 1;
|
|
409
|
+
}
|
|
410
|
+
continue;
|
|
411
|
+
}
|
|
412
|
+
const formattedBlock = this._formatContentBlock(block);
|
|
413
|
+
if (formattedBlock)
|
|
316
414
|
content.push(formattedBlock);
|
|
415
|
+
}
|
|
416
|
+
// Placed after formatting so the cache point lands on a block that survived translation.
|
|
417
|
+
// Per-call trailing blocks apply only to the cache-target message, where a producer appends
|
|
418
|
+
// content rebuilt every call.
|
|
419
|
+
if (isCacheTarget && !marked) {
|
|
420
|
+
if (this._attachCacheControl(content, messagesCache.ttl, dynamicTrailingBlocks)) {
|
|
421
|
+
logger.debug(`msg_idx=<${messageIndex}> | added cache point to last user message`);
|
|
422
|
+
}
|
|
423
|
+
else {
|
|
424
|
+
logger.debug(`msg_idx=<${messageIndex}> | no cacheable content block, skipped cache point`);
|
|
317
425
|
}
|
|
318
426
|
}
|
|
319
427
|
return {
|
|
@@ -321,6 +429,11 @@ export class AnthropicModel extends Model {
|
|
|
321
429
|
content,
|
|
322
430
|
};
|
|
323
431
|
});
|
|
432
|
+
if (strippedCachePoints > 0) {
|
|
433
|
+
logger.warn(`count=<${strippedCachePoints}> | stripped extra cache points, cacheConfig keeps the first cache ` +
|
|
434
|
+
`point in the last user message; unset cacheConfig to keep every cache point`);
|
|
435
|
+
}
|
|
436
|
+
return formatted;
|
|
324
437
|
}
|
|
325
438
|
_isCacheableBlock(block) {
|
|
326
439
|
return ['text', 'image', 'tool_use', 'tool_result', 'document'].includes(block.type);
|
|
@@ -349,18 +462,30 @@ export class AnthropicModel extends Model {
|
|
|
349
462
|
default:
|
|
350
463
|
throw new Error(`Unsupported image format for Anthropic: ${imgBlock.format}`);
|
|
351
464
|
}
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
465
|
+
switch (imgBlock.source.type) {
|
|
466
|
+
case 'imageSourceBytes':
|
|
467
|
+
return {
|
|
468
|
+
type: 'image',
|
|
469
|
+
source: {
|
|
470
|
+
type: 'base64',
|
|
471
|
+
media_type: mediaType,
|
|
472
|
+
data: encodeBase64(imgBlock.source.bytes),
|
|
473
|
+
},
|
|
474
|
+
};
|
|
475
|
+
case 'imageSourceUrl':
|
|
476
|
+
return {
|
|
477
|
+
type: 'image',
|
|
478
|
+
source: {
|
|
479
|
+
type: 'url',
|
|
480
|
+
url: imgBlock.source.url,
|
|
481
|
+
},
|
|
482
|
+
};
|
|
483
|
+
case 'imageSourceS3Location':
|
|
484
|
+
logger.warn('source_type=<imageSourceS3Location> | s3 location sources are not supported by anthropic | skipping');
|
|
485
|
+
return undefined;
|
|
486
|
+
default:
|
|
487
|
+
throw new Error(`Unsupported image source for Anthropic: ${imgBlock.source.type}`);
|
|
361
488
|
}
|
|
362
|
-
logger.warn('source_type=<imageSourceUrl> | anthropic requires image bytes | url sources not fully supported');
|
|
363
|
-
return undefined;
|
|
364
489
|
}
|
|
365
490
|
case 'documentBlock': {
|
|
366
491
|
const docBlock = block;
|
|
@@ -395,8 +520,7 @@ export class AnthropicModel extends Model {
|
|
|
395
520
|
};
|
|
396
521
|
}
|
|
397
522
|
}
|
|
398
|
-
|
|
399
|
-
return undefined;
|
|
523
|
+
throw new Error(`Unsupported document format or source for Anthropic: format=${docBlock.format}, source=${docBlock.source.type}`);
|
|
400
524
|
}
|
|
401
525
|
case 'toolUseBlock':
|
|
402
526
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/models/anthropic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/models/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,EAAE,EAAsB,MAAM,mBAAmB,CAAA;AACjE,OAAO,EACL,KAAK,EAIL,qBAAqB,EACrB,mBAAmB,GAGpB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE9F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAE1G,yEAAyE;AACzE,sEAAsE;AACtE,wCAAwC;AACxC,MAAM,8BAA8B,GAAG;IACrC,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,mBAAmB;IACnB,qCAAqC;IACrC,mDAAmD;CACpD,CAAA;AACD;;GAEG;AACH,MAAM,oBAAoB,GAAG,WAAoB,CAAA;AAEjD,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAiDlH,MAAM,OAAO,cAAe,SAAQ,KAA2B;IACrD,OAAO,CAAsB;IAC7B,OAAO,CAAW;IAE1B,YAAY,OAA+B;QACzC,KAAK,EAAE,CAAA;QACP,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAEtE,IAAI,CAAC,OAAO,GAAG;YACb,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,OAAO;YACzC,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,SAAS;YAC7C,GAAG,WAAW;SACf,CAAA;QAED,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QAChF,CAAC;QAED,IAAI,WAAW,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACxC,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;QACtF,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GACb,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;YAEvG,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CACb,sHAAsH,CACvH,CAAA;YACH,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC;gBAC3B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,GAAG,YAAY;aAChB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,YAAY,CAAC,WAAiC;QAC5C,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,WAAW,EAAE,CAAA;IACpD,CAAC;IAED,SAAS;QACP,OAAO,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IACtG,CAAC;IAED;;;;;;;;;OASG;IACM,KAAK,CAAC,WAAW,CAAC,QAAmB,EAAE,OAA4B;QAC1E,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE1F,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,MAAM,GAAuC;gBACjD,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjD,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC9C,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;aACjE,CAAA;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAClD,MAAM,QAAQ,GAAG,cAAc;gBAC7B,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;gBACjE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YAEnD,MAAM,CAAC,KAAK,CAAC,iBAAiB,QAAQ,CAAC,YAAY,wBAAwB,CAAC,CAAA;YAC5E,OAAO,QAAQ,CAAC,YAAY,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,8DAA8D,CAAC,CAAA;YAC3F,OAAO,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,QAAmB,EAAE,OAAuB;QACxD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAClD,MAAM,MAAM,GAAG,cAAc;gBAC3B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC;gBACvD,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAEzC,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAA;YAEhC,IAAI,UAAU,GAAG,SAAS,CAAA;YAE1B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,eAAe,CAAC,CAAC,CAAC;wBACrB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;wBAEpD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAsD,CAAA;wBACrF,IAAI,QAAQ,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;4BACvD,KAAK,CAAC,qBAAqB,GAAG,QAAQ,CAAC,2BAA2B,CAAA;wBACpE,CAAC;wBACD,IAAI,QAAQ,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;4BACnD,KAAK,CAAC,oBAAoB,GAAG,QAAQ,CAAC,uBAAuB,CAAA;wBAC/D,CAAC;wBAED,MAAM;4BACJ,IAAI,EAAE,wBAAwB;4BAC9B,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;yBACzB,CAAA;wBACD,MAAK;oBACP,CAAC;oBAED,KAAK,qBAAqB;wBACxB,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;4BAC5C,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE;oCACL,IAAI,EAAE,cAAc;oCACpB,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI;oCAC9B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE;iCAClC;6BACF,CAAA;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;4BACnD,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAA;4BAC7C,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;gCACjC,MAAM;oCACJ,IAAI,EAAE,6BAA6B;oCACnC,KAAK,EAAE;wCACL,IAAI,EAAE,uBAAuB;wCAC7B,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ;wCAClC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,SAAS;qCACzC;iCACF,CAAA;4BACH,CAAC;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;4BAC5D,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAA;4BAC7C,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE;oCACL,IAAI,EAAE,uBAAuB;oCAC7B,eAAe,EAAE,KAAK,CAAC,aAAa,CAAC,IAA6B;iCACnE;6BACF,CAAA;wBACH,CAAC;6BAAM,CAAC;4BACN,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAA;4BAC7C,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gCACpE,MAAM;oCACJ,IAAI,EAAE,6BAA6B;oCACnC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;iCAC7D,CAAA;4BACH,CAAC;wBACH,CAAC;wBACD,MAAK;oBAEP,KAAK,qBAAqB;wBACxB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;4BACtC,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;6BACrD,CAAA;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;4BACnD,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE;6BACtE,CAAA;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;4BACjD,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;6BACrE,CAAA;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;4BAClD,MAAM;gCACJ,IAAI,EAAE,6BAA6B;gCACnC,KAAK,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE;6BAC3E,CAAA;wBACH,CAAC;wBACD,MAAK;oBAEP,KAAK,oBAAoB;wBACvB,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAA;wBAC5C,MAAK;oBAEP,KAAK,eAAe;wBAClB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;4BAChB,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAA;wBAChD,CAAC;wBACD,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;4BAC5B,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;wBAC3D,CAAC;wBACD,MAAK;oBAEP,KAAK,cAAc;wBACjB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAA;wBAC1D,MAAM;4BACJ,IAAI,EAAE,oBAAoB;4BAC1B,KAAK;yBACN,CAAA;wBACD,MAAM;4BACJ,IAAI,EAAE,uBAAuB;4BAC7B,UAAU;yBACX,CAAA;wBACD,MAAK;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;YAE1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YAC3C,IAAI,8BAA8B,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACxE,MAAM,IAAI,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrD,CAAC;YAED,MAAM,GAAG,GAAG,YAA2C,CAAA;YACvD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,6CAA6C,CAAA;gBAC9E,MAAM,CAAC,KAAK,CAAC,8BAA8B,OAAO,GAAG,CAAC,CAAA;gBACtD,MAAM,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;YACxD,CAAC;YAED,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEO,oBAAoB;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA;QAChC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAA;QAClD,OAAO,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAA;IAC3D,CAAC;IAED,iGAAiG;IACzF,aAAa,CAAC,OAAuD;QAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAA;QAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAC3B,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,IAAI,MAAM,CAAA;QAC/C,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC,aAAa,QAAQ,qDAAqD,CAAC,CAAA;YACvF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAC3B,CAAC;QAED,OAAO,mBAAmB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IACnE,CAAC;IAED,uFAAuF;IAC/E,mBAAmB,CAAC,GAAY;QACtC,MAAM,YAAY,GAAoC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAA;QACpF,IAAI,GAAG,EAAE,CAAC;YACR,6EAA6E;YAC7E,YAAY,CAAC,GAAG,GAAG,GAA0D,CAAA;QAC/E,CAAC;QACD,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;;;;OAKG;IACK,mBAAmB,CAAC,OAAsC,EAAE,GAAY,EAAE,YAAY,GAAG,CAAC;QAChG,gGAAgG;QAChG,2DAA2D;QAC3D,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;gBACnD,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;OAKG;IACK,mBAAmB,CAAC,YAA0B;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAA;QAEzD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,OAAO;gBAAE,OAAO,YAAY,CAAA;YAC7C,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACzG,CAAC;QAED,MAAM,YAAY,GAA+B,EAAE,CAAA;QACnD,IAAI,mBAAmB,GAAG,KAAK,CAAA;QAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;YACjC,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,CACT,oGAAoG,CACrG,CAAA;gBACD,SAAQ;YACV,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW;gBAAE,SAAQ;YAExC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;YACzC,MAAM,YAAY,GAChB,SAAS,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAChH,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3G,IAAI,YAAY,EAAE,CAAC;gBACjB,mBAAmB,GAAG,IAAI,CAAA;gBAC1B,KAAK,EAAE,CAAA;YACT,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAA;QAE/C,IAAI,WAAW,CAAC,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAChD,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACvD,IAAI,SAAS;gBAAE,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACpF,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAEO,cAAc,CAAC,QAAmB,EAAE,OAAuB;QACjE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAElE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;QACvD,+FAA+F;QAC/F,IAAI,kBAAkB,GAAG,CAAC,CAAC,CAAA;QAC3B,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,KAAK,IAAI,YAAY,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,YAAY,IAAI,CAAC,IAAI,kBAAkB,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC;gBACzG,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAA;gBACtC,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC;oBAClG,kBAAkB,GAAG,YAAY,CAAA;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAkC;YAC7C,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;YAC3B,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC,SAAS;YACxE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,kBAAkB,EAAE,OAAO,EAAE,qBAAqB,IAAI,CAAC,CAAC;YAChH,MAAM,EAAE,IAAI;SACb,CAAA;QAED,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YAC7D,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;QACnD,CAAC;QAED,IAAI,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC7C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,WAAyC;aAC7D,CAAC,CAAqB,CAAA;YAEvB,oFAAoF;YACpF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;YACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACxC,IAAI,UAAU,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC;gBACnC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YACnE,CAAC;YAED,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;YAErB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,IAAI,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACjC,OAAO,CAAC,WAAW,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;gBACxC,CAAC;qBAAM,IAAI,KAAK,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACvC,OAAO,CAAC,WAAW,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;gBACvC,CAAC;qBAAM,IAAI,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACxC,OAAO,CAAC,WAAW,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC5E,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAA;QAC1F,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;YAAE,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;QACjG,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAEpE,OAAO,OAAO,CAAA;IAChB,CAAC;IAEO,eAAe,CACrB,QAAmB,EACnB,gBAAsC,EAAE,OAAO,EAAE,KAAK,EAAE,EACxD,kBAAkB,GAAG,CAAC,CAAC,EACvB,qBAAqB,GAAG,CAAC;QAEzB,IAAI,mBAAmB,GAAG,CAAC,CAAA;QAC3B,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;QAE1C,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE;YACnD,MAAM,IAAI,GAAI,GAAG,CAAC,IAAe,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAA;YAChE,MAAM,aAAa,GAAG,YAAY,IAAI,YAAY,KAAK,kBAAkB,CAAA;YAEzE,MAAM,OAAO,GAAkC,EAAE,CAAA;YACjD,IAAI,MAAM,GAAG,KAAK,CAAA;YAClB,IAAI,OAAO,GAAG,KAAK,CAAA;YAEnB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChC,IAAI,CAAC,KAAK;oBAAE,SAAQ;gBAEpB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBACrC,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;4BAClD,MAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAA;wBAC/E,CAAC;oBACH,CAAC;yBAAM,IAAI,aAAa,IAAI,CAAC,OAAO,EAAE,CAAC;wBACrC,uEAAuE;wBACvE,OAAO,GAAG,IAAI,CAAA;wBACd,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,CAAA;wBAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;4BACZ,MAAM,CAAC,IAAI,CACT,YAAY,YAAY,6DAA6D;gCACnF,qCAAqC,CACxC,CAAA;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,mBAAmB,IAAI,CAAC,CAAA;oBAC1B,CAAC;oBACD,SAAQ;gBACV,CAAC;gBAED,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;gBACtD,IAAI,cAAc;oBAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YAClD,CAAC;YAED,yFAAyF;YACzF,4FAA4F;YAC5F,8BAA8B;YAC9B,IAAI,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,qBAAqB,CAAC,EAAE,CAAC;oBAChF,MAAM,CAAC,KAAK,CAAC,YAAY,YAAY,4CAA4C,CAAC,CAAA;gBACpF,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,YAAY,YAAY,qDAAqD,CAAC,CAAA;gBAC7F,CAAC;YACH,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,IAA4B;gBAClC,OAAO;aACR,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CACT,UAAU,mBAAmB,qEAAqE;gBAChG,6EAA6E,CAChF,CAAA;QACH,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,iBAAiB,CACvB,KAAmE;QAQnE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtF,CAAC;IAEO,mBAAmB,CACzB,KAAmB;QAEnB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,WAAW;gBACd,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;YAE3C,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,QAAQ,GAAG,KAAmB,CAAA;gBACpC,IAAI,SAAkE,CAAA;gBAEtE,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACxB,KAAK,MAAM,CAAC;oBACZ,KAAK,KAAK;wBACR,SAAS,GAAG,YAAY,CAAA;wBACxB,MAAK;oBACP,KAAK,KAAK;wBACR,SAAS,GAAG,WAAW,CAAA;wBACvB,MAAK;oBACP,KAAK,KAAK;wBACR,SAAS,GAAG,WAAW,CAAA;wBACvB,MAAK;oBACP,KAAK,MAAM;wBACT,SAAS,GAAG,YAAY,CAAA;wBACxB,MAAK;oBACP;wBACE,MAAM,IAAI,KAAK,CAAC,2CAA2C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;gBACjF,CAAC;gBAED,QAAQ,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC7B,KAAK,kBAAkB;wBACrB,OAAO;4BACL,IAAI,EAAE,OAAO;4BACb,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE,SAAS;gCACrB,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;6BAC1C;yBACF,CAAA;oBACH,KAAK,gBAAgB;wBACnB,OAAO;4BACL,IAAI,EAAE,OAAO;4BACb,MAAM,EAAE;gCACN,IAAI,EAAE,KAAK;gCACX,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG;6BACzB;yBACF,CAAA;oBACH,KAAK,uBAAuB;wBAC1B,MAAM,CAAC,IAAI,CACT,qGAAqG,CACtG,CAAA;wBACD,OAAO,SAAS,CAAA;oBAClB;wBACE,MAAM,IAAI,KAAK,CAAC,2CAA4C,QAAQ,CAAC,MAA2B,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC5G,CAAC;YACH,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,QAAQ,GAAG,KAAsB,CAAA;gBAEvC,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;oBAChF,OAAO;wBACL,IAAI,EAAE,UAAU;wBAChB,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE,iBAAiB;4BAC7B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC1C;wBACD,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;qBACL,CAAA;gBAC7C,CAAC;gBAED,IAAI,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChD,IAAI,WAA+B,CAAA;oBAEnC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;wBAClD,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAA;oBACpC,CAAC;yBAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;wBAC1D,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;4BACvC,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;wBAC/D,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,MAAM,8DAA8D,CAAC,CAAA;wBACvG,CAAC;oBACH,CAAC;oBAED,IAAI,WAAW,EAAE,CAAC;wBAChB,OAAO;4BACL,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,WAAW;yBAClB,CAAA;oBACH,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,KAAK,CACb,+DAA+D,QAAQ,CAAC,MAAM,YAAY,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CACjH,CAAA;YACH,CAAC;YAED,KAAK,cAAc;gBACjB,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,KAAK,CAAC,SAAS;oBACnB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAgC;iBAC9C,CAAA;YAEH,KAAK,YAAY;gBACf,MAAM,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAA;gBAC1F,OAAO,SAAS,CAAA;YAElB,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO;qBAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACT,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;wBAAE,OAAO,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;oBAC1E,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;wBAAE,OAAO,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA;oBAE1F,4EAA4E;oBAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAA4B,CAAC,CAAA;oBACxE,OAAO,SAAS,CAAA;gBAClB,CAAC,CAAC;qBACD,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEjD,IAAI,UAAkD,CAAA;gBAEtD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;gBACjC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxE,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;gBAC7B,CAAC;qBAAM,CAAC;oBACN,UAAU,GAAG,YAAY,CAAA;gBAC3B,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,KAAK,CAAC,SAAS;oBAC5B,OAAO,EAAE,UAAU;oBACnB,QAAQ,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO;iBACD,CAAA;YACrC,CAAC;YAED,KAAK,gBAAgB;gBACnB,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;oBACpB,OAAO;wBACL,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;wBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;qBACe,CAAA;gBAC7C,CAAC;qBAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;oBACjC,OAAO;wBACL,IAAI,EAAE,mBAAmB;wBACzB,IAAI,EAAE,KAAK,CAAC,eAAe;qBACc,CAAA;gBAC7C,CAAC;gBACD,OAAO,SAAS,CAAA;YAElB,KAAK,iBAAiB;gBACpB,OAAO,SAAS,CAAA;YAElB;gBACE,OAAO,SAAS,CAAA;QACpB,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,eAAuB;QAC5C,QAAQ,eAAe,EAAE,CAAC;YACxB,KAAK,UAAU;gBACb,OAAO,SAAS,CAAA;YAClB,KAAK,YAAY;gBACf,OAAO,WAAW,CAAA;YACpB,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAA;YACvB,KAAK,UAAU;gBACb,OAAO,SAAS,CAAA;YAClB,KAAK,YAAY;gBACf,OAAO,WAAW,CAAA;YACpB,KAAK,SAAS;gBACZ,OAAO,SAAS,CAAA;YAClB;gBACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,eAAe,mCAAmC,CAAC,CAAA;gBAC/E,OAAO,eAAe,CAAA;QAC1B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -7,17 +7,15 @@
|
|
|
7
7
|
* @see https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html
|
|
8
8
|
*/
|
|
9
9
|
import { type BedrockRuntimeClientConfig } from '@aws-sdk/client-bedrock-runtime';
|
|
10
|
-
import { type BaseModelConfig, type CacheConfig, type CountTokensOptions, Model, type StreamOptions } from '../models/model.js';
|
|
10
|
+
import { type BaseModelConfig, type CacheConfig, type CacheTTL, type CountTokensOptions, Model, type StreamOptions } from '../models/model.js';
|
|
11
11
|
import type { Message } from '../types/messages.js';
|
|
12
12
|
import type { ModelStreamEvent } from '../models/streaming.js';
|
|
13
13
|
import type { JSONValue } from '../types/json.js';
|
|
14
14
|
/**
|
|
15
15
|
* TTL durations accepted by Bedrock for prompt-cache checkpoints.
|
|
16
16
|
*
|
|
17
|
-
* Bedrock
|
|
18
|
-
*
|
|
19
|
-
* validates the value server-side and rejects unsupported values with `ValidationException`,
|
|
20
|
-
* so this stays correct as AWS adds new TTL values without an SDK update.
|
|
17
|
+
* Bedrock accepts `'5m'` (default) and `'1h'`, and validates the value server-side, rejecting
|
|
18
|
+
* unsupported values with `ValidationException`.
|
|
21
19
|
*
|
|
22
20
|
* Bedrock also requires checkpoint TTLs to be **non-increasing** across
|
|
23
21
|
* `toolConfig` → system → messages — setting a longer TTL on a later checkpoint than an
|
|
@@ -25,17 +23,11 @@ import type { JSONValue } from '../types/json.js';
|
|
|
25
23
|
*
|
|
26
24
|
* @see https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_CachePointBlock.html
|
|
27
25
|
*/
|
|
28
|
-
export type BedrockCacheTTL =
|
|
26
|
+
export type BedrockCacheTTL = CacheTTL;
|
|
29
27
|
/**
|
|
30
|
-
*
|
|
31
|
-
* {@link CacheConfig} for the Bedrock provider.
|
|
28
|
+
* Prompt-caching configuration for the Bedrock provider.
|
|
32
29
|
*/
|
|
33
|
-
export
|
|
34
|
-
/** TTL applied to the auto-injected cache point appended after `toolConfig.tools`. */
|
|
35
|
-
toolsTTL?: BedrockCacheTTL;
|
|
36
|
-
/** TTL applied to the auto-injected cache point appended to the last user message. */
|
|
37
|
-
messagesTTL?: BedrockCacheTTL;
|
|
38
|
-
}
|
|
30
|
+
export type BedrockCacheConfig = CacheConfig;
|
|
39
31
|
/**
|
|
40
32
|
* Redaction configuration for Bedrock guardrails.
|
|
41
33
|
* Controls whether and how blocked content is replaced.
|
|
@@ -271,11 +263,25 @@ export declare class BedrockModel extends Model<BedrockModelConfig> {
|
|
|
271
263
|
* Determines if caching should be enabled.
|
|
272
264
|
* Returns true when:
|
|
273
265
|
* - strategy is 'anthropic' (explicit enable)
|
|
274
|
-
* - strategy is 'auto' and model supports caching (auto-detect)
|
|
266
|
+
* - strategy is 'auto' (the default) and the model supports caching (auto-detect)
|
|
275
267
|
*
|
|
276
|
-
* @returns True if caching should be enabled
|
|
268
|
+
* @returns True if caching should be enabled.
|
|
277
269
|
*/
|
|
278
270
|
private _shouldEnableCaching;
|
|
271
|
+
/**
|
|
272
|
+
* Whether to auto-inject a cache point at the end of the system prompt.
|
|
273
|
+
*
|
|
274
|
+
* @param system - The system content blocks that will be sent to Bedrock.
|
|
275
|
+
* @returns True if a cache point should be appended.
|
|
276
|
+
*/
|
|
277
|
+
private _shouldCacheSystem;
|
|
278
|
+
/**
|
|
279
|
+
* Fills the resolved system-section TTL into a system cache point that carries none of its own,
|
|
280
|
+
* whether auto-injected or caller-placed.
|
|
281
|
+
*
|
|
282
|
+
* @param request - The formatted request, with `system` and `toolConfig` already populated.
|
|
283
|
+
*/
|
|
284
|
+
private _applySystemCacheTTL;
|
|
279
285
|
/**
|
|
280
286
|
* Updates the model configuration.
|
|
281
287
|
* Merges the provided configuration with existing settings.
|
|
@@ -381,6 +387,7 @@ export declare class BedrockModel extends Model<BedrockModelConfig> {
|
|
|
381
387
|
* @param content - Content blocks of the last user message (modified in place)
|
|
382
388
|
* @param placedIdx - Index of the caller-placed cache point
|
|
383
389
|
* @param msgIdx - Index of the message, for logging
|
|
390
|
+
* @param ttl - TTL for the honored cache point. Falsy leaves the Bedrock default.
|
|
384
391
|
* @returns True when the point was kept, possibly relocated. False when nothing cacheable precedes
|
|
385
392
|
* it, so the point was removed: Bedrock rejects a cache point with no content ahead of it ("There
|
|
386
393
|
* is nothing available to cache"). The caller then retries automatic placement, which lands a point
|
|
@@ -399,6 +406,7 @@ export declare class BedrockModel extends Model<BedrockModelConfig> {
|
|
|
399
406
|
* against the provider's cache-point budget.
|
|
400
407
|
*
|
|
401
408
|
* @param messages - List of messages to inject cache point into (modified in place)
|
|
409
|
+
* @param ttl - TTL for the injected cache point. Falsy leaves the Bedrock default.
|
|
402
410
|
*/
|
|
403
411
|
private _injectCachePoint;
|
|
404
412
|
/**
|
|
@@ -442,7 +450,7 @@ export declare class BedrockModel extends Model<BedrockModelConfig> {
|
|
|
442
450
|
*/
|
|
443
451
|
private _formatContentBlock;
|
|
444
452
|
/**
|
|
445
|
-
* Format media source (image/video) for Bedrock API.
|
|
453
|
+
* Format media source (audio/image/video) for Bedrock API.
|
|
446
454
|
* Handles bytes, S3 locations, and s3:// URLs.
|
|
447
455
|
*
|
|
448
456
|
* @param source - Media source
|