@theia/ai-openai 1.75.0-next.8 → 1.75.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/lib/common/openai-preferences.d.ts.map +1 -1
- package/lib/common/openai-preferences.js +4 -0
- package/lib/common/openai-preferences.js.map +1 -1
- package/lib/node/openai-language-model.d.ts.map +1 -1
- package/lib/node/openai-language-model.js +1 -2
- package/lib/node/openai-language-model.js.map +1 -1
- package/lib/node/openai-language-models-manager-impl.d.ts +2 -0
- package/lib/node/openai-language-models-manager-impl.d.ts.map +1 -1
- package/lib/node/openai-language-models-manager-impl.js +7 -1
- package/lib/node/openai-language-models-manager-impl.js.map +1 -1
- package/lib/node/openai-response-api-utils.d.ts +2 -1
- package/lib/node/openai-response-api-utils.d.ts.map +1 -1
- package/lib/node/openai-response-api-utils.js +17 -10
- package/lib/node/openai-response-api-utils.js.map +1 -1
- package/lib/node/openai-response-api-utils.spec.js +10 -15
- package/lib/node/openai-response-api-utils.spec.js.map +1 -1
- package/package.json +8 -8
- package/src/common/openai-preferences.ts +7 -1
- package/src/node/openai-language-model.ts +3 -3
- package/src/node/openai-language-models-manager-impl.ts +6 -2
- package/src/node/openai-response-api-utils.spec.ts +13 -16
- package/src/node/openai-response-api-utils.ts +18 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAuB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpE,eAAO,MAAM,YAAY,4CAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,oDAAoD,CAAC;AAC7E,eAAO,MAAM,qBAAqB,8CAA8C,CAAC;AACjF,eAAO,MAAM,2BAA2B,oDAAoD,CAAC;AAC7F,eAAO,MAAM,2CAA2C,kEAAkE,CAAC;AAC3H,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AAEnF,eAAO,MAAM,uBAAuB,EAAE,gBAyKrC,CAAC"}
|
|
@@ -29,6 +29,7 @@ exports.OpenAiPreferencesSchema = {
|
|
|
29
29
|
properties: {
|
|
30
30
|
[exports.API_KEY_PREF]: {
|
|
31
31
|
type: 'string',
|
|
32
|
+
typeDetails: { [ai_core_preferences_1.MODEL_PROVIDER_TYPE_DETAIL]: { label: 'OpenAI' } },
|
|
32
33
|
markdownDescription: core_1.nls.localize('theia/ai/openai/apiKey/mdDescription', 'Enter an API Key of your official OpenAI Account. **Please note:** By using this preference the Open AI API key will be stored in clear text \
|
|
33
34
|
on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to set the key securely.') + core_1.LINUX_ENV_HINT,
|
|
34
35
|
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
@@ -78,6 +79,9 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
78
79
|
},
|
|
79
80
|
[exports.CUSTOM_ENDPOINTS_PREF]: {
|
|
80
81
|
type: 'array',
|
|
82
|
+
typeDetails: {
|
|
83
|
+
[ai_core_preferences_1.MODEL_PROVIDER_TYPE_DETAIL]: { label: core_1.nls.localize('theia/ai/openai/customProvider/label', '{0} (Custom)', 'OpenAI') }
|
|
84
|
+
},
|
|
81
85
|
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
82
86
|
markdownDescription: core_1.nls.localize('theia/ai/openai/customEndpoints/mdDescription', 'Integrate custom models compatible with the OpenAI API, for example via `vllm`. The required attributes are `model` and `url`.\
|
|
83
87
|
\n\
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,
|
|
1
|
+
{"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-model.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,aAAa,EACb,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EAEX,mBAAmB,EACnB,gBAAgB,EAGhB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"openai-language-model.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -293,8 +293,7 @@ let OpenAiModelUtils = class OpenAiModelUtils {
|
|
|
293
293
|
return {
|
|
294
294
|
role: 'tool',
|
|
295
295
|
tool_call_id: message.tool_use_id,
|
|
296
|
-
|
|
297
|
-
content: typeof message.content === 'string' ? message.content : JSON.stringify(message.content)
|
|
296
|
+
content: typeof message.content === 'string' ? message.content : (0, ai_core_1.formatToolCallContentForModel)(message.content)
|
|
298
297
|
};
|
|
299
298
|
}
|
|
300
299
|
if (ai_core_1.LanguageModelMessage.isImageMessage(message) && message.actor === 'user') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-model.js","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai-language-model.js","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { LanguageModelRegistry, LanguageModelStatus, ReasoningSupport } from '@t
|
|
|
2
2
|
import { DeveloperMessageSettings, OpenAiModelUtils } from './openai-language-model';
|
|
3
3
|
import { OpenAiResponseApiUtils } from './openai-response-api-utils';
|
|
4
4
|
import { OpenAiLanguageModelsManager, OpenAiModelDescription } from '../common';
|
|
5
|
+
import { ILogger } from '@theia/core';
|
|
5
6
|
import { OPENAI_SERVER_TOOLS } from './openai-server-tools';
|
|
6
7
|
interface ResolvedModelMetadata {
|
|
7
8
|
maxInputTokens?: number;
|
|
@@ -14,6 +15,7 @@ interface ResolvedModelMetadata {
|
|
|
14
15
|
export declare class OpenAiLanguageModelsManagerImpl implements OpenAiLanguageModelsManager {
|
|
15
16
|
protected readonly openAiModelUtils: OpenAiModelUtils;
|
|
16
17
|
protected readonly responseApiUtils: OpenAiResponseApiUtils;
|
|
18
|
+
protected readonly logger: ILogger;
|
|
17
19
|
protected _apiKey: string | undefined;
|
|
18
20
|
protected _apiVersion: string | undefined;
|
|
19
21
|
protected _proxyUrl: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-models-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-models-manager-impl.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,OAAO,EAAE,wBAAwB,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,UAAU,qBAAqB;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,eAAe,EAAE,OAAO,CAAC;IACzB,wBAAwB,EAAE,OAAO,CAAC;IAClC,2BAA2B,EAAE,OAAO,CAAC;CACxC;AAED,qBACa,+BAAgC,YAAW,2BAA2B;IAG/E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-language-models-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-models-manager-impl.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,OAAO,EAAE,wBAAwB,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,UAAU,qBAAqB;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,eAAe,EAAE,OAAO,CAAC;IACzB,wBAAwB,EAAE,OAAO,CAAC;IAClC,2BAA2B,EAAE,OAAO,CAAC;CACxC;AAED,qBACa,+BAAgC,YAAW,2BAA2B;IAG/E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAGxC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAEhE,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,SAAS,CAAC,eAAe,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,mBAAmB;IAYvH,4BAA4B,CAAC,GAAG,iBAAiB,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAkFjG,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,sBAAsB,GAAG,OAAO,mBAAmB,GAAG,SAAS;IAIzG;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,WAAW,EAAE,sBAAsB,GAAG,qBAAqB;IAarF,oBAAoB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAQ3C,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAQnD,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;CAOlD"}
|
|
@@ -23,6 +23,7 @@ const inversify_1 = require("@theia/core/shared/inversify");
|
|
|
23
23
|
const openai_language_model_1 = require("./openai-language-model");
|
|
24
24
|
const openai_response_api_utils_1 = require("./openai-response-api-utils");
|
|
25
25
|
const openai_model_defaults_1 = require("./openai-model-defaults");
|
|
26
|
+
const core_1 = require("@theia/core");
|
|
26
27
|
const openai_server_tools_1 = require("./openai-server-tools");
|
|
27
28
|
let OpenAiLanguageModelsManagerImpl = class OpenAiLanguageModelsManagerImpl {
|
|
28
29
|
get apiKey() {
|
|
@@ -69,7 +70,7 @@ let OpenAiLanguageModelsManagerImpl = class OpenAiLanguageModelsManagerImpl {
|
|
|
69
70
|
const serverTools = this.resolveServerTools(modelDescription);
|
|
70
71
|
if (model) {
|
|
71
72
|
if (!(model instanceof openai_language_model_1.OpenAiModel)) {
|
|
72
|
-
|
|
73
|
+
this.logger.warn(`OpenAI: model ${modelDescription.id} is not an OpenAI model`);
|
|
73
74
|
continue;
|
|
74
75
|
}
|
|
75
76
|
await this.languageModelRegistry.patchLanguageModel(modelDescription.id, {
|
|
@@ -158,6 +159,11 @@ tslib_1.__decorate([
|
|
|
158
159
|
(0, inversify_1.inject)(openai_response_api_utils_1.OpenAiResponseApiUtils),
|
|
159
160
|
tslib_1.__metadata("design:type", openai_response_api_utils_1.OpenAiResponseApiUtils)
|
|
160
161
|
], OpenAiLanguageModelsManagerImpl.prototype, "responseApiUtils", void 0);
|
|
162
|
+
tslib_1.__decorate([
|
|
163
|
+
(0, inversify_1.inject)(core_1.ILogger),
|
|
164
|
+
(0, inversify_1.named)('ai-openai:OpenAiLanguageModelsManagerImpl'),
|
|
165
|
+
tslib_1.__metadata("design:type", Object)
|
|
166
|
+
], OpenAiLanguageModelsManagerImpl.prototype, "logger", void 0);
|
|
161
167
|
tslib_1.__decorate([
|
|
162
168
|
(0, inversify_1.inject)(ai_core_1.LanguageModelRegistry),
|
|
163
169
|
tslib_1.__metadata("design:type", Object)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-models-manager-impl.js","sourceRoot":"","sources":["../../src/node/openai-language-models-manager-impl.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4CAA8F;AAC9F,kDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"openai-language-models-manager-impl.js","sourceRoot":"","sources":["../../src/node/openai-language-models-manager-impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { LanguageModelMessage, LanguageModelResponse, LanguageModelStreamResponsePart, ToolRequest, UserRequest } from '@theia/ai-core';
|
|
2
|
-
import { CancellationToken } from '@theia/core';
|
|
2
|
+
import { CancellationToken, ILogger } from '@theia/core';
|
|
3
3
|
import { OpenAI } from 'openai';
|
|
4
4
|
import type { RunnerOptions } from 'openai/lib/AbstractChatCompletionRunner';
|
|
5
5
|
import type { Tool, ResponseInputItem, ResponseStreamEvent } from 'openai/resources/responses/responses';
|
|
@@ -17,6 +17,7 @@ export declare const OPENAI_TOOL_SEARCH = "tool_search";
|
|
|
17
17
|
* patterns for tool calling, keeping the main language model class clean and focused.
|
|
18
18
|
*/
|
|
19
19
|
export declare class OpenAiResponseApiUtils {
|
|
20
|
+
protected readonly logger: ILogger;
|
|
20
21
|
/**
|
|
21
22
|
* Handles Response API requests with proper tool calling cycles.
|
|
22
23
|
* Works for both streaming and non-streaming cases.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-response-api-utils.d.ts","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAGH,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAI/B,WAAW,EACX,WAAW,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAoB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-response-api-utils.d.ts","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAGH,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAI/B,WAAW,EACX,WAAW,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAoB,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,KAAK,EAER,IAAI,EAKJ,iBAAiB,EACjB,mBAAmB,EAGtB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGrF,eAAO,MAAM,uCAAuC,gCAAgC,CAAC;AAErF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAmBhD;;;;;GAKG;AACH,qBACa,sBAAsB;IAG/B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACG,aAAa,CACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,gBAAgB,EAC5B,wBAAwB,EAAE,wBAAwB,EAClD,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,EACpB,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,qBAAqB,CAAC;IA6DjC;;OAEG;IACH,0BAA0B,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS;IA0BzH,SAAS,CAAC,qCAAqC,CAC3C,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAC1C,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,aAAa,CAAC,+BAA+B,CAAC;IAyDjD;;;;;;;;;;OAUG;IACH,eAAe,CACX,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,EAClD,KAAK,EAAE,MAAM,GACd;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,EAAE,CAAA;KAAE;IAkHxD,SAAS,CAAC,qBAAqB,CAC3B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,GACnD,oBAAoB,EAAE;CAG5B;AA6fD,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,GACnD,oBAAoB,EAAE,CA0BxB"}
|
|
@@ -85,7 +85,7 @@ let OpenAiResponseApiUtils = class OpenAiResponseApiUtils {
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
// Handle tool calling with multi-turn conversation using the unified iterator
|
|
88
|
-
const iterator = new ResponseApiToolCallIterator(openai, request, effectiveSettings, model, modelUtils, developerMessageSettings, runnerOptions, modelId, this, isStreaming, cancellationToken);
|
|
88
|
+
const iterator = new ResponseApiToolCallIterator(openai, request, effectiveSettings, model, modelUtils, developerMessageSettings, runnerOptions, modelId, this, this.logger, isStreaming, cancellationToken);
|
|
89
89
|
return { stream: iterator };
|
|
90
90
|
}
|
|
91
91
|
/**
|
|
@@ -113,10 +113,11 @@ let OpenAiResponseApiUtils = class OpenAiResponseApiUtils {
|
|
|
113
113
|
if (converted.length === 0) {
|
|
114
114
|
return undefined;
|
|
115
115
|
}
|
|
116
|
-
|
|
116
|
+
this.logger.debug(`Converted ${(tools ?? []).length} tools for Response API:`, converted.map(t => t.type === 'function' ? t.name : t.type));
|
|
117
117
|
return converted;
|
|
118
118
|
}
|
|
119
119
|
createSimpleResponseApiStreamIterator(stream, cancellationToken) {
|
|
120
|
+
const logger = this.logger;
|
|
120
121
|
return {
|
|
121
122
|
async *[Symbol.asyncIterator]() {
|
|
122
123
|
let lastUsage;
|
|
@@ -159,7 +160,7 @@ let OpenAiResponseApiUtils = class OpenAiResponseApiUtils {
|
|
|
159
160
|
}
|
|
160
161
|
}
|
|
161
162
|
else if (event.type === 'error') {
|
|
162
|
-
|
|
163
|
+
logger.error('Response API error:', event.message);
|
|
163
164
|
throw new Error(`Response API error: ${event.message}`);
|
|
164
165
|
}
|
|
165
166
|
}
|
|
@@ -307,6 +308,11 @@ let OpenAiResponseApiUtils = class OpenAiResponseApiUtils {
|
|
|
307
308
|
}
|
|
308
309
|
};
|
|
309
310
|
exports.OpenAiResponseApiUtils = OpenAiResponseApiUtils;
|
|
311
|
+
tslib_1.__decorate([
|
|
312
|
+
(0, inversify_1.inject)(core_1.ILogger),
|
|
313
|
+
(0, inversify_1.named)('ai-openai:OpenAiResponseApiUtils'),
|
|
314
|
+
tslib_1.__metadata("design:type", Object)
|
|
315
|
+
], OpenAiResponseApiUtils.prototype, "logger", void 0);
|
|
310
316
|
exports.OpenAiResponseApiUtils = OpenAiResponseApiUtils = tslib_1.__decorate([
|
|
311
317
|
(0, inversify_1.injectable)()
|
|
312
318
|
], OpenAiResponseApiUtils);
|
|
@@ -315,7 +321,7 @@ exports.OpenAiResponseApiUtils = OpenAiResponseApiUtils = tslib_1.__decorate([
|
|
|
315
321
|
* Based on the pattern from openai-streaming-iterator.ts but adapted for Response API.
|
|
316
322
|
*/
|
|
317
323
|
class ResponseApiToolCallIterator {
|
|
318
|
-
constructor(openai, request, settings, model, modelUtils, developerMessageSettings, runnerOptions, modelId, utils, isStreaming, cancellationToken) {
|
|
324
|
+
constructor(openai, request, settings, model, modelUtils, developerMessageSettings, runnerOptions, modelId, utils, logger, isStreaming, cancellationToken) {
|
|
319
325
|
this.openai = openai;
|
|
320
326
|
this.request = request;
|
|
321
327
|
this.settings = settings;
|
|
@@ -325,6 +331,7 @@ class ResponseApiToolCallIterator {
|
|
|
325
331
|
this.runnerOptions = runnerOptions;
|
|
326
332
|
this.modelId = modelId;
|
|
327
333
|
this.utils = utils;
|
|
334
|
+
this.logger = logger;
|
|
328
335
|
this.isStreaming = isStreaming;
|
|
329
336
|
this.cancellationToken = cancellationToken;
|
|
330
337
|
this.requestQueue = new Array();
|
|
@@ -376,7 +383,7 @@ class ResponseApiToolCallIterator {
|
|
|
376
383
|
async startIteration() {
|
|
377
384
|
try {
|
|
378
385
|
while (this.iteration < this.maxIterations && !this.cancellationToken?.isCancellationRequested) {
|
|
379
|
-
|
|
386
|
+
this.logger.debug(`Starting Response API iteration ${this.iteration} with ${this.currentInput.length} input messages`);
|
|
380
387
|
await this.processStream();
|
|
381
388
|
// Check if we have tool calls that need execution
|
|
382
389
|
if (this.currentToolCalls.size === 0) {
|
|
@@ -529,13 +536,13 @@ class ResponseApiToolCallIterator {
|
|
|
529
536
|
}
|
|
530
537
|
break;
|
|
531
538
|
case 'error':
|
|
532
|
-
|
|
539
|
+
this.logger.error('Response API error:', event.message);
|
|
533
540
|
throw new Error(`Response API error: ${event.message}`);
|
|
534
541
|
}
|
|
535
542
|
}
|
|
536
543
|
handleFunctionCallAdded(functionCall) {
|
|
537
544
|
if (functionCall.id && functionCall.call_id) {
|
|
538
|
-
|
|
545
|
+
this.logger.debug(`Function call added: ${functionCall.name} with id ${functionCall.id} and call_id ${functionCall.call_id}`);
|
|
539
546
|
const toolCall = this.createToolCall(functionCall, functionCall.id);
|
|
540
547
|
toolCall.reasoningItems = this.pendingReasoningItems.splice(0);
|
|
541
548
|
this.currentToolCalls.set(functionCall.id, toolCall);
|
|
@@ -668,7 +675,7 @@ class ResponseApiToolCallIterator {
|
|
|
668
675
|
}
|
|
669
676
|
handleFunctionCallDone(functionCall) {
|
|
670
677
|
if (!functionCall.id) {
|
|
671
|
-
|
|
678
|
+
this.logger.warn('Unexpected absence of ID for call ID', functionCall.call_id);
|
|
672
679
|
return;
|
|
673
680
|
}
|
|
674
681
|
const toolCall = this.currentToolCalls.get(functionCall.id);
|
|
@@ -690,14 +697,14 @@ class ResponseApiToolCallIterator {
|
|
|
690
697
|
this.handleFunctionCall(toolCall, true, result);
|
|
691
698
|
}
|
|
692
699
|
catch (error) {
|
|
693
|
-
|
|
700
|
+
this.logger.error(`Error executing tool ${toolCall.name}:`, error);
|
|
694
701
|
toolCall.error = error instanceof Error ? error : new Error(String(error));
|
|
695
702
|
// Yield the tool call error
|
|
696
703
|
this.handleFunctionCall(toolCall, true, (0, ai_core_1.createToolCallError)(error instanceof Error ? error.message : String(error)));
|
|
697
704
|
}
|
|
698
705
|
}
|
|
699
706
|
else {
|
|
700
|
-
|
|
707
|
+
this.logger.warn(`Tool ${toolCall.name} not found in request tools`);
|
|
701
708
|
toolCall.error = new Error(`Tool ${toolCall.name} not found`);
|
|
702
709
|
// Yield the tool call error
|
|
703
710
|
this.handleFunctionCall(toolCall, true, (0, ai_core_1.createToolCallError)(`Tool '${toolCall.name}' not found in the available tools for this request.`, 'tool-not-available'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-response-api-utils.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAy2BhF,sDA6BC;;AAp4BD,4CAWwB;AACxB,sCAAkE;AAClE,sEAA+D;AAC/D,4DAA0D;AAiB1D,+DAA6F;AAEhF,QAAA,uCAAuC,GAAG,6BAA6B,CAAC;AAErF;;;GAGG;AACU,QAAA,kBAAkB,GAAG,aAAa,CAAC;AAEhD,SAAS,yBAAyB,CAAC,KAAa;IAC5C,OAAO,KAAK,KAAK,CAAC;QACd,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,qCAAqC,EAAE,eAAe,CAAC;QACtE,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;AACtF,CAAC;AAaD;;;;;GAKG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAE/B;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,MAAc,EACd,OAAoB,EACpB,QAAiC,EACjC,KAAa,EACb,UAA4B,EAC5B,wBAAkD,EAClD,aAA4B,EAC5B,OAAe,EACf,WAAoB,EACpB,iBAAqC;QAErC,IAAI,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxB,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACxG,MAAM,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3G,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;gBACxB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,uCAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/F,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,IAAI,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,uCAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACxH,CAAC,CAAC,CAAC;QACJ,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEnF,yDAAyD;QACzD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBACnC,KAAK,EAAE,KAAuB;oBAC9B,YAAY;oBACZ,KAAK;oBACL,GAAG,iBAAiB;iBACvB,CAAC,CAAC;gBACH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,qCAAqC,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC3C,KAAK,EAAE,KAAuB;oBAC9B,YAAY;oBACZ,KAAK;oBACL,GAAG,iBAAiB;iBACvB,CAAC,CAAC;gBAEH,OAAO;oBACH,IAAI,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;oBAChC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;wBACpB,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY;wBACzC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa;qBAC9C,CAAC,CAAC,CAAC,SAAS;iBAChB,CAAC;YACN,CAAC;QACL,CAAC;QAED,8EAA8E;QAC9E,MAAM,QAAQ,GAAG,IAAI,2BAA2B,CAC5C,MAAM,EACN,OAAO,EACP,iBAAiB,EACjB,KAAK,EACL,UAAU,EACV,wBAAwB,EACxB,aAAa,EACb,OAAO,EACP,IAAI,EACJ,WAAW,EACX,iBAAiB,CACpB,CAAC;QAEF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,KAAqB,EAAE,eAA0B,EAAE,WAAsB;QAChG,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,SAAS,GAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjD,IAAI,EAAE,UAAmB;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,iGAAiG;YACjG,6FAA6F;YAC7F,oFAAoF;YACpF,UAAU,EAAE,IAAI,CAAC,UAAmD;YACpE,MAAM,EAAE,KAAK;YACb,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SAC1D,CAAC,CAAC,CAAC;QACJ,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACpB,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,WAAW,EAAE,QAAQ,CAAC,uCAAiB,CAAC,EAAE,CAAC;YAC3C,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,0BAA0B,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACxI,OAAO,SAAS,CAAC;IACrB,CAAC;IAES,qCAAqC,CAC3C,MAA0C,EAC1C,iBAAqC;QAErC,OAAO;YACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;gBACzB,IAAI,SAAsE,CAAC;gBAC3E,IAAI,YAAY,GAAG,KAAK,CAAC;gBACzB,IAAI,CAAC;oBACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC/B,IAAI,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;4BAC7C,MAAM;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;4BAC9C,MAAM;gCACF,OAAO,EAAE,KAAK,CAAC,KAAK;6BACvB,CAAC;wBACN,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;4BACzF,MAAM;gCACF,UAAU,EAAE;oCACR,QAAQ,EAAE,kBAAkB;oCAC5B,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE;iCAC/E;6BACJ,CAAC;wBACN,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;4BAC7C,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;gCACxB,YAAY,GAAG,IAAI,CAAC;gCACpB,MAAM;oCACF,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY;oCAC/C,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa;iCACpD,CAAC;4BACN,CAAC;wBACL,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;4BACpF,2DAA2D;4BAC3D,MAAM,aAAa,GAAG,KAAmF,CAAC;4BAC1G,IAAI,aAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;gCAChC,SAAS,GAAG;oCACR,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY;oCACvD,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa;iCAC5D,CAAC;4BACN,CAAC;wBACL,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAChC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;4BACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC5D,CAAC;oBACL,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACP,4EAA4E;oBAC5E,IAAI,CAAC,YAAY,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,IAAI,SAAS,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC5F,MAAM,SAAS,CAAC;oBACpB,CAAC;gBACL,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED;;;;;;;;;;OAUG;IACH,eAAe,CACX,QAAgC,EAChC,wBAAkD,EAClD,KAAa;QAEb,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,CAAC;aAC3E,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAExC,qDAAqD;QACrD,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QAC5G,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;YAC1C,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC;QAEhB,0DAA0D;QAC1D,MAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QACtE,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,mHAAmH;QACnH,yHAAyH;QACzH,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,8BAAoB,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,KAAK,kBAAkB,EAAE,CAAC;gBACnG,MAAM,IAAI,GAAG,SAAS,CAAC,IAAkD,CAAC;gBAC1E,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,YAAY;oBAClB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;oBACzC,EAAE,EAAE,IAAI,CAAC,EAAE;iBACd,CAAC,CAAC;gBACH,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnB,MAAM;YACV,CAAC;QACL,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YACxD,IAAI,8BAAoB,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpD,gGAAgG;gBAChG,4EAA4E;gBAC5E,SAAS;YACb,CAAC;iBAAM,IAAI,8BAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBACzB,sDAAsD;oBACtD,KAAK,CAAC,IAAI,CAAC;wBACP,EAAE,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;wBACtE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE,WAAW;wBACnB,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,aAAa;gCACnB,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,WAAW,EAAE,EAAE;6BAClB,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,iCAAiC;oBACjC,KAAK,CAAC,IAAI,CAAC;wBACP,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,YAAY;gCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;6BACrB,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;iBAAM,IAAI,8BAAoB,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxD,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,+CAAuC,CAAC,CAAC;gBAC7E,IAAI,YAAY,EAAE,CAAC;oBACf,IAAI,CAAC;wBACD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAwB,CAAC,CAAC;oBACnE,CAAC;oBAAC,MAAM,CAAC;wBACL,gCAAgC;oBACpC,CAAC;gBACL,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;iBAC3C,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxG,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,MAAM,EAAE,OAAO;iBAClB,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtD,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC;4BACN,IAAI,EAAE,aAAa;4BACnB,MAAM,EAAE,MAAM;4BACd,SAAS,EAAE,sBAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gCAC7C,QAAQ,OAAO,CAAC,KAAK,CAAC,QAAQ,WAAW,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;gCACrE,OAAO,CAAC,KAAK,CAAC,GAAG;yBACxB,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACX,CAAC;iBAAM,IAAI,8BAAoB,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,uDAAiC,CAAC,CAAC;gBACpE,IAAI,OAAO,CAAC,IAAI,KAAK,uCAAiB,IAAI,SAAS,EAAE,CAAC;oBAClD,IAAI,CAAC;wBACD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAwB,CAAC,CAAC;oBAChE,CAAC;oBAAC,MAAM,CAAC;wBACL,gCAAgC;oBACpC,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;QAED,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAES,qBAAqB,CAC3B,QAAgC,EAChC,wBAAkD;QAElD,OAAO,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IACrE,CAAC;CACJ,CAAA;AA1SY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CA0SlC;AAED;;;GAGG;AACH,MAAM,2BAA2B;IAmB7B,YACuB,MAAc,EACd,OAAoB,EACpB,QAAiC,EACjC,KAAa,EACb,UAA4B,EAC5B,wBAAkD,EAClD,aAA4B,EAC5B,OAAe,EACf,KAA6B,EAC7B,WAAoB,EACpB,iBAAqC;QAVrC,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAa;QACpB,aAAQ,GAAR,QAAQ,CAAyB;QACjC,UAAK,GAAL,KAAK,CAAQ;QACb,eAAU,GAAV,UAAU,CAAkB;QAC5B,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,kBAAa,GAAb,aAAa,CAAe;QAC5B,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAwB;QAC7B,gBAAW,GAAX,WAAW,CAAS;QACpB,sBAAiB,GAAjB,iBAAiB,CAAoB;QA7BzC,iBAAY,GAAG,IAAI,KAAK,EAA6D,CAAC;QACtF,iBAAY,GAAG,IAAI,KAAK,EAAmC,CAAC;QACrE,SAAI,GAAG,KAAK,CAAC;QACb,kBAAa,GAAsB,SAAS,CAAC;QAI7C,qBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAG/C,cAAS,GAAG,CAAC,CAAC;QAId,wBAAmB,GAAG,EAAE,CAAC;QACzB,0BAAqB,GAAwB,EAAE,CAAC;QAChD,gCAA2B,GAAwB,EAAE,CAAC;QAe5D,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3G,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,kBAAkB,IAAI,GAAG,CAAC;QAE7D,4BAA4B;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QAED,mEAAmE;QACnE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO;gBACH,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAG;aACpC,CAAC;QACN,CAAC;aAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,aAAa,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO;gBACH,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,SAAS;aACnB,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,QAAQ,GAAG,IAAI,uBAAQ,EAAmD,CAAC;YACjF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC;IACL,CAAC;IAES,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;gBAC7F,OAAO,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,SAAS,IAAI,CAAC,YAAY,CAAC,MAAM,iBAAiB,CAAC,CAAC;gBAEnH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAE3B,kDAAkD;gBAClD,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACnC,4BAA4B;oBAC5B,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,OAAO;gBACX,CAAC;gBAED,yBAAyB;gBACzB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAE9B,6BAA6B;gBAC7B,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,CAAC;YAED,yBAAyB;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,aAAa,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;QAEtC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,oBAAoB;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;gBACxC,KAAK,EAAE,IAAI,CAAC,KAAuB;gBACnC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,KAAK,EAAE,IAAI,CAAC,YAAY;gBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,IAAI,CAAC,QAAQ;aACnB,CAAC,CAAC;YAEH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC/B,IAAI,IAAI,CAAC,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;oBAClD,MAAM;gBACV,CAAC;gBACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,wDAAwD;YACxD,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAC7C,CAAC;IACL,CAAC;IAES,KAAK,CAAC,2BAA2B;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YAChD,KAAK,EAAE,IAAI,CAAC,KAAuB;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,IAAI,CAAC,QAAQ;SACnB,CAAC,CAAC;QAEH,qBAAqB;QACrB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,cAAc,CAAC;gBAChB,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY;gBACzC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa;aAC9C,CAAC,CAAC;QACP,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;QACtD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,qBAAqB,GAAwB,EAAE,CAAC;QACtD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC5B,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACzC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,qBAAqB,EAAE,IAAI,CAAC,CAAC,CAAC;gBACvE,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpD,QAAQ,CAAC,cAAc,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC7C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC7C,CAAC;QACL,CAAC;QAED,+GAA+G;QAC/G,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,EAAwC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,oBAAoB,CAAC,IAAI,EAAE,CAAC;QAC5I,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC;gBAChB,iBAAiB,EAAE,CAAC;wBAChB,EAAE,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,EAAE;wBAC/B,IAAI,EAAE,0BAAkB;wBACxB,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;qBAClF,CAAC;aACL,CAAC,CAAC;QACP,CAAC;IAEL,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QACxD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,4BAA4B;gBAC7B,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC;gBACxC,IAAI,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9C,MAAM;YAEV,KAAK,4BAA4B;gBAC7B,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;oBACvC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,kBAAkB,EAAE,CAAC;oBACjD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC1C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBAChD,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChD,CAAC;gBACD,MAAM;YAEV,KAAK,wCAAwC;gBACzC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;gBACxC,MAAM;YAEV,KAAK,uCAAuC;gBACxC,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;gBAC7C,MAAM;YAEV,KAAK,2BAA2B;gBAC5B,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;oBACvC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC3C,IAAI,CAAC,cAAc,CAAC;wBAChB,UAAU,EAAE;4BACR,QAAQ,EAAE,kBAAkB;4BAC5B,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE;yBAC/E;qBACJ,CAAC,CAAC;gBACP,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBACnD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC1C,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBAChD,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;oBACxF,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;gBACpC,CAAC;gBACD,MAAM;YAEV,KAAK,oBAAoB;gBACrB,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC;wBAChB,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY;wBAC/C,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa;qBACpD,CAAC,CAAC;gBACP,CAAC;gBACD,MAAM;YAEV,KAAK,OAAO;gBACR,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;IAES,uBAAuB,CAAC,YAAsC;QACpE,IAAI,YAAY,CAAC,EAAE,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,KAAK,CAAC,wBAAwB,YAAY,CAAC,IAAI,YAAY,YAAY,CAAC,EAAE,gBAAgB,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;YAE1H,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;YACpE,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAES,cAAc,CAAC,YAAsC,EAAE,EAAU;QACvE,OAAO;YACH,EAAE;YACF,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,EAAE;YAChD,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,EAAE;YAC7B,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;YACvC,QAAQ,EAAE,KAAK;SAClB,CAAC;IACN,CAAC;IAES,kBAAkB,CAAC,QAAkB,EAAE,QAAiB,EAAE,MAAuB;QACvF,IAAI,CAAC,cAAc,CAAC;YAChB,UAAU,EAAE,CAAC;oBACT,EAAE,EAAE,QAAQ,CAAC,EAAE;oBACf,QAAQ;oBACR,QAAQ,EAAE;wBACN,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;qBAChC;oBACD,MAAM;oBACN,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;wBAChD,CAAC,+CAAuC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC;qBACrF,CAAC,CAAC,CAAC,SAAS;iBAChB,CAAC;SACL,CAAC,CAAC;IACP,CAAC;IAES,2BAA2B,CAAC,KAA8C;QAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC;YAElC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,IAAI,CAAC,cAAc,CAAC;oBAChB,UAAU,EAAE,CAAC;4BACT,EAAE,EAAE,KAAK,CAAC,OAAO;4BACjB,cAAc,EAAE,IAAI;4BACpB,QAAQ,EAAE;gCACN,SAAS,EAAE,KAAK,CAAC,KAAK;6BACzB;yBACJ,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,0BAA0B,CAAC,KAA6C;QACpF,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,0CAA0C;YAC1C,QAAQ,GAAG;gBACP,EAAE,EAAE,KAAK,CAAC,OAAO;gBACjB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;gBAChC,QAAQ,EAAE,KAAK;gBACf,cAAc,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;aACvD,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEnD,IAAI,CAAC,cAAc,CAAC;gBAChB,UAAU,EAAE,CAAC;wBACT,EAAE,EAAE,KAAK,CAAC,OAAO;wBACjB,QAAQ,EAAE,KAAK;wBACf,QAAQ,EAAE;4BACN,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;4BACtB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;yBACnC;qBACJ,CAAC;aACL,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,2BAA2B;YAC3B,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC;YAC5C,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC;QAC/D,CAAC;IACL,CAAC;IAES,mBAAmB,CAAC,IAA+B,EAAE,QAAiB,EAAE,WAAiC;QAC/G,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;YAC1B,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC;YAChB,iBAAiB,EAAE,CAAC;oBAChB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,IAAI,EAAE,uCAAiB;oBACvB,SAAS,EAAE,MAAM;oBACjB,QAAQ;oBACR,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;wBACf,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,MAAM,KAAK,QAAQ;oCAC1B,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,oBAAoB,CAAC;oCACxE,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,qCAAqC,EAAE,uBAAuB,CAAC;6BACrF,CAAC;qBACL,CAAC,CAAC,CAAC,SAAS;oBACb,IAAI,EAAE,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC;wBAC5B,CAAC,uDAAiC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;qBACnE,CAAC,CAAC,CAAC,SAAS;iBAChB,CAAC;SACL,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACO,oBAAoB,CAAC,IAA4B;QACvD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC;YAChB,iBAAiB,EAAE,CAAC;oBAChB,EAAE,EAAE,IAAI,CAAC,gBAAgB;oBACzB,IAAI,EAAE,0BAAkB;oBACxB,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;oBACrG,QAAQ,EAAE,KAAK;iBAClB,CAAC;SACL,CAAC,CAAC;IACP,CAAC;IAES,sBAAsB,CAAC,IAAkC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC;YAChB,iBAAiB,EAAE,CAAC;oBAChB,EAAE,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE;oBACpD,IAAI,EAAE,0BAAkB;oBACxB,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;iBAClF,CAAC;SACL,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;IACtC,CAAC;IAES,sBAAsB,CAAC,YAAsC;QACnE,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC7G,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACxD,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;QAC5C,CAAC;IACL,CAAC;IAES,KAAK,CAAC,gBAAgB;QAC5B,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpB,SAAS;YACb,CAAC;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrE,IAAI,IAAI,EAAE,CAAC;gBACP,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,+BAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC5F,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;oBAEzB,iCAAiC;oBACjC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACpD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,QAAQ,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC/D,QAAQ,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAE3E,4BAA4B;oBAC5B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAA,6BAAmB,EAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAEzH,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,IAAI,6BAA6B,CAAC,CAAC;gBACjE,QAAQ,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,IAAI,YAAY,CAAC,CAAC;gBAE9D,4BAA4B;gBAC5B,IAAI,CAAC,kBAAkB,CACnB,QAAQ,EACR,IAAI,EACJ,IAAA,6BAAmB,EAAC,SAAS,QAAQ,CAAC,IAAI,sDAAsD,EAAE,oBAAoB,CAAC,CAC1H,CAAC;YACN,CAAC;YAED,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC7B,CAAC;IACL,CAAC;IAES,oBAAoB;QAC1B,gEAAgE;QAChE,MAAM,gBAAgB,GAAsB;YACxC,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI,CAAC,mBAAmB;SACpC,CAAC;QAEF,yDAAyD;QACzD,MAAM,aAAa,GAAwB,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,EAAE;gBACjD,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM;gBACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;aAChC,CAAC,CAAC;QACP,CAAC;QAED,mBAAmB;QACnB,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC;YAE1C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,aAAa,GAAG,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC9G,WAAW,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,aAAa;iBACxB,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACxB,WAAW,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,UAAU,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE;iBAC7C,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,2BAA2B,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE,GAAG,WAAW,CAAC,CAAC;IACxI,CAAC;IAES,cAAc,CAAC,OAAwC;QAC7D,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAG,CAAC,OAAO,CAAC;gBAC/B,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,OAAO;aACjB,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,mCAAmC;QACnC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,CAAC;CACJ;AAED,SAAgB,qBAAqB,CACjC,QAAgC,EAChC,wBAAkD;IAElD,IAAI,wBAAwB,KAAK,MAAM,EAAE,CAAC;QACtC,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClE,CAAC;SAAM,IAAI,wBAAwB,KAAK,+BAA+B,EAAE,CAAC;QACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAgB,CAAC;gBAChD,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;oBAC5D,kDAAkD;oBAClD,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAgB,CAAC;oBAClD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG;wBACb,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;wBACjB,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,IAAI,GAAG,WAAW,CAAC,IAAI;qBACtC,CAAC;oBACjB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACJ,8GAA8G;oBAC9G,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpF,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"openai-response-api-utils.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
const chai_1 = require("chai");
|
|
19
19
|
const ai_core_1 = require("@theia/ai-core");
|
|
20
20
|
const openai_language_model_1 = require("./openai-language-model");
|
|
21
|
+
const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
|
|
21
22
|
const openai_response_api_utils_1 = require("./openai-response-api-utils");
|
|
22
23
|
const openai_server_tools_1 = require("./openai-server-tools");
|
|
23
24
|
async function* toStream(events) {
|
|
@@ -25,9 +26,17 @@ async function* toStream(events) {
|
|
|
25
26
|
yield event;
|
|
26
27
|
}
|
|
27
28
|
}
|
|
29
|
+
function createTestUtils() {
|
|
30
|
+
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
31
|
+
utils.logger = new mock_logger_1.MockLogger();
|
|
32
|
+
return utils;
|
|
33
|
+
}
|
|
28
34
|
describe('OpenAiResponseApiUtils', () => {
|
|
35
|
+
let utils;
|
|
36
|
+
beforeEach(() => {
|
|
37
|
+
utils = createTestUtils();
|
|
38
|
+
});
|
|
29
39
|
it('passes tool parameters through unchanged in non-strict mode', () => {
|
|
30
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
31
40
|
const parameters = {
|
|
32
41
|
type: 'object',
|
|
33
42
|
properties: {
|
|
@@ -57,14 +66,12 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
57
66
|
(0, chai_1.expect)(convertedTool.parameters).to.equal(parameters);
|
|
58
67
|
});
|
|
59
68
|
it('adds native web search without requiring client tools', () => {
|
|
60
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
61
69
|
(0, chai_1.expect)(utils.convertToolsForResponseApi(undefined, undefined, [openai_server_tools_1.OPENAI_WEB_SEARCH])).to.deep.equal([
|
|
62
70
|
{ type: 'web_search' }
|
|
63
71
|
]);
|
|
64
72
|
(0, chai_1.expect)(utils.convertToolsForResponseApi()).to.equal(undefined);
|
|
65
73
|
});
|
|
66
74
|
it('combines native web search with function and deferred-tool search tools', () => {
|
|
67
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
68
75
|
const tools = utils.convertToolsForResponseApi([{
|
|
69
76
|
id: 'lookup',
|
|
70
77
|
name: 'lookup',
|
|
@@ -74,7 +81,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
74
81
|
(0, chai_1.expect)(tools?.map(tool => tool.type)).to.deep.equal(['function', 'tool_search', 'web_search']);
|
|
75
82
|
});
|
|
76
83
|
it('emits per-iteration usage for Response API tool calls instead of accumulated usage', async () => {
|
|
77
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
78
84
|
const streams = [
|
|
79
85
|
[
|
|
80
86
|
{
|
|
@@ -149,7 +155,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
149
155
|
(0, chai_1.expect)(streamRequests.every(streamRequest => JSON.stringify(streamRequest.include) === JSON.stringify(['web_search_call.action.sources', 'reasoning.encrypted_content']))).to.equal(true);
|
|
150
156
|
});
|
|
151
157
|
it('preserves reasoning and web search items for the next function-tool iteration', async () => {
|
|
152
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
153
158
|
const reasoningItem = { id: 'rs-1', type: 'reasoning', summary: [], encrypted_content: 'encrypted-reasoning' };
|
|
154
159
|
const searchCall = {
|
|
155
160
|
id: 'ws-1',
|
|
@@ -203,7 +208,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
203
208
|
(0, chai_1.expect)(input.indexOf(reasoningItem)).to.be.lessThan(input.indexOf(searchCall));
|
|
204
209
|
});
|
|
205
210
|
it('yields a compaction part when the stream contains a response.output_item.done compaction event', async () => {
|
|
206
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
207
211
|
const streamEvents = [
|
|
208
212
|
{
|
|
209
213
|
type: 'response.output_item.done',
|
|
@@ -241,7 +245,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
241
245
|
});
|
|
242
246
|
});
|
|
243
247
|
it('surfaces the deferred-tool search as a running then finished server tool call', async () => {
|
|
244
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
245
248
|
const streams = [
|
|
246
249
|
[
|
|
247
250
|
{
|
|
@@ -299,7 +302,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
299
302
|
(0, chai_1.expect)(finished.result).to.deep.equal({ content: [{ type: 'text', text: 'Found 2 tools.' }] });
|
|
300
303
|
});
|
|
301
304
|
it('surfaces web search as a running then finished server tool call', async () => {
|
|
302
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
303
305
|
const reasoningItem = {
|
|
304
306
|
id: 'rs-1',
|
|
305
307
|
type: 'reasoning',
|
|
@@ -346,7 +348,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
346
348
|
});
|
|
347
349
|
});
|
|
348
350
|
it('surfaces web search from a non-streaming response and requests sources', async () => {
|
|
349
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
350
351
|
let createRequest;
|
|
351
352
|
const openai = {
|
|
352
353
|
responses: {
|
|
@@ -378,7 +379,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
378
379
|
(0, chai_1.expect)(createRequest?.include).to.deep.equal(['file_search_call.results', 'web_search_call.action.sources', 'reasoning.encrypted_content']);
|
|
379
380
|
});
|
|
380
381
|
it('replays persisted OpenAI reasoning before its web search call', () => {
|
|
381
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
382
382
|
const reasoningItem = {
|
|
383
383
|
id: 'rs-1',
|
|
384
384
|
type: 'reasoning',
|
|
@@ -410,7 +410,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
410
410
|
(0, chai_1.expect)(input).to.deep.equal([reasoningItem, searchCall]);
|
|
411
411
|
});
|
|
412
412
|
it('persists and replays reasoning before a function call', async () => {
|
|
413
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
414
413
|
const reasoningItem = { id: 'rs-1', type: 'reasoning', summary: [], encrypted_content: 'encrypted-reasoning' };
|
|
415
414
|
const functionCall = {
|
|
416
415
|
id: 'fc-1', call_id: 'call-1', type: 'function_call', name: 'lookup', arguments: '{"query":"test"}'
|
|
@@ -490,7 +489,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
490
489
|
return input.find((item) => item.type === 'compaction');
|
|
491
490
|
}
|
|
492
491
|
it('replays the openai-responses compaction marker and drops the prefix before it', () => {
|
|
493
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
494
492
|
const messages = [
|
|
495
493
|
userMessage('user A'),
|
|
496
494
|
aiMessage('ai B'),
|
|
@@ -508,7 +506,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
508
506
|
(0, chai_1.expect)(serialized).to.not.contain('ai B');
|
|
509
507
|
});
|
|
510
508
|
it('only replays the LAST openai-responses marker and drops everything before it', () => {
|
|
511
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
512
509
|
const messages = [
|
|
513
510
|
userMessage('user A'),
|
|
514
511
|
compactionMessage('openai-responses', 'enc1'),
|
|
@@ -527,7 +524,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
527
524
|
(0, chai_1.expect)(serialized).to.not.contain('enc1');
|
|
528
525
|
});
|
|
529
526
|
it('skips a foreign-provider compaction marker without dropping the prefix', () => {
|
|
530
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
531
527
|
const messages = [
|
|
532
528
|
userMessage('user A'),
|
|
533
529
|
compactionMessage('anthropic', 'enc1'),
|
|
@@ -541,7 +537,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
541
537
|
(0, chai_1.expect)(serialized).to.not.contain('enc1');
|
|
542
538
|
});
|
|
543
539
|
it('converts all messages unchanged when there is no compaction marker', () => {
|
|
544
|
-
const utils = new openai_response_api_utils_1.OpenAiResponseApiUtils();
|
|
545
540
|
const messages = [userMessage('user A'), aiMessage('ai B'), userMessage('user C')];
|
|
546
541
|
const { input } = utils.processMessages(messages, 'developer', 'gpt-5');
|
|
547
542
|
(0, chai_1.expect)(findCompactionItem(input)).to.equal(undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-response-api-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai-response-api-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/ai-openai",
|
|
3
|
-
"version": "1.75.0
|
|
3
|
+
"version": "1.75.0",
|
|
4
4
|
"description": "Theia - OpenAI Integration",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/ai-core": "1.75.0
|
|
7
|
-
"@theia/core": "1.75.0
|
|
8
|
-
"@theia/filesystem": "1.75.0
|
|
9
|
-
"@theia/workspace": "1.75.0
|
|
10
|
-
"openai": "^6.
|
|
6
|
+
"@theia/ai-core": "1.75.0",
|
|
7
|
+
"@theia/core": "1.75.0",
|
|
8
|
+
"@theia/filesystem": "1.75.0",
|
|
9
|
+
"@theia/workspace": "1.75.0",
|
|
10
|
+
"openai": "^6.49.0",
|
|
11
11
|
"tslib": "^2.8.1"
|
|
12
12
|
},
|
|
13
13
|
"publishConfig": {
|
|
@@ -44,10 +44,10 @@
|
|
|
44
44
|
"watch": "theiaext watch"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@theia/ext-scripts": "1.
|
|
47
|
+
"@theia/ext-scripts": "1.75.0"
|
|
48
48
|
},
|
|
49
49
|
"nyc": {
|
|
50
50
|
"extends": "../../configs/nyc.json"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "6d8e911f05f0fd9a13d76797e79b21ee3f038bc2"
|
|
53
53
|
}
|
|
@@ -14,7 +14,9 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
AI_CORE_PREFERENCES_TITLE, MODEL_PROVIDER_TYPE_DETAIL, ModelProviderTypeDetail, PREFERENCE_NAME_SERVER_SIDE_COMPACTION
|
|
19
|
+
} from '@theia/ai-core/lib/common/ai-core-preferences';
|
|
18
20
|
import { SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_MINIMUM } from '@theia/ai-core/lib/common/language-model';
|
|
19
21
|
import { LINUX_ENV_HINT, nls, PreferenceSchema } from '@theia/core';
|
|
20
22
|
|
|
@@ -29,6 +31,7 @@ export const OpenAiPreferencesSchema: PreferenceSchema = {
|
|
|
29
31
|
properties: {
|
|
30
32
|
[API_KEY_PREF]: {
|
|
31
33
|
type: 'string',
|
|
34
|
+
typeDetails: { [MODEL_PROVIDER_TYPE_DETAIL]: { label: 'OpenAI' } satisfies ModelProviderTypeDetail },
|
|
32
35
|
markdownDescription: nls.localize('theia/ai/openai/apiKey/mdDescription',
|
|
33
36
|
'Enter an API Key of your official OpenAI Account. **Please note:** By using this preference the Open AI API key will be stored in clear text \
|
|
34
37
|
on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to set the key securely.') + LINUX_ENV_HINT,
|
|
@@ -83,6 +86,9 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
83
86
|
},
|
|
84
87
|
[CUSTOM_ENDPOINTS_PREF]: {
|
|
85
88
|
type: 'array',
|
|
89
|
+
typeDetails: {
|
|
90
|
+
[MODEL_PROVIDER_TYPE_DETAIL]: { label: nls.localize('theia/ai/openai/customProvider/label', '{0} (Custom)', 'OpenAI') } satisfies ModelProviderTypeDetail
|
|
91
|
+
},
|
|
86
92
|
title: AI_CORE_PREFERENCES_TITLE,
|
|
87
93
|
markdownDescription: nls.localize('theia/ai/openai/customEndpoints/mdDescription',
|
|
88
94
|
'Integrate custom models compatible with the OpenAI API, for example via `vllm`. The required attributes are `model` and `url`.\
|
|
@@ -27,7 +27,8 @@ import {
|
|
|
27
27
|
ReasoningSupport,
|
|
28
28
|
resolveCompactionTokenThreshold,
|
|
29
29
|
resolveServerSideCompaction,
|
|
30
|
-
ServerToolDescriptor
|
|
30
|
+
ServerToolDescriptor,
|
|
31
|
+
formatToolCallContentForModel
|
|
31
32
|
} from '@theia/ai-core';
|
|
32
33
|
import { CancellationToken } from '@theia/core';
|
|
33
34
|
import { injectable } from '@theia/core/shared/inversify';
|
|
@@ -360,8 +361,7 @@ export class OpenAiModelUtils {
|
|
|
360
361
|
return {
|
|
361
362
|
role: 'tool',
|
|
362
363
|
tool_call_id: message.tool_use_id,
|
|
363
|
-
|
|
364
|
-
content: typeof message.content === 'string' ? message.content : JSON.stringify(message.content)
|
|
364
|
+
content: typeof message.content === 'string' ? message.content : formatToolCallContentForModel(message.content)
|
|
365
365
|
};
|
|
366
366
|
}
|
|
367
367
|
if (LanguageModelMessage.isImageMessage(message) && message.actor === 'user') {
|
|
@@ -16,11 +16,12 @@
|
|
|
16
16
|
|
|
17
17
|
import { LanguageModelRegistry, LanguageModelStatus, ReasoningSupport } from '@theia/ai-core';
|
|
18
18
|
import { getProxyUrl } from '@theia/ai-core/lib/node';
|
|
19
|
-
import { inject, injectable } from '@theia/core/shared/inversify';
|
|
19
|
+
import { inject, injectable, named } from '@theia/core/shared/inversify';
|
|
20
20
|
import { DeveloperMessageSettings, OpenAiModel, OpenAiModelUtils } from './openai-language-model';
|
|
21
21
|
import { OpenAiResponseApiUtils } from './openai-response-api-utils';
|
|
22
22
|
import { getOpenAiModelDefaults } from './openai-model-defaults';
|
|
23
23
|
import { OpenAiLanguageModelsManager, OpenAiModelDescription } from '../common';
|
|
24
|
+
import { ILogger } from '@theia/core';
|
|
24
25
|
import { OPENAI_SERVER_TOOLS } from './openai-server-tools';
|
|
25
26
|
|
|
26
27
|
interface ResolvedModelMetadata {
|
|
@@ -41,6 +42,9 @@ export class OpenAiLanguageModelsManagerImpl implements OpenAiLanguageModelsMana
|
|
|
41
42
|
@inject(OpenAiResponseApiUtils)
|
|
42
43
|
protected readonly responseApiUtils: OpenAiResponseApiUtils;
|
|
43
44
|
|
|
45
|
+
@inject(ILogger) @named('ai-openai:OpenAiLanguageModelsManagerImpl')
|
|
46
|
+
protected readonly logger: ILogger;
|
|
47
|
+
|
|
44
48
|
protected _apiKey: string | undefined;
|
|
45
49
|
protected _apiVersion: string | undefined;
|
|
46
50
|
protected _proxyUrl: string | undefined;
|
|
@@ -97,7 +101,7 @@ export class OpenAiLanguageModelsManagerImpl implements OpenAiLanguageModelsMana
|
|
|
97
101
|
|
|
98
102
|
if (model) {
|
|
99
103
|
if (!(model instanceof OpenAiModel)) {
|
|
100
|
-
|
|
104
|
+
this.logger.warn(`OpenAI: model ${modelDescription.id} is not an OpenAI model`);
|
|
101
105
|
continue;
|
|
102
106
|
}
|
|
103
107
|
await this.languageModelRegistry.patchLanguageModel<OpenAiModel>(modelDescription.id, {
|
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
CompactionMessage, isCompactionResponsePart, isServerToolCallResponsePart, isUsageResponsePart, LanguageModelMessage, LanguageModelStreamResponsePart, UserRequest
|
|
20
20
|
} from '@theia/ai-core';
|
|
21
21
|
import { OpenAiModelUtils } from './openai-language-model';
|
|
22
|
+
import { MockLogger } from '@theia/core/lib/common/test/mock-logger';
|
|
22
23
|
import { OPENAI_FUNCTION_CALL_REASONING_DATA_KEY, OpenAiResponseApiUtils } from './openai-response-api-utils';
|
|
23
24
|
import { OPENAI_WEB_SEARCH, OPENAI_WEB_SEARCH_REPLAY_DATA_KEY } from './openai-server-tools';
|
|
24
25
|
|
|
@@ -28,9 +29,20 @@ async function* toStream(events: unknown[]): AsyncIterable<unknown> {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
|
|
32
|
+
function createTestUtils(): OpenAiResponseApiUtils {
|
|
33
|
+
const utils = new OpenAiResponseApiUtils();
|
|
34
|
+
(utils as unknown as { logger: MockLogger }).logger = new MockLogger();
|
|
35
|
+
return utils;
|
|
36
|
+
}
|
|
37
|
+
|
|
31
38
|
describe('OpenAiResponseApiUtils', () => {
|
|
39
|
+
let utils: OpenAiResponseApiUtils;
|
|
40
|
+
|
|
41
|
+
beforeEach(() => {
|
|
42
|
+
utils = createTestUtils();
|
|
43
|
+
});
|
|
44
|
+
|
|
32
45
|
it('passes tool parameters through unchanged in non-strict mode', () => {
|
|
33
|
-
const utils = new OpenAiResponseApiUtils();
|
|
34
46
|
const parameters = {
|
|
35
47
|
type: 'object' as const,
|
|
36
48
|
properties: {
|
|
@@ -63,8 +75,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
63
75
|
});
|
|
64
76
|
|
|
65
77
|
it('adds native web search without requiring client tools', () => {
|
|
66
|
-
const utils = new OpenAiResponseApiUtils();
|
|
67
|
-
|
|
68
78
|
expect(utils.convertToolsForResponseApi(undefined, undefined, [OPENAI_WEB_SEARCH])).to.deep.equal([
|
|
69
79
|
{ type: 'web_search' }
|
|
70
80
|
]);
|
|
@@ -72,7 +82,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
72
82
|
});
|
|
73
83
|
|
|
74
84
|
it('combines native web search with function and deferred-tool search tools', () => {
|
|
75
|
-
const utils = new OpenAiResponseApiUtils();
|
|
76
85
|
const tools = utils.convertToolsForResponseApi([{
|
|
77
86
|
id: 'lookup',
|
|
78
87
|
name: 'lookup',
|
|
@@ -84,7 +93,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
84
93
|
});
|
|
85
94
|
|
|
86
95
|
it('emits per-iteration usage for Response API tool calls instead of accumulated usage', async () => {
|
|
87
|
-
const utils = new OpenAiResponseApiUtils();
|
|
88
96
|
const streams = [
|
|
89
97
|
[
|
|
90
98
|
{
|
|
@@ -174,7 +182,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
174
182
|
});
|
|
175
183
|
|
|
176
184
|
it('preserves reasoning and web search items for the next function-tool iteration', async () => {
|
|
177
|
-
const utils = new OpenAiResponseApiUtils();
|
|
178
185
|
const reasoningItem = { id: 'rs-1', type: 'reasoning', summary: [], encrypted_content: 'encrypted-reasoning' };
|
|
179
186
|
const searchCall = {
|
|
180
187
|
id: 'ws-1',
|
|
@@ -235,7 +242,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
235
242
|
});
|
|
236
243
|
|
|
237
244
|
it('yields a compaction part when the stream contains a response.output_item.done compaction event', async () => {
|
|
238
|
-
const utils = new OpenAiResponseApiUtils();
|
|
239
245
|
const streamEvents = [
|
|
240
246
|
{
|
|
241
247
|
type: 'response.output_item.done',
|
|
@@ -286,7 +292,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
286
292
|
});
|
|
287
293
|
|
|
288
294
|
it('surfaces the deferred-tool search as a running then finished server tool call', async () => {
|
|
289
|
-
const utils = new OpenAiResponseApiUtils();
|
|
290
295
|
const streams = [
|
|
291
296
|
[
|
|
292
297
|
{
|
|
@@ -358,7 +363,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
358
363
|
});
|
|
359
364
|
|
|
360
365
|
it('surfaces web search as a running then finished server tool call', async () => {
|
|
361
|
-
const utils = new OpenAiResponseApiUtils();
|
|
362
366
|
const reasoningItem = {
|
|
363
367
|
id: 'rs-1',
|
|
364
368
|
type: 'reasoning',
|
|
@@ -411,7 +415,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
411
415
|
});
|
|
412
416
|
|
|
413
417
|
it('surfaces web search from a non-streaming response and requests sources', async () => {
|
|
414
|
-
const utils = new OpenAiResponseApiUtils();
|
|
415
418
|
let createRequest: Record<string, unknown> | undefined;
|
|
416
419
|
const openai = {
|
|
417
420
|
responses: {
|
|
@@ -449,7 +452,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
449
452
|
});
|
|
450
453
|
|
|
451
454
|
it('replays persisted OpenAI reasoning before its web search call', () => {
|
|
452
|
-
const utils = new OpenAiResponseApiUtils();
|
|
453
455
|
const reasoningItem = {
|
|
454
456
|
id: 'rs-1',
|
|
455
457
|
type: 'reasoning',
|
|
@@ -484,7 +486,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
484
486
|
});
|
|
485
487
|
|
|
486
488
|
it('persists and replays reasoning before a function call', async () => {
|
|
487
|
-
const utils = new OpenAiResponseApiUtils();
|
|
488
489
|
const reasoningItem = { id: 'rs-1', type: 'reasoning', summary: [], encrypted_content: 'encrypted-reasoning' };
|
|
489
490
|
const functionCall = {
|
|
490
491
|
id: 'fc-1', call_id: 'call-1', type: 'function_call', name: 'lookup', arguments: '{"query":"test"}'
|
|
@@ -578,7 +579,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
578
579
|
}
|
|
579
580
|
|
|
580
581
|
it('replays the openai-responses compaction marker and drops the prefix before it', () => {
|
|
581
|
-
const utils = new OpenAiResponseApiUtils();
|
|
582
582
|
const messages: LanguageModelMessage[] = [
|
|
583
583
|
userMessage('user A'),
|
|
584
584
|
aiMessage('ai B'),
|
|
@@ -600,7 +600,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
600
600
|
});
|
|
601
601
|
|
|
602
602
|
it('only replays the LAST openai-responses marker and drops everything before it', () => {
|
|
603
|
-
const utils = new OpenAiResponseApiUtils();
|
|
604
603
|
const messages: LanguageModelMessage[] = [
|
|
605
604
|
userMessage('user A'),
|
|
606
605
|
compactionMessage('openai-responses', 'enc1'),
|
|
@@ -623,7 +622,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
623
622
|
});
|
|
624
623
|
|
|
625
624
|
it('skips a foreign-provider compaction marker without dropping the prefix', () => {
|
|
626
|
-
const utils = new OpenAiResponseApiUtils();
|
|
627
625
|
const messages: LanguageModelMessage[] = [
|
|
628
626
|
userMessage('user A'),
|
|
629
627
|
compactionMessage('anthropic', 'enc1'),
|
|
@@ -640,7 +638,6 @@ describe('OpenAiResponseApiUtils', () => {
|
|
|
640
638
|
});
|
|
641
639
|
|
|
642
640
|
it('converts all messages unchanged when there is no compaction marker', () => {
|
|
643
|
-
const utils = new OpenAiResponseApiUtils();
|
|
644
641
|
const messages: LanguageModelMessage[] = [userMessage('user A'), aiMessage('ai B'), userMessage('user C')];
|
|
645
642
|
|
|
646
643
|
const { input } = utils.processMessages(messages, 'developer', 'gpt-5');
|
|
@@ -26,9 +26,9 @@ import {
|
|
|
26
26
|
ToolRequest,
|
|
27
27
|
UserRequest
|
|
28
28
|
} from '@theia/ai-core';
|
|
29
|
-
import { CancellationToken, nls, unreachable } from '@theia/core';
|
|
29
|
+
import { CancellationToken, nls, unreachable, ILogger } from '@theia/core';
|
|
30
30
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
31
|
-
import { injectable } from '@theia/core/shared/inversify';
|
|
31
|
+
import { injectable, inject, named } from '@theia/core/shared/inversify';
|
|
32
32
|
import { OpenAI } from 'openai';
|
|
33
33
|
import type { RunnerOptions } from 'openai/lib/AbstractChatCompletionRunner';
|
|
34
34
|
import type {
|
|
@@ -81,6 +81,9 @@ interface ToolCall {
|
|
|
81
81
|
@injectable()
|
|
82
82
|
export class OpenAiResponseApiUtils {
|
|
83
83
|
|
|
84
|
+
@inject(ILogger) @named('ai-openai:OpenAiResponseApiUtils')
|
|
85
|
+
protected readonly logger: ILogger;
|
|
86
|
+
|
|
84
87
|
/**
|
|
85
88
|
* Handles Response API requests with proper tool calling cycles.
|
|
86
89
|
* Works for both streaming and non-streaming cases.
|
|
@@ -149,6 +152,7 @@ export class OpenAiResponseApiUtils {
|
|
|
149
152
|
runnerOptions,
|
|
150
153
|
modelId,
|
|
151
154
|
this,
|
|
155
|
+
this.logger,
|
|
152
156
|
isStreaming,
|
|
153
157
|
cancellationToken
|
|
154
158
|
);
|
|
@@ -181,7 +185,7 @@ export class OpenAiResponseApiUtils {
|
|
|
181
185
|
if (converted.length === 0) {
|
|
182
186
|
return undefined;
|
|
183
187
|
}
|
|
184
|
-
|
|
188
|
+
this.logger.debug(`Converted ${(tools ?? []).length} tools for Response API:`, converted.map(t => t.type === 'function' ? t.name : t.type));
|
|
185
189
|
return converted;
|
|
186
190
|
}
|
|
187
191
|
|
|
@@ -189,6 +193,9 @@ export class OpenAiResponseApiUtils {
|
|
|
189
193
|
stream: AsyncIterable<ResponseStreamEvent>,
|
|
190
194
|
cancellationToken?: CancellationToken
|
|
191
195
|
): AsyncIterable<LanguageModelStreamResponsePart> {
|
|
196
|
+
|
|
197
|
+
const logger = this.logger;
|
|
198
|
+
|
|
192
199
|
return {
|
|
193
200
|
async *[Symbol.asyncIterator](): AsyncIterator<LanguageModelStreamResponsePart> {
|
|
194
201
|
let lastUsage: { input_tokens: number; output_tokens: number } | undefined;
|
|
@@ -228,7 +235,7 @@ export class OpenAiResponseApiUtils {
|
|
|
228
235
|
};
|
|
229
236
|
}
|
|
230
237
|
} else if (event.type === 'error') {
|
|
231
|
-
|
|
238
|
+
logger.error('Response API error:', event.message);
|
|
232
239
|
throw new Error(`Response API error: ${event.message}`);
|
|
233
240
|
}
|
|
234
241
|
}
|
|
@@ -412,6 +419,7 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
412
419
|
protected readonly runnerOptions: RunnerOptions,
|
|
413
420
|
protected readonly modelId: string,
|
|
414
421
|
protected readonly utils: OpenAiResponseApiUtils,
|
|
422
|
+
protected readonly logger: ILogger,
|
|
415
423
|
protected readonly isStreaming: boolean,
|
|
416
424
|
protected readonly cancellationToken?: CancellationToken
|
|
417
425
|
) {
|
|
@@ -457,7 +465,7 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
457
465
|
protected async startIteration(): Promise<void> {
|
|
458
466
|
try {
|
|
459
467
|
while (this.iteration < this.maxIterations && !this.cancellationToken?.isCancellationRequested) {
|
|
460
|
-
|
|
468
|
+
this.logger.debug(`Starting Response API iteration ${this.iteration} with ${this.currentInput.length} input messages`);
|
|
461
469
|
|
|
462
470
|
await this.processStream();
|
|
463
471
|
|
|
@@ -621,14 +629,14 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
621
629
|
break;
|
|
622
630
|
|
|
623
631
|
case 'error':
|
|
624
|
-
|
|
632
|
+
this.logger.error('Response API error:', event.message);
|
|
625
633
|
throw new Error(`Response API error: ${event.message}`);
|
|
626
634
|
}
|
|
627
635
|
}
|
|
628
636
|
|
|
629
637
|
protected handleFunctionCallAdded(functionCall: ResponseFunctionToolCall): void {
|
|
630
638
|
if (functionCall.id && functionCall.call_id) {
|
|
631
|
-
|
|
639
|
+
this.logger.debug(`Function call added: ${functionCall.name} with id ${functionCall.id} and call_id ${functionCall.call_id}`);
|
|
632
640
|
|
|
633
641
|
const toolCall = this.createToolCall(functionCall, functionCall.id);
|
|
634
642
|
toolCall.reasoningItems = this.pendingReasoningItems.splice(0);
|
|
@@ -770,7 +778,7 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
770
778
|
}
|
|
771
779
|
|
|
772
780
|
protected handleFunctionCallDone(functionCall: ResponseFunctionToolCall): void {
|
|
773
|
-
if (!functionCall.id) {
|
|
781
|
+
if (!functionCall.id) { this.logger.warn('Unexpected absence of ID for call ID', functionCall.call_id); return; }
|
|
774
782
|
const toolCall = this.currentToolCalls.get(functionCall.id);
|
|
775
783
|
if (toolCall && !toolCall.call_id && functionCall.call_id) {
|
|
776
784
|
toolCall.call_id = functionCall.call_id;
|
|
@@ -792,7 +800,7 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
792
800
|
// Yield the tool call completion
|
|
793
801
|
this.handleFunctionCall(toolCall, true, result);
|
|
794
802
|
} catch (error) {
|
|
795
|
-
|
|
803
|
+
this.logger.error(`Error executing tool ${toolCall.name}:`, error);
|
|
796
804
|
toolCall.error = error instanceof Error ? error : new Error(String(error));
|
|
797
805
|
|
|
798
806
|
// Yield the tool call error
|
|
@@ -800,7 +808,7 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
800
808
|
|
|
801
809
|
}
|
|
802
810
|
} else {
|
|
803
|
-
|
|
811
|
+
this.logger.warn(`Tool ${toolCall.name} not found in request tools`);
|
|
804
812
|
toolCall.error = new Error(`Tool ${toolCall.name} not found`);
|
|
805
813
|
|
|
806
814
|
// Yield the tool call error
|