@theia/ai-llamafile 1.60.0-next.47 → 1.60.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.
@@ -1,6 +1,5 @@
1
1
  import { FrontendApplicationContribution, PreferenceService } from '@theia/core/lib/browser';
2
2
  import { LlamafileManager, LlamafileModelDescription } from '../common/llamafile-manager';
3
- import { RequestSetting } from '@theia/ai-core/lib/browser/ai-core-preferences';
4
3
  export declare class LlamafileFrontendApplicationContribution implements FrontendApplicationContribution {
5
4
  protected preferenceService: PreferenceService;
6
5
  protected llamafileManager: LlamafileManager;
@@ -8,7 +7,6 @@ export declare class LlamafileFrontendApplicationContribution implements Fronten
8
7
  onStart(): void;
9
8
  protected getLLamaFileModelDescriptions(llamafiles: LlamafileEntry[]): LlamafileModelDescription[];
10
9
  protected handleLlamaFilePreferenceChange(newModels: LlamafileEntry[]): void;
11
- protected handleRequestSettingsChange(newSettings: RequestSetting[]): void;
12
10
  }
13
11
  export interface LlamafileEntry {
14
12
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/llamafile-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAoC,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAGlH,qBACa,wCAAyC,YAAW,+BAA+B;IAG5F,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAE7C,OAAO,CAAC,gBAAgB,CAA0C;IAElE,OAAO,IAAI,IAAI;IAqBf,SAAS,CAAC,6BAA6B,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,yBAAyB,EAAE;IAoBlG,SAAS,CAAC,+BAA+B,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI;IAgB5E,SAAS,CAAC,2BAA2B,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,IAAI;CAO7E;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"llamafile-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/llamafile-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAG1F,qBACa,wCAAyC,YAAW,+BAA+B;IAG5F,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAE7C,OAAO,CAAC,gBAAgB,CAA0C;IAElE,OAAO,IAAI,IAAI;IAmBf,SAAS,CAAC,6BAA6B,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,yBAAyB,EAAE;IAQlG,SAAS,CAAC,+BAA+B,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI;CAe/E;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CAChB"}
@@ -21,8 +21,6 @@ const browser_1 = require("@theia/core/lib/browser");
21
21
  const inversify_1 = require("@theia/core/shared/inversify");
22
22
  const llamafile_manager_1 = require("../common/llamafile-manager");
23
23
  const llamafile_preferences_1 = require("./llamafile-preferences");
24
- const ai_core_preferences_1 = require("@theia/ai-core/lib/browser/ai-core-preferences");
25
- const LLAMAFILE_PROVIDER_ID = 'llamafile';
26
24
  let LlamafileFrontendApplicationContribution = class LlamafileFrontendApplicationContribution {
27
25
  constructor() {
28
26
  this._knownLlamaFiles = new Map();
@@ -39,28 +37,15 @@ let LlamafileFrontendApplicationContribution = class LlamafileFrontendApplicatio
39
37
  const newModels = event.newValue.filter((llamafileEntry) => LlamafileEntry.is(llamafileEntry));
40
38
  this.handleLlamaFilePreferenceChange(newModels);
41
39
  }
42
- else if (event.preferenceName === ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS) {
43
- this.handleRequestSettingsChange(event.newValue);
44
- }
45
40
  });
46
41
  });
47
42
  }
48
43
  getLLamaFileModelDescriptions(llamafiles) {
49
- const requestSettings = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS, []);
50
- return llamafiles.map(llamafile => {
51
- var _a;
52
- const matchingSettings = requestSettings.filter(setting => (!setting.providerId || setting.providerId === LLAMAFILE_PROVIDER_ID) &&
53
- setting.modelId === llamafile.name);
54
- if (matchingSettings.length > 1) {
55
- console.warn(`Multiple entries found for model "${llamafile.name}". Using the first match.`);
56
- }
57
- return {
58
- name: llamafile.name,
59
- uri: llamafile.uri,
60
- port: llamafile.port,
61
- defaultRequestSettings: (_a = matchingSettings[0]) === null || _a === void 0 ? void 0 : _a.requestSettings
62
- };
63
- });
44
+ return llamafiles.map(llamafile => ({
45
+ name: llamafile.name,
46
+ uri: llamafile.uri,
47
+ port: llamafile.port
48
+ }));
64
49
  }
