node-llama-cpp 3.0.3 → 3.1.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.
Files changed (79) hide show
  1. package/dist/bindings/Llama.d.ts +3 -0
  2. package/dist/bindings/Llama.js +7 -0
  3. package/dist/bindings/Llama.js.map +1 -1
  4. package/dist/chatWrappers/Llama3_1ChatWrapper.d.ts +1 -1
  5. package/dist/chatWrappers/Llama3_1ChatWrapper.js +2 -1
  6. package/dist/chatWrappers/Llama3_1ChatWrapper.js.map +1 -1
  7. package/dist/cli/commands/ChatCommand.js +2 -2
  8. package/dist/cli/commands/ChatCommand.js.map +1 -1
  9. package/dist/cli/commands/CompleteCommand.js +2 -2
  10. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  11. package/dist/cli/commands/InfillCommand.js +2 -2
  12. package/dist/cli/commands/InfillCommand.js.map +1 -1
  13. package/dist/cli/commands/InitCommand.js +36 -20
  14. package/dist/cli/commands/InitCommand.js.map +1 -1
  15. package/dist/cli/commands/PullCommand.js +10 -11
  16. package/dist/cli/commands/PullCommand.js.map +1 -1
  17. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js +13 -16
  18. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js.map +1 -1
  19. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +18 -19
  20. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
  21. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +2 -2
  22. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
  23. package/dist/cli/recommendedModels.js +102 -403
  24. package/dist/cli/recommendedModels.js.map +1 -1
  25. package/dist/cli/utils/interactivelyAskForModel.js +49 -36
  26. package/dist/cli/utils/interactivelyAskForModel.js.map +1 -1
  27. package/dist/cli/utils/printModelDestination.d.ts +2 -0
  28. package/dist/cli/utils/printModelDestination.js +11 -0
  29. package/dist/cli/utils/printModelDestination.js.map +1 -0
  30. package/dist/cli/utils/projectTemplates.d.ts +2 -2
  31. package/dist/cli/utils/projectTemplates.js +2 -2
  32. package/dist/cli/utils/projectTemplates.js.map +1 -1
  33. package/dist/cli/utils/resolveCommandGgufPath.js +12 -14
  34. package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
  35. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +2 -7
  36. package/dist/cli/utils/resolveModelRecommendationFileOptions.js +7 -2
  37. package/dist/cli/utils/resolveModelRecommendationFileOptions.js.map +1 -1
  38. package/dist/gguf/consts.js +1 -1
  39. package/dist/gguf/consts.js.map +1 -1
  40. package/dist/gguf/insights/GgufInsightsConfigurationResolver.d.ts +7 -2
  41. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js +7 -3
  42. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js.map +1 -1
  43. package/dist/gguf/readGgufFileInfo.d.ts +2 -2
  44. package/dist/gguf/readGgufFileInfo.js +12 -10
  45. package/dist/gguf/readGgufFileInfo.js.map +1 -1
  46. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +1 -1
  47. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -1
  48. package/dist/gguf/utils/resolveSplitGgufParts.d.ts +1 -1
  49. package/dist/gguf/utils/resolveSplitGgufParts.js +15 -6
  50. package/dist/gguf/utils/resolveSplitGgufParts.js.map +1 -1
  51. package/dist/index.d.ts +3 -1
  52. package/dist/index.js +2 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/tsconfig.tsbuildinfo +1 -1
  55. package/dist/utils/createModelDownloader.d.ts +45 -8
  56. package/dist/utils/createModelDownloader.js +43 -13
  57. package/dist/utils/createModelDownloader.js.map +1 -1
  58. package/dist/utils/getLlamaClasses.d.ts +9 -0
  59. package/dist/utils/getLlamaClasses.js +14 -0
  60. package/dist/utils/getLlamaClasses.js.map +1 -0
  61. package/dist/utils/isUrl.js +1 -1
  62. package/dist/utils/isUrl.js.map +1 -1
  63. package/dist/utils/modelFileAccesTokens.js +2 -1
  64. package/dist/utils/modelFileAccesTokens.js.map +1 -1
  65. package/dist/utils/parseModelUri.d.ts +9 -0
  66. package/dist/utils/parseModelUri.js +128 -0
  67. package/dist/utils/parseModelUri.js.map +1 -0
  68. package/dist/utils/resolveModelDestination.d.ts +14 -0
  69. package/dist/utils/resolveModelDestination.js +31 -0
  70. package/dist/utils/resolveModelDestination.js.map +1 -0
  71. package/dist/utils/resolveModelFile.d.ts +136 -0
  72. package/dist/utils/resolveModelFile.js +148 -0
  73. package/dist/utils/resolveModelFile.js.map +1 -0
  74. package/llama/binariesGithubRelease.json +1 -1
  75. package/llama/gitRelease.bundle +0 -0
  76. package/llama/llama.cpp.info.json +1 -1
  77. package/package.json +12 -12
  78. package/templates/packed/electron-typescript-react.json +1 -1
  79. package/templates/packed/node-typescript.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"recommendedModels.js","sourceRoot":"","sources":["../../src/cli/recommendedModels.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recommendedModels.js","sourceRoot":"","sources":["../../src/cli/recommendedModels.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { GgufInsights } from "../../gguf/insights/GgufInsights.js";
13
13
  import { readGgufFileInfo } from "../../gguf/readGgufFileInfo.js";
14
14
  import { getPrettyBuildGpuName } from "../../bindings/consts.js";
15
15
  import { isUrl } from "../../utils/isUrl.js";
16
+ import { isModelUri, parseModelUri } from "../../utils/parseModelUri.js";
16
17
  import { resolveModelRecommendationFileOptions } from "./resolveModelRecommendationFileOptions.js";
17
18
  import { getReadablePath } from "./getReadablePath.js";
18
19
  import { basicChooseFromListConsoleInteraction } from "./basicChooseFromListConsoleInteraction.js";
@@ -94,12 +95,12 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
94
95
  // if this file gets very big, we don't want to load it on every CLI usage
95
96
  const { recommendedModels } = await import("../recommendedModels.js");
96
97
  for (const recommendedModel of recommendedModels) {
97
- const potentialUrls = resolveModelRecommendationFileOptions(recommendedModel);
98
- if (potentialUrls.length > 0)
98
+ const potentialUris = resolveModelRecommendationFileOptions(recommendedModel);
99
+ if (potentialUris.length > 0)
99
100
  recommendedModelOptions.push({
100
101
  type: "recommendedModel",
101
102
  title: recommendedModel.name,
102
- potentialUrls,
103
+ potentialUris,
103
104
  description: recommendedModel.description
104
105
  });
105
106
  }
@@ -112,8 +113,8 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
112
113
  {
113
114
  type: "action",
114
115
  text: allowLocalModels
115
- ? "Enter a model URL or file path..."
116
- : "Enter a model URL...",
116
+ ? "Enter a model URI or file path..."
117
+ : "Enter a model URI...",
117
118
  key: "getPath"
118
119
  },
119
120
  ...((localModelFileOptions.length === 0 || modelsDirectory == null)
@@ -195,7 +196,7 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
195
196
  " ".repeat(leftPad) + chalk.bold.gray("Model description") + "\n" +
196
197
  lines.map((line) => (" ".repeat(leftPad) + line))
197
198
  .join("\n") + "\n" +
198
- splitAnsiToLines(renderRecommendedModelTechnicalInfo(item.selectedUrl, maxWidth, canUseGpu), maxWidth)
199
+ splitAnsiToLines(renderRecommendedModelTechnicalInfo(item.selectedUri, maxWidth, canUseGpu), maxWidth)
199
200
  .map((line) => (" ".repeat(leftPad) + line))
200
201
  .join("\n");
201
202
  },
@@ -208,7 +209,7 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
208
209
  },
209
210
  canSelectItem(item) {
210
211
  if (item.type === "recommendedModel")
211
- return item.selectedUrl != null;
212
+ return item.selectedUri != null;
212
213
  return item.type === "localModel" || item.type === "action";
213
214
  },
214
215
  initialFocusIndex: Math.min(initialFocusIndex, options.length - 1),
@@ -238,15 +239,15 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
238
239
  continue;
239
240
  else if (selectedItem.type === "localModel")
240
241
  return selectedItem.path;
241
- else if (selectedItem.type === "recommendedModel" && selectedItem.selectedUrl != null)
242
- return selectedItem.selectedUrl.url;
242
+ else if (selectedItem.type === "recommendedModel" && selectedItem.selectedUri != null)
243
+ return selectedItem.selectedUri.uri;
243
244
  else if (selectedItem.type === "action") {
244
245
  if (selectedItem.key === "getPath") {
245
246
  initialFocusIndex = 0;
246
- const selectedModelUrlOrPath = await askForModelUrlOrPath(allowLocalModels);
247
- if (selectedModelUrlOrPath == null)
247
+ const selectedModelUriOrPath = await askForModelUriOrPath(allowLocalModels);
248
+ if (selectedModelUriOrPath == null)
248
249
  continue;
249
- return selectedModelUrlOrPath;
250
+ return selectedModelUriOrPath;
250
251
  }
251
252
  }
252
253
  }
