@theia/ai-openai 1.60.0-next.47 → 1.60.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/browser/openai-frontend-application-contribution.d.ts +2 -6
- package/lib/browser/openai-frontend-application-contribution.d.ts.map +1 -1
- package/lib/browser/openai-frontend-application-contribution.js +9 -36
- package/lib/browser/openai-frontend-application-contribution.js.map +1 -1
- package/lib/common/openai-language-models-manager.d.ts +0 -6
- package/lib/common/openai-language-models-manager.d.ts.map +1 -1
- package/lib/node/openai-language-model.d.ts +7 -13
- package/lib/node/openai-language-model.d.ts.map +1 -1
- package/lib/node/openai-language-model.js +28 -14
- package/lib/node/openai-language-model.js.map +1 -1
- package/lib/node/openai-language-models-manager-impl.d.ts.map +1 -1
- package/lib/node/openai-language-models-manager-impl.js +1 -2
- package/lib/node/openai-language-models-manager-impl.js.map +1 -1
- package/lib/node/openai-model-utils.spec.js +30 -30
- package/lib/node/openai-model-utils.spec.js.map +1 -1
- package/lib/node/openai-streaming-iterator.js.map +1 -1
- package/lib/node/openai-streaming-iterator.spec.js +4 -5
- package/lib/node/openai-streaming-iterator.spec.js.map +1 -1
- package/package.json +7 -7
- package/src/browser/openai-frontend-application-contribution.ts +9 -48
- package/src/common/openai-language-models-manager.ts +0 -4
- package/src/node/openai-language-model.ts +36 -23
- package/src/node/openai-language-models-manager-impl.ts +0 -2
- package/src/node/openai-model-utils.spec.ts +30 -30
- package/src/node/openai-streaming-iterator.spec.ts +4 -4
- package/src/node/openai-streaming-iterator.ts +1 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { FrontendApplicationContribution, PreferenceService } from '@theia/core/lib/browser';
|
|
2
2
|
import { OpenAiLanguageModelsManager, OpenAiModelDescription } from '../common';
|
|
3
|
-
import { RequestSetting } from '@theia/ai-core/lib/browser/ai-core-preferences';
|
|
4
3
|
export declare class OpenAiFrontendApplicationContribution implements FrontendApplicationContribution {
|
|
5
4
|
protected preferenceService: PreferenceService;
|
|
6
5
|
protected manager: OpenAiLanguageModelsManager;
|
|
@@ -8,11 +7,8 @@ export declare class OpenAiFrontendApplicationContribution implements FrontendAp
|
|
|
8
7
|
protected prevCustomModels: Partial<OpenAiModelDescription>[];
|
|
9
8
|
onStart(): void;
|
|
10
9
|
protected handleModelChanges(newModels: string[]): void;
|
|
11
|
-
private getRequestSettingsPref;
|
|
12
10
|
protected handleCustomModelChanges(newCustomModels: Partial<OpenAiModelDescription>[]): void;
|
|
13
|
-
protected
|
|
14
|
-
protected
|
|
15
|
-
protected createCustomModelDescriptionsFromPreferences(preferences: Partial<OpenAiModelDescription>[], requestSettings: RequestSetting[]): OpenAiModelDescription[];
|
|
16
|
-
protected getMatchingRequestSetting(modelId: string, providerId: string, requestSettings: RequestSetting[]): RequestSetting | undefined;
|
|
11
|
+
protected createOpenAIModelDescription(modelId: string): OpenAiModelDescription;
|
|
12
|
+
protected createCustomModelDescriptionsFromPreferences(preferences: Partial<OpenAiModelDescription>[]): OpenAiModelDescription[];
|
|
17
13
|
}
|
|
18
14
|
//# sourceMappingURL=openai-frontend-application-contribution.d.ts.map
|
|
@@ -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,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,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,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAKhF,qBACa,qCAAsC,YAAW,+BAA+B;IAGzF,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,OAAO,EAAE,2BAA2B,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;IAyBf,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAYvD,SAAS,CAAC,wBAAwB,CAAC,eAAe,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,GAAG,IAAI;IAqB5F,SAAS,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IAa/E,SAAS,CAAC,4CAA4C,CAClD,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,GAC/C,sBAAsB,EAAE;CAqB9B"}
|
|
@@ -21,7 +21,6 @@ const browser_1 = require("@theia/core/lib/browser");
|
|
|
21
21
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
22
22
|
const common_1 = require("../common");
|
|
23
23
|
const openai_preferences_1 = require("./openai-preferences");
|
|
24
|
-
const ai_core_preferences_1 = require("@theia/ai-core/lib/browser/ai-core-preferences");
|
|
25
24
|
const OPENAI_PROVIDER_ID = 'openai';
|
|
26
25
|
let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContribution {
|
|
27
26
|
constructor() {
|
|
@@ -33,11 +32,10 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
33
32
|
const apiKey = this.preferenceService.get(openai_preferences_1.API_KEY_PREF, undefined);
|
|
34
33
|
this.manager.setApiKey(apiKey);
|
|
35
34
|
const models = this.preferenceService.get(openai_preferences_1.MODELS_PREF, []);
|
|
36
|
-
|
|
37
|
-
this.manager.createOrUpdateLanguageModels(...models.map(modelId => this.createOpenAIModelDescription(modelId, requestSettings)));
|
|
35
|
+
this.manager.createOrUpdateLanguageModels(...models.map(modelId => this.createOpenAIModelDescription(modelId)));
|
|
38
36
|
this.prevModels = [...models];
|
|
39
37
|
const customModels = this.preferenceService.get(openai_preferences_1.CUSTOM_ENDPOINTS_PREF, []);
|
|
40
|
-
this.manager.createOrUpdateLanguageModels(...this.createCustomModelDescriptionsFromPreferences(customModels
|
|
38
|
+
this.manager.createOrUpdateLanguageModels(...this.createCustomModelDescriptionsFromPreferences(customModels));
|
|
41
39
|
this.prevCustomModels = [...customModels];
|
|
42
40
|
this.preferenceService.onPreferenceChanged(event => {
|
|
43
41
|
if (event.preferenceName === openai_preferences_1.API_KEY_PREF) {
|
|
@@ -49,9 +47,6 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
49
47
|
else if (event.preferenceName === openai_preferences_1.CUSTOM_ENDPOINTS_PREF) {
|
|
50
48
|
this.handleCustomModelChanges(event.newValue);
|
|
51
49
|
}
|
|
52
|
-
else if (event.preferenceName === ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS) {
|
|
53
|
-
this.handleRequestSettingsChanges(event.newValue);
|
|
54
|
-
}
|
|
55
50
|
});
|
|
56
51
|
});
|
|
57
52
|
}
|
|
@@ -61,17 +56,12 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
61
56
|
const modelsToRemove = [...oldModels].filter(model => !updatedModels.has(model));
|
|
62
57
|
const modelsToAdd = [...updatedModels].filter(model => !oldModels.has(model));
|
|
63
58
|
this.manager.removeLanguageModels(...modelsToRemove.map(model => `openai/${model}`));
|
|
64
|
-
|
|
65
|
-
this.manager.createOrUpdateLanguageModels(...modelsToAdd.map(modelId => this.createOpenAIModelDescription(modelId, requestSettings)));
|
|
59
|
+
this.manager.createOrUpdateLanguageModels(...modelsToAdd.map(modelId => this.createOpenAIModelDescription(modelId)));
|
|
66
60
|
this.prevModels = newModels;
|
|
67
61
|
}
|
|
68
|
-
getRequestSettingsPref() {
|
|
69
|
-
return this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS, []);
|
|
70
|
-
}
|
|
71
62
|
handleCustomModelChanges(newCustomModels) {
|
|
72
|
-
const
|
|
73
|
-
const
|
|
74
|
-
const newModels = this.createCustomModelDescriptionsFromPreferences(newCustomModels, requestSettings);
|
|
63
|
+
const oldModels = this.createCustomModelDescriptionsFromPreferences(this.prevCustomModels);
|
|
64
|
+
const newModels = this.createCustomModelDescriptionsFromPreferences(newCustomModels);
|
|
75
65
|
const modelsToRemove = oldModels.filter(model => !newModels.some(newModel => newModel.id === model.id));
|
|
76
66
|
const modelsToAddOrUpdate = newModels.filter(newModel => !oldModels.some(model => model.id === newModel.id &&
|
|
77
67
|
model.model === newModel.model &&
|
|
@@ -85,15 +75,8 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
85
75
|
this.manager.createOrUpdateLanguageModels(...modelsToAddOrUpdate);
|
|
86
76
|
this.prevCustomModels = [...newCustomModels];
|
|
87
77
|
}
|
|
88
|
-
|
|
89
|
-
const models = this.preferenceService.get(openai_preferences_1.MODELS_PREF, []);
|
|
90
|
-
this.manager.createOrUpdateLanguageModels(...models.map(modelId => this.createOpenAIModelDescription(modelId, newSettings)));
|
|
91
|
-
const customModels = this.preferenceService.get(openai_preferences_1.CUSTOM_ENDPOINTS_PREF, []);
|
|
92
|
-
this.manager.createOrUpdateLanguageModels(...this.createCustomModelDescriptionsFromPreferences(customModels, newSettings));
|
|
93
|
-
}
|
|
94
|
-
createOpenAIModelDescription(modelId, requestSettings) {
|
|
78
|
+
createOpenAIModelDescription(modelId) {
|
|
95
79
|
const id = `${OPENAI_PROVIDER_ID}/${modelId}`;
|
|
96
|
-
const modelRequestSetting = this.getMatchingRequestSetting(modelId, OPENAI_PROVIDER_ID, requestSettings);
|
|
97
80
|
return {
|
|
98
81
|
id: id,
|
|
99
82
|
model: modelId,
|
|
@@ -101,17 +84,15 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
101
84
|
apiVersion: true,
|
|
102
85
|
developerMessageSettings: openAIModelsNotSupportingDeveloperMessages.includes(modelId) ? 'user' : 'developer',
|
|
103
86
|
enableStreaming: !openAIModelsWithDisabledStreaming.includes(modelId),
|
|
104
|
-
supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId)
|
|
105
|
-
defaultRequestSettings: modelRequestSetting === null || modelRequestSetting === void 0 ? void 0 : modelRequestSetting.requestSettings
|
|
87
|
+
supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId)
|
|
106
88
|
};
|
|
107
89
|
}
|
|
108
|
-
createCustomModelDescriptionsFromPreferences(preferences
|
|
90
|
+
createCustomModelDescriptionsFromPreferences(preferences) {
|
|
109
91
|
return preferences.reduce((acc, pref) => {
|
|
110
92
|
var _a, _b, _c;
|
|
111
93
|
if (!pref.model || !pref.url || typeof pref.model !== 'string' || typeof pref.url !== 'string') {
|
|
112
94
|
return acc;
|
|
113
95
|
}
|
|
114
|
-
const modelRequestSetting = this.getMatchingRequestSetting(pref.model, OPENAI_PROVIDER_ID, requestSettings);
|
|
115
96
|
return [
|
|
116
97
|
...acc,
|
|
117
98
|
{
|
|
@@ -122,19 +103,11 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
|
|
|
122
103
|
apiVersion: typeof pref.apiVersion === 'string' || pref.apiVersion === true ? pref.apiVersion : undefined,
|
|
123
104
|
developerMessageSettings: (_a = pref.developerMessageSettings) !== null && _a !== void 0 ? _a : 'developer',
|
|
124
105
|
supportsStructuredOutput: (_b = pref.supportsStructuredOutput) !== null && _b !== void 0 ? _b : true,
|
|
125
|
-
enableStreaming: (_c = pref.enableStreaming) !== null && _c !== void 0 ? _c : true
|
|
126
|
-
defaultRequestSettings: modelRequestSetting === null || modelRequestSetting === void 0 ? void 0 : modelRequestSetting.requestSettings
|
|
106
|
+
enableStreaming: (_c = pref.enableStreaming) !== null && _c !== void 0 ? _c : true
|
|
127
107
|
}
|
|
128
108
|
];
|
|
129
109
|
}, []);
|
|
130
110
|
}
|
|
131
|
-
getMatchingRequestSetting(modelId, providerId, requestSettings) {
|
|
132
|
-
const matchingSettings = requestSettings.filter(setting => (!setting.providerId || setting.providerId === providerId) && setting.modelId === modelId);
|
|
133
|
-
if (matchingSettings.length > 1) {
|
|
134
|
-
console.warn(`Multiple entries found for provider "${providerId}" and model "${modelId}". Using the first match.`);
|
|
135
|
-
}
|
|
136
|
-
return matchingSettings[0];
|
|
137
|
-
}
|
|
138
111
|
};
|
|
139
112
|
exports.OpenAiFrontendApplicationContribution = OpenAiFrontendApplicationContribution;
|
|
140
113
|
tslib_1.__decorate([
|
|
@@ -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;;;;AAEhF,qDAA6F;AAC7F,4DAAkE;AAClE,sCAAgF;AAChF,6DAAwF;
|
|
1
|
+
{"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,12 +36,6 @@ export interface OpenAiModelDescription {
|
|
|
36
36
|
* Flag to configure whether the OpenAPI model supports structured output. Default is `true`.
|
|
37
37
|
*/
|
|
38
38
|
supportsStructuredOutput: boolean;
|
|
39
|
-
/**
|
|
40
|
-
* Default request settings for the OpenAI model.
|
|
41
|
-
*/
|
|
42
|
-
defaultRequestSettings?: {
|
|
43
|
-
[key: string]: unknown;
|
|
44
|
-
};
|
|
45
39
|
}
|
|
46
40
|
export interface OpenAiLanguageModelsManager {
|
|
47
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,eAAO,MAAM,mCAAmC,6CAA6C,CAAC;AAC9F,eAAO,MAAM,2BAA2B,eAAwC,CAAC;AAEjF,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,+BAA+B,GAAG,MAAM,CAAC;IACtG;;OAEG;IACH,wBAAwB,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-language-models-manager.d.ts","sourceRoot":"","sources":["../../src/common/openai-language-models-manager.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,mCAAmC,6CAA6C,CAAC;AAC9F,eAAO,MAAM,2BAA2B,eAAwC,CAAC;AAEjF,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,+BAA+B,GAAG,MAAM,CAAC;IACtG;;OAEG;IACH,wBAAwB,EAAE,OAAO,CAAC;CACrC;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,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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LanguageModel, LanguageModelParsedResponse, LanguageModelRequest,
|
|
1
|
+
import { LanguageModel, LanguageModelParsedResponse, LanguageModelRequest, LanguageModelMessage, LanguageModelResponse, LanguageModelTextResponse } 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';
|
|
@@ -15,9 +15,6 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
15
15
|
url: string | undefined;
|
|
16
16
|
openAiModelUtils: OpenAiModelUtils;
|
|
17
17
|
developerMessageSettings: DeveloperMessageSettings;
|
|
18
|
-
defaultRequestSettings?: {
|
|
19
|
-
[key: string]: unknown;
|
|
20
|
-
} | undefined;
|
|
21
18
|
/**
|
|
22
19
|
* @param id the unique id for this language model. It will be used to identify the model in the UI.
|
|
23
20
|
* @param model the model id as it is used by the OpenAI API
|
|
@@ -26,11 +23,8 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
26
23
|
* @param apiVersion a function that returns the OpenAPI version to use for this model, called on each request
|
|
27
24
|
* @param developerMessageSettings how to handle system messages
|
|
28
25
|
* @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
|
|
29
|
-
* @param defaultRequestSettings optional default settings for requests made using this model.
|
|
30
26
|
*/
|
|
31
|
-
constructor(id: string, model: string, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, openAiModelUtils: OpenAiModelUtils, developerMessageSettings?: DeveloperMessageSettings
|
|
32
|
-
[key: string]: unknown;
|
|
33
|
-
} | undefined);
|
|
27
|
+
constructor(id: string, model: string, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, openAiModelUtils: OpenAiModelUtils, developerMessageSettings?: DeveloperMessageSettings);
|
|
34
28
|
protected getSettings(request: LanguageModelRequest): Record<string, unknown>;
|
|
35
29
|
request(request: LanguageModelRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse>;
|
|
36
30
|
protected handleNonStreamingRequest(openai: OpenAI, request: LanguageModelRequest): Promise<LanguageModelTextResponse>;
|
|
@@ -38,7 +32,7 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
38
32
|
protected handleStructuredOutputRequest(openai: OpenAI, request: LanguageModelRequest): Promise<LanguageModelParsedResponse>;
|
|
39
33
|
protected createTools(request: LanguageModelRequest): RunnableToolFunctionWithoutParse[] | undefined;
|
|
40
34
|
protected initializeOpenAi(): OpenAI;
|
|
41
|
-
protected processMessages(messages:
|
|
35
|
+
protected processMessages(messages: LanguageModelMessage[]): ChatCompletionMessageParam[];
|
|
42
36
|
}
|
|
43
37
|
/**
|
|
44
38
|
* Utility class for processing messages for the OpenAI language model.
|
|
@@ -46,9 +40,9 @@ export declare class OpenAiModel implements LanguageModel {
|
|
|
46
40
|
* Adopters can rebind this class to implement custom message processing behavior.
|
|
47
41
|
*/
|
|
48
42
|
export declare class OpenAiModelUtils {
|
|
49
|
-
protected processSystemMessages(messages:
|
|
50
|
-
protected toOpenAiRole(message:
|
|
51
|
-
protected toOpenAIMessage(message:
|
|
43
|
+
protected processSystemMessages(messages: LanguageModelMessage[], developerMessageSettings: DeveloperMessageSettings): LanguageModelMessage[];
|
|
44
|
+
protected toOpenAiRole(message: LanguageModelMessage, developerMessageSettings: DeveloperMessageSettings): 'developer' | 'user' | 'assistant' | 'system';
|
|
45
|
+
protected toOpenAIMessage(message: LanguageModelMessage, developerMessageSettings: DeveloperMessageSettings): ChatCompletionMessageParam;
|
|
52
46
|
/**
|
|
53
47
|
* Processes the provided list of messages by applying system message adjustments and converting
|
|
54
48
|
* them to the format expected by the OpenAI API.
|
|
@@ -60,6 +54,6 @@ export declare class OpenAiModelUtils {
|
|
|
60
54
|
* @param model the OpenAI model identifier. Currently not used, but allows subclasses to implement model-specific behavior.
|
|
61
55
|
* @returns an array of messages formatted for the OpenAI API.
|
|
62
56
|
*/
|
|
63
|
-
processMessages(messages:
|
|
57
|
+
processMessages(messages: LanguageModelMessage[], developerMessageSettings: DeveloperMessageSettings, model: string): ChatCompletionMessageParam[];
|
|
64
58
|
}
|
|
65
59
|
//# sourceMappingURL=openai-language-model.d.ts.map
|
|
@@ -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,
|
|
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,EAE5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAE7C,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAG9D,eAAO,MAAM,qBAAqB,eAAkC,CAAC;AAErE,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,+BAA+B,GAAG,MAAM,CAAC;AAElH,qBAAa,WAAY,YAAW,aAAa;aAYzB,EAAE,EAAE,MAAM;IACnB,KAAK,EAAE,MAAM;IACb,eAAe,EAAE,OAAO;IACxB,MAAM,EAAE,MAAM,MAAM,GAAG,SAAS;IAChC,UAAU,EAAE,MAAM,MAAM,GAAG,SAAS;IACpC,wBAAwB,EAAE,OAAO;IACjC,GAAG,EAAE,MAAM,GAAG,SAAS;IACvB,gBAAgB,EAAE,gBAAgB;IAClC,wBAAwB,EAAE,wBAAwB;IAlB7D;;;;;;;;OAQG;gBAEiB,EAAE,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,OAAO,EACxB,MAAM,EAAE,MAAM,MAAM,GAAG,SAAS,EAChC,UAAU,EAAE,MAAM,MAAM,GAAG,SAAS,EACpC,wBAAwB,EAAE,OAAO,EACjC,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,gBAAgB,EAAE,gBAAgB,EAClC,wBAAwB,GAAE,wBAAsC;IAG3E,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIvE,OAAO,CAAC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC;cAsCnG,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAe5H,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;cAItC,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAmBlI,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,gCAAgC,EAAE,GAAG,SAAS;IAYpG,SAAS,CAAC,gBAAgB,IAAI,MAAM;IAgBpC,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,0BAA0B,EAAE;CAG5F;AAED;;;;GAIG;AACH,qBACa,gBAAgB;IAEzB,SAAS,CAAC,qBAAqB,CAC3B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,GACnD,oBAAoB,EAAE;IA4BzB,SAAS,CAAC,YAAY,CAClB,OAAO,EAAE,oBAAoB,EAC7B,wBAAwB,EAAE,wBAAwB,GACnD,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ;IAahD,SAAS,CAAC,eAAe,CACrB,OAAO,EAAE,oBAAoB,EAC7B,wBAAwB,EAAE,wBAAwB,GACnD,0BAA0B;IAuB7B;;;;;;;;;;OAUG;IACH,eAAe,CACX,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,EAClD,KAAK,EAAE,MAAM,GACd,0BAA0B,EAAE;CAIlC"}
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.OpenAiModelUtils = exports.OpenAiModel = exports.OpenAiModelIdentifier = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
|
+
const ai_core_1 = require("@theia/ai-core");
|
|
20
21
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
22
|
const openai_1 = require("openai");
|
|
22
23
|
const openai_streaming_iterator_1 = require("./openai-streaming-iterator");
|
|
@@ -30,9 +31,8 @@ class OpenAiModel {
|
|
|
30
31
|
* @param apiVersion a function that returns the OpenAPI version to use for this model, called on each request
|
|
31
32
|
* @param developerMessageSettings how to handle system messages
|
|
32
33
|
* @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
|
|
33
|
-
* @param defaultRequestSettings optional default settings for requests made using this model.
|
|
34
34
|
*/
|
|
35
|
-
constructor(id, model, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, openAiModelUtils, developerMessageSettings = 'developer'
|
|
35
|
+
constructor(id, model, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, openAiModelUtils, developerMessageSettings = 'developer') {
|
|
36
36
|
this.id = id;
|
|
37
37
|
this.model = model;
|
|
38
38
|
this.enableStreaming = enableStreaming;
|
|
@@ -42,14 +42,10 @@ class OpenAiModel {
|
|
|
42
42
|
this.url = url;
|
|
43
43
|
this.openAiModelUtils = openAiModelUtils;
|
|
44
44
|
this.developerMessageSettings = developerMessageSettings;
|
|
45
|
-
this.defaultRequestSettings = defaultRequestSettings;
|
|
46
45
|
}
|
|
47
46
|
getSettings(request) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
return {};
|
|
51
|
-
}
|
|
52
|
-
return settings;
|
|
47
|
+
var _a;
|
|
48
|
+
return (_a = request.settings) !== null && _a !== void 0 ? _a : {};
|
|
53
49
|
}
|
|
54
50
|
async request(request, cancellationToken) {
|
|
55
51
|
var _a;
|
|
@@ -167,17 +163,19 @@ let OpenAiModelUtils = class OpenAiModelUtils {
|
|
|
167
163
|
const updated = messages.slice();
|
|
168
164
|
for (let i = updated.length - 1; i >= 0; i--) {
|
|
169
165
|
if (updated[i].actor === 'system') {
|
|
166
|
+
const systemMessage = updated[i];
|
|
170
167
|
if (i + 1 < updated.length && updated[i + 1].actor === 'user') {
|
|
171
168
|
// Merge system message with the next user message
|
|
169
|
+
const userMessage = updated[i + 1];
|
|
172
170
|
updated[i + 1] = {
|
|
173
171
|
...updated[i + 1],
|
|
174
|
-
|
|
172
|
+
text: systemMessage.text + '\n' + userMessage.text
|
|
175
173
|
};
|
|
176
174
|
updated.splice(i, 1);
|
|
177
175
|
}
|
|
178
176
|
else {
|
|
179
177
|
// The message directly after is not a user message (or none exists), so create a new user message right after
|
|
180
|
-
updated.splice(i + 1, 0, { actor: 'user', type: 'text',
|
|
178
|
+
updated.splice(i + 1, 0, { actor: 'user', type: 'text', text: systemMessage.text });
|
|
181
179
|
updated.splice(i, 1);
|
|
182
180
|
}
|
|
183
181
|
}
|
|
@@ -201,10 +199,26 @@ let OpenAiModelUtils = class OpenAiModelUtils {
|
|
|
201
199
|
return 'user';
|
|
202
200
|
}
|
|
203
201
|
toOpenAIMessage(message, developerMessageSettings) {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
202
|
+
if (ai_core_1.LanguageModelMessage.isTextMessage(message)) {
|
|
203
|
+
return {
|
|
204
|
+
role: this.toOpenAiRole(message, developerMessageSettings),
|
|
205
|
+
content: message.text
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
if (ai_core_1.LanguageModelMessage.isToolUseMessage(message)) {
|
|
209
|
+
return {
|
|
210
|
+
role: 'assistant',
|
|
211
|
+
tool_calls: [{ id: message.id, function: { name: message.name, arguments: JSON.stringify(message.input) }, type: 'function' }]
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
if (ai_core_1.LanguageModelMessage.isToolResultMessage(message)) {
|
|
215
|
+
return {
|
|
216
|
+
role: 'tool',
|
|
217
|
+
tool_call_id: message.tool_use_id,
|
|
218
|
+
content: ''
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
throw new Error(`Unknown message type:'${JSON.stringify(message)}'`);
|
|
208
222
|
}
|
|
209
223
|
/**
|
|
210
224
|
* Processes the provided list of messages by applying system message adjustments and converting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-language-model.js","sourceRoot":"","sources":["../../src/node/openai-language-model.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;;;;
|
|
1
|
+
{"version":3,"file":"openai-language-model.js","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEhF,qBACa,+BAAgC,YAAW,2BAA2B;IAG/E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAG1C,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;IAIK,4BAA4B,CAAC,GAAG,iBAAiB,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,IAAI,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,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEhF,qBACa,+BAAgC,YAAW,2BAA2B;IAG/E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAG1C,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;IAIK,4BAA4B,CAAC,GAAG,iBAAiB,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDjG,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;CAOtD"}
|
|
@@ -64,11 +64,10 @@ let OpenAiLanguageModelsManagerImpl = class OpenAiLanguageModelsManagerImpl {
|
|
|
64
64
|
model.apiVersion = apiVersionProvider;
|
|
65
65
|
model.developerMessageSettings = modelDescription.developerMessageSettings || 'developer';
|
|
66
66
|
model.supportsStructuredOutput = modelDescription.supportsStructuredOutput;
|
|
67
|
-
model.defaultRequestSettings = modelDescription.defaultRequestSettings;
|
|
68
67
|
}
|
|
69
68
|
else {
|
|
70
69
|
this.languageModelRegistry.addLanguageModels([
|
|
71
|
-
new openai_language_model_1.OpenAiModel(modelDescription.id, modelDescription.model, modelDescription.enableStreaming, apiKeyProvider, apiVersionProvider, modelDescription.supportsStructuredOutput, modelDescription.url, this.openAiModelUtils, modelDescription.developerMessageSettings
|
|
70
|
+
new openai_language_model_1.OpenAiModel(modelDescription.id, modelDescription.model, modelDescription.enableStreaming, apiKeyProvider, apiVersionProvider, modelDescription.supportsStructuredOutput, modelDescription.url, this.openAiModelUtils, modelDescription.developerMessageSettings)
|
|
72
71
|
]);
|
|
73
72
|
}
|
|
74
73
|
}
|
|
@@ -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,4CAAuD;AACvD,4DAAkE;AAClE,mEAAwE;AAIjE,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAWxC,IAAI,MAAM;;QACN,OAAO,MAAA,IAAI,CAAC,OAAO,mCAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACtD,CAAC;IAED,IAAI,UAAU;;QACV,OAAO,MAAA,IAAI,CAAC,WAAW,mCAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC9D,CAAC;IAED,6EAA6E;IAC7E,6CAA6C;IAC7C,KAAK,CAAC,4BAA4B,CAAC,GAAG,iBAA2C;QAC7E,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACrF,MAAM,cAAc,GAAG,GAAG,EAAE;gBACxB,IAAI,gBAAgB,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;oBACnC,OAAO,IAAI,CAAC,MAAM,CAAC;gBACvB,CAAC;gBACD,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;oBAC1B,OAAO,gBAAgB,CAAC,MAAM,CAAC;gBACnC,CAAC;gBACD,OAAO,SAAS,CAAC;YACrB,CAAC,CAAC;YACF,MAAM,kBAAkB,GAAG,GAAG,EAAE;gBAC5B,IAAI,gBAAgB,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;oBACvC,OAAO,IAAI,CAAC,UAAU,CAAC;gBAC3B,CAAC;gBACD,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBAC9B,OAAO,gBAAgB,CAAC,UAAU,CAAC;gBACvC,CAAC;gBACD,OAAO,SAAS,CAAC;YACrB,CAAC,CAAC;YAEF,IAAI,KAAK,EAAE,CAAC;gBACR,IAAI,CAAC,CAAC,KAAK,YAAY,mCAAW,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,iBAAiB,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,CAAC;oBAC5E,SAAS;gBACb,CAAC;gBACD,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC;gBACrC,KAAK,CAAC,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,KAAK,CAAC,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC;gBACjC,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC;gBAC9B,KAAK,CAAC,UAAU,GAAG,kBAAkB,CAAC;gBACtC,KAAK,CAAC,wBAAwB,GAAG,gBAAgB,CAAC,wBAAwB,IAAI,WAAW,CAAC;gBAC1F,KAAK,CAAC,wBAAwB,GAAG,gBAAgB,CAAC,wBAAwB,CAAC;
|
|
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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"}
|
|
@@ -20,9 +20,9 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
20
20
|
describe("when developerMessageSettings is 'skip'", () => {
|
|
21
21
|
it('should remove all system messages', () => {
|
|
22
22
|
const messages = [
|
|
23
|
-
{ actor: 'system', type: 'text',
|
|
24
|
-
{ actor: 'user', type: 'text',
|
|
25
|
-
{ actor: 'system', type: 'text',
|
|
23
|
+
{ actor: 'system', type: 'text', text: 'system message' },
|
|
24
|
+
{ actor: 'user', type: 'text', text: 'user message' },
|
|
25
|
+
{ actor: 'system', type: 'text', text: 'another system message' },
|
|
26
26
|
];
|
|
27
27
|
const result = utils.processMessages(messages, 'skip');
|
|
28
28
|
expect(result).to.deep.equal([
|
|
@@ -31,9 +31,9 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
31
31
|
});
|
|
32
32
|
it('should do nothing if there is no system message', () => {
|
|
33
33
|
const messages = [
|
|
34
|
-
{ actor: 'user', type: 'text',
|
|
35
|
-
{ actor: 'user', type: 'text',
|
|
36
|
-
{ actor: 'ai', type: 'text',
|
|
34
|
+
{ actor: 'user', type: 'text', text: 'user message' },
|
|
35
|
+
{ actor: 'user', type: 'text', text: 'another user message' },
|
|
36
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
37
37
|
];
|
|
38
38
|
const result = utils.processMessages(messages, 'skip');
|
|
39
39
|
expect(result).to.deep.equal([
|
|
@@ -46,9 +46,9 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
46
46
|
describe("when developerMessageSettings is 'mergeWithFollowingUserMessage'", () => {
|
|
47
47
|
it('should merge the system message with the next user message, assign role user, and remove the system message', () => {
|
|
48
48
|
const messages = [
|
|
49
|
-
{ actor: 'system', type: 'text',
|
|
50
|
-
{ actor: 'user', type: 'text',
|
|
51
|
-
{ actor: 'ai', type: 'text',
|
|
49
|
+
{ actor: 'system', type: 'text', text: 'system msg' },
|
|
50
|
+
{ actor: 'user', type: 'text', text: 'user msg' },
|
|
51
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
52
52
|
];
|
|
53
53
|
const result = utils.processMessages(messages, 'mergeWithFollowingUserMessage');
|
|
54
54
|
expect(result).to.deep.equal([
|
|
@@ -58,8 +58,8 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
58
58
|
});
|
|
59
59
|
it('should create a new user message if no user message exists, and remove the system message', () => {
|
|
60
60
|
const messages = [
|
|
61
|
-
{ actor: 'system', type: 'text',
|
|
62
|
-
{ actor: 'ai', type: 'text',
|
|
61
|
+
{ actor: 'system', type: 'text', text: 'system only msg' },
|
|
62
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
63
63
|
];
|
|
64
64
|
const result = utils.processMessages(messages, 'mergeWithFollowingUserMessage');
|
|
65
65
|
expect(result).to.deep.equal([
|
|
@@ -69,11 +69,11 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
69
69
|
});
|
|
70
70
|
it('should create a merge multiple system message with the next user message', () => {
|
|
71
71
|
const messages = [
|
|
72
|
-
{ actor: 'user', type: 'text',
|
|
73
|
-
{ actor: 'system', type: 'text',
|
|
74
|
-
{ actor: 'system', type: 'text',
|
|
75
|
-
{ actor: 'user', type: 'text',
|
|
76
|
-
{ actor: 'ai', type: 'text',
|
|
72
|
+
{ actor: 'user', type: 'text', text: 'user message' },
|
|
73
|
+
{ actor: 'system', type: 'text', text: 'system message' },
|
|
74
|
+
{ actor: 'system', type: 'text', text: 'system message2' },
|
|
75
|
+
{ actor: 'user', type: 'text', text: 'user message2' },
|
|
76
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
77
77
|
];
|
|
78
78
|
const result = utils.processMessages(messages, 'mergeWithFollowingUserMessage');
|
|
79
79
|
expect(result).to.deep.equal([
|
|
@@ -84,10 +84,10 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
84
84
|
});
|
|
85
85
|
it('should create a new user message from several system messages if the next message is not a user message', () => {
|
|
86
86
|
const messages = [
|
|
87
|
-
{ actor: 'user', type: 'text',
|
|
88
|
-
{ actor: 'system', type: 'text',
|
|
89
|
-
{ actor: 'system', type: 'text',
|
|
90
|
-
{ actor: 'ai', type: 'text',
|
|
87
|
+
{ actor: 'user', type: 'text', text: 'user message' },
|
|
88
|
+
{ actor: 'system', type: 'text', text: 'system message' },
|
|
89
|
+
{ actor: 'system', type: 'text', text: 'system message2' },
|
|
90
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
91
91
|
];
|
|
92
92
|
const result = utils.processMessages(messages, 'mergeWithFollowingUserMessage');
|
|
93
93
|
expect(result).to.deep.equal([
|
|
@@ -100,9 +100,9 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
100
100
|
describe('when no special merging or skipping is needed', () => {
|
|
101
101
|
it('should leave messages unchanged in ordering and assign roles based on developerMessageSettings', () => {
|
|
102
102
|
const messages = [
|
|
103
|
-
{ actor: 'user', type: 'text',
|
|
104
|
-
{ actor: 'system', type: 'text',
|
|
105
|
-
{ actor: 'ai', type: 'text',
|
|
103
|
+
{ actor: 'user', type: 'text', text: 'user message' },
|
|
104
|
+
{ actor: 'system', type: 'text', text: 'system message' },
|
|
105
|
+
{ actor: 'ai', type: 'text', text: 'ai message' }
|
|
106
106
|
];
|
|
107
107
|
// Using a developerMessageSettings that is not merge/skip, e.g., 'developer'
|
|
108
108
|
const result = utils.processMessages(messages, 'developer');
|
|
@@ -116,8 +116,8 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
116
116
|
describe('role assignment for system messages when developerMessageSettings is one of the role strings', () => {
|
|
117
117
|
it('should assign role as specified for a system message when developerMessageSettings is "user"', () => {
|
|
118
118
|
const messages = [
|
|
119
|
-
{ actor: 'system', type: 'text',
|
|
120
|
-
{ actor: 'ai', type: 'text',
|
|
119
|
+
{ actor: 'system', type: 'text', text: 'system msg' },
|
|
120
|
+
{ actor: 'ai', type: 'text', text: 'ai msg' }
|
|
121
121
|
];
|
|
122
122
|
// Since the first message is system and developerMessageSettings is not merge/skip, ordering is not adjusted
|
|
123
123
|
const result = utils.processMessages(messages, 'user');
|
|
@@ -128,8 +128,8 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
128
128
|
});
|
|
129
129
|
it('should assign role as specified for a system message when developerMessageSettings is "system"', () => {
|
|
130
130
|
const messages = [
|
|
131
|
-
{ actor: 'system', type: 'text',
|
|
132
|
-
{ actor: 'ai', type: 'text',
|
|
131
|
+
{ actor: 'system', type: 'text', text: 'system msg' },
|
|
132
|
+
{ actor: 'ai', type: 'text', text: 'ai msg' }
|
|
133
133
|
];
|
|
134
134
|
const result = utils.processMessages(messages, 'system');
|
|
135
135
|
expect(result).to.deep.equal([
|
|
@@ -139,9 +139,9 @@ describe('OpenAiModelUtils - processMessages', () => {
|
|
|
139
139
|
});
|
|
140
140
|
it('should assign role as specified for a system message when developerMessageSettings is "developer"', () => {
|
|
141
141
|
const messages = [
|
|
142
|
-
{ actor: 'system', type: 'text',
|
|
143
|
-
{ actor: 'user', type: 'text',
|
|
144
|
-
{ actor: 'ai', type: 'text',
|
|
142
|
+
{ actor: 'system', type: 'text', text: 'system msg' },
|
|
143
|
+
{ actor: 'user', type: 'text', text: 'user msg' },
|
|
144
|
+
{ actor: 'ai', type: 'text', text: 'ai msg' }
|
|
145
145
|
];
|
|
146
146
|
const result = utils.processMessages(messages, 'developer');
|
|
147
147
|
expect(result).to.deep.equal([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-model-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-model-utils.spec.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;AAChF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAChE,MAAM,KAAK,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAErC,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAChD,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACrD,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACzC,MAAM,QAAQ,GAAG;gBACb,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"openai-model-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-model-utils.spec.ts"],"names":[],"mappings":"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"}
|