@theia/ai-openai 1.74.0-next.9 → 1.74.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/openai-frontend-application-contribution.d.ts.map +1 -1
- package/lib/browser/openai-frontend-application-contribution.js +29 -2
- package/lib/browser/openai-frontend-application-contribution.js.map +1 -1
- package/lib/common/openai-language-models-manager.d.ts +4 -0
- package/lib/common/openai-language-models-manager.d.ts.map +1 -1
- package/lib/common/openai-preferences.d.ts +2 -0
- package/lib/common/openai-preferences.d.ts.map +1 -1
- package/lib/common/openai-preferences.js +31 -12
- package/lib/common/openai-preferences.js.map +1 -1
- package/lib/node/openai-language-model.d.ts +14 -2
- package/lib/node/openai-language-model.d.ts.map +1 -1
- package/lib/node/openai-language-model.js +31 -7
- package/lib/node/openai-language-model.js.map +1 -1
- package/lib/node/openai-language-model.spec.js +113 -0
- package/lib/node/openai-language-model.spec.js.map +1 -1
- package/lib/node/openai-language-models-manager-impl.d.ts +3 -0
- package/lib/node/openai-language-models-manager-impl.d.ts.map +1 -1
- package/lib/node/openai-language-models-manager-impl.js +14 -3
- package/lib/node/openai-language-models-manager-impl.js.map +1 -1
- package/lib/node/openai-language-models-manager-impl.spec.d.ts +2 -0
- package/lib/node/openai-language-models-manager-impl.spec.d.ts.map +1 -0
- package/lib/node/openai-language-models-manager-impl.spec.js +52 -0
- package/lib/node/openai-language-models-manager-impl.spec.js.map +1 -0
- package/lib/node/openai-model-defaults.d.ts.map +1 -1
- package/lib/node/openai-model-defaults.js +1 -0
- package/lib/node/openai-model-defaults.js.map +1 -1
- package/lib/node/openai-model-defaults.spec.js +9 -0
- package/lib/node/openai-model-defaults.spec.js.map +1 -1
- package/lib/node/openai-model-utils.spec.js +0 -84
- package/lib/node/openai-model-utils.spec.js.map +1 -1
- package/lib/node/openai-response-api-utils.d.ts +4 -6
- package/lib/node/openai-response-api-utils.d.ts.map +1 -1
- package/lib/node/openai-response-api-utils.js +175 -151
- package/lib/node/openai-response-api-utils.js.map +1 -1
- package/lib/node/openai-response-api-utils.spec.js +401 -1
- package/lib/node/openai-response-api-utils.spec.js.map +1 -1
- package/lib/node/openai-server-tools.d.ts +5 -0
- package/lib/node/openai-server-tools.d.ts.map +1 -0
- package/lib/node/openai-server-tools.js +26 -0
- package/lib/node/openai-server-tools.js.map +1 -0
- package/package.json +8 -8
- package/src/browser/openai-frontend-application-contribution.ts +33 -5
- package/src/common/openai-language-models-manager.ts +4 -0
- package/src/common/openai-preferences.ts +34 -12
- package/src/node/openai-language-model.spec.ts +148 -1
- package/src/node/openai-language-model.ts +37 -8
- package/src/node/openai-language-models-manager-impl.spec.ts +57 -0
- package/src/node/openai-language-models-manager-impl.ts +20 -3
- package/src/node/openai-model-defaults.spec.ts +10 -0
- package/src/node/openai-model-defaults.ts +1 -0
- package/src/node/openai-model-utils.spec.ts +1 -103
- package/src/node/openai-response-api-utils.spec.ts +477 -3
- package/src/node/openai-response-api-utils.ts +179 -159
- package/src/node/openai-server-tools.ts +26 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAG1E,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAsB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAG1E,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAsB,MAAM,WAAW,CAAC;AAIpG,OAAO,EACH,iBAAiB,EACpB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,qBACa,qCAAsC,YAAW,+BAA+B;IAGzF,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,OAAO,EAAE,2BAA2B,CAAC;IAG/C,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAE/C,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACpC,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAM;IAEnE,OAAO,IAAI,IAAI;IA8Cf,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAYvD,SAAS,CAAC,wBAAwB,CAAC,eAAe,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,GAAG,IAAI;IA0B5F,SAAS,CAAC,eAAe,IAAI,IAAI;IAQjC,4GAA4G;IAC5G,SAAS,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IAsB/E,SAAS,CAAC,4CAA4C,CAClD,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,GAC/C,sBAAsB,EAAE;CAiC9B"}
|
|
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.OpenAiFrontendApplicationContribution = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
+
const ai_core_1 = require("@theia/ai-core");
|
|
21
22
|
const common_1 = require("../common");
|
|
22
23
|
const openai_preferences_1 = require("../common/openai-preferences");
|
|
23
24
|
const ai_core_preferences_1 = require("@theia/ai-core/lib/common/ai-core-preferences");
|
|
@@ -53,6 +54,14 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
53
54
|
else if (event.preferenceName === openai_preferences_1.USE_RESPONSE_API_PREF) {
|
|
54
55
|
this.updateAllModels();
|
|
55
56
|
}
|
|
57
|
+
else if (event.preferenceName === openai_preferences_1.SERVER_SIDE_COMPACTION_PREF) {
|
|
58
|
+
this.updateAllModels();
|
|
59
|
+
}
|
|
60
|
+
else if (event.preferenceName === ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION ||
|
|
61
|
+
event.preferenceName === openai_preferences_1.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF ||
|
|
62
|
+
event.preferenceName === ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD) {
|
|
63
|
+
this.updateAllModels();
|
|
64
|
+
}
|
|
56
65
|
else if (event.preferenceName === 'http.proxy') {
|
|
57
66
|
this.manager.setProxyUrl(this.preferenceService.get('http.proxy', undefined));
|
|
58
67
|
this.updateAllModels();
|
|
@@ -88,6 +97,8 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
88
97
|
model.supportsStructuredOutput === newModel.supportsStructuredOutput &&
|
|
89
98
|
model.enableStreaming === newModel.enableStreaming &&
|
|
90
99
|
model.useResponseApi === newModel.useResponseApi &&
|
|
100
|
+
model.serverSideCompactionEnabledByDefault === newModel.serverSideCompactionEnabledByDefault &&
|
|
101
|
+
model.serverSideCompactionTokenThresholdByDefault === newModel.serverSideCompactionTokenThresholdByDefault &&
|
|
91
102
|
reasoningSupportEquals(model.reasoningSupport, newModel.reasoningSupport)));
|
|
92
103
|
this.manager.removeLanguageModels(...modelsToRemove.map(model => model.id));
|
|
93
104
|
this.manager.createOrUpdateLanguageModels(...modelsToAddOrUpdate);
|
|
@@ -104,17 +115,31 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
104
115
|
const id = `${common_1.OPENAI_PROVIDER_ID}/${modelId}`;
|
|
105
116
|
const maxRetries = this.aiCorePreferences.get(ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES) ?? 3;
|
|
106
117
|
const useResponseApi = this.preferenceService.get(openai_preferences_1.USE_RESPONSE_API_PREF, false);
|
|
118
|
+
const globalCompaction = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION, true);
|
|
119
|
+
const compactionOverride = this.preferenceService.get(openai_preferences_1.SERVER_SIDE_COMPACTION_PREF, 'default');
|
|
120
|
+
const serverSideCompactionEnabledByDefault = (0, ai_core_1.resolveCompactionDefault)(globalCompaction, compactionOverride);
|
|
121
|
+
const globalThreshold = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD, undefined);
|
|
122
|
+
const providerThreshold = this.preferenceService.get(openai_preferences_1.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF, undefined);
|
|
123
|
+
const serverSideCompactionTokenThresholdByDefault = (0, ai_core_1.resolveCompactionTokenThresholdDefault)(globalThreshold, providerThreshold);
|
|
107
124
|
return {
|
|
108
125
|
id: id,
|
|
109
126
|
model: modelId,
|
|
110
127
|
apiKey: true,
|
|
111
128
|
apiVersion: true,
|
|
112
129
|
maxRetries: maxRetries,
|
|
113
|
-
useResponseApi: useResponseApi
|
|
130
|
+
useResponseApi: useResponseApi,
|
|
131
|
+
serverSideCompactionEnabledByDefault,
|
|
132
|
+
serverSideCompactionTokenThresholdByDefault
|
|
114
133
|
};
|
|
115
134
|
}
|
|
116
135
|
createCustomModelDescriptionsFromPreferences(preferences) {
|
|
117
136
|
const maxRetries = this.aiCorePreferences.get(ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES) ?? 3;
|
|
137
|
+
const globalCompaction = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION, true);
|
|
138
|
+
const compactionOverride = this.preferenceService.get(openai_preferences_1.SERVER_SIDE_COMPACTION_PREF, 'default');
|
|
139
|
+
const serverSideCompactionEnabledByDefault = (0, ai_core_1.resolveCompactionDefault)(globalCompaction, compactionOverride);
|
|
140
|
+
const globalThreshold = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD, undefined);
|
|
141
|
+
const providerThreshold = this.preferenceService.get(openai_preferences_1.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF, undefined);
|
|
142
|
+
const serverSideCompactionTokenThresholdByDefault = (0, ai_core_1.resolveCompactionTokenThresholdDefault)(globalThreshold, providerThreshold);
|
|
118
143
|
return preferences.reduce((acc, pref) => {
|
|
119
144
|
if (!pref.model || !pref.url || typeof pref.model !== 'string' || typeof pref.url !== 'string') {
|
|
120
145
|
return acc;
|
|
@@ -133,7 +158,9 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
133
158
|
enableStreaming: pref.enableStreaming,
|
|
134
159
|
maxRetries: pref.maxRetries ?? maxRetries,
|
|
135
160
|
useResponseApi: pref.useResponseApi ?? false,
|
|
136
|
-
reasoningSupport: isReasoningSupport(pref.reasoningSupport) ? pref.reasoningSupport : undefined
|
|
161
|
+
reasoningSupport: isReasoningSupport(pref.reasoningSupport) ? pref.reasoningSupport : undefined,
|
|
162
|
+
serverSideCompactionEnabledByDefault,
|
|
163
|
+
serverSideCompactionTokenThresholdByDefault
|
|
137
164
|
}
|
|
138
165
|
];
|
|
139
166
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.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;;;;AAGhF,4DAAkE;
|
|
1
|
+
{"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,10 @@ export interface OpenAiModelDescription {
|
|
|
32
32
|
supportsStructuredOutput?: boolean;
|
|
33
33
|
/** When set, the UI exposes a reasoning selector. Defaults from the model id when unset. */
|
|
34
34
|
reasoningSupport?: ReasoningSupport;
|
|
35
|
+
/** Resolved default enablement of server-side compaction (global preference folded with the per-provider override). Defaults to disabled when omitted. */
|
|
36
|
+
serverSideCompactionEnabledByDefault?: boolean;
|
|
37
|
+
/** Resolved default input-token threshold for server-side compaction. `undefined` preserves the provider default. */
|
|
38
|
+
serverSideCompactionTokenThresholdByDefault?: number;
|
|
35
39
|
}
|
|
36
40
|
export interface OpenAiLanguageModelsManager {
|
|
37
41
|
apiKey: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-models-manager.d.ts","sourceRoot":"","sources":["../../src/common/openai-language-models-manager.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,mCAAmC,6CAA6C,CAAC;AAC9F,eAAO,MAAM,2BAA2B,eAAwC,CAAC;AAEjF,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,MAAM,WAAW,sBAAsB;IACnC,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IACX,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,8HAA8H;IAC9H,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,6FAA6F;IAC7F,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+FAA+F;IAC/F,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,+BAA+B,GAAG,MAAM,CAAC;IACtG,4HAA4H;IAC5H,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-language-models-manager.d.ts","sourceRoot":"","sources":["../../src/common/openai-language-models-manager.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,mCAAmC,6CAA6C,CAAC;AAC9F,eAAO,MAAM,2BAA2B,eAAwC,CAAC;AAEjF,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,MAAM,WAAW,sBAAsB;IACnC,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IACX,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,8HAA8H;IAC9H,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,6FAA6F;IAC7F,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+FAA+F;IAC/F,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,+BAA+B,GAAG,MAAM,CAAC;IACtG,4HAA4H;IAC5H,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,0JAA0J;IAC1J,oCAAoC,CAAC,EAAE,OAAO,CAAC;IAC/C,qHAAqH;IACrH,2CAA2C,CAAC,EAAE,MAAM,CAAC;CACxD;AACD,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACzC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAChD,4BAA4B,CAAC,GAAG,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,oBAAoB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CACpD"}
|
|
@@ -2,6 +2,8 @@ import { PreferenceSchema } from '@theia/core';
|
|
|
2
2
|
export declare const API_KEY_PREF = "ai-features.openAiOfficial.openAiApiKey";
|
|
3
3
|
export declare const MODELS_PREF = "ai-features.openAiOfficial.officialOpenAiModels";
|
|
4
4
|
export declare const USE_RESPONSE_API_PREF = "ai-features.openAiOfficial.useResponseApi";
|
|
5
|
+
export declare const SERVER_SIDE_COMPACTION_PREF = "ai-features.openAiOfficial.serverSideCompaction";
|
|
6
|
+
export declare const SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF = "ai-features.openAiOfficial.serverSideCompactionTokenThreshold";
|
|
5
7
|
export declare const CUSTOM_ENDPOINTS_PREF = "ai-features.openAiCustom.customOpenAiModels";
|
|
6
8
|
export declare const OpenAiPreferencesSchema: PreferenceSchema;
|
|
7
9
|
//# sourceMappingURL=openai-preferences.d.ts.map
|
|
@@ -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":"AAkBA,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,gBAqKrC,CAAC"}
|
|
@@ -15,12 +15,15 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.OpenAiPreferencesSchema = exports.CUSTOM_ENDPOINTS_PREF = exports.USE_RESPONSE_API_PREF = exports.MODELS_PREF = exports.API_KEY_PREF = void 0;
|
|
18
|
+
exports.OpenAiPreferencesSchema = exports.CUSTOM_ENDPOINTS_PREF = exports.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF = exports.SERVER_SIDE_COMPACTION_PREF = exports.USE_RESPONSE_API_PREF = exports.MODELS_PREF = exports.API_KEY_PREF = void 0;
|
|
19
19
|
const ai_core_preferences_1 = require("@theia/ai-core/lib/common/ai-core-preferences");
|
|
20
|
+
const language_model_1 = require("@theia/ai-core/lib/common/language-model");
|
|
20
21
|
const core_1 = require("@theia/core");
|
|
21
22
|
exports.API_KEY_PREF = 'ai-features.openAiOfficial.openAiApiKey';
|
|
22
23
|
exports.MODELS_PREF = 'ai-features.openAiOfficial.officialOpenAiModels';
|
|
23
24
|
exports.USE_RESPONSE_API_PREF = 'ai-features.openAiOfficial.useResponseApi';
|
|
25
|
+
exports.SERVER_SIDE_COMPACTION_PREF = 'ai-features.openAiOfficial.serverSideCompaction';
|
|
26
|
+
exports.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF = 'ai-features.openAiOfficial.serverSideCompactionTokenThreshold';
|
|
24
27
|
exports.CUSTOM_ENDPOINTS_PREF = 'ai-features.openAiCustom.customOpenAiModels';
|
|
25
28
|
exports.OpenAiPreferencesSchema = {
|
|
26
29
|
properties: {
|
|
@@ -35,12 +38,11 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
35
38
|
description: core_1.nls.localize('theia/ai/openai/models/description', 'Official OpenAI models to use'),
|
|
36
39
|
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
37
40
|
default: [
|
|
41
|
+
'gpt-5.6-sol',
|
|
42
|
+
'gpt-5.6-terra',
|
|
43
|
+
'gpt-5.6-luna',
|
|
38
44
|
'gpt-5.5',
|
|
39
|
-
'gpt-5.5-pro'
|
|
40
|
-
'gpt-5.4',
|
|
41
|
-
'gpt-5.4-pro',
|
|
42
|
-
'gpt-5.4-mini',
|
|
43
|
-
'gpt-5.4-nano'
|
|
45
|
+
'gpt-5.5-pro'
|
|
44
46
|
],
|
|
45
47
|
items: {
|
|
46
48
|
type: 'string'
|
|
@@ -50,12 +52,29 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
50
52
|
type: 'boolean',
|
|
51
53
|
default: false,
|
|
52
54
|
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
53
|
-
markdownDescription: core_1.nls.localize('theia/ai/openai/useResponseApi/mdDescription', 'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
markdownDescription: core_1.nls.localize('theia/ai/openai/useResponseApi/mdDescription', 'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models. ' +
|
|
56
|
+
'This setting only applies to official OpenAI models - custom providers must configure this individually.')
|
|
57
|
+
},
|
|
58
|
+
[exports.SERVER_SIDE_COMPACTION_PREF]: {
|
|
59
|
+
type: 'string',
|
|
60
|
+
enum: ['default', 'enabled', 'disabled'],
|
|
61
|
+
enumDescriptions: [
|
|
62
|
+
core_1.nls.localize('theia/ai/openai/compaction/default', 'Follow the global chat server-side compaction setting.'),
|
|
63
|
+
core_1.nls.localize('theia/ai/openai/compaction/enabled', 'Always request server-side compaction for official OpenAI models.'),
|
|
64
|
+
core_1.nls.localize('theia/ai/openai/compaction/disabled', 'Never request server-side compaction for official OpenAI models.')
|
|
65
|
+
],
|
|
66
|
+
default: 'default',
|
|
67
|
+
markdownDescription: core_1.nls.localize('theia/ai/openai/compaction/description', 'Override provider-native server-side compaction for official OpenAI models. This applies to the OpenAI Response API only; ' +
|
|
68
|
+
'the Chat Completions API ignores it. "default" follows the global chat setting ({0}). When effectively ' +
|
|
69
|
+
'enabled, the Response API is asked to summarize older turns once the conversation grows past the provider\'s threshold.', `\`#${ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION}#\``),
|
|
70
|
+
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
71
|
+
},
|
|
72
|
+
[exports.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_PREF]: {
|
|
73
|
+
type: 'integer',
|
|
74
|
+
minimum: language_model_1.SERVER_SIDE_COMPACTION_TOKEN_THRESHOLD_MINIMUM,
|
|
75
|
+
markdownDescription: core_1.nls.localize('theia/ai/openai/compactionTokenThreshold/description', 'Override the global input-token threshold for server-side compaction for official OpenAI models. When unset, the global setting or provider default applies. ' +
|
|
76
|
+
'If set, the value must be at least 50,000 tokens.'),
|
|
77
|
+
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
59
78
|
},
|
|
60
79
|
[exports.CUSTOM_ENDPOINTS_PREF]: {
|
|
61
80
|
type: 'array',
|
|
@@ -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,4 +1,4 @@
|
|
|
1
|
-
import { LanguageModel, LanguageModelParsedResponse, LanguageModelRequest, LanguageModelMessage, LanguageModelResponse, LanguageModelTextResponse, UserRequest, LanguageModelStatus, ReasoningSupport } from '@theia/ai-core';
|
|
1
|
+
import { LanguageModel, LanguageModelParsedResponse, LanguageModelRequest, LanguageModelMessage, LanguageModelResponse, LanguageModelTextResponse, UserRequest, LanguageModelStatus, ReasoningSupport, ServerToolDescriptor } from '@theia/ai-core';
|
|
2
2
|
import { CancellationToken } from '@theia/core';
|
|
3
3
|
import { OpenAI } from 'openai';
|
|
4
4
|
import { RunnableToolFunctionWithoutParse } from 'openai/lib/RunnableFunction';
|
|
@@ -29,6 +29,11 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
29
29
|
proxy?: string | undefined;
|
|
30
30
|
reasoningSupport?: ReasoningSupport | undefined;
|
|
31
31
|
maxInputTokens?: number | undefined;
|
|
32
|
+
serverTools?: ServerToolDescriptor[] | undefined;
|
|
33
|
+
serverSideCompactionSupport: boolean;
|
|
34
|
+
serverSideCompactionEnabledByDefault: boolean;
|
|
35
|
+
serverSideCompactionTokenThresholdByDefault?: number | undefined;
|
|
36
|
+
readonly vendor = "openai";
|
|
32
37
|
/**
|
|
33
38
|
* The options for the OpenAI runner.
|
|
34
39
|
*/
|
|
@@ -43,8 +48,10 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
43
48
|
* @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
|
|
44
49
|
* @param maxRetries the maximum number of retry attempts when a request fails
|
|
45
50
|
* @param useResponseApi whether to use the newer OpenAI Response API instead of the Chat Completion API
|
|
51
|
+
* @param serverSideCompactionSupport whether this model supports server-side compaction (only available via the Response API)
|
|
52
|
+
* @param serverSideCompactionEnabledByDefault resolved default enablement of server-side compaction (global preference folded with the per-provider override)
|
|
46
53
|
*/
|
|
47
|
-
constructor(id: string, model: string, status: LanguageModelStatus, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, deployment: string | undefined, openAiModelUtils: OpenAiModelUtils, responseApiUtils: OpenAiResponseApiUtils, developerMessageSettings?: DeveloperMessageSettings, maxRetries?: number, useResponseApi?: boolean, proxy?: string | undefined, reasoningSupport?: ReasoningSupport | undefined, maxInputTokens?: number | undefined);
|
|
54
|
+
constructor(id: string, model: string, status: LanguageModelStatus, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, deployment: string | undefined, openAiModelUtils: OpenAiModelUtils, responseApiUtils: OpenAiResponseApiUtils, developerMessageSettings?: DeveloperMessageSettings, maxRetries?: number, useResponseApi?: boolean, proxy?: string | undefined, reasoningSupport?: ReasoningSupport | undefined, maxInputTokens?: number | undefined, serverTools?: ServerToolDescriptor[] | undefined, serverSideCompactionSupport?: boolean, serverSideCompactionEnabledByDefault?: boolean, serverSideCompactionTokenThresholdByDefault?: number | undefined);
|
|
48
55
|
/** Reasoning-level translation lives in {@link openAiReasoningFor}. */
|
|
49
56
|
protected getSettings(request: LanguageModelRequest, forResponseApi?: boolean): Record<string, unknown>;
|
|
50
57
|
request(request: UserRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse>;
|
|
@@ -54,6 +61,11 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
54
61
|
protected handleStructuredOutputRequest(openai: OpenAI, request: UserRequest): Promise<LanguageModelParsedResponse>;
|
|
55
62
|
protected createTools(request: LanguageModelRequest): RunnableToolFunctionWithoutParse[] | undefined;
|
|
56
63
|
protected initializeOpenAi(): OpenAI;
|
|
64
|
+
/**
|
|
65
|
+
* Augments the Response API settings with the server-side compaction directive when compaction is enabled for the
|
|
66
|
+
* given request. When disabled, the settings are returned unchanged so the default path is byte-for-byte identical.
|
|
67
|
+
*/
|
|
68
|
+
protected applyResponseApiCompaction(settings: Record<string, unknown>, request: LanguageModelRequest): Record<string, unknown>;
|
|
57
69
|
protected handleResponseApiRequest(openai: OpenAI, request: UserRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse>;
|
|
58
70
|
protected processMessages(messages: LanguageModelMessage[]): ChatCompletionMessageParam[];
|
|
59
71
|
}
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"openai-language-model.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,8 +61,10 @@ class OpenAiModel {
|
|
|
61
61
|
* @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
|
|
62
62
|
* @param maxRetries the maximum number of retry attempts when a request fails
|
|
63
63
|
* @param useResponseApi whether to use the newer OpenAI Response API instead of the Chat Completion API
|
|
64
|
+
* @param serverSideCompactionSupport whether this model supports server-side compaction (only available via the Response API)
|
|
65
|
+
* @param serverSideCompactionEnabledByDefault resolved default enablement of server-side compaction (global preference folded with the per-provider override)
|
|
64
66
|
*/
|
|
65
|
-
constructor(id, model, status, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, deployment, openAiModelUtils, responseApiUtils, developerMessageSettings = 'developer', maxRetries = 3, useResponseApi = false, proxy, reasoningSupport, maxInputTokens) {
|
|
67
|
+
constructor(id, model, status, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, deployment, openAiModelUtils, responseApiUtils, developerMessageSettings = 'developer', maxRetries = 3, useResponseApi = false, proxy, reasoningSupport, maxInputTokens, serverTools, serverSideCompactionSupport = false, serverSideCompactionEnabledByDefault = false, serverSideCompactionTokenThresholdByDefault) {
|
|
66
68
|
this.id = id;
|
|
67
69
|
this.model = model;
|
|
68
70
|
this.status = status;
|
|
@@ -80,6 +82,11 @@ class OpenAiModel {
|
|
|
80
82
|
this.proxy = proxy;
|
|
81
83
|
this.reasoningSupport = reasoningSupport;
|
|
82
84
|
this.maxInputTokens = maxInputTokens;
|
|
85
|
+
this.serverTools = serverTools;
|
|
86
|
+
this.serverSideCompactionSupport = serverSideCompactionSupport;
|
|
87
|
+
this.serverSideCompactionEnabledByDefault = serverSideCompactionEnabledByDefault;
|
|
88
|
+
this.serverSideCompactionTokenThresholdByDefault = serverSideCompactionTokenThresholdByDefault;
|
|
89
|
+
this.vendor = 'openai';
|
|
83
90
|
/**
|
|
84
91
|
* The options for the OpenAI runner.
|
|
85
92
|
*/
|
|
@@ -209,15 +216,32 @@ class OpenAiModel {
|
|
|
209
216
|
return new MistralFixedOpenAI({ apiKey: key, baseURL: this.url, fetch: proxyFetch });
|
|
210
217
|
}
|
|
211
218
|
}
|
|
219
|
+
/**
|
|
220
|
+
* Augments the Response API settings with the server-side compaction directive when compaction is enabled for the
|
|
221
|
+
* given request. When disabled, the settings are returned unchanged so the default path is byte-for-byte identical.
|
|
222
|
+
*/
|
|
223
|
+
applyResponseApiCompaction(settings, request) {
|
|
224
|
+
if ((0, ai_core_1.resolveServerSideCompaction)(this.serverSideCompactionSupport, this.serverSideCompactionEnabledByDefault, request.compaction)) {
|
|
225
|
+
const tokenThreshold = (0, ai_core_1.resolveCompactionTokenThreshold)(this.serverSideCompactionTokenThresholdByDefault, request.compaction);
|
|
226
|
+
return {
|
|
227
|
+
...settings,
|
|
228
|
+
context_management: [{
|
|
229
|
+
type: 'compaction',
|
|
230
|
+
...(tokenThreshold !== undefined && { compact_threshold: tokenThreshold })
|
|
231
|
+
}]
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
return settings;
|
|
235
|
+
}
|
|
212
236
|
async handleResponseApiRequest(openai, request, cancellationToken) {
|
|
213
|
-
const settings = this.getSettings(request, true);
|
|
237
|
+
const settings = this.applyResponseApiCompaction(this.getSettings(request, true), request);
|
|
214
238
|
const isStreamingRequest = this.enableStreaming && !(typeof settings.stream === 'boolean' && !settings.stream);
|
|
215
239
|
try {
|
|
216
240
|
return await this.responseApiUtils.handleRequest(openai, request, settings, this.model, this.openAiModelUtils, this.developerMessageSettings, this.runnerOptions, this.id, isStreamingRequest, cancellationToken);
|
|
217
241
|
}
|
|
218
242
|
catch (error) {
|
|
219
|
-
//
|
|
220
|
-
if (error instanceof Error) {
|
|
243
|
+
// Chat Completions cannot execute Response API server tools.
|
|
244
|
+
if (error instanceof Error && !request.serverTools?.length) {
|
|
221
245
|
console.warn(`Response API failed for model ${this.id}, falling back to Chat Completions API:`, error.message);
|
|
222
246
|
return this.handleChatCompletionsRequest(openai, request, cancellationToken);
|
|
223
247
|
}
|
|
@@ -301,10 +325,10 @@ let OpenAiModelUtils = class OpenAiModelUtils {
|
|
|
301
325
|
*/
|
|
302
326
|
processMessages(messages, developerMessageSettings, model) {
|
|
303
327
|
const processed = this.processSystemMessages(messages, developerMessageSettings);
|
|
304
|
-
// 'server_tool_use' replay
|
|
305
|
-
// OpenAI has no equivalent, so they are dropped (like 'thinking' messages).
|
|
328
|
+
// 'server_tool_use' and 'compaction' replay markers can appear when switching providers within a session;
|
|
329
|
+
// OpenAI Chat Completions has no equivalent, so they are dropped (like 'thinking' messages).
|
|
306
330
|
const converted = processed
|
|
307
|
-
.filter(m => m.type !== 'thinking' && m.type !== 'server_tool_use')
|
|
331
|
+
.filter(m => m.type !== 'thinking' && m.type !== 'server_tool_use' && m.type !== 'compaction')
|
|
308
332
|
.map(m => this.toOpenAIMessage(m, developerMessageSettings));
|
|
309
333
|
return this.mergeConsecutiveAssistantMessages(converted);
|
|
310
334
|
}
|
|
@@ -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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"}
|
|
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
const chai_1 = require("chai");
|
|
19
19
|
const openai_language_model_1 = require("./openai-language-model");
|
|
20
20
|
const openai_response_api_utils_1 = require("./openai-response-api-utils");
|
|
21
|
+
const openai_server_tools_1 = require("./openai-server-tools");
|
|
21
22
|
const GPT5_REASONING_SUPPORT = {
|
|
22
23
|
supportedLevels: ['off', 'minimal', 'low', 'medium', 'high', 'auto'],
|
|
23
24
|
defaultLevel: 'auto'
|
|
@@ -27,13 +28,30 @@ const O_SERIES_REASONING_SUPPORT = {
|
|
|
27
28
|
defaultLevel: 'auto'
|
|
28
29
|
};
|
|
29
30
|
class TestableOpenAiModel extends openai_language_model_1.OpenAiModel {
|
|
31
|
+
constructor() {
|
|
32
|
+
super(...arguments);
|
|
33
|
+
this.chatCompletionsRequests = 0;
|
|
34
|
+
}
|
|
30
35
|
callGetSettings(request, forResponseApi = false) {
|
|
31
36
|
return this.getSettings(request, forResponseApi);
|
|
32
37
|
}
|
|
38
|
+
callApplyResponseApiCompaction(settings, request) {
|
|
39
|
+
return this.applyResponseApiCompaction(settings, request);
|
|
40
|
+
}
|
|
41
|
+
callHandleResponseApiRequest(request) {
|
|
42
|
+
return this.handleResponseApiRequest({}, request);
|
|
43
|
+
}
|
|
44
|
+
async handleChatCompletionsRequest() {
|
|
45
|
+
this.chatCompletionsRequests++;
|
|
46
|
+
return { text: 'fallback' };
|
|
47
|
+
}
|
|
33
48
|
}
|
|
34
49
|
function createModel(modelId, reasoningSupport) {
|
|
35
50
|
return new TestableOpenAiModel('test-id', modelId, { status: 'ready' }, true, () => 'test-key', () => undefined, false, undefined, undefined, new openai_language_model_1.OpenAiModelUtils(), new openai_response_api_utils_1.OpenAiResponseApiUtils(), 'developer', 3, false, undefined, reasoningSupport);
|
|
36
51
|
}
|
|
52
|
+
function createCompactionModel(serverSideCompactionEnabledByDefault, useResponseApi = true, serverSideCompactionTokenThresholdByDefault) {
|
|
53
|
+
return new TestableOpenAiModel('test-id', 'gpt-5', { status: 'ready' }, true, () => 'test-key', () => undefined, false, undefined, undefined, new openai_language_model_1.OpenAiModelUtils(), new openai_response_api_utils_1.OpenAiResponseApiUtils(), 'developer', 3, useResponseApi, undefined, undefined, undefined, undefined, useResponseApi, serverSideCompactionEnabledByDefault, serverSideCompactionTokenThresholdByDefault);
|
|
54
|
+
}
|
|
37
55
|
describe('OpenAiModel reasoning translation', () => {
|
|
38
56
|
describe('Responses API (GPT-5)', () => {
|
|
39
57
|
it('maps level=minimal to reasoning.effort=minimal', () => {
|
|
@@ -88,4 +106,99 @@ describe('OpenAiModel reasoning translation', () => {
|
|
|
88
106
|
});
|
|
89
107
|
});
|
|
90
108
|
});
|
|
109
|
+
describe('OpenAiModel Response API fallback', () => {
|
|
110
|
+
function createFailingModel() {
|
|
111
|
+
const responseApiUtils = {
|
|
112
|
+
handleRequest: async () => { throw new Error('Response API unavailable'); }
|
|
113
|
+
};
|
|
114
|
+
return new TestableOpenAiModel('test-id', 'gpt-5', { status: 'ready' }, true, () => 'test-key', () => undefined, false, undefined, undefined, new openai_language_model_1.OpenAiModelUtils(), responseApiUtils, 'developer', 3, true);
|
|
115
|
+
}
|
|
116
|
+
it('does not fall back to Chat Completions when a server tool is selected', async () => {
|
|
117
|
+
const model = createFailingModel();
|
|
118
|
+
const request = {
|
|
119
|
+
sessionId: 'session-1',
|
|
120
|
+
requestId: 'request-1',
|
|
121
|
+
messages: [],
|
|
122
|
+
serverTools: [openai_server_tools_1.OPENAI_WEB_SEARCH]
|
|
123
|
+
};
|
|
124
|
+
let error;
|
|
125
|
+
try {
|
|
126
|
+
await model.callHandleResponseApiRequest(request);
|
|
127
|
+
}
|
|
128
|
+
catch (caught) {
|
|
129
|
+
error = caught;
|
|
130
|
+
}
|
|
131
|
+
(0, chai_1.expect)(error).to.be.instanceOf(Error).with.property('message', 'Response API unavailable');
|
|
132
|
+
(0, chai_1.expect)(model.chatCompletionsRequests).to.equal(0);
|
|
133
|
+
});
|
|
134
|
+
it('retains Chat Completions fallback when no server tool is selected', async () => {
|
|
135
|
+
const model = createFailingModel();
|
|
136
|
+
const request = {
|
|
137
|
+
sessionId: 'session-1',
|
|
138
|
+
requestId: 'request-1',
|
|
139
|
+
messages: []
|
|
140
|
+
};
|
|
141
|
+
(0, chai_1.expect)(await model.callHandleResponseApiRequest(request)).to.deep.equal({ text: 'fallback' });
|
|
142
|
+
(0, chai_1.expect)(model.chatCompletionsRequests).to.equal(1);
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
describe('OpenAiModelUtils Chat Completions processMessages', () => {
|
|
146
|
+
it('drops a CompactionMessage without throwing when useResponseApi is off', () => {
|
|
147
|
+
const utils = new openai_language_model_1.OpenAiModelUtils();
|
|
148
|
+
const messages = [
|
|
149
|
+
{ actor: 'user', type: 'text', text: 'hello' },
|
|
150
|
+
{ actor: 'ai', type: 'compaction', provider: 'openai-responses', data: { id: 'c1', encrypted_content: 'enc' } },
|
|
151
|
+
{ actor: 'ai', type: 'text', text: 'world' }
|
|
152
|
+
];
|
|
153
|
+
let result;
|
|
154
|
+
(0, chai_1.expect)(() => { result = utils.processMessages(messages, 'developer'); }).to.not.throw();
|
|
155
|
+
// The compaction marker must not appear in the output
|
|
156
|
+
const hasCompaction = result?.some(m => 'content' in m && typeof m.content === 'string' && m.content.includes('enc'));
|
|
157
|
+
(0, chai_1.expect)(hasCompaction).to.equal(false);
|
|
158
|
+
// The surrounding real messages must still be present
|
|
159
|
+
const texts = result?.map(m => typeof m.content === 'string' ? m.content : '').join(' ');
|
|
160
|
+
(0, chai_1.expect)(texts).to.contain('hello');
|
|
161
|
+
(0, chai_1.expect)(texts).to.contain('world');
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
describe('OpenAiModel server-side compaction (Response API)', () => {
|
|
165
|
+
it('adds context_management when model default is on and request has no compaction setting', () => {
|
|
166
|
+
const model = createCompactionModel(true);
|
|
167
|
+
const result = model.callApplyResponseApiCompaction({ stream: true }, { messages: [] });
|
|
168
|
+
(0, chai_1.expect)(result.context_management).to.deep.equal([{ type: 'compaction' }]);
|
|
169
|
+
(0, chai_1.expect)(result.stream).to.equal(true);
|
|
170
|
+
});
|
|
171
|
+
it('adds the model default token threshold', () => {
|
|
172
|
+
const model = createCompactionModel(true, true, 200_000);
|
|
173
|
+
const result = model.callApplyResponseApiCompaction({}, { messages: [] });
|
|
174
|
+
(0, chai_1.expect)(result.context_management).to.deep.equal([{ type: 'compaction', compact_threshold: 200_000 }]);
|
|
175
|
+
});
|
|
176
|
+
it('uses the session token threshold over the model default', () => {
|
|
177
|
+
const model = createCompactionModel(true, true, 200_000);
|
|
178
|
+
const result = model.callApplyResponseApiCompaction({}, { messages: [], compaction: { tokenThreshold: 300_000 } });
|
|
179
|
+
(0, chai_1.expect)(result.context_management).to.deep.equal([{ type: 'compaction', compact_threshold: 300_000 }]);
|
|
180
|
+
});
|
|
181
|
+
it('leaves settings unchanged when model default is off and request has no compaction setting', () => {
|
|
182
|
+
const model = createCompactionModel(false);
|
|
183
|
+
const result = model.callApplyResponseApiCompaction({ stream: true }, { messages: [] });
|
|
184
|
+
(0, chai_1.expect)(result.context_management).to.equal(undefined);
|
|
185
|
+
(0, chai_1.expect)(result).to.deep.equal({ stream: true });
|
|
186
|
+
});
|
|
187
|
+
it('session enabled=true activates compaction over a false model default', () => {
|
|
188
|
+
const model = createCompactionModel(false);
|
|
189
|
+
const result = model.callApplyResponseApiCompaction({}, { messages: [], compaction: { enabled: true } });
|
|
190
|
+
(0, chai_1.expect)(result.context_management).to.deep.equal([{ type: 'compaction' }]);
|
|
191
|
+
});
|
|
192
|
+
it('session enabled=false deactivates compaction even when model default is true', () => {
|
|
193
|
+
const model = createCompactionModel(true);
|
|
194
|
+
const result = model.callApplyResponseApiCompaction({}, { messages: [], compaction: { enabled: false } });
|
|
195
|
+
(0, chai_1.expect)(result.context_management).to.equal(undefined);
|
|
196
|
+
});
|
|
197
|
+
it('does not add context_management when capability is false (useResponseApi=false), even with session enabled=true', () => {
|
|
198
|
+
const model = createCompactionModel(true, false);
|
|
199
|
+
const result = model.callApplyResponseApiCompaction({ stream: true }, { messages: [], compaction: { enabled: true } });
|
|
200
|
+
(0, chai_1.expect)(result.context_management).to.equal(undefined);
|
|
201
|
+
(0, chai_1.expect)(result).to.deep.equal({ stream: true });
|
|
202
|
+
});
|
|
203
|
+
});
|
|
91
204
|
//# sourceMappingURL=openai-language-model.spec.js.map
|