@theia/ai-openai 1.63.0-next.24 → 1.63.0-next.52

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.
@@ -1,13 +1,16 @@
1
1
  import { FrontendApplicationContribution, PreferenceService } from '@theia/core/lib/browser';
2
2
  import { OpenAiLanguageModelsManager, OpenAiModelDescription } from '../common';
3
+ import { AICorePreferences } from '@theia/ai-core/lib/browser/ai-core-preferences';
3
4
  export declare class OpenAiFrontendApplicationContribution implements FrontendApplicationContribution {
4
5
  protected preferenceService: PreferenceService;
5
6
  protected manager: OpenAiLanguageModelsManager;
7
+ protected aiCorePreferences: AICorePreferences;
6
8
  protected prevModels: string[];
7
9
  protected prevCustomModels: Partial<OpenAiModelDescription>[];
8
10
  onStart(): void;
9
11
  protected handleModelChanges(newModels: string[]): void;
10
12
  protected handleCustomModelChanges(newCustomModels: Partial<OpenAiModelDescription>[]): void;
13
+ protected updateAllModelsWithNewRetries(): void;
11
14
  protected createOpenAIModelDescription(modelId: string): OpenAiModelDescription;
12
15
  protected createCustomModelDescriptionsFromPreferences(preferences: Partial<OpenAiModelDescription>[]): OpenAiModelDescription[];
13
16
  }
@@ -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,EAAsB,MAAM,WAAW,CAAC;AAGpG,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"}
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,EAAsB,MAAM,WAAW,CAAC;AAEpG,OAAO,EAAE,iBAAiB,EAA+B,MAAM,gDAAgD,CAAC;AAEhH,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;IA+Bf,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,6BAA6B,IAAI,IAAI;IAQ/C,SAAS,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IAe/E,SAAS,CAAC,4CAA4C,CAClD,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,GAC/C,sBAAsB,EAAE;CAuB9B"}
@@ -21,6 +21,7 @@ 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");
24
25
  let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContribution {
25
26
  constructor() {
26
27
  this.prevModels = [];
@@ -47,6 +48,11 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
47
48
  this.handleCustomModelChanges(event.newValue);
48
49
  }
49
50
  });
51
+ this.aiCorePreferences.onPreferenceChanged(event => {
52
+ if (event.preferenceName === ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES) {
53
+ this.updateAllModelsWithNewRetries();
54
+ }
55
+ });
50
56
  });
51
57
  }
52
58
  handleModelChanges(newModels) {
@@ -74,8 +80,16 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
74
80
  this.manager.createOrUpdateLanguageModels(...modelsToAddOrUpdate);
75
81
  this.prevCustomModels = [...newCustomModels];
76
82
  }
83
+ updateAllModelsWithNewRetries() {
84
+ const models = this.preferenceService.get(openai_preferences_1.MODELS_PREF, []);
85
+ this.manager.createOrUpdateLanguageModels(...models.map(modelId => this.createOpenAIModelDescription(modelId)));
86
+ const customModels = this.preferenceService.get(openai_preferences_1.CUSTOM_ENDPOINTS_PREF, []);
87
+ this.manager.createOrUpdateLanguageModels(...this.createCustomModelDescriptionsFromPreferences(customModels));
88
+ }
77
89
  createOpenAIModelDescription(modelId) {
90
+ var _a;
78
91
  const id = `${common_1.OPENAI_PROVIDER_ID}/${modelId}`;
92
+ const maxRetries = (_a = this.aiCorePreferences.get(ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES)) !== null && _a !== void 0 ? _a : 3;
79
93
  return {
80
94
  id: id,
81
95
  model: modelId,
@@ -83,12 +97,15 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
83
97
  apiVersion: true,
84
98
  developerMessageSettings: openAIModelsNotSupportingDeveloperMessages.includes(modelId) ? 'user' : 'developer',
85
99
  enableStreaming: !openAIModelsWithDisabledStreaming.includes(modelId),
86
- supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId)
100
+ supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId),
101
+ maxRetries: maxRetries
87
102
  };
88
103
  }