@@ -255,10 +256,10 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
255
256
  activeInteractionController.abort();
256
257
  }
257
258
  }
258
- async function askForModelUrlOrPath(allowLocalModels) {
259
+ async function askForModelUriOrPath(allowLocalModels) {
259
260
  return await consolePromptQuestion(allowLocalModels
260
- ? chalk.bold("Enter a model URL or file path: ")
261
- : chalk.bold("Enter a model URL: "), {
261
+ ? chalk.bold("Enter a model URI or file path: ")
262
+ : chalk.bold("Enter a model URI: "), {
262
263
  exitOnCtrlC: false,
263
264
  async validate(input) {
264
265
  if (isUrl(input, false)) {
@@ -270,8 +271,17 @@ async function askForModelUrlOrPath(allowLocalModels) {
270
271
  }
271
272
  return null;
272
273
  }
273
- else if (!allowLocalModels)
274
- return "Only URLs are allowed";
274
+ try {
275
+ if (parseModelUri(input) != null)
276
+ return null;
277
+ }
278
+ catch (err) {
279
+ return err instanceof Error
280
+ ? (err?.message || "Invalid model URI")
281
+ : "Invalid model URI";
282
+ }
283
+ if (!allowLocalModels)
284
+ return "Only URIs are allowed";
275
285
  try {
276
286
  if (await fs.pathExists(input))
277
287
  return null;
@@ -286,6 +296,9 @@ async function askForModelUrlOrPath(allowLocalModels) {
286
296
  return "";
287
297
  if (isUrl(item, false))
288
298
  return logSymbols.success + " Entered model URL " + chalk.blue(item);
299
+ else if (isModelUri(item)) {
300
+ return logSymbols.success + " Entered model URI " + chalk.blue(item);
301
+ }
289
302
  else
290
303
  return logSymbols.success + " Entered model path " + chalk.blue(item);
291
304
  }
@@ -306,9 +319,9 @@ function renderSelectionItem(item, focused, rerender, abortSignal, llama, flashA
306
319
  let modelText = item.title instanceof Function
307
320
  ? item.title()
308
321
  : item.title;
309
- if (item.selectedUrl == null) {
310
- if (item.urlSelectionLoadingState == null) {
311
- item.urlSelectionLoadingState = "loading";
322
+ if (item.selectedUri == null) {
323
+ if (item.uriSelectionLoadingState == null) {
324
+ item.uriSelectionLoadingState = "loading";
312
325
  void selectFileForModelRecommendation({
313
326
  recommendedModelOption: item,
314
327
  abortSignal,
@@ -317,15 +330,15 @@ function renderSelectionItem(item, focused, rerender, abortSignal, llama, flashA
317
330
  flashAttention
318
331
  });
319
332
  }
320
- if (item.urlSelectionLoadingState === "loading")
333
+ if (item.uriSelectionLoadingState === "loading")
321
334
  modelText += " " + chalk.bgGray.yellow(" Loading info ");
322
- else if (item.urlSelectionLoadingState === "done")
335
+ else if (item.uriSelectionLoadingState === "done")
323
336
  modelText += " " + chalk.bgGray.yellow(" Failed to load info ");
324
337
  else
325
- void item.urlSelectionLoadingState;
338
+ void item.uriSelectionLoadingState;
326
339
  }
327
340
  else
328
- modelText += " " + renderModelCompatibility(item.selectedUrl.ggufInsights, item.selectedUrl.compatibilityScore.compatibilityScore, item.selectedUrl.compatibilityScore.resolvedValues.contextSize);
341
+ modelText += " " + renderModelCompatibility(item.selectedUri.ggufInsights, item.selectedUri.compatibilityScore.compatibilityScore, item.selectedUri.compatibilityScore.resolvedValues.contextSize);
329
342
  return renderSelectableItem(modelText, focused);
330
343
  }
331
344
  else if (item.type === "separator") {
@@ -359,11 +372,11 @@ function renderModelCompatibility(ggufInsights, compatibilityScore, compatibilit
359
372
  .map((item) => chalk.bgGray(" " + item + " "))
360
373
  .join(" ");
361
374
  }
362
- function renderRecommendedModelTechnicalInfo(modelSelectedUrl, maxWidth, canUseGpu) {
363
- if (modelSelectedUrl == null)
375
+ function renderRecommendedModelTechnicalInfo(modelSelectedUri, maxWidth, canUseGpu) {
376
+ if (modelSelectedUri == null)
364
377
  return " \n" + chalk.bgGray.yellow(" Loading info ") + "\n ";
365
- const ggufInsights = modelSelectedUrl.ggufInsights;
366
- const compatibilityScore = modelSelectedUrl.compatibilityScore;
378
+ const ggufInsights = modelSelectedUri.ggufInsights;
379
+ const compatibilityScore = modelSelectedUri.compatibilityScore;
367
380
  const longestTitle = Math.max("Model info".length, "Resolved config".length) + 1;
368
381
  return " \n" + [
369
382
  renderInfoLine({
@@ -408,12 +421,12 @@ function renderRecommendedModelTechnicalInfo(modelSelectedUrl, maxWidth, canUseG
408
421
  async function selectFileForModelRecommendation({ recommendedModelOption, llama, abortSignal, rerenderOption, flashAttention }) {
409
422
  try {
410
423
  let bestScore = undefined;
411
- let bestScoreSelectedUrl = undefined;
412
- for (const potentialUrl of recommendedModelOption.potentialUrls) {
424
+ let bestScoreSelectedUri = undefined;
425
+ for (const potentialUri of recommendedModelOption.potentialUris) {
413
426
  if (abortSignal.aborted)
414
427
  return;
415
428
  try {
416
- const ggufFileInfo = await readGgufFileInfo(potentialUrl, {
429
+ const ggufFileInfo = await readGgufFileInfo(potentialUri, {
417
430
  sourceType: "network",
418
431
  signal: abortSignal
419
432
  });
@@ -425,8 +438,8 @@ async function selectFileForModelRecommendation({ recommendedModelOption, llama,
425
438
  });
426
439
  if (bestScore == null || compatibilityScore.compatibilityScore > bestScore) {
427
440
  bestScore = compatibilityScore.compatibilityScore;
428
- bestScoreSelectedUrl = {
429
- url: potentialUrl,
441
+ bestScoreSelectedUri = {
442
+ uri: potentialUri,
430
443
  ggufInsights,
431
444
  compatibilityScore
432
445
  };
@@ -438,12 +451,12 @@ async function selectFileForModelRecommendation({ recommendedModelOption, llama,
438
451
  // do nothing
439
452
  }
440
453
  }
441
- recommendedModelOption.selectedUrl = bestScoreSelectedUrl;
442
- recommendedModelOption.urlSelectionLoadingState = "done";
454
+ recommendedModelOption.selectedUri = bestScoreSelectedUri;
455
+ recommendedModelOption.uriSelectionLoadingState = "done";
443
456
  rerenderOption();
444
457
  }
445
458
  catch (err) {
446
- recommendedModelOption.urlSelectionLoadingState = "done";
459
+ recommendedModelOption.uriSelectionLoadingState = "done";
447
460
  rerenderOption();
448
461
  }
449
462
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interactivelyAskForModel.js","sourceRoot":"","sources":["../../../src/cli/utils/interactivelyAskForModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactivelyAskForModel.js","sourceRoot":"","sources":["../../../src/cli/utils/interactivelyAskForModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ResolveModelDestination } from "../../utils/resolveModelDestination.js";
2
+ export declare function printModelDestination(modelDestination: ResolveModelDestination): void;
@@ -0,0 +1,11 @@
1
+ import chalk from "chalk";
2
+ import { getReadablePath } from "./getReadablePath.js";
3
+ export function printModelDestination(modelDestination) {
4
+ if (modelDestination.type === "url")
5
+ console.info(`${chalk.yellow("URL:")} ${modelDestination.url}`);
6
+ else if (modelDestination.type === "uri")
7
+ console.info(`${chalk.yellow("URI:")} ${modelDestination.uri}`);
8
+ else
9
+ console.info(`${chalk.yellow("File:")} ${getReadablePath(modelDestination.path)}`);
10
+ }
11
+ //# sourceMappingURL=printModelDestination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"printModelDestination.js","sourceRoot":"","sources":["../../../src/cli/utils/printModelDestination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAErD,MAAM,UAAU,qBAAqB,CAAC,gBAAyC;IAC3E,IAAI,gBAAgB,CAAC,IAAI,KAAK,KAAK;QAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC;SAC/D,IAAI,gBAAgB,CAAC,IAAI,KAAK,KAAK;QACpC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC;;QAEhE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,eAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3F,CAAC"}
@@ -1,8 +1,8 @@
1
1
  export declare const enum ProjectTemplateParameter {
2
2
  ProjectName = "projectName",
3
3
  CurrentModuleVersion = "currentNodeLlamaCppModuleVersion",
4
- ModelUrl = "modelUrl",
5
- ModelFilename = "modelFilename"
4
+ ModelUriOrUrl = "modelUriOrUrl",
5
+ ModelUriOrFilename = "modelUriOrFilename"
6
6
  }
7
7
  export type PackagedFileEntry = {
8
8
  path: string[];
@@ -4,8 +4,8 @@ export var ProjectTemplateParameter;
4
4
  (function (ProjectTemplateParameter) {
5
5
  ProjectTemplateParameter["ProjectName"] = "projectName";
6
6
  ProjectTemplateParameter["CurrentModuleVersion"] = "currentNodeLlamaCppModuleVersion";
7
- ProjectTemplateParameter["ModelUrl"] = "modelUrl";
8
- ProjectTemplateParameter["ModelFilename"] = "modelFilename";
7
+ ProjectTemplateParameter["ModelUriOrUrl"] = "modelUriOrUrl";
8
+ ProjectTemplateParameter["ModelUriOrFilename"] = "modelUriOrFilename";
9
9
  })(ProjectTemplateParameter || (ProjectTemplateParameter = {}));
10
10
  export function getProjectTemplateParameterText(parameter, escapeText = true) {
11
11
  let escapes = "";
@@ -1 +1 @@
1
- {"version":3,"file":"projectTemplates.js","sourceRoot":"","sources":["../../../src/cli/utils/projectTemplates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectTemplates.js","sourceRoot":"","sources":["../../../src/cli/utils/projectTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,MAAM,CAAN,IAAkB,wBAKjB;AALD,WAAkB,wBAAwB;IACtC,uDAA2B,CAAA;IAC3B,qFAAyD,CAAA;IACzD,2DAA+B,CAAA;IAC/B,qEAAyC,CAAA;AAC7C,CAAC,EALiB,wBAAwB,KAAxB,wBAAwB,QAKzC;AAWD,MAAM,UAAU,+BAA+B,CAAC,SAAmC,EAAE,aAAkC,IAAI;IACvH,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,CAAC;QACvC,OAAO,GAAG,SAAS,CAAC;SACnB,IAAI,UAAU,KAAK,CAAC;QACrB,OAAO,GAAG,gBAAgB,CAAC;IAE/B,OAAO,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC;AAC7C,CAAC;AAED,SAAS,8BAA8B,CAAC,QAAgB,EAAE,UAAoD;IAC1G,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAK,MAAM,CAAC,OAAO,CAAC,UAAU,CAA0C,EAAE,CAAC;QACpG,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7F,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1H,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CACzE,IAAI,CAAC,SAAS,CACV,IAAI,CAAC,SAAS,CACV,MAAM,CAAC,KAAK,CAAC,CAChB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACjB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACjB,CAAC;IACN,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,EAC1C,QAAQ,EAAE,UAAU,EAAE,aAAa,EAKtC;IACG,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,oBAAoB,CAAC;YACrC,OAAO,EAAE,8BAA8B,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC;YACjE,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,UAAU;SACb,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3C,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,EAC1B,OAAO,EAAE,YAAY,EAAE,UAAU,EAGpC;IACG,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAExC,IAAI,UAAU,CAAC,wBAAwB,CAAC,WAAW,CAAC,IAAI,IAAI;YACxD,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAExE,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -1,38 +1,36 @@
1
- import path from "path";
2
1
  import process from "process";
3
2
  import chalk from "chalk";
4
3
  import fs from "fs-extra";
5
4
  import { cliModelsDirectory } from "../../config.js";
6
- import { normalizeGgufDownloadUrl } from "../../gguf/utils/normalizeGgufDownloadUrl.js";
7
- import { isUrl } from "../../utils/isUrl.js";
8
5
  import { createModelDownloader } from "../../utils/createModelDownloader.js";
6
+ import { resolveModelDestination } from "../../utils/resolveModelDestination.js";
9
7
  import { ConsoleInteraction, ConsoleInteractionKey } from "./ConsoleInteraction.js";
10
8
  import { getReadablePath } from "./getReadablePath.js";
11
9
  import { interactivelyAskForModel } from "./interactivelyAskForModel.js";
12
10
  export async function resolveCommandGgufPath(ggufPath, llama, fetchHeaders, { targetDirectory = cliModelsDirectory, flashAttention = false } = {}) {
13
- let resolvedGgufPath = ggufPath;
14
- if (resolvedGgufPath == null)
15
- resolvedGgufPath = await interactivelyAskForModel({
11
+ if (ggufPath == null)
12
+ ggufPath = await interactivelyAskForModel({
16
13
  llama,
17
14
  modelsDirectory: targetDirectory,
18
15
  allowLocalModels: true,
19
16
  downloadIntent: true,
20
17
  flashAttention
21
18
  });
22
- if (!isUrl(resolvedGgufPath)) {
19
+ const resolvedModelDestination = resolveModelDestination(ggufPath);
20
+ if (resolvedModelDestination.type === "file") {
23
21
  try {
24
- const resolvedPath = path.resolve(process.cwd(), resolvedGgufPath);
25
- if (await fs.pathExists(resolvedPath))
26
- return resolvedPath;
22
+ if (await fs.pathExists(resolvedModelDestination.path))
23
+ return resolvedModelDestination.path;
27
24
  }
28
25
  catch (err) {
29
- throw new Error(`Invalid path: ${resolvedGgufPath}`);
26
+ throw new Error(`Invalid path: ${resolvedModelDestination.path}`);
30
27
  }
31
- throw new Error(`File does not exist: ${path.resolve(process.cwd(), resolvedGgufPath)}`);
28
+ throw new Error(`File does not exist: ${resolvedModelDestination.path}`);
32
29
  }
33
- resolvedGgufPath = normalizeGgufDownloadUrl(resolvedGgufPath);
34
30
  const downloader = await createModelDownloader({
35
- modelUrl: resolvedGgufPath,
31
+ modelUri: resolvedModelDestination.type === "uri"
32
+ ? resolvedModelDestination.uri
33
+ : resolvedModelDestination.url,
36
34
  dirPath: targetDirectory,
37
35
  headers: fetchHeaders,
38
36
  showCliProgress: true,
@@ -1 +1 @@
1
- {"version":3,"file":"resolveCommandGgufPath.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveCommandGgufPath.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveCommandGgufPath.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveCommandGgufPath.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export type ModelURI = `${`http://${string}/${string}` | `https://${string}/${string}` | `hf:${string}/${string}/${string}` | `huggingface:${string}/${string}/${string}`}${".gguf" | `.gguf.part${number}of${number}`}`;
1
2
  export type ModelRecommendation = {
2
3
  name: string;
3
4
  abilities: ("code" | "chat" | "complete" | "infill" | "functionCalling")[];
@@ -8,12 +9,6 @@ export type ModelRecommendation = {
8
9
  * will be used (and the rest of the files won't even be tested),
9
10
  * otherwise, the file with the highest compatibility will be used.
10
11
  */
11
- fileOptions: Array<{
12
- huggingFace: {
13
- model: `${string}/${string}`;
14
- branch: string;
15
- file: `${string}.gguf` | `${string}.gguf.part${number}of${number}`;
16
- };
17
- }>;
12
+ fileOptions: ModelURI[];
18
13
  };
19
14
  export declare function resolveModelRecommendationFileOptions(modelRecommendation: ModelRecommendation): string[];
@@ -1,7 +1,12 @@
1
- import { normalizeGgufDownloadUrl } from "../../gguf/utils/normalizeGgufDownloadUrl.js";
1
+ import { resolveModelDestination } from "../../utils/resolveModelDestination.js";
2
2
  export function resolveModelRecommendationFileOptions(modelRecommendation) {
3
3
  return modelRecommendation.fileOptions.map((fileOption) => {
4
- return normalizeGgufDownloadUrl(`https://huggingface.co/${fileOption.huggingFace.model}/resolve/${fileOption.huggingFace.branch}/${fileOption.huggingFace.file}`);
4
+ const resolvedModelDestination = resolveModelDestination(fileOption, true);
5
+ if (resolvedModelDestination.type === "file")
6
+ throw new Error(`File option "${fileOption}" is not a valid model URI`);
7
+ if (resolvedModelDestination.type === "uri")
8
+ return resolvedModelDestination.uri;
9
+ return resolvedModelDestination.url;
5
10
  });
6
11
  }
7
12
  //# sourceMappingURL=resolveModelRecommendationFileOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveModelRecommendationFileOptions.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveModelRecommendationFileOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAC,MAAM,8CAA8C,CAAC;AAsBtF,MAAM,UAAU,qCAAqC,CAAC,mBAAwC;IAC1F,OAAO,mBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACtD,OAAO,wBAAwB,CAC3B,0BAA0B,UAAU,CAAC,WAAW,CAAC,KAAK,YAAY,UAAU,CAAC,WAAW,CAAC,MAAM,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,CACnI,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"resolveModelRecommendationFileOptions.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveModelRecommendationFileOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAAC,MAAM,wCAAwC,CAAC;AAwB/E,MAAM,UAAU,qCAAqC,CAAC,mBAAwC;IAC1F,OAAO,mBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACtD,MAAM,wBAAwB,GAAG,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE3E,IAAI,wBAAwB,CAAC,IAAI,KAAK,MAAM;YACxC,MAAM,IAAI,KAAK,CAAC,gBAAgB,UAAU,4BAA4B,CAAC,CAAC;QAE5E,IAAI,wBAAwB,CAAC,IAAI,KAAK,KAAK;YACvC,OAAO,wBAAwB,CAAC,GAAG,CAAC;QAExC,OAAO,wBAAwB,CAAC,GAAG,CAAC;IACxC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -4,7 +4,7 @@ export const ggufDefaultFetchRetryOptions = {
4
4
  minTimeout: 1000,
5
5
  maxTimeout: 1000 * 16
6
6
  };
7
- export const defaultExtraAllocationSize = 1024 * 1024 * 1.5; // 1.5MB
7
+ export const defaultExtraAllocationSize = 1024 * 1024 * 4; // 4MB
8
8
  export const noDirectSubNestingGGufMetadataKeys = [
9
9
  "general.license",
10
10
  "tokenizer.chat_template"
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/gguf/consts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,4BAA4B,GAAkB;IACvD,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI,GAAG,EAAE;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,QAAQ;AAErE,MAAM,CAAC,MAAM,kCAAkC,GAAsB;IACjE,iBAAiB;IACjB,yBAAyB;CAC5B,CAAC"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/gguf/consts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,4BAA4B,GAAkB;IACvD,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI,GAAG,EAAE;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM;AAEjE,MAAM,CAAC,MAAM,kCAAkC,GAAsB;IACjE,iBAAiB;IACjB,yBAAyB;CAC5B,CAAC"}
@@ -69,15 +69,20 @@ export declare class GgufInsightsConfigurationResolver {
69
69
  * - Whether all layers can be offloaded to the GPU (gives additional points)
70
70
  * - Whether the resolved context size is at least as large as the specified `contextSize`
71
71
  *
72
- * IF the resolved context size is larger than the specified context size, for each multiplier of the specified `contextSize`
72
+ * If the resolved context size is larger than the specified context size, for each multiplier of the specified `contextSize`
73
73
  * that the resolved context size is larger by, 1 bonus point is given in the `bonusScore`.
74
74
  *
75
+ * `maximumFittedContextSizeMultiplier` is used to improve the proportionality of the bonus score between models.
76
+ * Set this to any value higher than `<max compared model context size> / contextSize`.
77
+ * Defaults to `100`.
78
+ *
75
79
  * `contextSize` defaults to `4096` (if the model train context size is lower than this, the model train context size is used instead).
76
80
  */
77
- scoreModelConfigurationCompatibility({ contextSize, embeddingContext, flashAttention }?: {
81
+ scoreModelConfigurationCompatibility({ contextSize, embeddingContext, flashAttention, maximumFittedContextSizeMultiplier }?: {
78
82
  contextSize?: number;
79
83
  embeddingContext?: boolean;
80
84
  flashAttention?: boolean;
85
+ maximumFittedContextSizeMultiplier?: number;
81
86
  }, { getVramState, getRamState, llamaVramPaddingSize, llamaGpu, llamaSupportsGpuOffloading }?: {
82
87
  getVramState?(): Promise<{
83
88
  total: number;
@@ -98,12 +98,16 @@ export class GgufInsightsConfigurationResolver {
98
98
  * - Whether all layers can be offloaded to the GPU (gives additional points)
99
99
  * - Whether the resolved context size is at least as large as the specified `contextSize`
100
100
  *
101
- * IF the resolved context size is larger than the specified context size, for each multiplier of the specified `contextSize`
101
+ * If the resolved context size is larger than the specified context size, for each multiplier of the specified `contextSize`
102
102
  * that the resolved context size is larger by, 1 bonus point is given in the `bonusScore`.
103
103
  *
104
+ * `maximumFittedContextSizeMultiplier` is used to improve the proportionality of the bonus score between models.
105
+ * Set this to any value higher than `<max compared model context size> / contextSize`.
106
+ * Defaults to `100`.
107
+ *
104
108
  * `contextSize` defaults to `4096` (if the model train context size is lower than this, the model train context size is used instead).
105
109
  */
106
- async scoreModelConfigurationCompatibility({ contextSize = Math.min(4096, this._ggufInsights.trainContextSize ?? 4096), embeddingContext = false, flashAttention = false } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => ({ total: os.totalmem(), free: os.freemem() })), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
110
+ async scoreModelConfigurationCompatibility({ contextSize = Math.min(4096, this._ggufInsights.trainContextSize ?? 4096), embeddingContext = false, flashAttention = false, maximumFittedContextSizeMultiplier = 100 } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => ({ total: os.totalmem(), free: os.freemem() })), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
107
111
  const [vramState, ramState] = await Promise.all([
108
112
  getVramState(),
109
113
  getRamState()
@@ -154,7 +158,7 @@ export class GgufInsightsConfigurationResolver {
154
158
  : estimatedModelResourceUsage.cpuRam <= ramState.total
155
159
  ? 0.5
156
160
  : (0.5 - Math.min(0.5, 0.5 * ((estimatedModelResourceUsage.cpuRam - ramState.total) / ramState.total))));
157
- const bonusContextSizePoints = 10 * Math.min(1, Math.max(0, resolvedContextSize - contextSize) / contextSize);
161
+ const bonusContextSizePoints = 10 * Math.min(1, (Math.max(0, resolvedContextSize - contextSize) / contextSize) / maximumFittedContextSizeMultiplier);
158
162
  const compatibilityScore = canUseGpu
159
163
  ? ((gpuLayersPoints + allLayersAreOffloadedPoints + contextSizePoints + ramUsageFitsInRamPoints) /
160
164
  (rankPoints.gpuLayers + rankPoints.allLayersAreOffloaded + rankPoints.contextSize + rankPoints.ramUsageFitsInRam))