65
50
  handleLlamaFilePreferenceChange(newModels) {
66
51
  const llamafilesToAdd = newModels.filter(llamafile => !this._knownLlamaFiles.has(llamafile.name) ||
@@ -72,13 +57,6 @@ let LlamafileFrontendApplicationContribution = class LlamafileFrontendApplicatio
72
57
  this.llamafileManager.addLanguageModels(this.getLLamaFileModelDescriptions(llamafilesToAdd));
73
58
  llamafilesToAdd.forEach(model => this._knownLlamaFiles.set(model.name, model));
74
59
  }
75
- handleRequestSettingsChange(newSettings) {
76
- const llamafiles = Array.from(this._knownLlamaFiles.values());
77
- const llamafileModelDescriptions = this.getLLamaFileModelDescriptions(llamafiles);
78
- llamafileModelDescriptions.forEach(llamafileModelDescription => {
79
- this.llamafileManager.updateRequestSettings(llamafileModelDescription.name, llamafileModelDescription.defaultRequestSettings);
80
- });
81
- }
82
60
  };
83
61
  exports.LlamafileFrontendApplicationContribution = LlamafileFrontendApplicationContribution;
84
62
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/llamafile-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llamafile-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/llamafile-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -4,20 +4,14 @@ export declare class LlamafileLanguageModel implements LanguageModel {
4
4
  readonly name: string;
5
5
  readonly uri: string;
6
6
  readonly port: number;
7
- defaultRequestSettings?: {
8
- [key: string]: unknown;
9
- } | undefined;
10
7
  readonly providerId = "llamafile";
11
8
  readonly vendor: string;
12
9
  /**
13
10
  * @param name the unique name for this language model. It will be used to identify the model in the UI.
14
11
  * @param uri the URI pointing to the Llamafile model location.
15
12
  * @param port the port on which the Llamafile model server operates.
16
- * @param defaultRequestSettings optional default settings for requests made using this model.
17
13
  */
18
- constructor(name: string, uri: string, port: number, defaultRequestSettings?: {
19
- [key: string]: unknown;
20
- } | undefined);
14
+ constructor(name: string, uri: string, port: number);
21
15
  get id(): string;
22
16
  protected getSettings(request: LanguageModelRequest): Record<string, unknown>;
23
17
  request(request: LanguageModelRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-language-model.d.ts","sourceRoot":"","sources":["../../src/common/llamafile-language-model.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,qBAAqB,EAAmC,MAAM,gBAAgB,CAAC;AAC7H,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,qBAAa,sBAAuB,YAAW,aAAa;aAYpC,IAAI,EAAE,MAAM;aACZ,GAAG,EAAE,MAAM;aACX,IAAI,EAAE,MAAM;IACrB,sBAAsB,CAAC;;;IAblC,QAAQ,CAAC,UAAU,eAAe;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAa;IAEpC;;;;;OAKG;gBAEiB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACrB,sBAAsB,CAAC;;iBAA4B;IAG9D,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAavE,OAAO,CAAC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAyEtH"}
1
+ {"version":3,"file":"llamafile-language-model.d.ts","sourceRoot":"","sources":["../../src/common/llamafile-language-model.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAwB,oBAAoB,EAAE,qBAAqB,EAAmC,MAAM,gBAAgB,CAAC;AACnJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAShD,qBAAa,sBAAuB,YAAW,aAAa;aAWpC,IAAI,EAAE,MAAM;aACZ,GAAG,EAAE,MAAM;aACX,IAAI,EAAE,MAAM;IAXhC,QAAQ,CAAC,UAAU,eAAe;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAa;IAEpC;;;;OAIG;gBAEiB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM;IAGhC,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUvE,OAAO,CAAC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CA6EtH"}
@@ -16,18 +16,23 @@
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.LlamafileLanguageModel = void 0;
19
+ const ai_core_1 = require("@theia/ai-core");
20
+ const createMessageContent = (message) => {
21
+ if (ai_core_1.LanguageModelMessage.isTextMessage(message)) {
22
+ return message.text;
23
+ }
24
+ return undefined;
25
+ };
19
26
  class LlamafileLanguageModel {
20
27
  /**
21
28
  * @param name the unique name for this language model. It will be used to identify the model in the UI.
22
29
  * @param uri the URI pointing to the Llamafile model location.
23
30
  * @param port the port on which the Llamafile model server operates.
24
- * @param defaultRequestSettings optional default settings for requests made using this model.
25
31
  */
26
- constructor(name, uri, port, defaultRequestSettings) {
32
+ constructor(name, uri, port) {
27
33
  this.name = name;
28
34
  this.uri = uri;
29
35
  this.port = port;
30
- this.defaultRequestSettings = defaultRequestSettings;
31
36
  this.providerId = 'llamafile';
32
37
  this.vendor = 'Mozilla';
33
38
  }
@@ -35,30 +40,32 @@ class LlamafileLanguageModel {
35
40
  return this.name;
36
41
  }
37
42
  getSettings(request) {
38
- const settings = request.settings ? request.settings : this.defaultRequestSettings;
39
- if (!settings) {
40
- return {
41
- n_predict: 200,
42
- stream: true,
43
- stop: ['</s>', 'Llama:', 'User:', '<|eot_id|>'],
44
- cache_prompt: true,
45
- };
46
- }
47
- return settings;
43
+ var _a;
44
+ return {
45
+ n_predict: 200,
46
+ stream: true,
47
+ stop: ['</s>', 'Llama:', 'User:', '<|eot_id|>'],
48
+ cache_prompt: true,
49
+ ...((_a = request.settings) !== null && _a !== void 0 ? _a : {})
50
+ };
48
51
  }
49
52
  async request(request, cancellationToken) {
50
53
  const settings = this.getSettings(request);
51
54
  try {
52
55
  let prompt = request.messages.map(message => {
56
+ const content = createMessageContent(message);
57
+ if (content === undefined) {
58
+ return undefined;
59
+ }
53
60
  switch (message.actor) {
54
61
  case 'user':
55
- return `User: ${message.query}`;
62
+ return `User: ${content}`;
56
63
  case 'ai':
57
- return `Llama: ${message.query}`;
64
+ return `Llama: ${content}`;
58
65
  case 'system':
59
- return `${message.query.replace(/\n\n/g, '\n')}`;
66
+ return `${content.replace(/\n\n/g, '\n')}`;
60
67
  }
61
- }).join('\n');
68
+ }).filter(m => m !== undefined).join('\n');
62
69
  prompt += '\nLlama:';
63
70
  const response = await fetch(`http://localhost:${this.port}/completion`, {
64
71
  method: 'POST',
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-language-model.js","sourceRoot":"","sources":["../../src/common/llamafile-language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llamafile-language-model.js","sourceRoot":"","sources":["../../src/common/llamafile-language-model.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,6 @@ export interface LlamafileModelDescription {
4
4
  name: string;
5
5
  uri: string;
6
6
  port: number;
7
- /**
8
- * Default request settings for the Llama model.
9
- */
10
- defaultRequestSettings?: {
11
- [key: string]: unknown;
12
- };
13
7
  }
14
8
  export interface LlamafileManager {
15
9
  startServer(name: string): Promise<void>;
@@ -18,9 +12,6 @@ export interface LlamafileManager {
18
12
  setClient(client: LlamafileServerManagerClient): void;
19
13
  addLanguageModels(llamaFiles: LlamafileModelDescription[]): Promise<void>;
20
14
  removeLanguageModels(modelIds: string[]): void;
21
- updateRequestSettings(modelId: string, requestSettings?: {
22
- [key: string]: unknown;
23
- }): void;
24
15
  }
25
16
  export interface LlamafileServerManagerClient {
26
17
  log(llamafileName: string, message: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-manager.d.ts","sourceRoot":"","sources":["../../src/common/llamafile-manager.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAE3D,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AAEjE,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,sBAAsB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACvD;AAED,MAAM,WAAW,gBAAgB;IAC7B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACtD,iBAAiB,CAAC,UAAU,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/C,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;CAC9F;AACD,MAAM,WAAW,4BAA4B;IACzC,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACvD"}
1
+ {"version":3,"file":"llamafile-manager.d.ts","sourceRoot":"","sources":["../../src/common/llamafile-manager.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAE3D,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AAEjE,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC7B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACtD,iBAAiB,CAAC,UAAU,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAClD;AACD,MAAM,WAAW,4BAA4B;IACzC,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACvD"}
@@ -5,9 +5,6 @@ export declare class LlamafileManagerImpl implements LlamafileManager {
5
5
  private processMap;
6
6
  private client;
7
7
  addLanguageModels(LlamafileModelDescriptions: LlamafileModelDescription[]): Promise<void>;
8
- updateRequestSettings(modelId: string, requestSettings?: {
9
- [key: string]: unknown;
10
- }): Promise<void>;
11
8
  removeLanguageModels(modelIds: string[]): void;
12
9
  getStartedLlamafiles(): Promise<string[]>;
13
10
  startServer(name: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/llamafile-manager-impl.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAMvD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAExH,qBACa,oBAAqB,YAAW,gBAAgB;IAGzD,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAEvD,OAAO,CAAC,UAAU,CAA0D;IAC5E,OAAO,CAAC,MAAM,CAA+B;IAEvC,iBAAiB,CAAC,0BAA0B,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBzF,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1G,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAKxC,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC9C,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ9B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI;CAIxD"}
1
+ {"version":3,"file":"llamafile-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/llamafile-manager-impl.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAMvD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAExH,qBACa,oBAAqB,YAAW,gBAAgB;IAGzD,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAEvD,OAAO,CAAC,UAAU,CAA0D;IAC5E,OAAO,CAAC,MAAM,CAA+B;IAEvC,iBAAiB,CAAC,0BAA0B,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/F,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAKxC,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC9C,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ9B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI;CAIxD"}
@@ -42,23 +42,11 @@ let LlamafileManagerImpl = class LlamafileManagerImpl {
42
42
  }
43
43
  else {
44
44
  this.languageModelRegistry.addLanguageModels([
45
- new llamafile_language_model_1.LlamafileLanguageModel(llamafile.name, llamafile.uri, llamafile.port, llamafile.defaultRequestSettings)
45
+ new llamafile_language_model_1.LlamafileLanguageModel(llamafile.name, llamafile.uri, llamafile.port)
46
46
  ]);
47
47
  }
48
48
  }
49
49
  }
50
- async updateRequestSettings(modelId, requestSettings) {
51
- const model = await this.languageModelRegistry.getLanguageModel(modelId);
52
- if (model) {
53
- if (!(model instanceof llamafile_language_model_1.LlamafileLanguageModel)) {
54
- console.warn(`Llamafile: model ${model.id} is not a Llamafile model`);
55
- return;
56
- }
57
- else {
58
- model.defaultRequestSettings = requestSettings;
59
- }
60
- }
61
- }
62
50
  removeLanguageModels(modelIds) {
63
51
  modelIds.filter(modelId => this.isStarted(modelId)).forEach(modelId => this.stopServer(modelId));
64
52
  this.languageModelRegistry.removeLanguageModels(modelIds);
@@ -1 +1 @@
1
- {"version":3,"file":"llamafile-manager-impl.js","sourceRoot":"","sources":["../../src/node/llamafile-manager-impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llamafile-manager-impl.js","sourceRoot":"","sources":["../../src/node/llamafile-manager-impl.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@theia/ai-llamafile",
3
- "version": "1.60.0-next.47+9332521b9",
3
+ "version": "1.60.1",
4
4
  "description": "Theia - Llamafile Integration",
5
5
  "dependencies": {
6
- "@theia/ai-core": "1.60.0-next.47+9332521b9",
7
- "@theia/core": "1.60.0-next.47+9332521b9",
8
- "@theia/output": "1.60.0-next.47+9332521b9",
6
+ "@theia/ai-core": "1.60.1",
7
+ "@theia/core": "1.60.1",
8
+ "@theia/output": "1.60.1",
9
9
  "tslib": "^2.6.2"
10
10
  },
11
11
  "publishConfig": {
@@ -42,10 +42,10 @@
42
42
  "watch": "theiaext watch"
43
43
  },
44
44
  "devDependencies": {
45
- "@theia/ext-scripts": "1.59.0"
45
+ "@theia/ext-scripts": "1.60.1"
46
46
  },
47
47
  "nyc": {
48
48
  "extends": "../../configs/nyc.json"
49
49
  },
50
- "gitHead": "9332521b9aa74bf534d45968905d37e30a13c3b5"
50
+ "gitHead": "23230a4ff18bb6b4c09e08c1a40ae1ebdb20ff69"
51
51
  }
@@ -18,9 +18,7 @@ import { FrontendApplicationContribution, PreferenceService } from '@theia/core/
18
18
  import { inject, injectable } from '@theia/core/shared/inversify';
19
19
  import { LlamafileManager, LlamafileModelDescription } from '../common/llamafile-manager';
20
20
  import { PREFERENCE_LLAMAFILE } from './llamafile-preferences';
21
- import { PREFERENCE_NAME_REQUEST_SETTINGS, RequestSetting } from '@theia/ai-core/lib/browser/ai-core-preferences';
22
21
 
23
- const LLAMAFILE_PROVIDER_ID = 'llamafile';
24
22
  @injectable()
25
23
  export class LlamafileFrontendApplicationContribution implements FrontendApplicationContribution {
26
24
 
@@ -46,31 +44,17 @@ export class LlamafileFrontendApplicationContribution implements FrontendApplica
46
44
  if (event.preferenceName === PREFERENCE_LLAMAFILE) {
47
45
  const newModels = event.newValue.filter((llamafileEntry: unknown) => LlamafileEntry.is(llamafileEntry)) as LlamafileEntry[];
48
46
  this.handleLlamaFilePreferenceChange(newModels);
49
- } else if (event.preferenceName === PREFERENCE_NAME_REQUEST_SETTINGS) {
50
- this.handleRequestSettingsChange(event.newValue as RequestSetting[]);
51
47
  }
52
48
  });
53
49
  });
54
50
  }
55
51
 
56
52
  protected getLLamaFileModelDescriptions(llamafiles: LlamafileEntry[]): LlamafileModelDescription[] {
57
- const requestSettings = this.preferenceService.get<RequestSetting[]>(PREFERENCE_NAME_REQUEST_SETTINGS, []);
58
- return llamafiles.map(llamafile => {
59
- const matchingSettings = requestSettings.filter(
60
- setting =>
61
- (!setting.providerId || setting.providerId === LLAMAFILE_PROVIDER_ID) &&
62
- setting.modelId === llamafile.name
63
- );
64
- if (matchingSettings.length > 1) {
65
- console.warn(`Multiple entries found for model "${llamafile.name}". Using the first match.`);
66
- }
67
- return {
68
- name: llamafile.name,
69
- uri: llamafile.uri,
70
- port: llamafile.port,
71
- defaultRequestSettings: matchingSettings[0]?.requestSettings
72
- };
73
- });
53
+ return llamafiles.map(llamafile => ({
54
+ name: llamafile.name,
55
+ uri: llamafile.uri,
56
+ port: llamafile.port
57
+ }));
74
58
  }
75
59
 
76
60
  protected handleLlamaFilePreferenceChange(newModels: LlamafileEntry[]): void {
@@ -88,14 +72,6 @@ export class LlamafileFrontendApplicationContribution implements FrontendApplica
88
72
  this.llamafileManager.addLanguageModels(this.getLLamaFileModelDescriptions(llamafilesToAdd));
89
73
  llamafilesToAdd.forEach(model => this._knownLlamaFiles.set(model.name, model));
90
74
  }
91
-
92
- protected handleRequestSettingsChange(newSettings: RequestSetting[]): void {
93
- const llamafiles = Array.from(this._knownLlamaFiles.values());
94
- const llamafileModelDescriptions = this.getLLamaFileModelDescriptions(llamafiles);
95
- llamafileModelDescriptions.forEach(llamafileModelDescription => {
96
- this.llamafileManager.updateRequestSettings(llamafileModelDescription.name, llamafileModelDescription.defaultRequestSettings);
97
- });
98
- }
99
75
  }
100
76
 
101
77
  export interface LlamafileEntry {
@@ -14,8 +14,16 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { LanguageModel, LanguageModelRequest, LanguageModelResponse, LanguageModelStreamResponsePart } from '@theia/ai-core';
17
+ import { LanguageModel, LanguageModelMessage, LanguageModelRequest, LanguageModelResponse, LanguageModelStreamResponsePart } from '@theia/ai-core';
18
18
  import { CancellationToken } from '@theia/core';
19
+
20
+ const createMessageContent = (message: LanguageModelMessage): string | undefined => {
21
+ if (LanguageModelMessage.isTextMessage(message)) {
22
+ return message.text;
23
+ }
24
+ return undefined;
25
+ };
26
+
19
27
  export class LlamafileLanguageModel implements LanguageModel {
20
28
 
21
29
  readonly providerId = 'llamafile';
@@ -25,44 +33,43 @@ export class LlamafileLanguageModel implements LanguageModel {
25
33
  * @param name the unique name for this language model. It will be used to identify the model in the UI.
26
34
  * @param uri the URI pointing to the Llamafile model location.
27
35
  * @param port the port on which the Llamafile model server operates.
28
- * @param defaultRequestSettings optional default settings for requests made using this model.
29
36
  */
30
37
  constructor(
31
38
  public readonly name: string,
32
39
  public readonly uri: string,
33
40
  public readonly port: number,
34
- public defaultRequestSettings?: { [key: string]: unknown }
35
41
  ) { }
36
42
 
37
43
  get id(): string {
38
44
  return this.name;
39
45
  }
40
46
  protected getSettings(request: LanguageModelRequest): Record<string, unknown> {
41
- const settings = request.settings ? request.settings : this.defaultRequestSettings;
42
- if (!settings) {
43
- return {
44
- n_predict: 200,
45
- stream: true,
46
- stop: ['</s>', 'Llama:', 'User:', '<|eot_id|>'],
47
- cache_prompt: true,
48
- };
49
- }
50
- return settings;
47
+ return {
48
+ n_predict: 200,
49
+ stream: true,
50
+ stop: ['</s>', 'Llama:', 'User:', '<|eot_id|>'],
51
+ cache_prompt: true,
52
+ ...(request.settings ?? {})
53
+ };
51
54
  }
52
55
 
53
56
  async request(request: LanguageModelRequest, cancellationToken?: CancellationToken): Promise<LanguageModelResponse> {
54
57
  const settings = this.getSettings(request);
55
58
  try {
56
59
  let prompt = request.messages.map(message => {
60
+ const content = createMessageContent(message);
61
+ if (content === undefined) {
62
+ return undefined;
63
+ }
57
64
  switch (message.actor) {
58
65
  case 'user':
59
- return `User: ${message.query}`;
66
+ return `User: ${content}`;
60
67
  case 'ai':
61
- return `Llama: ${message.query}`;
68
+ return `Llama: ${content}`;
62
69
  case 'system':
63
- return `${message.query.replace(/\n\n/g, '\n')}`;
70
+ return `${content.replace(/\n\n/g, '\n')}`;
64
71
  }
65
- }).join('\n');
72
+ }).filter(m => m !== undefined).join('\n');
66
73
  prompt += '\nLlama:';
67
74
  const response = await fetch(`http://localhost:${this.port}/completion`, {
68
75
  method: 'POST',
@@ -21,10 +21,6 @@ export interface LlamafileModelDescription {
21
21
  name: string;
22
22
  uri: string;
23
23
  port: number;
24
- /**
25
- * Default request settings for the Llama model.
26
- */
27
- defaultRequestSettings?: { [key: string]: unknown };
28
24
  }
29
25
 
30
26
  export interface LlamafileManager {
@@ -34,7 +30,6 @@ export interface LlamafileManager {
34
30
  setClient(client: LlamafileServerManagerClient): void;
35
31
  addLanguageModels(llamaFiles: LlamafileModelDescription[]): Promise<void>;
36
32
  removeLanguageModels(modelIds: string[]): void;
37
- updateRequestSettings(modelId: string, requestSettings?: { [key: string]: unknown }): void;
38
33
  }
39
34
  export interface LlamafileServerManagerClient {
40
35
  log(llamafileName: string, message: string): void;
@@ -46,26 +46,13 @@ export class LlamafileManagerImpl implements LlamafileManager {
46
46
  new LlamafileLanguageModel(
47
47
  llamafile.name,
48
48
  llamafile.uri,
49
- llamafile.port,
50
- llamafile.defaultRequestSettings
49
+ llamafile.port
51
50
  )
52
51
  ]);
53
52
  }
54
53
  }
55
54
  }
56
55
 
57
- async updateRequestSettings(modelId: string, requestSettings?: { [key: string]: unknown; }): Promise<void> {
58
- const model = await this.languageModelRegistry.getLanguageModel(modelId);
59
- if (model) {
60
- if (!(model instanceof LlamafileLanguageModel)) {
61
- console.warn(`Llamafile: model ${model.id} is not a Llamafile model`);
62
- return;
63
- } else {
64
- model.defaultRequestSettings = requestSettings;
65
- }
66
- }
67
- }
68
-
69
56
  removeLanguageModels(modelIds: string[]): void {
70
57
  modelIds.filter(modelId => this.isStarted(modelId)).forEach(modelId => this.stopServer(modelId));
71
58
  this.languageModelRegistry.removeLanguageModels(modelIds);