89
104
  createCustomModelDescriptionsFromPreferences(preferences) {
105
+ var _a;
106
+ const maxRetries = (_a = this.aiCorePreferences.get(ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES)) !== null && _a !== void 0 ? _a : 3;
90
107
  return preferences.reduce((acc, pref) => {
91
- var _a, _b, _c;
108
+ var _a, _b, _c, _d;
92
109
  if (!pref.model || !pref.url || typeof pref.model !== 'string' || typeof pref.url !== 'string') {
93
110
  return acc;
94
111
  }
@@ -102,7 +119,8 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
102
119
  apiVersion: typeof pref.apiVersion === 'string' || pref.apiVersion === true ? pref.apiVersion : undefined,
103
120
  developerMessageSettings: (_a = pref.developerMessageSettings) !== null && _a !== void 0 ? _a : 'developer',
104
121
  supportsStructuredOutput: (_b = pref.supportsStructuredOutput) !== null && _b !== void 0 ? _b : true,
105
- enableStreaming: (_c = pref.enableStreaming) !== null && _c !== void 0 ? _c : true
122
+ enableStreaming: (_c = pref.enableStreaming) !== null && _c !== void 0 ? _c : true,
123
+ maxRetries: (_d = pref.maxRetries) !== null && _d !== void 0 ? _d : maxRetries
106
124
  }
107
125
  ];
108
126
  }, []);
@@ -117,6 +135,10 @@ tslib_1.__decorate([
117
135
  (0, inversify_1.inject)(common_1.OpenAiLanguageModelsManager),
118
136
  tslib_1.__metadata("design:type", Object)
119
137
  ], OpenAiFrontendApplicationContribution.prototype, "manager", void 0);
138
+ tslib_1.__decorate([
139
+ (0, inversify_1.inject)(ai_core_preferences_1.AICorePreferences),
140
+ tslib_1.__metadata("design:type", Object)
141
+ ], OpenAiFrontendApplicationContribution.prototype, "aiCorePreferences", void 0);
120
142
  exports.OpenAiFrontendApplicationContribution = OpenAiFrontendApplicationContribution = tslib_1.__decorate([
121
143
  (0, inversify_1.injectable)()
122
144
  ], OpenAiFrontendApplicationContribution);
@@ -1 +1 @@
1
- {"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,10 @@ export interface OpenAiModelDescription {
37
37
  * Flag to configure whether the OpenAPI model supports structured output. Default is `true`.
38
38
  */
39
39
  supportsStructuredOutput: boolean;
40
+ /**
41
+ * Maximum number of retry attempts when a request fails. Default is 3.
42
+ */
43
+ maxRetries: number;
40
44
  }
