donobu 2.15.0 → 2.15.1

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.
Files changed (159) hide show
  1. package/dist/apis/FlowsFilesApi.d.ts.map +1 -1
  2. package/dist/apis/FlowsFilesApi.js +5 -2
  3. package/dist/apis/FlowsFilesApi.js.map +1 -1
  4. package/dist/assets/generated/parameter-schemas.json +101 -0
  5. package/dist/assets/generated/version +1 -1
  6. package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
  7. package/dist/bindings/PageInteractionTracker.js +2 -2
  8. package/dist/bindings/PageInteractionTracker.js.map +1 -1
  9. package/dist/clients/AnthropicAwsBedrockGptClient.d.ts +1 -20
  10. package/dist/clients/AnthropicAwsBedrockGptClient.d.ts.map +1 -1
  11. package/dist/clients/AnthropicAwsBedrockGptClient.js +12 -329
  12. package/dist/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
  13. package/dist/clients/AnthropicGptClient.d.ts +0 -8
  14. package/dist/clients/AnthropicGptClient.d.ts.map +1 -1
  15. package/dist/clients/AnthropicGptClient.js +8 -22
  16. package/dist/clients/AnthropicGptClient.js.map +1 -1
  17. package/dist/clients/GoogleGptClient.d.ts +4 -20
  18. package/dist/clients/GoogleGptClient.d.ts.map +1 -1
  19. package/dist/clients/GoogleGptClient.js +23 -299
  20. package/dist/clients/GoogleGptClient.js.map +1 -1
  21. package/dist/clients/OpenAiGptClient.d.ts +0 -6
  22. package/dist/clients/OpenAiGptClient.d.ts.map +1 -1
  23. package/dist/clients/OpenAiGptClient.js +4 -8
  24. package/dist/clients/OpenAiGptClient.js.map +1 -1
  25. package/dist/clients/VercelAiGptClient.d.ts +3 -1
  26. package/dist/clients/VercelAiGptClient.d.ts.map +1 -1
  27. package/dist/clients/VercelAiGptClient.js +18 -14
  28. package/dist/clients/VercelAiGptClient.js.map +1 -1
  29. package/dist/esm/apis/FlowsFilesApi.d.ts.map +1 -1
  30. package/dist/esm/apis/FlowsFilesApi.js +5 -2
  31. package/dist/esm/apis/FlowsFilesApi.js.map +1 -1
  32. package/dist/esm/assets/generated/parameter-schemas.json +101 -0
  33. package/dist/esm/assets/generated/version +1 -1
  34. package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
  35. package/dist/esm/bindings/PageInteractionTracker.js +2 -2
  36. package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
  37. package/dist/esm/clients/AnthropicAwsBedrockGptClient.d.ts +1 -20
  38. package/dist/esm/clients/AnthropicAwsBedrockGptClient.d.ts.map +1 -1
  39. package/dist/esm/clients/AnthropicAwsBedrockGptClient.js +12 -329
  40. package/dist/esm/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
  41. package/dist/esm/clients/AnthropicGptClient.d.ts +0 -8
  42. package/dist/esm/clients/AnthropicGptClient.d.ts.map +1 -1
  43. package/dist/esm/clients/AnthropicGptClient.js +8 -22
  44. package/dist/esm/clients/AnthropicGptClient.js.map +1 -1
  45. package/dist/esm/clients/GoogleGptClient.d.ts +4 -20
  46. package/dist/esm/clients/GoogleGptClient.d.ts.map +1 -1
  47. package/dist/esm/clients/GoogleGptClient.js +23 -299
  48. package/dist/esm/clients/GoogleGptClient.js.map +1 -1
  49. package/dist/esm/clients/OpenAiGptClient.d.ts +0 -6
  50. package/dist/esm/clients/OpenAiGptClient.d.ts.map +1 -1
  51. package/dist/esm/clients/OpenAiGptClient.js +4 -8
  52. package/dist/esm/clients/OpenAiGptClient.js.map +1 -1
  53. package/dist/esm/clients/VercelAiGptClient.d.ts +3 -1
  54. package/dist/esm/clients/VercelAiGptClient.d.ts.map +1 -1
  55. package/dist/esm/clients/VercelAiGptClient.js +18 -14
  56. package/dist/esm/clients/VercelAiGptClient.js.map +1 -1
  57. package/dist/esm/managers/DonobuFlow.d.ts +6 -2
  58. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  59. package/dist/esm/managers/DonobuFlow.js +93 -37
  60. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  61. package/dist/esm/managers/ToolManager.js +2 -2
  62. package/dist/esm/managers/ToolManager.js.map +1 -1
  63. package/dist/esm/models/GptMessage.d.ts +3 -3
  64. package/dist/esm/models/GptMessage.d.ts.map +1 -1
  65. package/dist/esm/persistence/FlowsPersistence.d.ts +4 -4
  66. package/dist/esm/persistence/FlowsPersistence.d.ts.map +1 -1
  67. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts +2 -3
  68. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
  69. package/dist/esm/persistence/FlowsPersistenceAwsS3.js +8 -6
  70. package/dist/esm/persistence/FlowsPersistenceAwsS3.js.map +1 -1
  71. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts +2 -3
  72. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
  73. package/dist/esm/persistence/FlowsPersistenceFilesystem.js +5 -4
  74. package/dist/esm/persistence/FlowsPersistenceFilesystem.js.map +1 -1
  75. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +2 -3
  76. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  77. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js +7 -5
  78. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  79. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts +2 -3
  80. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
  81. package/dist/esm/persistence/FlowsPersistenceSqlite.js +8 -6
  82. package/dist/esm/persistence/FlowsPersistenceSqlite.js.map +1 -1
  83. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts +2 -2
  84. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
  85. package/dist/esm/persistence/FlowsPersistenceSupabase.js +5 -3
  86. package/dist/esm/persistence/FlowsPersistenceSupabase.js.map +1 -1
  87. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts +2 -2
  88. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
  89. package/dist/esm/persistence/FlowsPersistenceVolatile.js +5 -3
  90. package/dist/esm/persistence/FlowsPersistenceVolatile.js.map +1 -1
  91. package/dist/esm/playwrightTestExtensions.js +4 -4
  92. package/dist/esm/playwrightTestExtensions.js.map +1 -1
  93. package/dist/esm/tools/AssertTool.js +2 -2
  94. package/dist/esm/tools/AssertTool.js.map +1 -1
  95. package/dist/esm/tools/DetectBrokenLinksTool.d.ts.map +1 -1
  96. package/dist/esm/tools/DetectBrokenLinksTool.js +4 -2
  97. package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
  98. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +3 -3
  99. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  100. package/dist/esm/utils/MiscUtils.d.ts +8 -11
  101. package/dist/esm/utils/MiscUtils.d.ts.map +1 -1
  102. package/dist/esm/utils/MiscUtils.js +90 -54
  103. package/dist/esm/utils/MiscUtils.js.map +1 -1
  104. package/dist/esm/utils/PlaywrightUtils.d.ts +6 -3
  105. package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
  106. package/dist/esm/utils/PlaywrightUtils.js +9 -5
  107. package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
  108. package/dist/managers/DonobuFlow.d.ts +6 -2
  109. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  110. package/dist/managers/DonobuFlow.js +93 -37
  111. package/dist/managers/DonobuFlow.js.map +1 -1
  112. package/dist/managers/ToolManager.js +2 -2
  113. package/dist/managers/ToolManager.js.map +1 -1
  114. package/dist/models/GptMessage.d.ts +3 -3
  115. package/dist/models/GptMessage.d.ts.map +1 -1
  116. package/dist/persistence/FlowsPersistence.d.ts +4 -4
  117. package/dist/persistence/FlowsPersistence.d.ts.map +1 -1
  118. package/dist/persistence/FlowsPersistenceAwsS3.d.ts +2 -3
  119. package/dist/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
  120. package/dist/persistence/FlowsPersistenceAwsS3.js +8 -6
  121. package/dist/persistence/FlowsPersistenceAwsS3.js.map +1 -1
  122. package/dist/persistence/FlowsPersistenceFilesystem.d.ts +2 -3
  123. package/dist/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
  124. package/dist/persistence/FlowsPersistenceFilesystem.js +5 -4
  125. package/dist/persistence/FlowsPersistenceFilesystem.js.map +1 -1
  126. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +2 -3
  127. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  128. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js +7 -5
  129. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  130. package/dist/persistence/FlowsPersistenceSqlite.d.ts +2 -3
  131. package/dist/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
  132. package/dist/persistence/FlowsPersistenceSqlite.js +8 -6
  133. package/dist/persistence/FlowsPersistenceSqlite.js.map +1 -1
  134. package/dist/persistence/FlowsPersistenceSupabase.d.ts +2 -2
  135. package/dist/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
  136. package/dist/persistence/FlowsPersistenceSupabase.js +5 -3
  137. package/dist/persistence/FlowsPersistenceSupabase.js.map +1 -1
  138. package/dist/persistence/FlowsPersistenceVolatile.d.ts +2 -2
  139. package/dist/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
  140. package/dist/persistence/FlowsPersistenceVolatile.js +5 -3
  141. package/dist/persistence/FlowsPersistenceVolatile.js.map +1 -1
  142. package/dist/playwrightTestExtensions.js +4 -4
  143. package/dist/playwrightTestExtensions.js.map +1 -1
  144. package/dist/tools/AssertTool.js +2 -2
  145. package/dist/tools/AssertTool.js.map +1 -1
  146. package/dist/tools/DetectBrokenLinksTool.d.ts.map +1 -1
  147. package/dist/tools/DetectBrokenLinksTool.js +4 -2
  148. package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
  149. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +3 -3
  150. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  151. package/dist/utils/MiscUtils.d.ts +8 -11
  152. package/dist/utils/MiscUtils.d.ts.map +1 -1
  153. package/dist/utils/MiscUtils.js +90 -54
  154. package/dist/utils/MiscUtils.js.map +1 -1
  155. package/dist/utils/PlaywrightUtils.d.ts +6 -3
  156. package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
  157. package/dist/utils/PlaywrightUtils.js +9 -5
  158. package/dist/utils/PlaywrightUtils.js.map +1 -1
  159. package/package.json +4 -2
