@aituber-onair/core 0.9.0 → 0.10.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/README.md +159 -0
- package/dist/constants/claude.d.ts +1 -1
- package/dist/constants/claude.js +1 -1
- package/dist/constants/openai.d.ts +1 -0
- package/dist/constants/openai.js +1 -0
- package/dist/constants/openai.js.map +1 -1
- package/dist/core/AITuberOnAirCore.d.ts +3 -1
- package/dist/core/AITuberOnAirCore.js +5 -0
- package/dist/core/AITuberOnAirCore.js.map +1 -1
- package/dist/services/chat/providers/ChatServiceProvider.d.ts +2 -0
- package/dist/services/chat/providers/claude/ClaudeChatService.d.ts +33 -8
- package/dist/services/chat/providers/claude/ClaudeChatService.js +143 -35
- package/dist/services/chat/providers/claude/ClaudeChatService.js.map +1 -1
- package/dist/services/chat/providers/claude/ClaudeChatServiceProvider.d.ts +1 -1
- package/dist/services/chat/providers/claude/ClaudeChatServiceProvider.js +2 -2
- package/dist/services/chat/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
- package/dist/services/chat/providers/openai/OpenAIChatService.d.ts +45 -2
- package/dist/services/chat/providers/openai/OpenAIChatService.js +302 -26
- package/dist/services/chat/providers/openai/OpenAIChatService.js.map +1 -1
- package/dist/services/chat/providers/openai/OpenAIChatServiceProvider.js +9 -2
- package/dist/services/chat/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/mcp.d.ts +36 -0
- package/dist/types/mcp.js +5 -0
- package/dist/types/mcp.js.map +1 -0
- package/package.json +1 -1
|
@@ -9,15 +9,17 @@ export class ClaudeChatService {
|
|
|
9
9
|
* @param model Name of the model to use
|
|
10
10
|
* @param visionModel Name of the vision model
|
|
11
11
|
* @param tools Array of tool definitions
|
|
12
|
+
* @param mcpServers Array of MCP server configurations (optional)
|
|
12
13
|
* @throws Error if the vision model doesn't support vision capabilities
|
|
13
14
|
*/
|
|
14
|
-
constructor(apiKey, model = MODEL_CLAUDE_3_HAIKU, visionModel = MODEL_CLAUDE_3_HAIKU, tools = []) {
|
|
15
|
+
constructor(apiKey, model = MODEL_CLAUDE_3_HAIKU, visionModel = MODEL_CLAUDE_3_HAIKU, tools = [], mcpServers = []) {
|
|
15
16
|
/** Provider name */
|
|
16
17
|
this.provider = 'claude';
|
|
17
18
|
this.apiKey = apiKey;
|
|
18
19
|
this.model = model || MODEL_CLAUDE_3_HAIKU;
|
|
19
20
|
this.visionModel = visionModel || MODEL_CLAUDE_3_HAIKU;
|
|
20
21
|
this.tools = tools;
|
|
22
|
+
this.mcpServers = mcpServers;
|
|
21
23
|
// Validate vision model supports vision capabilities
|
|
22
24
|
if (!CLAUDE_VISION_SUPPORTED_MODELS.includes(this.visionModel)) {
|
|
23
25
|
throw new Error(`Model ${this.visionModel} does not support vision capabilities.`);
|
|
@@ -37,6 +39,34 @@ export class ClaudeChatService {
|
|
|
37
39
|
getVisionModel() {
|
|
38
40
|
return this.visionModel;
|
|
39
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Get configured MCP servers
|
|
44
|
+
* @returns Array of MCP server configurations
|
|
45
|
+
*/
|
|
46
|
+
getMCPServers() {
|
|
47
|
+
return this.mcpServers;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Add MCP server configuration
|
|
51
|
+
* @param serverConfig MCP server configuration
|
|
52
|
+
*/
|
|
53
|
+
addMCPServer(serverConfig) {
|
|
54
|
+
this.mcpServers.push(serverConfig);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Remove MCP server by name
|
|
58
|
+
* @param serverName Name of the server to remove
|
|
59
|
+
*/
|
|
60
|
+
removeMCPServer(serverName) {
|
|
61
|
+
this.mcpServers = this.mcpServers.filter((server) => server.name !== serverName);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Check if MCP servers are configured
|
|
65
|
+
* @returns True if MCP servers are configured
|
|
66
|
+
*/
|
|
67
|
+
hasMCPServers() {
|
|
68
|
+
return this.mcpServers.length > 0;
|
|
69
|
+
}
|
|
40
70
|
/**
|
|
41
71
|
* Process chat messages
|
|
42
72
|
* @param messages Array of messages to send
|
|
@@ -44,17 +74,17 @@ export class ClaudeChatService {
|
|
|
44
74
|
* @param onCompleteResponse Callback to execute when response is complete
|
|
45
75
|
*/
|
|
46
76
|
async processChat(messages, onPartialResponse, onCompleteResponse) {
|
|
47
|
-
// not use tools
|
|
48
|
-
if (this.tools.length === 0) {
|
|
77
|
+
// not use tools or MCP servers
|
|
78
|
+
if (this.tools.length === 0 && this.mcpServers.length === 0) {
|
|
49
79
|
const res = await this.callClaude(messages, this.model, true);
|
|
50
80
|
const full = await this.parsePureStream(res, onPartialResponse);
|
|
51
81
|
await onCompleteResponse(full);
|
|
52
82
|
return;
|
|
53
83
|
}
|
|
54
|
-
// use tools
|
|
55
|
-
const
|
|
56
|
-
if (stop_reason === 'end') {
|
|
57
|
-
const full = blocks
|
|
84
|
+
// use tools or MCP servers
|
|
85
|
+
const result = await this.chatOnce(messages, true, onPartialResponse);
|
|
86
|
+
if (result.stop_reason === 'end') {
|
|
87
|
+
const full = result.blocks
|
|
58
88
|
.filter((b) => b.type === 'text')
|
|
59
89
|
.map((b) => b.text)
|
|
60
90
|
.join('');
|
|
@@ -72,15 +102,15 @@ export class ClaudeChatService {
|
|
|
72
102
|
*/
|
|
73
103
|
async processVisionChat(messages, onPartialResponse, onCompleteResponse) {
|
|
74
104
|
/* same branch logic for vision */
|
|
75
|
-
if (this.tools.length === 0) {
|
|
105
|
+
if (this.tools.length === 0 && this.mcpServers.length === 0) {
|
|
76
106
|
const res = await this.callClaude(messages, this.visionModel, true);
|
|
77
107
|
const full = await this.parsePureStream(res, onPartialResponse);
|
|
78
108
|
await onCompleteResponse(full);
|
|
79
109
|
return;
|
|
80
110
|
}
|
|
81
|
-
const
|
|
82
|
-
if (stop_reason === 'end') {
|
|
83
|
-
const full = blocks
|
|
111
|
+
const result = await this.visionChatOnce(messages); // non-stream (tools only)
|
|
112
|
+
if (result.stop_reason === 'end') {
|
|
113
|
+
const full = result.blocks
|
|
84
114
|
.filter((b) => b.type === 'text')
|
|
85
115
|
.map((b) => b.text)
|
|
86
116
|
.join('');
|
|
@@ -229,14 +259,23 @@ export class ClaudeChatService {
|
|
|
229
259
|
}));
|
|
230
260
|
body.tool_choice = { type: 'auto' };
|
|
231
261
|
}
|
|
262
|
+
// Add MCP servers if configured
|
|
263
|
+
if (this.mcpServers.length > 0) {
|
|
264
|
+
body.mcp_servers = this.mcpServers;
|
|
265
|
+
}
|
|
266
|
+
const headers = {
|
|
267
|
+
'Content-Type': 'application/json',
|
|
268
|
+
'x-api-key': this.apiKey,
|
|
269
|
+
'anthropic-version': '2023-06-01',
|
|
270
|
+
'anthropic-dangerous-direct-browser-access': 'true',
|
|
271
|
+
};
|
|
272
|
+
// Add beta header if MCP servers are configured
|
|
273
|
+
if (this.mcpServers.length > 0) {
|
|
274
|
+
headers['anthropic-beta'] = 'mcp-client-2025-04-04';
|
|
275
|
+
}
|
|
232
276
|
const res = await fetch(ENDPOINT_CLAUDE_API, {
|
|
233
277
|
method: 'POST',
|
|
234
|
-
headers
|
|
235
|
-
'Content-Type': 'application/json',
|
|
236
|
-
'x-api-key': this.apiKey,
|
|
237
|
-
'anthropic-version': '2023-06-01',
|
|
238
|
-
'anthropic-dangerous-direct-browser-access': 'true',
|
|
239
|
-
},
|
|
278
|
+
headers,
|
|
240
279
|
body: JSON.stringify(body),
|
|
241
280
|
});
|
|
242
281
|
if (!res.ok)
|
|
@@ -247,7 +286,7 @@ export class ClaudeChatService {
|
|
|
247
286
|
* Parse stream response
|
|
248
287
|
* @param res Response
|
|
249
288
|
* @param onPartial Callback to receive each part of streaming response
|
|
250
|
-
* @returns
|
|
289
|
+
* @returns ClaudeInternalCompletion
|
|
251
290
|
*/
|
|
252
291
|
async parseStream(res, onPartial) {
|
|
253
292
|
const reader = res.body.getReader();
|
|
@@ -284,6 +323,16 @@ export class ClaudeChatService {
|
|
|
284
323
|
args: '',
|
|
285
324
|
});
|
|
286
325
|
}
|
|
326
|
+
else if (ev.type === 'content_block_start' &&
|
|
327
|
+
ev.content_block?.type === 'mcp_tool_use') {
|
|
328
|
+
// Handle MCP tool use
|
|
329
|
+
toolCalls.set(ev.index, {
|
|
330
|
+
id: ev.content_block.id,
|
|
331
|
+
name: ev.content_block.name,
|
|
332
|
+
args: '',
|
|
333
|
+
server_name: ev.content_block.server_name,
|
|
334
|
+
});
|
|
335
|
+
}
|
|
287
336
|
else if (ev.type === 'content_block_start' && // case of non-stream
|
|
288
337
|
ev.content_block?.type === 'tool_result') {
|
|
289
338
|
textBlocks.push({
|
|
@@ -292,6 +341,16 @@ export class ClaudeChatService {
|
|
|
292
341
|
content: ev.content_block.content ?? '',
|
|
293
342
|
});
|
|
294
343
|
}
|
|
344
|
+
else if (ev.type === 'content_block_start' &&
|
|
345
|
+
ev.content_block?.type === 'mcp_tool_result') {
|
|
346
|
+
// Handle MCP tool result
|
|
347
|
+
textBlocks.push({
|
|
348
|
+
type: 'mcp_tool_result',
|
|
349
|
+
tool_use_id: ev.content_block.tool_use_id,
|
|
350
|
+
is_error: ev.content_block.is_error ?? false,
|
|
351
|
+
content: ev.content_block.content ?? [],
|
|
352
|
+
});
|
|
353
|
+
}
|
|
295
354
|
/* case of input_json_delta */
|
|
296
355
|
if (ev.type === 'content_block_delta' &&
|
|
297
356
|
ev.delta?.type === 'input_json_delta') {
|
|
@@ -301,20 +360,33 @@ export class ClaudeChatService {
|
|
|
301
360
|
}
|
|
302
361
|
/* case of content_block_stop */
|
|
303
362
|
if (ev.type === 'content_block_stop' && toolCalls.has(ev.index)) {
|
|
304
|
-
const { id, name, args } = toolCalls.get(ev.index);
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
363
|
+
const { id, name, args, server_name } = toolCalls.get(ev.index);
|
|
364
|
+
if (server_name) {
|
|
365
|
+
// MCP tool use
|
|
366
|
+
textBlocks.push({
|
|
367
|
+
type: 'mcp_tool_use',
|
|
368
|
+
id,
|
|
369
|
+
name,
|
|
370
|
+
server_name,
|
|
371
|
+
input: JSON.parse(args || '{}'),
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
else {
|
|
375
|
+
// Standard tool use
|
|
376
|
+
textBlocks.push({
|
|
377
|
+
type: 'tool_use',
|
|
378
|
+
id,
|
|
379
|
+
name,
|
|
380
|
+
input: JSON.parse(args || '{}'),
|
|
381
|
+
});
|
|
382
|
+
}
|
|
311
383
|
toolCalls.delete(ev.index);
|
|
312
384
|
}
|
|
313
385
|
}
|
|
314
386
|
}
|
|
315
387
|
return {
|
|
316
388
|
blocks: textBlocks,
|
|
317
|
-
stop_reason: textBlocks.some((b) => b.type === 'tool_use')
|
|
389
|
+
stop_reason: textBlocks.some((b) => b.type === 'tool_use' || b.type === 'mcp_tool_use')
|
|
318
390
|
? 'tool_use'
|
|
319
391
|
: 'end',
|
|
320
392
|
};
|
|
@@ -340,6 +412,15 @@ export class ClaudeChatService {
|
|
|
340
412
|
input: c.input ?? {},
|
|
341
413
|
});
|
|
342
414
|
}
|
|
415
|
+
else if (c.type === 'mcp_tool_use') {
|
|
416
|
+
blocks.push({
|
|
417
|
+
type: 'mcp_tool_use',
|
|
418
|
+
id: c.id,
|
|
419
|
+
name: c.name,
|
|
420
|
+
server_name: c.server_name,
|
|
421
|
+
input: c.input ?? {},
|
|
422
|
+
});
|
|
423
|
+
}
|
|
343
424
|
else if (c.type === 'tool_result') {
|
|
344
425
|
blocks.push({
|
|
345
426
|
type: 'tool_result',
|
|
@@ -347,10 +428,18 @@ export class ClaudeChatService {
|
|
|
347
428
|
content: c.content ?? '',
|
|
348
429
|
});
|
|
349
430
|
}
|
|
431
|
+
else if (c.type === 'mcp_tool_result') {
|
|
432
|
+
blocks.push({
|
|
433
|
+
type: 'mcp_tool_result',
|
|
434
|
+
tool_use_id: c.tool_use_id,
|
|
435
|
+
is_error: c.is_error ?? false,
|
|
436
|
+
content: c.content ?? [],
|
|
437
|
+
});
|
|
438
|
+
}
|
|
350
439
|
});
|
|
351
440
|
return {
|
|
352
441
|
blocks,
|
|
353
|
-
stop_reason: blocks.some((b) => b.type === 'tool_use')
|
|
442
|
+
stop_reason: blocks.some((b) => b.type === 'tool_use' || b.type === 'mcp_tool_use')
|
|
354
443
|
? 'tool_use'
|
|
355
444
|
: 'end',
|
|
356
445
|
};
|
|
@@ -364,10 +453,11 @@ export class ClaudeChatService {
|
|
|
364
453
|
*/
|
|
365
454
|
async chatOnce(messages, stream = true, onPartial = () => { }) {
|
|
366
455
|
const res = await this.callClaude(messages, this.model, stream);
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
456
|
+
const internalResult = stream
|
|
457
|
+
? await this.parseStream(res, onPartial)
|
|
458
|
+
: this.parseOneShot(await res.json());
|
|
459
|
+
// Convert ClaudeInternalCompletion to ToolChatCompletion for compatibility
|
|
460
|
+
return this.convertToStandardCompletion(internalResult);
|
|
371
461
|
}
|
|
372
462
|
/**
|
|
373
463
|
* Process vision chat messages
|
|
@@ -376,10 +466,28 @@ export class ClaudeChatService {
|
|
|
376
466
|
*/
|
|
377
467
|
async visionChatOnce(messages, stream = false, onPartial = () => { }) {
|
|
378
468
|
const res = await this.callClaude(messages, this.visionModel, stream);
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
469
|
+
const internalResult = stream
|
|
470
|
+
? await this.parseStream(res, onPartial)
|
|
471
|
+
: this.parseOneShot(await res.json());
|
|
472
|
+
// Convert ClaudeInternalCompletion to ToolChatCompletion for compatibility
|
|
473
|
+
return this.convertToStandardCompletion(internalResult);
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Convert internal completion to standard ToolChatCompletion
|
|
477
|
+
* @param completion Internal completion result
|
|
478
|
+
* @returns Standard ToolChatCompletion
|
|
479
|
+
*/
|
|
480
|
+
convertToStandardCompletion(completion) {
|
|
481
|
+
// Filter out MCP-specific blocks and convert to standard format
|
|
482
|
+
const standardBlocks = completion.blocks.filter((block) => {
|
|
483
|
+
return (block.type === 'text' ||
|
|
484
|
+
block.type === 'tool_use' ||
|
|
485
|
+
block.type === 'tool_result');
|
|
486
|
+
});
|
|
487
|
+
return {
|
|
488
|
+
blocks: standardBlocks,
|
|
489
|
+
stop_reason: completion.stop_reason,
|
|
490
|
+
};
|
|
383
491
|
}
|
|
384
492
|
}
|
|
385
493
|
//# sourceMappingURL=ClaudeChatService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeChatService.js","sourceRoot":"","sources":["../../../../../src/services/chat/providers/claude/ClaudeChatService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ClaudeChatService.js","sourceRoot":"","sources":["../../../../../src/services/chat/providers/claude/ClaudeChatService.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { ChatServiceOptions, ChatServiceProvider } from '../ChatServiceProvider'
|
|
|
6
6
|
export declare class ClaudeChatServiceProvider implements ChatServiceProvider {
|
|
7
7
|
/**
|
|
8
8
|
* Create a chat service instance
|
|
9
|
-
* @param options Service options
|
|
9
|
+
* @param options Service options (can include mcpServers)
|
|
10
10
|
* @returns ClaudeChatService instance
|
|
11
11
|
*/
|
|
12
12
|
createChatService(options: ChatServiceOptions): ChatService;
|
|
@@ -6,7 +6,7 @@ import { ClaudeChatService } from './ClaudeChatService';
|
|
|
6
6
|
export class ClaudeChatServiceProvider {
|
|
7
7
|
/**
|
|
8
8
|
* Create a chat service instance
|
|
9
|
-
* @param options Service options
|
|
9
|
+
* @param options Service options (can include mcpServers)
|
|
10
10
|
* @returns ClaudeChatService instance
|
|
11
11
|
*/
|
|
12
12
|
createChatService(options) {
|
|
@@ -15,7 +15,7 @@ export class ClaudeChatServiceProvider {
|
|
|
15
15
|
(this.supportsVisionForModel(options.model || this.getDefaultModel())
|
|
16
16
|
? options.model
|
|
17
17
|
: this.getDefaultModel());
|
|
18
|
-
return new ClaudeChatService(options.apiKey, options.model || this.getDefaultModel(), visionModel, options.tools ?? []);
|
|
18
|
+
return new ClaudeChatService(options.apiKey, options.model || this.getDefaultModel(), visionModel, options.tools ?? [], options.mcpServers ?? []);
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
21
|
* Get the provider name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/chat/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/chat/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD;;GAEG;AACH,MAAM,OAAO,yBAAyB;IACpC;;;;OAIG;IACH,iBAAiB,CAAC,OAA2B;QAC3C,gFAAgF;QAChF,MAAM,WAAW,GACf,OAAO,CAAC,WAAW;YACnB,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACnE,CAAC,CAAC,OAAO,CAAC,KAAK;gBACf,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QAE9B,OAAO,IAAI,iBAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,EACvC,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EAClB,OAAe,CAAC,UAAU,IAAI,EAAE,CAClC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,oBAAoB;YACpB,sBAAsB;YACtB,uBAAuB;YACvB,uBAAuB;SACxB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,8BAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ChatService } from '../../ChatService';
|
|
2
2
|
import { Message, MessageWithVision } from '../../../../types';
|
|
3
3
|
import { ToolDefinition, ToolChatCompletion } from '../../../../types';
|
|
4
|
+
import { MCPServerConfig } from '../../../../types';
|
|
4
5
|
/**
|
|
5
6
|
* OpenAI implementation of ChatService
|
|
6
7
|
*/
|
|
@@ -11,13 +12,15 @@ export declare class OpenAIChatService implements ChatService {
|
|
|
11
12
|
private model;
|
|
12
13
|
private visionModel;
|
|
13
14
|
private tools;
|
|
15
|
+
private endpoint;
|
|
16
|
+
private mcpServers;
|
|
14
17
|
/**
|
|
15
18
|
* Constructor
|
|
16
19
|
* @param apiKey OpenAI API key
|
|
17
20
|
* @param model Name of the model to use
|
|
18
21
|
* @param visionModel Name of the vision model
|
|
19
22
|
*/
|
|
20
|
-
constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[]);
|
|
23
|
+
constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[], endpoint?: string, mcpServers?: MCPServerConfig[]);
|
|
21
24
|
/**
|
|
22
25
|
* Get the current model name
|
|
23
26
|
* @returns Model name
|
|
@@ -44,19 +47,59 @@ export declare class OpenAIChatService implements ChatService {
|
|
|
44
47
|
*/
|
|
45
48
|
processVisionChat(messages: MessageWithVision[], onPartialResponse: (text: string) => void, onCompleteResponse: (text: string) => Promise<void>): Promise<void>;
|
|
46
49
|
/**
|
|
47
|
-
* Process chat messages with tools
|
|
50
|
+
* Process chat messages with tools (text only)
|
|
48
51
|
* @param messages Array of messages to send
|
|
52
|
+
* @param stream Whether to use streaming
|
|
53
|
+
* @param onPartialResponse Callback for partial responses
|
|
49
54
|
* @returns Tool chat completion
|
|
50
55
|
*/
|
|
51
56
|
chatOnce(messages: Message[], stream?: boolean, onPartialResponse?: (text: string) => void): Promise<ToolChatCompletion>;
|
|
52
57
|
/**
|
|
53
58
|
* Process vision chat messages with tools
|
|
54
59
|
* @param messages Array of messages to send (including images)
|
|
60
|
+
* @param stream Whether to use streaming
|
|
61
|
+
* @param onPartialResponse Callback for partial responses
|
|
55
62
|
* @returns Tool chat completion
|
|
56
63
|
*/
|
|
57
64
|
visionChatOnce(messages: MessageWithVision[], stream?: boolean, onPartialResponse?: (text: string) => void): Promise<ToolChatCompletion>;
|
|
65
|
+
/**
|
|
66
|
+
* Parse response based on endpoint type
|
|
67
|
+
*/
|
|
68
|
+
private parseResponse;
|
|
58
69
|
private callOpenAI;
|
|
70
|
+
/**
|
|
71
|
+
* Build request body based on the endpoint type
|
|
72
|
+
*/
|
|
73
|
+
private buildRequestBody;
|
|
74
|
+
/**
|
|
75
|
+
* Validate MCP servers compatibility with the current endpoint
|
|
76
|
+
*/
|
|
77
|
+
private validateMCPCompatibility;
|
|
78
|
+
/**
|
|
79
|
+
* Clean messages for Responses API (remove timestamp and other extra properties)
|
|
80
|
+
*/
|
|
81
|
+
private cleanMessagesForResponsesAPI;
|
|
82
|
+
/**
|
|
83
|
+
* Build tools definition based on the endpoint type
|
|
84
|
+
*/
|
|
85
|
+
private buildToolsDefinition;
|
|
86
|
+
/**
|
|
87
|
+
* Build MCP tools definition for Responses API
|
|
88
|
+
*/
|
|
89
|
+
private buildMCPToolsDefinition;
|
|
59
90
|
private handleStream;
|
|
60
91
|
private parseStream;
|
|
61
92
|
private parseOneShot;
|
|
93
|
+
/**
|
|
94
|
+
* Parse streaming response from Responses API (SSE format)
|
|
95
|
+
*/
|
|
96
|
+
private parseResponsesStream;
|
|
97
|
+
/**
|
|
98
|
+
* Handle specific SSE events from Responses API
|
|
99
|
+
*/
|
|
100
|
+
private handleResponsesSSEEvent;
|
|
101
|
+
/**
|
|
102
|
+
* Parse non-streaming response from Responses API
|
|
103
|
+
*/
|
|
104
|
+
private parseResponsesOneShot;
|
|
62
105
|
}
|