41
45
  export interface OpenAiLanguageModelsManager {
42
46
  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,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,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
+ {"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,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,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;IAClC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACtB;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"}
@@ -20,6 +20,7 @@ export declare class OpenAiModel implements LanguageModel {
20
20
  url: string | undefined;
21
21
  openAiModelUtils: OpenAiModelUtils;
22
22
  developerMessageSettings: DeveloperMessageSettings;
23
+ maxRetries: number;
23
24
  protected readonly tokenUsageService?: TokenUsageService | undefined;
24
25
  /**
25
26
  * The options for the OpenAI runner.
@@ -33,8 +34,9 @@ export declare class OpenAiModel implements LanguageModel {
33
34
  * @param apiVersion a function that returns the OpenAPI version to use for this model, called on each request
34
35
  * @param developerMessageSettings how to handle system messages
35
36
  * @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
37
+ * @param maxRetries the maximum number of retry attempts when a request fails
36
38
  */
37
- constructor(id: string, model: string, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, openAiModelUtils: OpenAiModelUtils, developerMessageSettings?: DeveloperMessageSettings, tokenUsageService?: TokenUsageService | undefined);
39
+ constructor(id: string, model: string, enableStreaming: boolean, apiKey: () => string | undefined, apiVersion: () => string | undefined, supportsStructuredOutput: boolean, url: string | undefined, openAiModelUtils: OpenAiModelUtils, developerMessageSettings?: DeveloperMessageSettings, maxRetries?: number, tokenUsageService?: TokenUsageService | undefined);
38
40
  protected getSettings(request: LanguageModelRequest): Record<string, unknown>;
39
41
  request(request: UserRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse>;
40
42
  protected handleNonStreamingRequest(openai: OpenAI, request: UserRequest): Promise<LanguageModelTextResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"openai-language-model.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-language-model.d.ts","sourceRoot":"","sources":["../../src/node/openai-language-model.ts"],"names":[],"mappings":"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"}
@@ -53,8 +53,9 @@ class OpenAiModel {
53
53
  * @param apiVersion a function that returns the OpenAPI version to use for this model, called on each request
54
54
  * @param developerMessageSettings how to handle system messages
55
55
  * @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
56
+ * @param maxRetries the maximum number of retry attempts when a request fails
56
57
  */
57
- constructor(id, model, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, openAiModelUtils, developerMessageSettings = 'developer', tokenUsageService) {
58
+ constructor(id, model, enableStreaming, apiKey, apiVersion, supportsStructuredOutput, url, openAiModelUtils, developerMessageSettings = 'developer', maxRetries = 3, tokenUsageService) {
58
59
  this.id = id;
59
60
  this.model = model;
60
61
  this.enableStreaming = enableStreaming;
@@ -64,6 +65,7 @@ class OpenAiModel {
64
65
  this.url = url;
65
66
  this.openAiModelUtils = openAiModelUtils;
66
67
  this.developerMessageSettings = developerMessageSettings;
68
+ this.maxRetries = maxRetries;
67
69
  this.tokenUsageService = tokenUsageService;
68
70
  /**
69
71
  * The options for the OpenAI runner.
@@ -106,7 +108,7 @@ class OpenAiModel {
106
108
  tool_choice: 'auto',
107
109
  ...settings
108
110
  }, {
109
- ...this.runnerOptions,
111
+ ...this.runnerOptions, maxRetries: this.maxRetries
110
112
  });
111
113
  }
112
114
  else {
@@ -271,6 +273,19 @@ let OpenAiModelUtils = class OpenAiModelUtils {
271
273
  content: ''
272
274
  };
273
275
  }
276
+ if (ai_core_1.LanguageModelMessage.isImageMessage(message) && message.actor === 'user') {
277
+ return {
278
+ role: 'user',
279
+ content: [{
280
+ type: 'image_url',
281
+ image_url: {
282
+ url: ai_core_1.ImageContent.isBase64(message.image) ?
283
+ `data:${message.image.mimeType};base64,${message.image.base64data}` :
284
+ message.image.url
285
+ }
286
+ }]
287
+ };
288
+ }
274
289
  throw new Error(`Unknown message type:'${JSON.stringify(message)}'`);
275
290
  }
276
291
  /**
@@ -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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"}
@@ -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,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAE1E,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;IAGhE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,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;IAqDjG,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"}
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,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAE1E,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;IAGhE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,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;IAuDjG,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,10 +64,11 @@ let OpenAiLanguageModelsManagerImpl = class OpenAiLanguageModelsManagerImpl {
64
64
  model.apiVersion = apiVersionProvider;
65
65
  model.developerMessageSettings = modelDescription.developerMessageSettings || 'developer';
66
66
  model.supportsStructuredOutput = modelDescription.supportsStructuredOutput;
67
+ model.maxRetries = modelDescription.maxRetries;
67
68
  }
68
69
  else {
69
70
  this.languageModelRegistry.addLanguageModels([
70
- new openai_language_model_1.OpenAiModel(modelDescription.id, modelDescription.model, modelDescription.enableStreaming, apiKeyProvider, apiVersionProvider, modelDescription.supportsStructuredOutput, modelDescription.url, this.openAiModelUtils, modelDescription.developerMessageSettings, this.tokenUsageService)
71
+ new openai_language_model_1.OpenAiModel(modelDescription.id, modelDescription.model, modelDescription.enableStreaming, apiKeyProvider, apiVersionProvider, modelDescription.supportsStructuredOutput, modelDescription.url, this.openAiModelUtils, modelDescription.developerMessageSettings, modelDescription.maxRetries, this.tokenUsageService)
71
72
  ]);
72
73
  }
73
74
  }
@@ -1 +1 @@
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
+ {"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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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@theia/ai-openai",
3
- "version": "1.63.0-next.24+83b50cc66",
3
+ "version": "1.63.0-next.52+176018e53",
4
4
  "description": "Theia - OpenAI Integration",
5
5
  "dependencies": {
6
- "@theia/ai-core": "1.63.0-next.24+83b50cc66",
7
- "@theia/core": "1.63.0-next.24+83b50cc66",
8
- "@theia/filesystem": "1.63.0-next.24+83b50cc66",
9
- "@theia/workspace": "1.63.0-next.24+83b50cc66",
6
+ "@theia/ai-core": "1.63.0-next.52+176018e53",
7
+ "@theia/core": "1.63.0-next.52+176018e53",
8
+ "@theia/filesystem": "1.63.0-next.52+176018e53",
9
+ "@theia/workspace": "1.63.0-next.52+176018e53",
10
10
  "minimatch": "^5.1.0",
11
11
  "openai": "^5.0.1",
12
12
  "tslib": "^2.6.2"
@@ -50,5 +50,5 @@
50
50
  "nyc": {
51
51
  "extends": "../../configs/nyc.json"
52
52
  },
53
- "gitHead": "83b50cc66b001a5b9100ccd944dcace04cd4ae2e"
53
+ "gitHead": "176018e53e62cafec9b25b23ac9f0b4826b6d0f7"
54
54
  }
@@ -18,6 +18,7 @@ import { FrontendApplicationContribution, PreferenceService } from '@theia/core/
18
18
  import { inject, injectable } from '@theia/core/shared/inversify';
19
19
  import { OpenAiLanguageModelsManager, OpenAiModelDescription, OPENAI_PROVIDER_ID } from '../common';
20
20
  import { API_KEY_PREF, CUSTOM_ENDPOINTS_PREF, MODELS_PREF } from './openai-preferences';
21
+ import { AICorePreferences, PREFERENCE_NAME_MAX_RETRIES } from '@theia/ai-core/lib/browser/ai-core-preferences';
21
22
 
22
23
  @injectable()
23
24
  export class OpenAiFrontendApplicationContribution implements FrontendApplicationContribution {
@@ -28,6 +29,9 @@ export class OpenAiFrontendApplicationContribution implements FrontendApplicatio
28
29
  @inject(OpenAiLanguageModelsManager)
29
30
  protected manager: OpenAiLanguageModelsManager;
30
31
 
32
+ @inject(AICorePreferences)
33
+ protected aiCorePreferences: AICorePreferences;
34
+
31
35
  protected prevModels: string[] = [];
32
36
  protected prevCustomModels: Partial<OpenAiModelDescription>[] = [];
33
37
 
@@ -53,6 +57,12 @@ export class OpenAiFrontendApplicationContribution implements FrontendApplicatio
53
57
  this.handleCustomModelChanges(event.newValue as Partial<OpenAiModelDescription>[]);
54
58
  }
55
59
  });
60
+
61
+ this.aiCorePreferences.onPreferenceChanged(event => {
62
+ if (event.preferenceName === PREFERENCE_NAME_MAX_RETRIES) {
63
+ this.updateAllModelsWithNewRetries();
64
+ }
65
+ });
56
66
  });
57
67
  }
58
68
 
@@ -89,8 +99,17 @@ export class OpenAiFrontendApplicationContribution implements FrontendApplicatio
89
99
  this.prevCustomModels = [...newCustomModels];
90
100
  }
91
101
 
102
+ protected updateAllModelsWithNewRetries(): void {
103
+ const models = this.preferenceService.get<string[]>(MODELS_PREF, []);
104
+ this.manager.createOrUpdateLanguageModels(...models.map(modelId => this.createOpenAIModelDescription(modelId)));
105
+
106
+ const customModels = this.preferenceService.get<Partial<OpenAiModelDescription>[]>(CUSTOM_ENDPOINTS_PREF, []);
107
+ this.manager.createOrUpdateLanguageModels(...this.createCustomModelDescriptionsFromPreferences(customModels));
108
+ }
109
+
92
110
  protected createOpenAIModelDescription(modelId: string): OpenAiModelDescription {
93
111
  const id = `${OPENAI_PROVIDER_ID}/${modelId}`;
112
+ const maxRetries = this.aiCorePreferences.get(PREFERENCE_NAME_MAX_RETRIES) ?? 3;
94
113
  return {
95
114
  id: id,
96
115
  model: modelId,
@@ -98,13 +117,15 @@ export class OpenAiFrontendApplicationContribution implements FrontendApplicatio
98
117
  apiVersion: true,
99
118
  developerMessageSettings: openAIModelsNotSupportingDeveloperMessages.includes(modelId) ? 'user' : 'developer',
100
119
  enableStreaming: !openAIModelsWithDisabledStreaming.includes(modelId),
101
- supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId)
120
+ supportsStructuredOutput: !openAIModelsWithoutStructuredOutput.includes(modelId),
121
+ maxRetries: maxRetries
102
122
  };
103
123
  }
104
124
 
105
125
  protected createCustomModelDescriptionsFromPreferences(
106
126
  preferences: Partial<OpenAiModelDescription>[]
107
127
  ): OpenAiModelDescription[] {
128
+ const maxRetries = this.aiCorePreferences.get(PREFERENCE_NAME_MAX_RETRIES) ?? 3;
108
129
  return preferences.reduce((acc, pref) => {
109
130
  if (!pref.model || !pref.url || typeof pref.model !== 'string' || typeof pref.url !== 'string') {
110
131
  return acc;
@@ -120,7 +141,8 @@ export class OpenAiFrontendApplicationContribution implements FrontendApplicatio
120
141
  apiVersion: typeof pref.apiVersion === 'string' || pref.apiVersion === true ? pref.apiVersion : undefined,
121
142
  developerMessageSettings: pref.developerMessageSettings ?? 'developer',
122
143
  supportsStructuredOutput: pref.supportsStructuredOutput ?? true,
123
- enableStreaming: pref.enableStreaming ?? true
144
+ enableStreaming: pref.enableStreaming ?? true,
145
+ maxRetries: pref.maxRetries ?? maxRetries
124
146
  }
125
147
  ];
126
148
  }, []);
@@ -54,6 +54,10 @@ export interface OpenAiModelDescription {
54
54
  * Flag to configure whether the OpenAPI model supports structured output. Default is `true`.
55
55
  */
56
56
  supportsStructuredOutput: boolean;
57
+ /**
58
+ * Maximum number of retry attempts when a request fails. Default is 3.
59
+ */
60
+ maxRetries: number;
57
61
  }
58
62
  export interface OpenAiLanguageModelsManager {
59
63
  apiKey: string | undefined;
@@ -23,7 +23,8 @@ import {
23
23
  LanguageModelTextResponse,
24
24
  TextMessage,
25
25
  TokenUsageService,
26
- UserRequest
26
+ UserRequest,
27
+ ImageContent
27
28
  } from '@theia/ai-core';
28
29
  import { CancellationToken } from '@theia/core';
29
30
  import { injectable } from '@theia/core/shared/inversify';
@@ -80,6 +81,7 @@ export class OpenAiModel implements LanguageModel {
80
81
  * @param apiVersion a function that returns the OpenAPI version to use for this model, called on each request
81
82
  * @param developerMessageSettings how to handle system messages
82
83
  * @param url the OpenAI API compatible endpoint where the model is hosted. If not provided the default OpenAI endpoint will be used.
84
+ * @param maxRetries the maximum number of retry attempts when a request fails
83
85
  */
84
86
  constructor(
85
87
  public readonly id: string,
@@ -91,6 +93,7 @@ export class OpenAiModel implements LanguageModel {
91
93
  public url: string | undefined,
92
94
  public openAiModelUtils: OpenAiModelUtils,
93
95
  public developerMessageSettings: DeveloperMessageSettings = 'developer',
96
+ public maxRetries: number = 3,
94
97
  protected readonly tokenUsageService?: TokenUsageService
95
98
  ) { }
96
99
 
@@ -129,7 +132,7 @@ export class OpenAiModel implements LanguageModel {
129
132
  tool_choice: 'auto',
130
133
  ...settings
131
134
  }, {
132
- ...this.runnerOptions,
135
+ ...this.runnerOptions, maxRetries: this.maxRetries
133
136
  });
134
137
  } else {
135
138
  runner = openai.chat.completions.stream({
@@ -319,6 +322,20 @@ export class OpenAiModelUtils {
319
322
  content: ''
320
323
  };
321
324
  }
325
+ if (LanguageModelMessage.isImageMessage(message) && message.actor === 'user') {
326
+ return {
327
+ role: 'user',
328
+ content: [{
329
+ type: 'image_url',
330
+ image_url: {
331
+ url:
332
+ ImageContent.isBase64(message.image) ?
333
+ `data:${message.image.mimeType};base64,${message.image.base64data}` :
334
+ message.image.url
335
+ }
336
+ }]
337
+ };
338
+ }
322
339
  throw new Error(`Unknown message type:'${JSON.stringify(message)}'`);
323
340
  }
324
341
 
@@ -78,6 +78,7 @@ export class OpenAiLanguageModelsManagerImpl implements OpenAiLanguageModelsMana
78
78
  model.apiVersion = apiVersionProvider;
79
79
  model.developerMessageSettings = modelDescription.developerMessageSettings || 'developer';
80
80
  model.supportsStructuredOutput = modelDescription.supportsStructuredOutput;
81
+ model.maxRetries = modelDescription.maxRetries;
81
82
  } else {
82
83
  this.languageModelRegistry.addLanguageModels([
83
84
  new OpenAiModel(
@@ -90,6 +91,7 @@ export class OpenAiLanguageModelsManagerImpl implements OpenAiLanguageModelsMana
90
91
  modelDescription.url,
91
92
  this.openAiModelUtils,
92
93
  modelDescription.developerMessageSettings,
94
+ modelDescription.maxRetries,
93
95
  this.tokenUsageService
94
96
  )
95
97
  ]);