@@ -1,355 +1,38 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AnthropicAwsBedrockGptClient = void 0;
4
- const Logger_1 = require("../utils/Logger");
5
- const JsonUtils_1 = require("../utils/JsonUtils");
6
4
  const GptClient_1 = require("./GptClient");
7
- const GptModelNotFoundException_1 = require("../exceptions/GptModelNotFoundException");
8
- const GptPlatformAuthenticationFailedException_1 = require("../exceptions/GptPlatformAuthenticationFailedException");
9
- const GptPlatformInternalErrorException_1 = require("../exceptions/GptPlatformInternalErrorException");
10
- const GptPlatformNotReachableException_1 = require("../exceptions/GptPlatformNotReachableException");
11
- const client_bedrock_runtime_1 = require("@aws-sdk/client-bedrock-runtime");
12
- const GptPlatformRateLimitedException_1 = require("../exceptions/GptPlatformRateLimitedException");
5
+ const amazon_bedrock_1 = require("@ai-sdk/amazon-bedrock");
6
+ const VercelAiGptClient_1 = require("./VercelAiGptClient");
7
+ const MiscUtils_1 = require("../utils/MiscUtils");
13
8
  /**
14
9
  * A GPT client implemented using AWS Bedrock for Anthropic models.
15
10
  * @see https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-anthropic-claude.html
16
11
  */
