@modular-prompt/driver 0.5.2 → 0.6.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.
@@ -1,5 +1,5 @@
1
1
  import type { CompiledPrompt } from '@modular-prompt/core';
2
- import type { AIDriver, QueryOptions, QueryResult, StreamResult } from '../types.js';
2
+ import type { AIDriver, QueryOptions, QueryResult, StreamResult, ToolChoice, ToolDefinition } from '../types.js';
3
3
  /**
4
4
  * Anthropic driver configuration
5
5
  */
@@ -18,10 +18,9 @@ export interface AnthropicQueryOptions extends QueryOptions {
18
18
  topP?: number;
19
19
  topK?: number;
20
20
  stopSequences?: string[];
21
+ tools?: ToolDefinition[];
22
+ toolChoice?: ToolChoice;
21
23
  }
22
- /**
23
- * Anthropic API driver
24
- */
25
24
  export declare class AnthropicDriver implements AIDriver {
26
25
  private client;
27
26
  private defaultModel;
@@ -29,6 +28,10 @@ export declare class AnthropicDriver implements AIDriver {
29
28
  get defaultOptions(): Partial<AnthropicQueryOptions>;
30
29
  set defaultOptions(value: Partial<AnthropicQueryOptions>);
31
30
  constructor(config?: AnthropicDriverConfig);
31
+ /**
32
+ * Convert ChatMessage to Anthropic message format
33
+ */
34
+ private chatMessageToAnthropic;
32
35
  /**
33
36
  * Convert CompiledPrompt to Anthropic messages
34
37
  */
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-driver.d.ts","sourceRoot":"","sources":["../../src/anthropic/anthropic-driver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGrF;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,YAAY;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAiC;IAExD,IAAI,cAAc,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAEnD;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAEvD;gBAEW,MAAM,GAAE,qBAA0B;IAS9C;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAuGjC;;OAEG;IACG,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAMjF;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IA6FxF;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
1
+ {"version":3,"file":"anthropic-driver.d.ts","sourceRoot":"","sources":["../../src/anthropic/anthropic-driver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAY,UAAU,EAAE,cAAc,EAAe,MAAM,aAAa,CAAC;AAIxI;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,YAAY;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAiCD,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAiC;IAExD,IAAI,cAAc,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAEnD;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAEvD;gBAEW,MAAM,GAAE,qBAA0B;IAS9C;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAmC9B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAuHjC;;OAEG;IACG,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAMjF;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAmJxF;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
@@ -1,8 +1,35 @@
1
1
  import Anthropic from '@anthropic-ai/sdk';
2
2
  import { extractJSON } from '@modular-prompt/utils';
3
+ import { hasToolCalls, isToolResult } from '../types.js';
3
4
  /**
4
5
  * Anthropic API driver
5
6
  */
7
+ /**
8
+ * Convert common ToolDefinition[] to Anthropic Tool format
9
+ */
10
+ function convertTools(tools) {
11
+ return tools.map(tool => ({
12
+ name: tool.function.name,
13
+ description: tool.function.description,
14
+ input_schema: {
15
+ type: 'object',
16
+ ...tool.function.parameters
17
+ }
18
+ }));
19
+ }
20
+ /**
21
+ * Convert common ToolChoice to Anthropic tool_choice format
22
+ */
23
+ function convertToolChoice(toolChoice) {
24
+ if (typeof toolChoice === 'string') {
25
+ switch (toolChoice) {
26
+ case 'auto': return { type: 'auto' };
27
+ case 'none': return { type: 'none' };
28
+ case 'required': return { type: 'any' };
29
+ }
30
+ }
31
+ return { type: 'tool', name: toolChoice.function.name };
32
+ }
6
33
  export class AnthropicDriver {
7
34
  client;
8
35
  defaultModel;
@@ -20,11 +47,51 @@ export class AnthropicDriver {
20
47
  this.defaultModel = config.model || 'claude-3-5-sonnet-20241022';
21
48
  this._defaultOptions = config.defaultOptions || {};
22
49
  }
50
+ /**
51
+ * Convert ChatMessage to Anthropic message format
52
+ */
53
+ chatMessageToAnthropic(message) {
54
+ if (hasToolCalls(message)) {
55
+ // AssistantToolCallMessage
56
+ const blocks = [];
57
+ if (message.content) {
58
+ blocks.push({ type: 'text', text: message.content });
59
+ }
60
+ for (const tc of message.toolCalls) {
61
+ blocks.push({
62
+ type: 'tool_use',
63
+ id: tc.id,
64
+ name: tc.function.name,
65
+ input: JSON.parse(tc.function.arguments)
66
+ });
67
+ }
68
+ return { role: 'assistant', content: blocks };
69
+ }
70
+ else if (isToolResult(message)) {
71
+ // ToolResultMessage
72
+ return {
73
+ role: 'user',
74
+ content: [{
75
+ type: 'tool_result',
76
+ tool_use_id: message.toolCallId,
77
+ content: message.content
78
+ }]
79
+ };
80
+ }
81
+ else {
82
+ // StandardChatMessage (system role is not expected in options.messages)
83
+ return {
84
+ role: message.role,
85
+ content: message.content
86
+ };
87
+ }
88
+ }
23
89
  /**
24
90
  * Convert CompiledPrompt to Anthropic messages
25
91
  */
26
92
  compiledPromptToAnthropic(prompt) {
27
93
  let system;
94
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
95
  const messages = [];
29
96
  // Helper to process elements
30
97
  const processElements = (elements) => {
@@ -40,13 +107,30 @@ export class AnthropicDriver {
40
107
  }
41
108
  else if (el.type === 'message') {
42
109
  // Handle message elements separately
43
- const role = el.role === 'system' ? 'system' : el.role === 'user' ? 'user' : 'assistant';
44
110
  const messageContent = typeof el.content === 'string' ? el.content : JSON.stringify(el.content);
45
- if (role === 'system') {
46
- system = system ? `${system}\n\n${messageContent}` : messageContent;
111
+ if (el.role === 'tool') {
112
+ messages.push({
113
+ role: 'user',
114
+ content: [{ type: 'tool_result', tool_use_id: el.toolCallId, content: el.content }]
115
+ });
116
+ }
117
+ else if ('toolCalls' in el && el.toolCalls) {
118
+ const blocks = [];
119
+ if (messageContent)
120
+ blocks.push({ type: 'text', text: messageContent });
121
+ for (const tc of el.toolCalls) {
122
+ blocks.push({ type: 'tool_use', id: tc.id, name: tc.function.name, input: JSON.parse(tc.function.arguments) });
123
+ }
124
+ messages.push({ role: 'assistant', content: blocks });
47
125
  }
48
126
  else {
49
- messages.push({ role: role, content: messageContent });
127
+ const role = el.role === 'system' ? 'system' : el.role === 'user' ? 'user' : 'assistant';
128
+ if (role === 'system') {
129
+ system = system ? `${system}\n\n${messageContent}` : messageContent;
130
+ }
131
+ else {
132
+ messages.push({ role: role, content: messageContent });
133
+ }
50
134
  }
51
135
  }
52
136
  else if (el.type === 'section' || el.type === 'subsection') {
@@ -133,8 +217,9 @@ export class AnthropicDriver {
133
217
  const mergedOptions = { ...this.defaultOptions, ...anthropicOptions };
134
218
  // Convert prompt
135
219
  const { system, messages } = this.compiledPromptToAnthropic(prompt);
136
- // Create stream
137
- const anthropicStream = await this.client.messages.create({
220
+ // Build API params
221
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
222
+ const params = {
138
223
  model: mergedOptions.model || this.defaultModel,
139
224
  messages,
140
225
  max_tokens: mergedOptions.maxTokens || 4096,
@@ -143,14 +228,26 @@ export class AnthropicDriver {
143
228
  top_k: mergedOptions.topK,
144
229
  stop_sequences: mergedOptions.stopSequences,
145
230
  system,
231
+ tools: mergedOptions.tools ? convertTools(mergedOptions.tools) : undefined,
232
+ tool_choice: mergedOptions.toolChoice ? convertToolChoice(mergedOptions.toolChoice) : undefined,
146
233
  stream: true
234
+ };
235
+ // Remove undefined values
236
+ Object.keys(params).forEach(key => {
237
+ if (params[key] === undefined) {
238
+ delete params[key];
239
+ }
147
240
  });
241
+ // Create stream
242
+ const anthropicStream = await this.client.messages.create(params);
148
243
  // Shared state
149
244
  let fullContent = '';
150
- let usage;
245
+ let inputTokens = 0;
246
+ let outputTokens = 0;
151
247
  let finishReason = 'stop';
152
248
  let streamConsumed = false;
153
249
  const chunks = [];
250
+ const toolCallDeltas = new Map();
154
251
  // Process the stream
155
252
  const processStream = async () => {
156
253
  for await (const chunk of anthropicStream) {
@@ -159,19 +256,43 @@ export class AnthropicDriver {
159
256
  fullContent += content;
160
257
  chunks.push(content);
161
258
  }
162
- else if (chunk.type === 'message_stop') {
163
- // TODO: Investigate correct way to get usage from streaming response
164
- // The actual API response may contain usage data in message_stop event,
165
- // but the SDK type definitions don't reflect this.
166
- // Consider checking message_start event or using MessageStream class instead.
167
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
168
- const finalMessage = chunk;
169
- if (finalMessage.message?.usage) {
170
- usage = {
171
- promptTokens: finalMessage.message.usage.input_tokens,
172
- completionTokens: finalMessage.message.usage.output_tokens,
173
- totalTokens: finalMessage.message.usage.input_tokens + finalMessage.message.usage.output_tokens
174
- };
259
+ else if (chunk.type === 'content_block_start' && chunk.content_block.type === 'tool_use') {
260
+ // Register new tool call
261
+ toolCallDeltas.set(chunk.index, {
262
+ id: chunk.content_block.id,
263
+ name: chunk.content_block.name,
264
+ arguments: ''
265
+ });
266
+ }
267
+ else if (chunk.type === 'content_block_delta' && chunk.delta.type === 'input_json_delta') {
268
+ // Accumulate tool call arguments
269
+ const existing = toolCallDeltas.get(chunk.index);
270
+ if (existing) {
271
+ existing.arguments += chunk.delta.partial_json;
272
+ }
273
+ }
274
+ else if (chunk.type === 'message_start') {
275
+ // Get input tokens from message_start
276
+ if (chunk.message?.usage) {
277
+ inputTokens = chunk.message.usage.input_tokens;
278
+ }
279
+ }
280
+ else if (chunk.type === 'message_delta') {
281
+ // Get stop_reason and output tokens from message_delta
282
+ if (chunk.usage) {
283
+ outputTokens = chunk.usage.output_tokens;
284
+ }
285
+ if (chunk.delta?.stop_reason) {
286
+ const reason = chunk.delta.stop_reason;
287
+ if (reason === 'tool_use') {
288
+ finishReason = 'tool_calls';
289
+ }
290
+ else if (reason === 'max_tokens') {
291
+ finishReason = 'length';
292
+ }
293
+ else {
294
+ finishReason = 'stop';
295
+ }
175
296
  }
176
297
  }
177
298
  }
@@ -201,10 +322,27 @@ export class AnthropicDriver {
201
322
  structuredOutput = extracted.data;
202
323
  }
203
324
  }
325
+ // Build tool calls from accumulated deltas
326
+ let toolCalls;
327
+ if (toolCallDeltas.size > 0) {
328
+ toolCalls = Array.from(toolCallDeltas.values()).map(tc => ({
329
+ id: tc.id,
330
+ type: 'function',
331
+ function: {
332
+ name: tc.name,
333
+ arguments: tc.arguments
334
+ }
335
+ }));
336
+ }
337
+ // Build usage
338
+ const usage = (inputTokens > 0 || outputTokens > 0)
339
+ ? { promptTokens: inputTokens, completionTokens: outputTokens, totalTokens: inputTokens + outputTokens }
340
+ : undefined;
204
341
  return {
205
342
  content: fullContent,
206
343
  structuredOutput,
207
344
  usage,
345
+ toolCalls,
208
346
  finishReason
209
347
  };
210
348
  });
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-driver.js","sourceRoot":"","sources":["../../src/anthropic/anthropic-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic-driver.js","sourceRoot":"","sources":["../../src/anthropic/anthropic-driver.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { Element } from '@modular-prompt/core';
2
+ import type { StandardChatMessage } from '../types.js';
2
3
  /**
3
4
  * Special token definition
4
5
  */
@@ -14,12 +15,9 @@ export interface SpecialTokenPair {
14
15
  end: SpecialToken;
15
16
  }
16
17
  /**
17
- * Chat message format
18
+ * Chat message format (formatter always produces standard messages)
18
19
  */
19
- export interface ChatMessage {
20
- role: 'system' | 'user' | 'assistant';
21
- content: string;
22
- }
20
+ export type ChatMessage = StandardChatMessage;
23
21
  /**
24
22
  * Formatter options for converting elements to text
25
23
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/formatter/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,GAAG,EAAE,YAAY,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,mBAAmB,CAAC,EAAE;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;KACnB,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAAC,CAAC;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEvC;;OAEG;IACH,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAAC,GAAG,IAAI,CAAC;CAClF"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/formatter/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,GAAG,EAAE,YAAY,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,mBAAmB,CAAC,EAAE;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;KACnB,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAAC,CAAC;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEvC;;OAEG;IACH,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAAC,GAAG,IAAI,CAAC;CAClF"}
@@ -49,10 +49,26 @@ export declare class GoogleGenAIDriver implements AIDriver {
49
49
  * Used for conversation history where role matters
50
50
  */
51
51
  private elementToContent;
52
+ /**
53
+ * Convert ChatMessage to GoogleGenAI Content format
54
+ */
55
+ private chatMessageToContent;
52
56
  /**
53
57
  * Convert JSON Schema to GoogleGenAI Schema format
54
58
  */
55
59
  private convertJsonSchema;
60
+ /**
61
+ * Convert ToolDefinition[] to GoogleGenAI tools format
62
+ */
63
+ private convertTools;
64
+ /**
65
+ * Convert ToolChoice to GoogleGenAI FunctionCallingConfig
66
+ */
67
+ private convertToolChoice;
68
+ /**
69
+ * Extract ToolCalls from response parts
70
+ */
71
+ private extractToolCalls;
56
72
  /**
57
73
  * Query implementation
58
74
  */
@@ -1 +1 @@
1
- {"version":3,"file":"google-genai-driver.d.ts","sourceRoot":"","sources":["../../src/google-genai/google-genai-driver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE;QACf,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;KAC3C,CAAC;CACH;AAmBD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,QAAQ;IAChD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,eAAe,CAAmC;IAE1D,IAAI,cAAc,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAErD;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,uBAAuB,CAAC,EAEzD;gBAEW,MAAM,GAAE,uBAA4B;IAahD;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAkDrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACG,KAAK,CACT,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,WAAW,CAAC;IAgGvB;;OAEG;IACG,WAAW,CACf,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,YAAY,CAAC;IAsIxB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
1
+ {"version":3,"file":"google-genai-driver.d.ts","sourceRoot":"","sources":["../../src/google-genai/google-genai-driver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAqD,MAAM,aAAa,CAAC;AAGxI;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE;QACf,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;KAC3C,CAAC;CACH;AAmBD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,QAAQ;IAChD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,eAAe,CAAmC;IAE1D,IAAI,cAAc,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAErD;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,uBAAuB,CAAC,EAEzD;gBAEW,MAAM,GAAE,uBAA4B;IAahD;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAkDrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAuCxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACG,KAAK,CACT,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,WAAW,CAAC;IAoHvB;;OAEG;IACG,WAAW,CACf,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,YAAY,CAAC;IAqKxB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}