@memberjunction/ai-openai 6.1.0-edge.6 → 6.1.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/index.d.ts CHANGED
@@ -5,4 +5,5 @@ export * from './models/tts.js';
5
5
  export * from './models/openAIImage.js';
6
6
  export * from './models/openAIRealtime.js';
7
7
  export * from './models/rawRealtimeWebSocketConnection.js';
8
+ export * from './models/openAILiveRealtime.js';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yCAAyC,CAAC;AACxD,cAAc,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -5,4 +5,5 @@ export * from './models/tts.js';
5
5
  export * from './models/openAIImage.js';
6
6
  export * from './models/openAIRealtime.js';
7
7
  export * from './models/rawRealtimeWebSocketConnection.js';
8
+ export * from './models/openAILiveRealtime.js';
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yCAAyC,CAAC;AACxD,cAAc,6BAA6B,CAAC"}
@@ -4,6 +4,15 @@ import { ChatCompletionMessageParam } from "openai/resources";
4
4
  /**
5
5
  * OpenAI implementation of the BaseLLM class
6
6
  */
7
+ /**
8
+ * The `reasoning_effort` values OpenAI accepts, in ascending order.
9
+ *
10
+ * Confirmed against the live API rather than taken from docs: the provider's rejection
11
+ * message for an unsupported value enumerates this exact set. `xhigh` and `none` sit outside MJ's
12
+ * numeric 1-100 effort scale by design — see {@link OpenAILLM.getReasoningLevel}.
13
+ */
14
+ export declare const OPENAI_REASONING_EFFORTS: readonly ["none", "low", "medium", "high", "xhigh"];
15
+ export type OpenAIReasoningEffort = (typeof OPENAI_REASONING_EFFORTS)[number];
7
16
  export declare class OpenAILLM extends BaseLLM {
8
17
  private _openAI;
9
18
  constructor(apiKey: string, baseURL?: string);
@@ -15,6 +24,13 @@ export declare class OpenAILLM extends BaseLLM {
15
24
  * OpenAI supports streaming
16
25
  */
17
26
  get SupportsStreaming(): boolean;
27
+ /**
28
+ * OpenAI natively supports tool calling (`tools` / `tool_calls` / `tool` role messages).
29
+ *
30
+ * Subclasses targeting OpenAI-compatible gateways inherit this; one whose endpoint does NOT
31
+ * accept a `tools` array should override it back to false.
32
+ */
33
+ get SupportsTools(): boolean;
18
34
  /**
19
35
  * OpenAI supports image file inputs natively via vision.
20
36
  *
@@ -41,9 +57,26 @@ export declare class OpenAILLM extends BaseLLM {
41
57
  * Check if the model supports reasoning via system prompt keywords
42
58
  * GPT-OSS models use "Reasoning: low/medium/high" in system prompt
43
59
  */
60
+ /**
61
+ * Clamps a reasoning level to the three the GPT-OSS *system prompt* channel understands.
62
+ *
63
+ * That path writes `Reasoning: <level>` into the system message rather than sending an API
64
+ * field, and the harmony format defines only low/medium/high — `Reasoning: xhigh` would be
65
+ * prose the model has never been trained on, which is worse than the nearest real level.
66
+ */
67
+ private clampToSystemPromptLevel;
44
68
  private supportsReasoningViaSystemPrompt;
45
69
  /**
46
- * Convert effort level to reasoning level string for system prompt
70
+ * Converts MJ's effort level to an OpenAI `reasoning_effort` value.
71
+ *
72
+ * Two input forms, deliberately not unified. **Numeric** 1-100 is MJ's cross-provider scale and
73
+ * its three bands are replicated in the Groq and Cerebras drivers, so the bucket boundaries are
74
+ * a shared convention and are left exactly as they were — re-banding them here would silently
75
+ * reclassify every documented `effortLevel: 85` and mean something different per provider.
76
+ * **Named** values pass through to the API instead, which is the only way to reach the two
77
+ * levels that have no place on a 1-100 scale: `'xhigh'` above the top band and `'none'` below
78
+ * the bottom one. Verified against the provider — OpenAI's own rejection message for
79
+ * an unsupported value enumerates exactly `none, low, medium, high, xhigh`.
47
80
  */
48
81
  private getReasoningLevel;
49
82
  /**
@@ -142,6 +175,43 @@ export declare class OpenAILLM extends BaseLLM {
142
175
  SummarizeText(params: SummarizeParams): Promise<SummarizeResult>;
143
176
  ClassifyText(params: ClassifyParams): Promise<ClassifyResult>;
144
177
  ConvertMJToOpenAIChatMessages(messages: ChatMessage[]): ChatCompletionMessageParam[];
178
+ /**
179
+ * Expands one MJ `tool` turn into OpenAI's per-result `tool` messages.
180
+ *
181
+ * @param message A `tool`-role message whose content holds `tool_result` blocks
182
+ * @returns One OpenAI tool message per result block
183
+ */
184
+ private convertToolResultMessage;
185
+ /**
186
+ * Maps normalized tool calls onto OpenAI's `tool_calls`, whose arguments are a JSON STRING.
187
+ *
188
+ * @param toolCalls The normalized calls from a prior assistant turn
189
+ * @returns OpenAI-shaped tool calls
190
+ */
191
+ private convertToolCallsToOpenAI;
192
+ /**
193
+ * Adds the native tool-calling fields to an outgoing request when the caller declared tools.
194
+ *
195
+ * OpenAI's `tool_choice` vocabulary is nearly the neutral one — `'auto' | 'none' | 'required'`
196
+ * pass through unchanged; only the named form is reshaped. Parallelism is a top-level request
197
+ * field here, unlike Anthropic where it hangs off the choice object.
198
+ *
199
+ * @param request The request body being assembled (mutated in place)
200
+ * @param params The chat params for this request
201
+ */
202
+ protected applyToolParams(request: OpenAI.Chat.Completions.ChatCompletionCreateParams, params: ChatParams): void;
203
+ /**
204
+ * Normalizes OpenAI's `tool_calls` — whose arguments arrive as a JSON STRING — into
205
+ * {@link ChatToolCall}s with parsed arguments.
206
+ *
207
+ * A model can emit malformed JSON for a call's arguments. That is a tool-specific failure the
208
+ * caller must be able to see, so the call is still surfaced (with empty arguments) and logged
209
+ * rather than dropped — dropping it would look to the agent loop like the model said nothing.
210
+ *
211
+ * @param toolCalls The raw tool calls from the response, if any
212
+ * @returns The normalized calls, or undefined when the model called nothing
213
+ */
214
+ private extractToolCalls;
145
215
  /**
146
216
  * Utility method to map a MemberJunction role to OpenAI role
147
217
  * - system maps to system
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAmB,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAA4C,eAAe,EAAE,eAAe,EAAyC,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACrR,OAAO,EAAqB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEnD,OAAO,EAAkE,0BAA0B,EAAoE,MAAM,kBAAkB,CAAC;AAEhM;;GAEG;AACH,qBACa,SAAU,SAAQ,OAAO;IAClC,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAa5C;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,IAAoB,iBAAiB,IAAI,OAAO,CAE/C;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACa,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IAS9D;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAKxC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;;;OAMG;IACH,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAI/E;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE;IAI3E;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,WAAW,GAAG,OAAO;IAUvF;;;;;OAKG;IACH,SAAS,CAAC,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW;IAWjE;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG,UAAU;IAa/E;;OAEG;cACa,0BAA0B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAmNnF;;OAEG;cACa,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAyFxE;;;;;;;;OAQG;IACH,SAAS,CAAC,6BAA6B,EAAE,WAAW,GAAG,SAAS,CAAa;IAG7E,OAAO,CAAC,eAAe,CAUrB;IAEF;;;;;;;;OAQG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAUrC;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG;QACzC,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf;IA+DD;;;OAGG;IACH,OAAO,CAAC,iCAAiC;IA6EzC;;OAEG;IACH,SAAS,CAAC,yBAAyB,CAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,EACjC,KAAK,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,GAC9B,UAAU;IA8DA,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAoBhE,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAInE,6BAA6B,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,0BAA0B,EAAE;IAqE3F;;;;;;;;;OASG;IACI,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW;CAY9E"}
1
+ {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,20 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { BaseLLM, ChatMessageRole, ChatResult, GetUserMessageFromChatParams, ModelUsage, SummarizeResult } from "@memberjunction/ai";
10
+ import { BaseLLM, ChatMessageRole, ChatResult, GetUserMessageFromChatParams, ModelUsage, SummarizeResult, CHAT_FINISH_REASON_TOOL_CALLS, buildOpenAICompatibleTools, buildOpenAICompatibleToolChoice, buildOpenAICompatibleToolCalls, buildOpenAICompatibleToolResults, extractOpenAICompatibleToolCalls } from "@memberjunction/ai";
11
11
  import { APIUserAbortError, OpenAI } from "openai";
12
12
  import { RegisterClass, ToJSONSafe } from '@memberjunction/global';
13
13
  /**
14
14
  * OpenAI implementation of the BaseLLM class
15
15
  */
16
+ /**
17
+ * The `reasoning_effort` values OpenAI accepts, in ascending order.
18
+ *
19
+ * Confirmed against the live API rather than taken from docs: the provider's rejection
20
+ * message for an unsupported value enumerates this exact set. `xhigh` and `none` sit outside MJ's
21
+ * numeric 1-100 effort scale by design — see {@link OpenAILLM.getReasoningLevel}.
22
+ */
23
+ export const OPENAI_REASONING_EFFORTS = ['none', 'low', 'medium', 'high', 'xhigh'];
16
24
  let OpenAILLM = class OpenAILLM extends BaseLLM {
17
25
  constructor(apiKey, baseURL) {
18
26
  super(apiKey);
@@ -54,6 +62,15 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
54
62
  get SupportsStreaming() {
55
63
  return true;
56
64
  }
65
+ /**
66
+ * OpenAI natively supports tool calling (`tools` / `tool_calls` / `tool` role messages).
67
+ *
68
+ * Subclasses targeting OpenAI-compatible gateways inherit this; one whose endpoint does NOT
69
+ * accept a `tools` array should override it back to false.
70
+ */
71
+ get SupportsTools() {
72
+ return true;
73
+ }
57
74
  /**
58
75
  * OpenAI supports image file inputs natively via vision.
59
76
  *
@@ -87,21 +104,48 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
87
104
  * Check if the model supports reasoning via system prompt keywords
88
105
  * GPT-OSS models use "Reasoning: low/medium/high" in system prompt
89
106
  */
107
+ /**
108
+ * Clamps a reasoning level to the three the GPT-OSS *system prompt* channel understands.
109
+ *
110
+ * That path writes `Reasoning: <level>` into the system message rather than sending an API
111
+ * field, and the harmony format defines only low/medium/high — `Reasoning: xhigh` would be
112
+ * prose the model has never been trained on, which is worse than the nearest real level.
113
+ */
114
+ clampToSystemPromptLevel(level) {
115
+ if (level === 'xhigh')
116
+ return 'high';
117
+ if (level === 'none')
118
+ return 'low';
119
+ return level;
120
+ }
90
121
  supportsReasoningViaSystemPrompt(modelName) {
91
122
  const lowerModel = modelName.toLowerCase();
92
123
  return lowerModel.includes('gpt-oss') || lowerModel.includes('gptoss');
93
124
  }
94
125
  /**
95
- * Convert effort level to reasoning level string for system prompt
126
+ * Converts MJ's effort level to an OpenAI `reasoning_effort` value.
127
+ *
128
+ * Two input forms, deliberately not unified. **Numeric** 1-100 is MJ's cross-provider scale and
129
+ * its three bands are replicated in the Groq and Cerebras drivers, so the bucket boundaries are
130
+ * a shared convention and are left exactly as they were — re-banding them here would silently
131
+ * reclassify every documented `effortLevel: 85` and mean something different per provider.
132
+ * **Named** values pass through to the API instead, which is the only way to reach the two
133
+ * levels that have no place on a 1-100 scale: `'xhigh'` above the top band and `'none'` below
134
+ * the bottom one. Verified against the provider — OpenAI's own rejection message for
135
+ * an unsupported value enumerates exactly `none, low, medium, high, xhigh`.
96
136
  */
97
137
  getReasoningLevel(effortLevel) {
98
138
  const numValue = Number.parseInt(effortLevel);
99
139
  if (isNaN(numValue)) {
100
- const level = effortLevel.trim().toLowerCase();
101
- if (level === 'low' || level === 'medium' || level === 'high') {
140
+ const raw = effortLevel.trim().toLowerCase();
141
+ // Mirror of the Anthropic mapping: `effortLevel` is not scoped per vendor, so failover
142
+ // or model selection can deliver Anthropic's `max` here. It means the same thing as
143
+ // `xhigh` — normalize rather than throwing on the other vendor's word for the top band.
144
+ const level = raw === 'max' ? 'xhigh' : raw;
145
+ if (OPENAI_REASONING_EFFORTS.includes(level)) {
102
146
  return level;
103
147
  }
104
- throw new Error(`Invalid effortLevel: ${effortLevel}`);
148
+ throw new Error(`Invalid effortLevel: ${effortLevel} (expected 1-100 or one of ${OPENAI_REASONING_EFFORTS.join(', ')})`);
105
149
  }
106
150
  // Map numeric values to levels
107
151
  if (numValue <= 33)
@@ -195,7 +239,7 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
195
239
  // Handle reasoning for GPT-OSS models via system prompt
196
240
  const supportsReasoningInSystemPrompt = this.supportsReasoningViaSystemPrompt(params.model);
197
241
  if (params.effortLevel && supportsReasoningInSystemPrompt) {
198
- const reasoningLevel = this.getReasoningLevel(params.effortLevel);
242
+ const reasoningLevel = this.clampToSystemPromptLevel(this.getReasoningLevel(params.effortLevel));
199
243
  // Add or append to system message
200
244
  const systemMsg = messages.find(m => m.role === 'system');
201
245
  if (systemMsg) {
@@ -220,6 +264,8 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
220
264
  logprobs: params.includeLogProbs === true ? true : false,
221
265
  top_logprobs: params.includeLogProbs && params.topLogProbs ? params.topLogProbs : undefined,
222
266
  };
267
+ // Native tool calling (§5.1) — ephemeral per-call declarations, mapped straight through.
268
+ this.applyToolParams(openAIParams, params);
223
269
  //Reasoning effort level has been provided and it wasn't handled via system prompt
224
270
  if (params.effortLevel && !supportsReasoningInSystemPrompt) {
225
271
  const reasoningLevel = this.getReasoningLevel(params.effortLevel);
@@ -333,13 +379,17 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
333
379
  content = content.substring(thinkEnd + '</thinking>'.length).trim();
334
380
  }
335
381
  }
382
+ const toolCalls = this.extractToolCalls(c.message?.tool_calls);
336
383
  return {
337
384
  message: {
338
385
  role: ChatMessageRole.assistant,
339
386
  content: content,
340
- thinking: thinking
387
+ thinking: thinking,
388
+ toolCalls: toolCalls
341
389
  },
342
- finish_reason: c.finish_reason,
390
+ // OpenAI already reports 'tool_calls' here; normalize defensively so the
391
+ // value is consistent even if a compatible endpoint reports something else.
392
+ finish_reason: toolCalls ? CHAT_FINISH_REASON_TOOL_CALLS : c.finish_reason,
343
393
  index: c.index,
344
394
  logprobs: c.logprobs // Include logprobs if present
345
395
  };
@@ -392,7 +442,7 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
392
442
  let messages = params.messages;
393
443
  // Handle reasoning for GPT-OSS models via system prompt
394
444
  if (params.effortLevel && this.supportsReasoningViaSystemPrompt(params.model)) {
395
- const reasoningLevel = this.getReasoningLevel(params.effortLevel);
445
+ const reasoningLevel = this.clampToSystemPromptLevel(this.getReasoningLevel(params.effortLevel));
396
446
  // Add or append to system message
397
447
  const systemMsg = messages.find(m => m.role === 'system');
398
448
  if (systemMsg) {
@@ -694,7 +744,12 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
694
744
  throw new Error("Method not implemented.");
695
745
  }
696
746
  ConvertMJToOpenAIChatMessages(messages) {
697
- return messages.map(m => {
747
+ // flatMap, not map: one MJ `tool` turn carrying N results becomes N OpenAI `tool` messages,
748
+ // because OpenAI pairs each result to its call with a per-message `tool_call_id`.
749
+ return messages.flatMap(m => {
750
+ if (m.role === ChatMessageRole.tool) {
751
+ return this.convertToolResultMessage(m);
752
+ }
698
753
  const role = this.ConvertMJToOpenAIRole(m.role);
699
754
  let content = m.content;
700
755
  // Process content if it's an array
@@ -747,13 +802,72 @@ let OpenAILLM = class OpenAILLM extends BaseLLM {
747
802
  case 'assistant':
748
803
  return {
749
804
  role: 'assistant',
750
- content
805
+ // OpenAI wants null, not '', when the turn is carried entirely by tool calls.
806
+ content: (m.toolCalls?.length && !content) ? null : content,
807
+ ...(m.toolCalls?.length ? { tool_calls: this.convertToolCallsToOpenAI(m.toolCalls) } : {})
751
808
  };
752
809
  default:
753
810
  throw new Error(`Unknown role ${m.role}`);
754
811
  }
755
812
  });
756
813
  }
814
+ /**
815
+ * Expands one MJ `tool` turn into OpenAI's per-result `tool` messages.
816
+ *
817
+ * @param message A `tool`-role message whose content holds `tool_result` blocks
818
+ * @returns One OpenAI tool message per result block
819
+ */
820
+ convertToolResultMessage(message) {
821
+ // Delegates to the shared OpenAI-shaped mapping in @memberjunction/ai. Groq and Cerebras
822
+ // speak the same wire format, and three copies of this would drift; the SDK type stays at
823
+ // this boundary so the compiler still checks the shape going into the request.
824
+ return buildOpenAICompatibleToolResults(message, 'OpenAI provider');
825
+ }
826
+ /**
827
+ * Maps normalized tool calls onto OpenAI's `tool_calls`, whose arguments are a JSON STRING.
828
+ *
829
+ * @param toolCalls The normalized calls from a prior assistant turn
830
+ * @returns OpenAI-shaped tool calls
831
+ */
832
+ convertToolCallsToOpenAI(toolCalls) {
833
+ return buildOpenAICompatibleToolCalls(toolCalls);
834
+ }
835
+ /**
836
+ * Adds the native tool-calling fields to an outgoing request when the caller declared tools.
837
+ *
838
+ * OpenAI's `tool_choice` vocabulary is nearly the neutral one — `'auto' | 'none' | 'required'`
839
+ * pass through unchanged; only the named form is reshaped. Parallelism is a top-level request
840
+ * field here, unlike Anthropic where it hangs off the choice object.
841
+ *
842
+ * @param request The request body being assembled (mutated in place)
843
+ * @param params The chat params for this request
844
+ */
845
+ applyToolParams(request, params) {
846
+ if (!params.tools || params.tools.length === 0) {
847
+ return;
848
+ }
849
+ request.tools = buildOpenAICompatibleTools(params.tools);
850
+ if (params.toolChoice !== undefined) {
851
+ request.tool_choice = buildOpenAICompatibleToolChoice(params.toolChoice);
852
+ }
853
+ if (params.parallelToolCalls !== undefined) {
854
+ request.parallel_tool_calls = params.parallelToolCalls;
855
+ }
856
+ }
857
+ /**
858
+ * Normalizes OpenAI's `tool_calls` — whose arguments arrive as a JSON STRING — into
859
+ * {@link ChatToolCall}s with parsed arguments.
860
+ *
861
+ * A model can emit malformed JSON for a call's arguments. That is a tool-specific failure the
862
+ * caller must be able to see, so the call is still surfaced (with empty arguments) and logged
863
+ * rather than dropped — dropping it would look to the agent loop like the model said nothing.
864
+ *
865
+ * @param toolCalls The raw tool calls from the response, if any
866
+ * @returns The normalized calls, or undefined when the model called nothing
867
+ */
868
+ extractToolCalls(toolCalls) {
869
+ return extractOpenAICompatibleToolCalls(toolCalls, 'OpenAI provider');
870
+ }
757
871
  /**
758
872
  * Utility method to map a MemberJunction role to OpenAI role
759
873
  * - system maps to system
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"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"}