17
12
  class AnthropicAwsBedrockGptClient extends GptClient_1.GptClient {
18
- /**
19
- * Create a new instance.
20
- */
21
13
  constructor(anthropicAwsBedrockConfig) {
22
14
  super(anthropicAwsBedrockConfig);
23
15
  this.anthropicAwsBedrockConfig = anthropicAwsBedrockConfig;
24
- this.bedrockClient = new client_bedrock_runtime_1.BedrockRuntimeClient({
16
+ const bedrock = (0, amazon_bedrock_1.createAmazonBedrock)({
25
17
  region: anthropicAwsBedrockConfig.region,
26
- credentials: anthropicAwsBedrockConfig.accessKeyId
27
- ? {
28
- accessKeyId: anthropicAwsBedrockConfig.accessKeyId,
29
- secretAccessKey: anthropicAwsBedrockConfig.secretAccessKey,
30
- }
31
- : undefined,
18
+ accessKeyId: anthropicAwsBedrockConfig.accessKeyId,
19
+ secretAccessKey: anthropicAwsBedrockConfig.secretAccessKey,
32
20
  });
21
+ const model = bedrock(anthropicAwsBedrockConfig.modelName);
22
+ this.delegate = new VercelAiGptClient_1.VercelAiGptClient(model);
33
23
  }
34
24
  async ping() {
35
- try {
36
- // Build a minimal request to check if the model exists and credentials are valid.
37
- const command = new client_bedrock_runtime_1.InvokeModelCommand({
38
- modelId: this.anthropicAwsBedrockConfig.modelName,
39
- contentType: 'application/json',
40
- accept: 'application/json',
41
- body: JSON.stringify({
42
- anthropic_version: 'bedrock-2023-05-31',
43
- max_tokens: 1,
44
- messages: [
45
- { role: 'user', content: [{ type: 'text', text: 'ping' }] },
46
- ],
47
- }),
48
- });
49
- await this.bedrockClient.send(command);
50
- }
51
- catch (error) {
52
- if (error.name === 'ResourceNotFoundException' ||
53
- (error.message && error.message.includes('model not found'))) {
54
- throw new GptModelNotFoundException_1.GptModelNotFoundException(this.anthropicAwsBedrockConfig.type, this.anthropicAwsBedrockConfig.modelName);
55
- }
56
- else if (error.name === 'AccessDeniedException' ||
57
- error.name === 'UnrecognizedClientException' ||
58
- error.name === 'InvalidSignatureException') {
59
- throw new GptPlatformAuthenticationFailedException_1.GptPlatformAuthenticationFailedException(this.anthropicAwsBedrockConfig.type);
60
- }
61
- else if (error.name === 'ServiceUnavailableException') {
62
- throw new GptPlatformNotReachableException_1.GptPlatformNotReachableException(this.anthropicAwsBedrockConfig.type);
63
- }
64
- else {
65
- throw new GptPlatformInternalErrorException_1.GptPlatformInternalErrorException(error.message || 'Unknown Bedrock error');
66
- }
67
- }
25
+ return this.delegate.ping();
68
26
  }
69
27
  async getMessage(messages) {
70
- const systemPrompt = this.extractSystemPrompt(messages);
71
- const nonSystemMessages = messages
72
- .filter((msg) => msg.type !== 'system')
73
- .map(AnthropicAwsBedrockGptClient.chatRequestMessageFromGptMessage);
74
- const bedrockRequest = {
75
- anthropic_version: 'bedrock-2023-05-31',
76
- max_tokens: AnthropicAwsBedrockGptClient.MAX_TOKENS,
77
- temperature: 0.0,
78
- system: systemPrompt,
79
- messages: nonSystemMessages,
80
- };
81
- try {
82
- const command = new client_bedrock_runtime_1.InvokeModelCommand({
83
- modelId: this.anthropicAwsBedrockConfig.modelName,
84
- contentType: 'application/json',
85
- accept: 'application/json',
86
- body: JSON.stringify(bedrockRequest),
87
- });
88
- const response = await this.bedrockClient.send(command);
89
- const responseBody = JSON.parse(Buffer.from(response.body).toString('utf-8'));
90
- const text = responseBody.content[0].text;
91
- // Bedrock currently doesn't provide token usage in the same format as Anthropic direct API
92
- // We would need to adapt this if/when Bedrock adds token usage metrics
93
- const promptTokensUsed = responseBody.usage?.input_tokens || 0;
94
- const completionTokensUsed = responseBody.usage?.output_tokens || 0;
95
- return {
96
- type: 'assistant',
97
- text,
98
- promptTokensUsed,
99
- completionTokensUsed,
100
- };
101
- }
102
- catch (error) {
103
- throw await this.mapErrorToDonobuException(error);
104
- }
28
+ return this.delegate.getMessage(MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages));
105
29
  }
106
30
  async getStructuredOutput(messages, jsonSchema) {
107
- const systemPrompt = this.extractSystemPrompt(messages);
108
- const nonSystemMessages = messages
109
- .filter((msg) => msg.type !== 'system')
110
- .map(AnthropicAwsBedrockGptClient.chatRequestMessageFromGptMessage);
111
- const bedrockRequest = {
112
- anthropic_version: 'bedrock-2023-05-31',
113
- max_tokens: AnthropicAwsBedrockGptClient.MAX_TOKENS,
114
- temperature: 0.0,
115
- system: systemPrompt,
116
- messages: nonSystemMessages,
117
- tools: [
118
- {
119
- name: 'StructuredOutputTool',
120
- description: 'Call this tool with the described parameters',
121
- input_schema: jsonSchema,
122
- },
123
- ],
124
- tool_choice: {
125
- name: 'StructuredOutputTool',
126
- type: 'tool',
127
- disable_parallel_tool_use: true,
128
- },
129
- };
130
- try {
131
- const command = new client_bedrock_runtime_1.InvokeModelCommand({
132
- modelId: this.anthropicAwsBedrockConfig.modelName,
133
- contentType: 'application/json',
134
- accept: 'application/json',
135
- body: JSON.stringify(bedrockRequest),
136
- });
137
- const response = await this.bedrockClient.send(command);
138
- const responseBody = JSON.parse(Buffer.from(response.body).toString('utf-8'));
139
- const item = responseBody.content[0];
140
- const contentType = item.type;
141
- let respObj;
142
- if (contentType === 'tool_use') {
143
- respObj = item.input;
144
- }
145
- else if (contentType === 'text') {
146
- throw new Error('Unsupported content type: text');
147
- }
148
- else {
149
- throw new Error(`Unexpected content type: ${contentType}`);
150
- }
151
- const promptTokensUsed = responseBody.usage?.input_tokens || 0;
152
- const completionTokensUsed = responseBody.usage?.output_tokens || 0;
153
- return {
154
- type: 'structured_output',
155
- output: respObj,
156
- promptTokensUsed,
157
- completionTokensUsed,
158
- };
159
- }
160
- catch (error) {
161
- throw await this.mapErrorToDonobuException(error);
162
- }
31
+ return this.delegate.getStructuredOutput(MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages), jsonSchema);
163
32
  }
164
33
  async getToolCalls(messages, tools) {
165
- const systemPrompt = this.extractSystemPrompt(messages);
166
- const nonSystemMessages = messages
167
- .filter((msg) => msg.type !== 'system')
168
- .map(AnthropicAwsBedrockGptClient.chatRequestMessageFromGptMessage);
169
- // Apply user message merging for compatibility with Anthropic's expectations
170
- AnthropicAwsBedrockGptClient.shenanigansUserMessageMerge(nonSystemMessages);
171
- const bedrockRequest = {
172
- anthropic_version: 'bedrock-2023-05-31',
173
- max_tokens: AnthropicAwsBedrockGptClient.MAX_TOKENS,
174
- temperature: 0.0,
175
- system: systemPrompt,
176
- messages: nonSystemMessages,
177
- tool_choice: { type: 'any' },
178
- tools: tools.length
179
- ? tools.map(AnthropicAwsBedrockGptClient.toolChoiceFromTool)
180
- : undefined,
181
- };
182
- try {
183
- const command = new client_bedrock_runtime_1.InvokeModelCommand({
184
- modelId: this.anthropicAwsBedrockConfig.modelName,
185
- contentType: 'application/json',
186
- accept: 'application/json',
187
- body: JSON.stringify(bedrockRequest),
188
- });
189
- const response = await this.bedrockClient.send(command);
190
- const responseBody = JSON.parse(Buffer.from(response.body).toString('utf-8'));
191
- const proposedToolCalls = responseBody.content.map((item) => {
192
- const contentType = item.type;
193
- if (contentType === 'tool_use') {
194
- const tool = tools.find((t) => t.name === item.name);
195
- if (!tool) {
196
- throw new Error('Unable to find matching tool for tool call');
197
- }
198
- return {
199
- name: item.name,
200
- parameters: item.input,
201
- toolCallId: item.id,
202
- };
203
- }
204
- else if (contentType === 'text') {
205
- throw new Error('Unsupported content type: text');
206
- }
207
- else {
208
- throw new Error(`Unexpected content type: ${contentType}`);
209
- }
210
- });
211
- const promptTokensUsed = responseBody.usage?.input_tokens || 0;
212
- const completionTokensUsed = responseBody.usage?.output_tokens || 0;
213
- return {
214
- type: 'proposed_tool_calls',
215
- proposedToolCalls,
216
- promptTokensUsed,
217
- completionTokensUsed,
218
- };
219
- }
220
- catch (error) {
221
- throw await this.mapErrorToDonobuException(error);
222
- }
223
- }
224
- /**
225
- * Extract system prompt from messages
226
- */
227
- extractSystemPrompt(messages) {
228
- const systemMessages = messages.filter((msg) => msg.type === 'system');
229
- if (systemMessages.length === 0) {
230
- return '';
231
- }
232
- // Concatenate all system prompts
233
- return systemMessages.map((msg) => msg.text).join('\n\n');
234
- }
235
- /**
236
- * Maps AWS SDK errors to our application-specific exceptions
237
- */
238
- async mapErrorToDonobuException(error) {
239
- Logger_1.appLogger.error(`Bedrock error: ${JSON.stringify(JsonUtils_1.JsonUtils.objectToJson(error))}`);
240
- if (error.name === 'ResourceNotFoundException' ||
241
- (error.message && error.message.includes('model not found'))) {
242
- return new GptModelNotFoundException_1.GptModelNotFoundException(this.anthropicAwsBedrockConfig.type, this.anthropicAwsBedrockConfig.modelName);
243
- }
244
- else if (error.name === 'AccessDeniedException' ||
245
- error.name === 'UnrecognizedClientException' ||
246
- error.name === 'InvalidSignatureException') {
247
- return new GptPlatformAuthenticationFailedException_1.GptPlatformAuthenticationFailedException(this.anthropicAwsBedrockConfig.type);
248
- }
249
- else if (error.name === 'ServiceUnavailableException') {
250
- return new GptPlatformNotReachableException_1.GptPlatformNotReachableException(this.anthropicAwsBedrockConfig.type);
251
- }
252
- else if (error.name === 'ThrottlingException') {
253
- return new GptPlatformRateLimitedException_1.GptPlatformRateLimitedException(this.anthropicAwsBedrockConfig.type);
254
- }
255
- else {
256
- return new GptPlatformInternalErrorException_1.GptPlatformInternalErrorException(error.message || 'Unknown Bedrock error');
257
- }
258
- }
259
- /**
260
- * Merges adjacent user messages because Anthropic will reject requests that do not delicately
261
- * flip-flop between "user" and "assistant" roles.
262
- */
263
- static shenanigansUserMessageMerge(messages) {
264
- for (let i = messages.length - 1; i > 0; i--) {
265
- const message = messages[i];
266
- const adjacentMessage = messages[i - 1];
267
- if (message.role === 'user' && adjacentMessage.role === 'user') {
268
- adjacentMessage.content.push(...message.content);
269
- messages.splice(i, 1);
270
- }
271
- }
272
- }
273
- static chatRequestMessageFromGptMessage(gptMessage) {
274
- if (gptMessage.type === 'assistant') {
275
- return {
276
- role: 'assistant',
277
- content: [
278
- {
279
- type: 'text',
280
- text: gptMessage.text,
281
- },
282
- ],
283
- };
284
- }
285
- if (gptMessage.type === 'structured_output') {
286
- const output = gptMessage.output;
287
- return {
288
- role: 'assistant',
289
- content: [
290
- {
291
- type: 'text',
292
- text: JSON.stringify(JsonUtils_1.JsonUtils.objectToJson(output), null, 2),
293
- },
294
- ],
295
- };
296
- }
297
- if (gptMessage.type === 'proposed_tool_calls') {
298
- return {
299
- role: 'assistant',
300
- content: gptMessage.proposedToolCalls.map((tc) => ({
301
- type: 'tool_use',
302
- id: tc.toolCallId,
303
- name: tc.name,
304
- input: JsonUtils_1.JsonUtils.objectToJson(tc.parameters),
305
- })),
306
- };
307
- }
308
- if (gptMessage.type === 'user') {
309
- return {
310
- role: 'user',
311
- content: gptMessage.items.map((item) => {
312
- if (item.type === 'png') {
313
- return {
314
- type: 'image',
315
- source: {
316
- type: 'base64',
317
- media_type: 'image/png',
318
- data: Buffer.from(item.bytes).toString('base64'),
319
- },
320
- };
321
- }
322
- else {
323
- return {
324
- type: 'text',
325
- text: item.text,
326
- };
327
- }
328
- }),
329
- };
330
- }
331
- if (gptMessage.type === 'tool_call_result') {
332
- return {
333
- role: 'user',
334
- content: [
335
- {
336
- type: 'tool_result',
337
- tool_use_id: gptMessage.toolCallId,
338
- content: gptMessage.data,
339
- },
340
- ],
341
- };
342
- }
343
- throw new Error(`Unsupported message type: ${JsonUtils_1.JsonUtils.objectToJson(gptMessage)}`);
344
- }
345
- static toolChoiceFromTool(tool) {
346
- return {
347
- name: tool.name,
348
- description: tool.description,
349
- input_schema: tool.inputSchema,
350
- };
34
+ return this.delegate.getToolCalls(MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages), tools);
351
35
  }
352
36
  }
353
37
  exports.AnthropicAwsBedrockGptClient = AnthropicAwsBedrockGptClient;
354
- AnthropicAwsBedrockGptClient.MAX_TOKENS = 8192;
355
38
  //# sourceMappingURL=AnthropicAwsBedrockGptClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnthropicAwsBedrockGptClient.js","sourceRoot":"","sources":["../../../src/clients/AnthropicAwsBedrockGptClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnthropicAwsBedrockGptClient.js","sourceRoot":"","sources":["../../../src/clients/AnthropicAwsBedrockGptClient.ts"],"names":[],"mappings":";;;AAAA,2CAAoD;AASpD,2DAA6D;AAC7D,2DAAwD;AACxD,kDAA+C;AAE/C;;;GAGG;AACH,MAAa,4BAA6B,SAAQ,qBAAS;IAGzD,YACmB,yBAAoD;QAErE,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAFhB,8BAAyB,GAAzB,yBAAyB,CAA2B;QAGrE,MAAM,OAAO,GAAG,IAAA,oCAAmB,EAAC;YAClC,MAAM,EAAE,yBAAyB,CAAC,MAAM;YACxC,WAAW,EAAE,yBAAyB,CAAC,WAAW;YAClD,eAAe,EAAE,yBAAyB,CAAC,eAAe;SAC3D,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,IAAI,qCAAiB,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,QAAsB;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAC7B,qBAAS,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAC9C,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC9B,QAAsB,EACtB,UAAuB;QAEvB,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CACtC,qBAAS,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAC7C,UAAU,CACX,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,QAAsB,EACtB,KAAmB;QAEnB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAC/B,qBAAS,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAC7C,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA7CD,oEA6CC"}
@@ -16,9 +16,6 @@ export declare class AnthropicGptClient extends GptClient {
16
16
  private static readonly CONTENT_TYPE_HEADER_VALUE;
17
17
  private static readonly MAX_TOKENS;
18
18
  private readonly headers;
19
- /**
20
- * Create a new instance.
21
- */
22
19
  constructor(anthropicConfig: AnthropicConfig);
23
20
  ping(): Promise<void>;
24
21
  getMessage(messages: GptMessage[]): Promise<AssistantMessage>;
@@ -26,11 +23,6 @@ export declare class AnthropicGptClient extends GptClient {
26
23
  getToolCalls(messages: GptMessage[], tools: ToolOption[]): Promise<ProposedToolCallsMessage>;
27
24
  private mapErrorResponseToDonobuException;
28
25
  private makeRequest;
29
- /**
30
- * Merges adjacent user messages because Anthropic will reject requests that do not delicately
31
- * flip-flop between "user" and "assistant" roles.
32
- */
33
- private static shenanigansUserMessageMerge;
34
26
  private static chatRequestMessageFromGptMessage;
35
27
  private static toolChoiceFromTool;
36
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AnthropicGptClient.d.ts","sourceRoot":"","sources":["../../../src/clients/AnthropicGptClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;IAc5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAbnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAAU;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAuB;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAgB;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAsB;IACvE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAQ;IAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC;;OAEG;gBACiC,eAAe,EAAE,eAAe;IAUvD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAerB,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkC7D,mBAAmB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,uBAAuB,CAAC;IAyDtB,YAAY,CACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,UAAU,EAAE,GAClB,OAAO,CAAC,wBAAwB,CAAC;YAsEtB,iCAAiC;YA0BjC,WAAW;IAwBzB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAc1C,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAgF/C,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAOlC"}
1
+ {"version":3,"file":"AnthropicGptClient.d.ts","sourceRoot":"","sources":["../../../src/clients/AnthropicGptClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;IAW5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAAU;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAuB;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAgB;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAsB;IACvE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAQ;IAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEE,eAAe,EAAE,eAAe;IAUvD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAerB,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkC7D,mBAAmB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,uBAAuB,CAAC;IAyDtB,YAAY,CACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,UAAU,EAAE,GAClB,OAAO,CAAC,wBAAwB,CAAC;YAqEtB,iCAAiC;YA0BjC,WAAW;IAwBzB,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAkF/C,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAOlC"}
@@ -8,14 +8,12 @@ const GptModelNotFoundException_1 = require("../exceptions/GptModelNotFoundExcep
8
8
  const GptPlatformAuthenticationFailedException_1 = require("../exceptions/GptPlatformAuthenticationFailedException");
9
9
  const GptPlatformInternalErrorException_1 = require("../exceptions/GptPlatformInternalErrorException");
10
10
  const GptPlatformNotReachableException_1 = require("../exceptions/GptPlatformNotReachableException");
11
+ const MiscUtils_1 = require("../utils/MiscUtils");
11
12
  /**
12
13
  * A GPT client implemented using the Anthropic API
13
14
  * @see https://docs.anthropic.com/en/api/messages
14
15
  */
15
16
  class AnthropicGptClient extends GptClient_1.GptClient {
16
- /**
17
- * Create a new instance.
18
- */
19
17
  constructor(anthropicConfig) {
20
18
  super(anthropicConfig);
21
19
  this.anthropicConfig = anthropicConfig;
@@ -35,6 +33,7 @@ class AnthropicGptClient extends GptClient_1.GptClient {
35
33
  }
36
34
  }
37
35
  async getMessage(messages) {
36
+ messages = MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages);
38
37
  const systemPrompts = messages
39
38
  .filter((msg) => msg.type === 'system')
40
39
  .map(AnthropicGptClient.chatRequestMessageFromGptMessage);
@@ -47,7 +46,6 @@ class AnthropicGptClient extends GptClient_1.GptClient {
47
46
  .filter((msg) => msg.type !== 'system')
48
47
  .map(AnthropicGptClient.chatRequestMessageFromGptMessage),
49
48
  };
50
- AnthropicGptClient.shenanigansUserMessageMerge(body.messages);
51
49
  const resp = await this.makeRequest('/v1/messages', 'POST', body);
52
50
  if (resp.status !== 200) {
53
51
  throw await this.mapErrorResponseToDonobuException(resp);
@@ -64,6 +62,7 @@ class AnthropicGptClient extends GptClient_1.GptClient {
64
62
  };
65
63
  }
66
64
  async getStructuredOutput(messages, jsonSchema) {
65
+ messages = MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages);
67
66
  const systemPrompts = messages
68
67
  .filter((msg) => msg.type === 'system')
69
68
  .map(AnthropicGptClient.chatRequestMessageFromGptMessage);
@@ -88,7 +87,6 @@ class AnthropicGptClient extends GptClient_1.GptClient {
88
87
  disable_parallel_tool_use: true,
89
88
  },
90
89
  };
91
- AnthropicGptClient.shenanigansUserMessageMerge(body.messages);
92
90
  const resp = await this.makeRequest('/v1/messages', 'POST', body);
93
91
  if (resp.status !== 200) {
94
92
  throw await this.mapErrorResponseToDonobuException(resp);
@@ -116,6 +114,7 @@ class AnthropicGptClient extends GptClient_1.GptClient {
116
114
  };
117
115
  }
118
116
  async getToolCalls(messages, tools) {
117
+ messages = MiscUtils_1.MiscUtils.mergeAdjacentUserMessages(messages);
119
118
  const systemPrompts = messages
120
119
  .filter((msg) => msg.type === 'system')
121
120
  .map(AnthropicGptClient.chatRequestMessageFromGptMessage);
@@ -136,7 +135,6 @@ class AnthropicGptClient extends GptClient_1.GptClient {
136
135
  .filter((msg) => msg.type !== 'system')
137
136
  .map(AnthropicGptClient.chatRequestMessageFromGptMessage),
138
137
  };
139
- AnthropicGptClient.shenanigansUserMessageMerge(body.messages);
140
138
  // Note the special header for this endpoint
141
139
  const headers = new Headers(this.headers);
142
140
  headers.append('anthropic-beta', 'prompt-caching-2024-07-31');
@@ -206,20 +204,6 @@ class AnthropicGptClient extends GptClient_1.GptClient {
206
204
  }
207
205
  }
208
206
  }
209
- /**
210
- * Merges adjacent user messages because Anthropic will reject requests that do not delicately
211
- * flip-flop between "user" and "assistant" roles.
212
- */
213
- static shenanigansUserMessageMerge(messages) {
214
- for (let i = messages.length - 1; i > 0; i--) {
215
- const message = messages[i];
216
- const adjacentMessage = messages[i - 1];
217
- if (message.role === 'user' && adjacentMessage.role === 'user') {
218
- adjacentMessage.content.push(...message.content);
219
- messages.splice(i, 1);
220
- }
221
- }
222
- }
223
207
  static chatRequestMessageFromGptMessage(gptMessage) {
224
208
  if (gptMessage.type === 'assistant') {
225
209
  return {
@@ -255,12 +239,14 @@ class AnthropicGptClient extends GptClient_1.GptClient {
255
239
  return {
256
240
  role: 'user',
257
241
  content: gptMessage.items.map((item) => {
258
- if (item.type === 'png') {
242
+ if ('bytes' in item) {
243
+ const imageType = MiscUtils_1.MiscUtils.detectImageType(item.bytes);
244
+ const mimeType = `image/${imageType}`;
259
245
  return {
260
246
  type: 'image',
261
247
  source: {
262
248
  type: 'base64',
263
- media_type: 'image/png',
249
+ media_type: mimeType,
264
250
  data: Buffer.from(item.bytes).toString('base64'),
265
251
  },
266
252
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AnthropicGptClient.js","sourceRoot":"","sources":["../../../src/clients/AnthropicGptClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnthropicGptClient.js","sourceRoot":"","sources":["../../../src/clients/AnthropicGptClient.ts"],"names":[],"mappings":"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"}
@@ -8,31 +8,19 @@ import { GoogleGeminiConfig } from '../models/GptConfig';
8
8
  */
9
9
  export declare class GoogleGptClient extends GptClient {
10
10
  private readonly googleGeminiConfig;
11
- private static readonly API_URL;
12
- private static readonly REQUEST_TIMEOUT_MILLISECONDS;
13
- private static readonly API_KEY_HEADER_NAME;
14
- private static readonly CONTENT_TYPE;
15
- private readonly headers;
16
- /**
17
- * Create a new instance.
18
- * @param apiKey The Google API key to use for all requests with this client.
19
- * @param modelName See https://ai.google.dev/gemini-api/docs/models/gemini for the list of models.
20
- * @param apiUrl The URL of the API to use for all requests with this client.
21
- */
11
+ private readonly delegate;
22
12
  constructor(googleGeminiConfig: GoogleGeminiConfig);
23
13
  ping(): Promise<void>;
24
14
  getMessage(messages: GptMessage[]): Promise<AssistantMessage>;
25
15
  getStructuredOutput(messages: GptMessage[], jsonSchema: JSONSchema7): Promise<StructuredOutputMessage>;
26
16
  getToolCalls(messages: GptMessage[], tools: ToolOption[]): Promise<ProposedToolCallsMessage>;
27
17
  /**
28
- * Fix the "assert1" field issue in tool call parameters
18
+ * Fix the "assert1" field issue in tool call parameters (Gemini has severe
19
+ * troubles trying to say the word "assert" on its own... really).
20
+ *
29
21
  * Recursively search and replace any field containing "assert1" with "assert"
30
22
  */
31
23
  private static fixAssertFields;
32
- private mapErrorResponseToDonobuException;
33
- private makeRequest;
34
- private static chatRequestMessageFromGptMessage;
35
- private static toolChoiceFromTool;
36
24
  /**
37
25
  * Creates a new JSON schema compatible with Google's API.
38
26
  */
@@ -42,10 +30,6 @@ export declare class GoogleGptClient extends GptClient {
42
30
  * schema since Google does not support that keyword.
43
31
  **/
44
32
  private static removeAdditionalProperties;
45
- /**
46
- * Merges adjacent user messages because Google will otherwise reject the request.
47
- */
48
- private static shenanigansUserMessageMerge;
49
33
  /**
50
34
  * Recursively replaces "type" fields that are arrays containing "null" with
51
35
  * a single non-null type since Google will otherwise throw an error.
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGptClient.d.ts","sourceRoot":"","sources":["../../../src/clients/GoogleGptClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,wBAAwB,EACxB,uBAAuB,EAExB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAczB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAbtD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA+C;IAC9E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAAU;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAoB;IAC/D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAE1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC;;;;;OAKG;gBACiC,kBAAkB,EAAE,kBAAkB;IAQ7D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAerB,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmD7D,mBAAmB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,uBAAuB,CAAC;IA4DtB,YAAY,CACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,UAAU,EAAE,GAClB,OAAO,CAAC,wBAAwB,CAAC;IAgGpC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;YA0ChB,iCAAiC;YA0BjC,WAAW;IAuBzB,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAkF/C,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAmBjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAU/C;;;QAGI;IACJ,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAmBzC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAc1C;;;QAGI;IACJ,OAAO,CAAC,MAAM,CAAC,mBAAmB;CA2BnC"}
1
+ {"version":3,"file":"GoogleGptClient.d.ts","sourceRoot":"","sources":["../../../src/clients/GoogleGptClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAKzD;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAGzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAFtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;gBAED,kBAAkB,EAAE,kBAAkB;IAS7D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAM7D,mBAAmB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,uBAAuB,CAAC;IAStB,YAAY,CACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,UAAU,EAAE,GAClB,OAAO,CAAC,wBAAwB,CAAC;IAmBpC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IA0C9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAU/C;;;QAGI;IACJ,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAmBzC;;;QAGI;IACJ,OAAO,CAAC,MAAM,CAAC,mBAAmB;CA2BnC"}