node-llama-cpp 3.4.2 → 3.5.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.
Files changed (52) hide show
  1. package/dist/cli/commands/PullCommand.js +2 -1
  2. package/dist/cli/commands/PullCommand.js.map +1 -1
  3. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js +18 -5
  4. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js.map +1 -1
  5. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +16 -5
  6. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
  7. package/dist/cli/recommendedModels.js +61 -61
  8. package/dist/cli/recommendedModels.js.map +1 -1
  9. package/dist/cli/utils/resolveCommandGgufPath.d.ts +8 -0
  10. package/dist/cli/utils/resolveCommandGgufPath.js +45 -1
  11. package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
  12. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +1 -1
  13. package/dist/cli/utils/resolveModelRecommendationFileOptions.js.map +1 -1
  14. package/dist/gguf/readGgufFileInfo.js +7 -4
  15. package/dist/gguf/readGgufFileInfo.js.map +1 -1
  16. package/dist/gguf/types/GgufMetadataTypes.d.ts +2 -2
  17. package/dist/gguf/types/GgufMetadataTypes.js +2 -2
  18. package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
  19. package/dist/gguf/utils/getGgufFileTypeName.d.ts +1 -1
  20. package/dist/gguf/utils/ggufQuantNames.d.ts +2 -0
  21. package/dist/gguf/utils/ggufQuantNames.js +40 -0
  22. package/dist/gguf/utils/ggufQuantNames.js.map +1 -0
  23. package/dist/gguf/utils/normalizeGgufDownloadUrl.js +1 -1
  24. package/dist/gguf/utils/normalizeGgufDownloadUrl.js.map +1 -1
  25. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +1 -2
  26. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -1
  27. package/dist/tsconfig.tsbuildinfo +1 -1
  28. package/dist/utils/createModelDownloader.d.ts +21 -4
  29. package/dist/utils/createModelDownloader.js +83 -36
  30. package/dist/utils/createModelDownloader.js.map +1 -1
  31. package/dist/utils/modelFileAccesTokens.js +1 -1
  32. package/dist/utils/modelFileAccesTokens.js.map +1 -1
  33. package/dist/utils/parseModelFileName.d.ts +5 -0
  34. package/dist/utils/parseModelFileName.js +63 -4
  35. package/dist/utils/parseModelFileName.js.map +1 -1
  36. package/dist/utils/parseModelUri.d.ts +30 -2
  37. package/dist/utils/parseModelUri.js +199 -24
  38. package/dist/utils/parseModelUri.js.map +1 -1
  39. package/dist/utils/resolveModelDestination.d.ts +4 -3
  40. package/dist/utils/resolveModelDestination.js +25 -2
  41. package/dist/utils/resolveModelDestination.js.map +1 -1
  42. package/dist/utils/resolveModelFile.d.ts +1 -1
  43. package/dist/utils/resolveModelFile.js +59 -20
  44. package/dist/utils/resolveModelFile.js.map +1 -1
  45. package/llama/CMakeLists.txt +8 -0
  46. package/llama/addon/AddonGrammar.cpp +2 -2
  47. package/llama/binariesGithubRelease.json +1 -1
  48. package/llama/gitRelease.bundle +0 -0
  49. package/llama/llama.cpp.info.json +1 -1
  50. package/package.json +35 -35
  51. package/templates/packed/electron-typescript-react.json +1 -1
  52. package/templates/packed/node-typescript.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import { isUrl } from "../utils/isUrl.js";
2
- import { isModelUri, parseModelUri } from "../utils/parseModelUri.js";
2
+ import { getAuthorizationHeader, isModelUri, parseModelUri, resolveParsedModelUri } from "../utils/parseModelUri.js";
3
3
  import { parseGguf } from "./parser/parseGguf.js";
4
4
  import { GgufNetworkFetchFileReader } from "./fileReaders/GgufNetworkFetchFileReader.js";
5
5
  import { GgufFsFileReader } from "./fileReaders/GgufFsFileReader.js";
@@ -14,9 +14,12 @@ import { resolveSplitGgufParts } from "./utils/resolveSplitGgufParts.js";
14
14
  */
15
15
  export async function readGgufFileInfo(pathOrUri, { readTensorInfo = true, sourceType, ignoreKeys = [], logWarnings = true, fetchRetryOptions = ggufDefaultFetchRetryOptions, fetchHeaders = {}, spliceSplitFiles = true, signal, tokens } = {}) {
16
16
  const useNetworkReader = sourceType === "network" || (sourceType == null && (isUrl(pathOrUri) || isModelUri(pathOrUri)));
17
- function createFileReader(pathOrUri) {
17
+ async function createFileReader(pathOrUri) {
18
18
  if (useNetworkReader) {
19
- const parsedModelUri = parseModelUri(pathOrUri);
19
+ const parsedModelUri = await resolveParsedModelUri(parseModelUri(pathOrUri), {
20
+ tokens, signal,
21
+ authorizationHeader: getAuthorizationHeader(fetchHeaders)
22
+ });
20
23
  return new GgufNetworkFetchFileReader({
21
24
  url: parsedModelUri?.resolvedUrl ?? normalizeGgufDownloadUrl(pathOrUri),
22
25
  retryOptions: fetchRetryOptions,
@@ -35,7 +38,7 @@ export async function readGgufFileInfo(pathOrUri, { readTensorInfo = true, sourc
35
38
  throw new Error(`Unsupported sourceType: ${sourceType}`);
36
39
  }
37
40
  async function readSingleFile(pathOrUri, splitPartNumber = 1) {
38
- const fileReader = createFileReader(pathOrUri);
41
+ const fileReader = await createFileReader(pathOrUri);
39
42
  const res = await parseGguf({
40
43
  fileReader,
41
44
  ignoreKeys,
@@ -1 +1 @@
1
- {"version":3,"file":"readGgufFileInfo.js","sourceRoot":"","sources":["../../src/gguf/readGgufFileInfo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readGgufFileInfo.js","sourceRoot":"","sources":["../../src/gguf/readGgufFileInfo.ts"],"names":[],"mappings":"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"}
@@ -106,8 +106,8 @@ export declare enum GgufFileType {
106
106
  MOSTLY_Q4_0_4_4 = 33,// deprecated
107
107
  MOSTLY_Q4_0_4_8 = 34,// deprecated
108
108
  MOSTLY_Q4_0_8_8 = 35,// deprecated
109
- LLAMA_FTYPE_MOSTLY_TQ1_0 = 36,// deprecated
110
- LLAMA_FTYPE_MOSTLY_TQ2_0 = 37
109
+ MOSTLY_TQ1_0 = 36,// deprecated
110
+ MOSTLY_TQ2_0 = 37
111
111
  }
112
112
  export type GgufMetadataGeneral<A extends GgufArchitectureType = GgufArchitectureType> = {
113
113
  readonly architecture: A;
@@ -91,8 +91,8 @@ export var GgufFileType;
91
91
  GgufFileType[GgufFileType["MOSTLY_Q4_0_4_4"] = 33] = "MOSTLY_Q4_0_4_4";
92
92
  GgufFileType[GgufFileType["MOSTLY_Q4_0_4_8"] = 34] = "MOSTLY_Q4_0_4_8";
93
93
  GgufFileType[GgufFileType["MOSTLY_Q4_0_8_8"] = 35] = "MOSTLY_Q4_0_8_8";
94
- GgufFileType[GgufFileType["LLAMA_FTYPE_MOSTLY_TQ1_0"] = 36] = "LLAMA_FTYPE_MOSTLY_TQ1_0";
95
- GgufFileType[GgufFileType["LLAMA_FTYPE_MOSTLY_TQ2_0"] = 37] = "LLAMA_FTYPE_MOSTLY_TQ2_0"; // deprecated
94
+ GgufFileType[GgufFileType["MOSTLY_TQ1_0"] = 36] = "MOSTLY_TQ1_0";
95
+ GgufFileType[GgufFileType["MOSTLY_TQ2_0"] = 37] = "MOSTLY_TQ2_0"; // deprecated
96
96
  })(GgufFileType || (GgufFileType = {}));
97
97
  export var GgufMetadataTokenizerTokenType;
98
98
  (function (GgufMetadataTokenizerTokenType) {
@@ -1 +1 @@
1
- {"version":3,"file":"GgufMetadataTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufMetadataTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GgufMetadataTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufMetadataTypes.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * Convert a GGUF file type number to its corresponding type name
3
3
  */
4
- export declare function getGgufFileTypeName(fileType?: number): "ALL_F32" | "MOSTLY_F16" | "MOSTLY_Q4_0" | "MOSTLY_Q4_1" | "MOSTLY_Q4_1_SOME_F16" | "MOSTLY_Q4_2" | "MOSTLY_Q4_3" | "MOSTLY_Q8_0" | "MOSTLY_Q5_0" | "MOSTLY_Q5_1" | "MOSTLY_Q2_K" | "MOSTLY_Q3_K_S" | "MOSTLY_Q3_K_M" | "MOSTLY_Q3_K_L" | "MOSTLY_Q4_K_S" | "MOSTLY_Q4_K_M" | "MOSTLY_Q5_K_S" | "MOSTLY_Q5_K_M" | "MOSTLY_Q6_K" | "MOSTLY_IQ2_XXS" | "MOSTLY_IQ2_XS" | "MOSTLY_Q2_K_S" | "MOSTLY_IQ3_XS" | "MOSTLY_IQ3_XXS" | "MOSTLY_IQ1_S" | "MOSTLY_IQ4_NL" | "MOSTLY_IQ3_S" | "MOSTLY_IQ3_M" | "MOSTLY_IQ2_S" | "MOSTLY_IQ2_M" | "MOSTLY_IQ4_XS" | "MOSTLY_IQ1_M" | "MOSTLY_BF16" | "MOSTLY_Q4_0_4_4" | "MOSTLY_Q4_0_4_8" | "MOSTLY_Q4_0_8_8" | "LLAMA_FTYPE_MOSTLY_TQ1_0" | "LLAMA_FTYPE_MOSTLY_TQ2_0" | undefined;
4
+ export declare function getGgufFileTypeName(fileType?: number): "ALL_F32" | "MOSTLY_F16" | "MOSTLY_Q4_0" | "MOSTLY_Q4_1" | "MOSTLY_Q4_1_SOME_F16" | "MOSTLY_Q4_2" | "MOSTLY_Q4_3" | "MOSTLY_Q8_0" | "MOSTLY_Q5_0" | "MOSTLY_Q5_1" | "MOSTLY_Q2_K" | "MOSTLY_Q3_K_S" | "MOSTLY_Q3_K_M" | "MOSTLY_Q3_K_L" | "MOSTLY_Q4_K_S" | "MOSTLY_Q4_K_M" | "MOSTLY_Q5_K_S" | "MOSTLY_Q5_K_M" | "MOSTLY_Q6_K" | "MOSTLY_IQ2_XXS" | "MOSTLY_IQ2_XS" | "MOSTLY_Q2_K_S" | "MOSTLY_IQ3_XS" | "MOSTLY_IQ3_XXS" | "MOSTLY_IQ1_S" | "MOSTLY_IQ4_NL" | "MOSTLY_IQ3_S" | "MOSTLY_IQ3_M" | "MOSTLY_IQ2_S" | "MOSTLY_IQ2_M" | "MOSTLY_IQ4_XS" | "MOSTLY_IQ1_M" | "MOSTLY_BF16" | "MOSTLY_Q4_0_4_4" | "MOSTLY_Q4_0_4_8" | "MOSTLY_Q4_0_8_8" | "MOSTLY_TQ1_0" | "MOSTLY_TQ2_0" | undefined;
@@ -0,0 +1,2 @@
1
+ import { GgufFileType } from "../types/GgufMetadataTypes.js";
2
+ export declare const ggufQuantNames: Map<string, GgufFileType>;
@@ -0,0 +1,40 @@
1
+ import { GgufFileType } from "../types/GgufMetadataTypes.js";
2
+ export const ggufQuantNames = new Map([
3
+ ["Q4_0", GgufFileType.MOSTLY_Q4_0],
4
+ ["Q4_1", GgufFileType.MOSTLY_Q4_1],
5
+ ["Q5_0", GgufFileType.MOSTLY_Q5_0],
6
+ ["Q5_1", GgufFileType.MOSTLY_Q5_1],
7
+ ["IQ2_XXS", GgufFileType.MOSTLY_IQ2_XXS],
8
+ ["IQ2_XS", GgufFileType.MOSTLY_IQ2_XS],
9
+ ["IQ2_S", GgufFileType.MOSTLY_IQ2_S],
10
+ ["IQ2_M", GgufFileType.MOSTLY_IQ2_M],
11
+ ["IQ1_S", GgufFileType.MOSTLY_IQ1_S],
12
+ ["IQ1_M", GgufFileType.MOSTLY_IQ1_M],
13
+ ["TQ1_0", GgufFileType.MOSTLY_TQ1_0],
14
+ ["TQ2_0", GgufFileType.MOSTLY_TQ2_0],
15
+ ["Q2_K", GgufFileType.MOSTLY_Q2_K],
16
+ ["Q2_K_S", GgufFileType.MOSTLY_Q2_K_S],
17
+ ["IQ3_XXS", GgufFileType.MOSTLY_IQ3_XXS],
18
+ ["IQ3_S", GgufFileType.MOSTLY_IQ3_S],
19
+ ["IQ3_M", GgufFileType.MOSTLY_IQ3_M],
20
+ ["Q3_K", GgufFileType.MOSTLY_Q3_K_M],
21
+ ["IQ3_XS", GgufFileType.MOSTLY_IQ3_XS],
22
+ ["Q3_K_S", GgufFileType.MOSTLY_Q3_K_S],
23
+ ["Q3_K_M", GgufFileType.MOSTLY_Q3_K_M],
24
+ ["Q3_K_L", GgufFileType.MOSTLY_Q3_K_L],
25
+ ["IQ4_NL", GgufFileType.MOSTLY_IQ4_NL],
26
+ ["IQ4_XS", GgufFileType.MOSTLY_IQ4_XS],
27
+ ["Q4_K", GgufFileType.MOSTLY_Q4_K_M],
28
+ ["Q4_K_S", GgufFileType.MOSTLY_Q4_K_S],
29
+ ["Q4_K_M", GgufFileType.MOSTLY_Q4_K_M],
30
+ ["Q5_K", GgufFileType.MOSTLY_Q5_K_M],
31
+ ["Q5_K_S", GgufFileType.MOSTLY_Q5_K_S],
32
+ ["Q5_K_M", GgufFileType.MOSTLY_Q5_K_M],
33
+ ["Q6_K", GgufFileType.MOSTLY_Q6_K],
34
+ ["Q8_0", GgufFileType.MOSTLY_Q8_0],
35
+ ["F16", GgufFileType.MOSTLY_F16],
36
+ ["BF16", GgufFileType.MOSTLY_BF16],
37
+ ["F32", GgufFileType.ALL_F32],
38
+ ["COPY", GgufFileType.ALL_F32]
39
+ ]);
40
+ //# sourceMappingURL=ggufQuantNames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ggufQuantNames.js","sourceRoot":"","sources":["../../../src/gguf/utils/ggufQuantNames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAuB;IACxD,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,SAAS,EAAE,YAAY,CAAC,cAAc,CAAC;IACxC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,SAAS,EAAE,YAAY,CAAC,cAAc,CAAC;IACxC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;IACpC,CAAC,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC;IACtC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC;IAChC,CAAC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;IAClC,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;IAC7B,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC;CACjC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export function normalizeGgufDownloadUrl(url) {
2
2
  const parsedUrl = new URL(url);
3
- if (parsedUrl.hostname === "huggingface.co") {
3
+ if (parsedUrl.hostname === "huggingface.co" || parsedUrl.hostname === "hf.co") {
4
4
  const pathnameParts = parsedUrl.pathname.split("/");
5
5
  if (pathnameParts.length > 3 && pathnameParts[3] === "blob") {
6
6
  const newUrl = new URL(url);
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeGgufDownloadUrl.js","sourceRoot":"","sources":["../../../src/gguf/utils/normalizeGgufDownloadUrl.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAChD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,SAAS,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;YAC7B,MAAM,CAAC,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE1C,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM;gBAC9C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAEhD,OAAO,MAAM,CAAC,IAAI,CAAC;QACvB,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"normalizeGgufDownloadUrl.js","sourceRoot":"","sources":["../../../src/gguf/utils/normalizeGgufDownloadUrl.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAChD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,SAAS,CAAC,QAAQ,KAAK,gBAAgB,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC5E,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;YAC7B,MAAM,CAAC,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE1C,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM;gBAC9C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAEhD,OAAO,MAAM,CAAC,IAAI,CAAC;QACvB,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -16,8 +16,7 @@ export function resolveBinarySplitGgufPartUrls(ggufUrl) {
16
16
  const res = [];
17
17
  for (let i = 1; i <= parts; i++) {
18
18
  const url = new URL(parsedGgufUrl.href);
19
- url.pathname = pathnameWithoutPart + `.part${String(i)
20
- .padStart(partString.length, "0")}of${partsString}`;
19
+ url.pathname = pathnameWithoutPart + `.part${String(i).padStart(partString.length, "0")}of${partsString}`;
21
20
  res.push(url.href);
22
21
  }
23
22
  return res;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveBinarySplitGgufPartUrls.js","sourceRoot":"","sources":["../../../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,MAAM,yBAAyB,GAAG,0CAA0C,CAAC;AAE7E,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAC1D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACjF,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QAElC,IAAI,UAAU,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC;YAC5H,KAAK,KAAK,CAAC;YAEX,OAAO,OAAO,CAAC;QAEnB,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,mBAAmB,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAExF,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACxC,GAAG,CAAC,QAAQ,GAAG,mBAAmB,GAAG,QAAQ,MAAM,CAAC,CAAC,CAAC;iBACjD,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAAW,EAAE,CAAC;YACxD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,IAAc;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QACjB,OAAO,SAAS,CAAC;IAErB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IAEzC,IAAI,yBAAyB,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAEpF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC;QACtE,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"resolveBinarySplitGgufPartUrls.js","sourceRoot":"","sources":["../../../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,MAAM,yBAAyB,GAAG,0CAA0C,CAAC;AAE7E,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAC1D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACjF,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QAElC,IAAI,UAAU,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC;YAC5H,KAAK,KAAK,CAAC;YAEX,OAAO,OAAO,CAAC;QAEnB,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,mBAAmB,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAExF,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACxC,GAAG,CAAC,QAAQ,GAAG,mBAAmB,GAAG,QAAQ,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAAW,EAAE,CAAC;YAC1G,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,IAAc;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QACjB,OAAO,SAAS,CAAC;IAErB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IAEzC,IAAI,yBAAyB,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAEpF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC;QACtE,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -1 +1 @@
1
- {"root":["../src/index.ts","../src/ChatWrapper.ts","../src/apiDocsIndex.ts","../src/commands.ts","../src/config.ts","../src/consts.ts","../src/state.ts","../src/types.ts","../src/bindings/AddonTypes.ts","../src/bindings/Llama.ts","../src/bindings/consts.ts","../src/bindings/getLlama.ts","../src/bindings/types.ts","../src/bindings/utils/MemoryOrchestrator.ts","../src/bindings/utils/NoBinaryFoundError.ts","../src/bindings/utils/asyncEvery.ts","../src/bindings/utils/asyncSome.ts","../src/bindings/utils/binariesGithubRelease.ts","../src/bindings/utils/clearAllLocalBuilds.ts","../src/bindings/utils/cloneLlamaCppRepo.ts","../src/bindings/utils/compileLLamaCpp.ts","../src/bindings/utils/detectAvailableComputeLayers.ts","../src/bindings/utils/detectBuildTools.ts","../src/bindings/utils/detectGlibc.ts","../src/bindings/utils/getBestComputeLayersAvailable.ts","../src/bindings/utils/getBuildFolderNameForBuildOptions.ts","../src/bindings/utils/getCanUsePrebuiltBinaries.ts","../src/bindings/utils/getExampleUsageCodeOfGetLlama.ts","../src/bindings/utils/getGpuTypesToUseForOption.ts","../src/bindings/utils/getLinuxDistroInfo.ts","../src/bindings/utils/getLlamaWithoutBackend.ts","../src/bindings/utils/getPlatform.ts","../src/bindings/utils/getPlatformInfo.ts","../src/bindings/utils/hasBuildingFromSourceDependenciesInstalled.ts","../src/bindings/utils/hasFileInPath.ts","../src/bindings/utils/lastBuildInfo.ts","../src/bindings/utils/logBinaryUsageExampleToConsole.ts","../src/bindings/utils/logDistroInstallInstruction.ts","../src/bindings/utils/resolveActualBindingBinaryPath.ts","../src/bindings/utils/resolveCustomCmakeOptions.ts","../src/bindings/utils/testBindingBinary.ts","../src/bindings/utils/testCmakeBinary.ts","../src/chatWrappers/AlpacaChatWrapper.ts","../src/chatWrappers/ChatMLChatWrapper.ts","../src/chatWrappers/EmptyChatWrapper.ts","../src/chatWrappers/FalconChatWrapper.ts","../src/chatWrappers/FunctionaryChatWrapper.ts","../src/chatWrappers/GemmaChatWrapper.ts","../src/chatWrappers/GeneralChatWrapper.ts","../src/chatWrappers/Llama2ChatWrapper.ts","../src/chatWrappers/Llama3ChatWrapper.ts","../src/chatWrappers/Llama3_1ChatWrapper.ts","../src/chatWrappers/Llama3_2LightweightChatWrapper.ts","../src/chatWrappers/MistralChatWrapper.ts","../src/chatWrappers/generic/JinjaTemplateChatWrapper.ts","../src/chatWrappers/generic/TemplateChatWrapper.ts","../src/chatWrappers/generic/utils/chatHistoryFunctionCallMessageTemplate.ts","../src/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.ts","../src/chatWrappers/utils/chunkChatItems.ts","../src/chatWrappers/utils/getModelLinageNames.ts","../src/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.ts","../src/chatWrappers/utils/isLlama3_2LightweightModel.ts","../src/chatWrappers/utils/jsonDumps.ts","../src/chatWrappers/utils/resolveChatWrapper.ts","../src/cli/cli.ts","../src/cli/projectTemplates.ts","../src/cli/recommendedModels.ts","../src/cli/startCreateCli.ts","../src/cli/commands/ChatCommand.ts","../src/cli/commands/CompleteCommand.ts","../src/cli/commands/DebugCommand.ts","../src/cli/commands/InfillCommand.ts","../src/cli/commands/InitCommand.ts","../src/cli/commands/OnPostInstallCommand.ts","../src/cli/commands/PullCommand.ts","../src/cli/commands/inspect/InspectCommand.ts","../src/cli/commands/inspect/commands/InspectEstimateCommand.ts","../src/cli/commands/inspect/commands/InspectGgufCommand.ts","../src/cli/commands/inspect/commands/InspectGpuCommand.ts","../src/cli/commands/inspect/commands/InspectMeasureCommand.ts","../src/cli/commands/source/SourceCommand.ts","../src/cli/commands/source/commands/BuildCommand.ts","../src/cli/commands/source/commands/ClearCommand.ts","../src/cli/commands/source/commands/DownloadCommand.ts","../src/cli/utils/ConsoleInteraction.ts","../src/cli/utils/ConsoleTable.ts","../src/cli/utils/basicChooseFromListConsoleInteraction.ts","../src/cli/utils/consolePromptQuestion.ts","../src/cli/utils/getReadablePath.ts","../src/cli/utils/interactivelyAskForModel.ts","../src/cli/utils/isRunningUnderRosetta.ts","../src/cli/utils/logUsedGpuTypeOption.ts","../src/cli/utils/printCommonInfoLines.ts","../src/cli/utils/printInfoLine.ts","../src/cli/utils/printModelDestination.ts","../src/cli/utils/projectTemplates.ts","../src/cli/utils/renderModelCompatibilityPercentageWithColors.ts","../src/cli/utils/resolveCommandGgufPath.ts","../src/cli/utils/resolveHeaderFlag.ts","../src/cli/utils/resolveModelRecommendationFileOptions.ts","../src/cli/utils/splitAnsiToLines.ts","../src/cli/utils/toBytes.ts","../src/cli/utils/withCliCommandDescriptionDocsUrl.ts","../src/evaluator/LlamaCompletion.ts","../src/evaluator/LlamaEmbedding.ts","../src/evaluator/LlamaEmbeddingContext.ts","../src/evaluator/LlamaGrammar.ts","../src/evaluator/LlamaGrammarEvaluationState.ts","../src/evaluator/LlamaJsonSchemaGrammar.ts","../src/evaluator/LlamaRankingContext.ts","../src/evaluator/TokenBias.ts","../src/evaluator/TokenMeter.ts","../src/evaluator/LlamaChat/LlamaChat.ts","../src/evaluator/LlamaChat/utils/FunctionCallNameGrammar.ts","../src/evaluator/LlamaChat/utils/FunctionCallParamsGrammar.ts","../src/evaluator/LlamaChat/utils/LlamaFunctionCallValidationError.ts","../src/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.ts","../src/evaluator/LlamaChatSession/LlamaChatSession.ts","../src/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.ts","../src/evaluator/LlamaChatSession/utils/defineChatSessionFunction.ts","../src/evaluator/LlamaContext/LlamaContext.ts","../src/evaluator/LlamaContext/LlamaSampler.ts","../src/evaluator/LlamaContext/TokenPredictor.ts","../src/evaluator/LlamaContext/types.ts","../src/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.ts","../src/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.ts","../src/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/firstInFirstOutStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/maximumParallelismStrategy.ts","../src/evaluator/LlamaModel/LlamaModel.ts","../src/evaluator/LlamaModel/utils/TokenAttributes.ts","../src/evaluator/utils/chunkDocument.ts","../src/gguf/consts.ts","../src/gguf/readGgufFileInfo.ts","../src/gguf/errors/InvalidGgufMagicError.ts","../src/gguf/errors/UnsupportedGgufValueTypeError.ts","../src/gguf/fileReaders/GgufFileReader.ts","../src/gguf/fileReaders/GgufFsFileReader.ts","../src/gguf/fileReaders/GgufNetworkFetchFileReader.ts","../src/gguf/insights/GgufInsights.ts","../src/gguf/insights/GgufInsightsConfigurationResolver.ts","../src/gguf/insights/utils/getRamUsageFromUnifiedVram.ts","../src/gguf/insights/utils/resolveContextContextSizeOption.ts","../src/gguf/insights/utils/resolveModelGpuLayersOption.ts","../src/gguf/insights/utils/scoreLevels.ts","../src/gguf/parser/GgufV2Parser.ts","../src/gguf/parser/GgufV3Parser.ts","../src/gguf/parser/parseGguf.ts","../src/gguf/types/GgufFileInfoTypes.ts","../src/gguf/types/GgufMetadataTypes.ts","../src/gguf/types/GgufTensorInfoTypes.ts","../src/gguf/utils/GgufReadOffset.ts","../src/gguf/utils/convertMetadataKeyValueRecordToNestedObject.ts","../src/gguf/utils/getGgufFileTypeName.ts","../src/gguf/utils/getGgufMetadataArchitectureData.ts","../src/gguf/utils/getGgufMetadataKeyValue.ts","../src/gguf/utils/normalizeGgufDownloadUrl.ts","../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts","../src/gguf/utils/resolveSplitGgufParts.ts","../src/utils/DisposeGuard.ts","../src/utils/InsufficientMemoryError.ts","../src/utils/LlamaText.ts","../src/utils/LruCache.ts","../src/utils/OverridesObject.ts","../src/utils/ReplHistory.ts","../src/utils/StopGenerationDetector.ts","../src/utils/ThreadsSplitter.ts","../src/utils/TokenStreamRegulator.ts","../src/utils/UnsupportedError.ts","../src/utils/appendUserMessageToChatHistory.ts","../src/utils/clearTempFolder.ts","../src/utils/cmake.ts","../src/utils/compareTokens.ts","../src/utils/createModelDownloader.ts","../src/utils/findBestOption.ts","../src/utils/findCharacterRemovalCountToFitChatHistoryInContext.ts","../src/utils/getBuildDefaults.ts","../src/utils/getConsoleLogPrefix.ts","../src/utils/getGrammarsFolder.ts","../src/utils/getLlamaClasses.ts","../src/utils/getModuleVersion.ts","../src/utils/getQueuedTokensBeforeStopTrigger.ts","../src/utils/getReadableContextSize.ts","../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts","../src/utils/gitReleaseBundles.ts","../src/utils/hashString.ts","../src/utils/includesText.ts","../src/utils/isLockfileActive.ts","../src/utils/isToken.ts","../src/utils/isUrl.ts","../src/utils/mergeUnionTypes.ts","../src/utils/modelFileAccesTokens.ts","../src/utils/parseModelFileName.ts","../src/utils/parseModelUri.ts","../src/utils/parseTextTemplate.ts","../src/utils/prettyPrintObject.ts","../src/utils/pushAll.ts","../src/utils/removeNullFields.ts","../src/utils/resolveGithubRelease.ts","../src/utils/resolveLastTokens.ts","../src/utils/resolveModelDestination.ts","../src/utils/resolveModelFile.ts","../src/utils/runtime.ts","../src/utils/safeEventCallback.ts","../src/utils/spawnCommand.ts","../src/utils/tokenizeInput.ts","../src/utils/tokenizerUtils.ts","../src/utils/transformPromisable.ts","../src/utils/truncateTextAndRoundToWords.ts","../src/utils/utilTypes.ts","../src/utils/waitForLockfileRelease.ts","../src/utils/withLockfile.ts","../src/utils/withOra.ts","../src/utils/withProgressLog.ts","../src/utils/withStatusLogs.ts","../src/utils/wrapAbortSignal.ts","../src/utils/gbnfJson/GbnfGrammarGenerator.ts","../src/utils/gbnfJson/GbnfTerminal.ts","../src/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.ts","../src/utils/gbnfJson/types.ts","../src/utils/gbnfJson/terminals/GbnfAnyJson.ts","../src/utils/gbnfJson/terminals/GbnfArray.ts","../src/utils/gbnfJson/terminals/GbnfBoolean.ts","../src/utils/gbnfJson/terminals/GbnfBooleanValue.ts","../src/utils/gbnfJson/terminals/GbnfCommaWhitespace.ts","../src/utils/gbnfJson/terminals/GbnfFormatString.ts","../src/utils/gbnfJson/terminals/GbnfGrammar.ts","../src/utils/gbnfJson/terminals/GbnfInsideStringChar.ts","../src/utils/gbnfJson/terminals/GbnfNull.ts","../src/utils/gbnfJson/terminals/GbnfNumber.ts","../src/utils/gbnfJson/terminals/GbnfNumberValue.ts","../src/utils/gbnfJson/terminals/GbnfObjectMap.ts","../src/utils/gbnfJson/terminals/GbnfOr.ts","../src/utils/gbnfJson/terminals/GbnfRepetition.ts","../src/utils/gbnfJson/terminals/GbnfString.ts","../src/utils/gbnfJson/terminals/GbnfStringValue.ts","../src/utils/gbnfJson/terminals/GbnfVerbatimText.ts","../src/utils/gbnfJson/terminals/GbnfWhitespace.ts","../src/utils/gbnfJson/terminals/gbnfConsts.ts","../src/utils/gbnfJson/utils/GbnfJsonScopeState.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.ts","../src/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.ts"],"version":"5.7.2"}
1
+ {"root":["../src/index.ts","../src/ChatWrapper.ts","../src/apiDocsIndex.ts","../src/commands.ts","../src/config.ts","../src/consts.ts","../src/state.ts","../src/types.ts","../src/bindings/AddonTypes.ts","../src/bindings/Llama.ts","../src/bindings/consts.ts","../src/bindings/getLlama.ts","../src/bindings/types.ts","../src/bindings/utils/MemoryOrchestrator.ts","../src/bindings/utils/NoBinaryFoundError.ts","../src/bindings/utils/asyncEvery.ts","../src/bindings/utils/asyncSome.ts","../src/bindings/utils/binariesGithubRelease.ts","../src/bindings/utils/clearAllLocalBuilds.ts","../src/bindings/utils/cloneLlamaCppRepo.ts","../src/bindings/utils/compileLLamaCpp.ts","../src/bindings/utils/detectAvailableComputeLayers.ts","../src/bindings/utils/detectBuildTools.ts","../src/bindings/utils/detectGlibc.ts","../src/bindings/utils/getBestComputeLayersAvailable.ts","../src/bindings/utils/getBuildFolderNameForBuildOptions.ts","../src/bindings/utils/getCanUsePrebuiltBinaries.ts","../src/bindings/utils/getExampleUsageCodeOfGetLlama.ts","../src/bindings/utils/getGpuTypesToUseForOption.ts","../src/bindings/utils/getLinuxDistroInfo.ts","../src/bindings/utils/getLlamaWithoutBackend.ts","../src/bindings/utils/getPlatform.ts","../src/bindings/utils/getPlatformInfo.ts","../src/bindings/utils/hasBuildingFromSourceDependenciesInstalled.ts","../src/bindings/utils/hasFileInPath.ts","../src/bindings/utils/lastBuildInfo.ts","../src/bindings/utils/logBinaryUsageExampleToConsole.ts","../src/bindings/utils/logDistroInstallInstruction.ts","../src/bindings/utils/resolveActualBindingBinaryPath.ts","../src/bindings/utils/resolveCustomCmakeOptions.ts","../src/bindings/utils/testBindingBinary.ts","../src/bindings/utils/testCmakeBinary.ts","../src/chatWrappers/AlpacaChatWrapper.ts","../src/chatWrappers/ChatMLChatWrapper.ts","../src/chatWrappers/EmptyChatWrapper.ts","../src/chatWrappers/FalconChatWrapper.ts","../src/chatWrappers/FunctionaryChatWrapper.ts","../src/chatWrappers/GemmaChatWrapper.ts","../src/chatWrappers/GeneralChatWrapper.ts","../src/chatWrappers/Llama2ChatWrapper.ts","../src/chatWrappers/Llama3ChatWrapper.ts","../src/chatWrappers/Llama3_1ChatWrapper.ts","../src/chatWrappers/Llama3_2LightweightChatWrapper.ts","../src/chatWrappers/MistralChatWrapper.ts","../src/chatWrappers/generic/JinjaTemplateChatWrapper.ts","../src/chatWrappers/generic/TemplateChatWrapper.ts","../src/chatWrappers/generic/utils/chatHistoryFunctionCallMessageTemplate.ts","../src/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.ts","../src/chatWrappers/utils/chunkChatItems.ts","../src/chatWrappers/utils/getModelLinageNames.ts","../src/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.ts","../src/chatWrappers/utils/isLlama3_2LightweightModel.ts","../src/chatWrappers/utils/jsonDumps.ts","../src/chatWrappers/utils/resolveChatWrapper.ts","../src/cli/cli.ts","../src/cli/projectTemplates.ts","../src/cli/recommendedModels.ts","../src/cli/startCreateCli.ts","../src/cli/commands/ChatCommand.ts","../src/cli/commands/CompleteCommand.ts","../src/cli/commands/DebugCommand.ts","../src/cli/commands/InfillCommand.ts","../src/cli/commands/InitCommand.ts","../src/cli/commands/OnPostInstallCommand.ts","../src/cli/commands/PullCommand.ts","../src/cli/commands/inspect/InspectCommand.ts","../src/cli/commands/inspect/commands/InspectEstimateCommand.ts","../src/cli/commands/inspect/commands/InspectGgufCommand.ts","../src/cli/commands/inspect/commands/InspectGpuCommand.ts","../src/cli/commands/inspect/commands/InspectMeasureCommand.ts","../src/cli/commands/source/SourceCommand.ts","../src/cli/commands/source/commands/BuildCommand.ts","../src/cli/commands/source/commands/ClearCommand.ts","../src/cli/commands/source/commands/DownloadCommand.ts","../src/cli/utils/ConsoleInteraction.ts","../src/cli/utils/ConsoleTable.ts","../src/cli/utils/basicChooseFromListConsoleInteraction.ts","../src/cli/utils/consolePromptQuestion.ts","../src/cli/utils/getReadablePath.ts","../src/cli/utils/interactivelyAskForModel.ts","../src/cli/utils/isRunningUnderRosetta.ts","../src/cli/utils/logUsedGpuTypeOption.ts","../src/cli/utils/printCommonInfoLines.ts","../src/cli/utils/printInfoLine.ts","../src/cli/utils/printModelDestination.ts","../src/cli/utils/projectTemplates.ts","../src/cli/utils/renderModelCompatibilityPercentageWithColors.ts","../src/cli/utils/resolveCommandGgufPath.ts","../src/cli/utils/resolveHeaderFlag.ts","../src/cli/utils/resolveModelRecommendationFileOptions.ts","../src/cli/utils/splitAnsiToLines.ts","../src/cli/utils/toBytes.ts","../src/cli/utils/withCliCommandDescriptionDocsUrl.ts","../src/evaluator/LlamaCompletion.ts","../src/evaluator/LlamaEmbedding.ts","../src/evaluator/LlamaEmbeddingContext.ts","../src/evaluator/LlamaGrammar.ts","../src/evaluator/LlamaGrammarEvaluationState.ts","../src/evaluator/LlamaJsonSchemaGrammar.ts","../src/evaluator/LlamaRankingContext.ts","../src/evaluator/TokenBias.ts","../src/evaluator/TokenMeter.ts","../src/evaluator/LlamaChat/LlamaChat.ts","../src/evaluator/LlamaChat/utils/FunctionCallNameGrammar.ts","../src/evaluator/LlamaChat/utils/FunctionCallParamsGrammar.ts","../src/evaluator/LlamaChat/utils/LlamaFunctionCallValidationError.ts","../src/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.ts","../src/evaluator/LlamaChatSession/LlamaChatSession.ts","../src/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.ts","../src/evaluator/LlamaChatSession/utils/defineChatSessionFunction.ts","../src/evaluator/LlamaContext/LlamaContext.ts","../src/evaluator/LlamaContext/LlamaSampler.ts","../src/evaluator/LlamaContext/TokenPredictor.ts","../src/evaluator/LlamaContext/types.ts","../src/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.ts","../src/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.ts","../src/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/firstInFirstOutStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/maximumParallelismStrategy.ts","../src/evaluator/LlamaModel/LlamaModel.ts","../src/evaluator/LlamaModel/utils/TokenAttributes.ts","../src/evaluator/utils/chunkDocument.ts","../src/gguf/consts.ts","../src/gguf/readGgufFileInfo.ts","../src/gguf/errors/InvalidGgufMagicError.ts","../src/gguf/errors/UnsupportedGgufValueTypeError.ts","../src/gguf/fileReaders/GgufFileReader.ts","../src/gguf/fileReaders/GgufFsFileReader.ts","../src/gguf/fileReaders/GgufNetworkFetchFileReader.ts","../src/gguf/insights/GgufInsights.ts","../src/gguf/insights/GgufInsightsConfigurationResolver.ts","../src/gguf/insights/utils/getRamUsageFromUnifiedVram.ts","../src/gguf/insights/utils/resolveContextContextSizeOption.ts","../src/gguf/insights/utils/resolveModelGpuLayersOption.ts","../src/gguf/insights/utils/scoreLevels.ts","../src/gguf/parser/GgufV2Parser.ts","../src/gguf/parser/GgufV3Parser.ts","../src/gguf/parser/parseGguf.ts","../src/gguf/types/GgufFileInfoTypes.ts","../src/gguf/types/GgufMetadataTypes.ts","../src/gguf/types/GgufTensorInfoTypes.ts","../src/gguf/utils/GgufReadOffset.ts","../src/gguf/utils/convertMetadataKeyValueRecordToNestedObject.ts","../src/gguf/utils/getGgufFileTypeName.ts","../src/gguf/utils/getGgufMetadataArchitectureData.ts","../src/gguf/utils/getGgufMetadataKeyValue.ts","../src/gguf/utils/ggufQuantNames.ts","../src/gguf/utils/normalizeGgufDownloadUrl.ts","../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts","../src/gguf/utils/resolveSplitGgufParts.ts","../src/utils/DisposeGuard.ts","../src/utils/InsufficientMemoryError.ts","../src/utils/LlamaText.ts","../src/utils/LruCache.ts","../src/utils/OverridesObject.ts","../src/utils/ReplHistory.ts","../src/utils/StopGenerationDetector.ts","../src/utils/ThreadsSplitter.ts","../src/utils/TokenStreamRegulator.ts","../src/utils/UnsupportedError.ts","../src/utils/appendUserMessageToChatHistory.ts","../src/utils/clearTempFolder.ts","../src/utils/cmake.ts","../src/utils/compareTokens.ts","../src/utils/createModelDownloader.ts","../src/utils/findBestOption.ts","../src/utils/findCharacterRemovalCountToFitChatHistoryInContext.ts","../src/utils/getBuildDefaults.ts","../src/utils/getConsoleLogPrefix.ts","../src/utils/getGrammarsFolder.ts","../src/utils/getLlamaClasses.ts","../src/utils/getModuleVersion.ts","../src/utils/getQueuedTokensBeforeStopTrigger.ts","../src/utils/getReadableContextSize.ts","../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts","../src/utils/gitReleaseBundles.ts","../src/utils/hashString.ts","../src/utils/includesText.ts","../src/utils/isLockfileActive.ts","../src/utils/isToken.ts","../src/utils/isUrl.ts","../src/utils/mergeUnionTypes.ts","../src/utils/modelFileAccesTokens.ts","../src/utils/parseModelFileName.ts","../src/utils/parseModelUri.ts","../src/utils/parseTextTemplate.ts","../src/utils/prettyPrintObject.ts","../src/utils/pushAll.ts","../src/utils/removeNullFields.ts","../src/utils/resolveGithubRelease.ts","../src/utils/resolveLastTokens.ts","../src/utils/resolveModelDestination.ts","../src/utils/resolveModelFile.ts","../src/utils/runtime.ts","../src/utils/safeEventCallback.ts","../src/utils/spawnCommand.ts","../src/utils/tokenizeInput.ts","../src/utils/tokenizerUtils.ts","../src/utils/transformPromisable.ts","../src/utils/truncateTextAndRoundToWords.ts","../src/utils/utilTypes.ts","../src/utils/waitForLockfileRelease.ts","../src/utils/withLockfile.ts","../src/utils/withOra.ts","../src/utils/withProgressLog.ts","../src/utils/withStatusLogs.ts","../src/utils/wrapAbortSignal.ts","../src/utils/gbnfJson/GbnfGrammarGenerator.ts","../src/utils/gbnfJson/GbnfTerminal.ts","../src/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.ts","../src/utils/gbnfJson/types.ts","../src/utils/gbnfJson/terminals/GbnfAnyJson.ts","../src/utils/gbnfJson/terminals/GbnfArray.ts","../src/utils/gbnfJson/terminals/GbnfBoolean.ts","../src/utils/gbnfJson/terminals/GbnfBooleanValue.ts","../src/utils/gbnfJson/terminals/GbnfCommaWhitespace.ts","../src/utils/gbnfJson/terminals/GbnfFormatString.ts","../src/utils/gbnfJson/terminals/GbnfGrammar.ts","../src/utils/gbnfJson/terminals/GbnfInsideStringChar.ts","../src/utils/gbnfJson/terminals/GbnfNull.ts","../src/utils/gbnfJson/terminals/GbnfNumber.ts","../src/utils/gbnfJson/terminals/GbnfNumberValue.ts","../src/utils/gbnfJson/terminals/GbnfObjectMap.ts","../src/utils/gbnfJson/terminals/GbnfOr.ts","../src/utils/gbnfJson/terminals/GbnfRepetition.ts","../src/utils/gbnfJson/terminals/GbnfString.ts","../src/utils/gbnfJson/terminals/GbnfStringValue.ts","../src/utils/gbnfJson/terminals/GbnfVerbatimText.ts","../src/utils/gbnfJson/terminals/GbnfWhitespace.ts","../src/utils/gbnfJson/terminals/gbnfConsts.ts","../src/utils/gbnfJson/utils/GbnfJsonScopeState.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.ts","../src/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.ts"],"version":"5.7.3"}
@@ -5,6 +5,7 @@ export type ModelDownloaderOptions = ({
5
5
  *
6
6
  * The supported URI schemes are:
7
7
  * - **HTTP:** `https://`, `http://`
8
+ * - **Hugging Face:** `hf:<user>/<model>:<quant>` (`#<quant>` is optional, but recommended)
8
9
  * - **Hugging Face:** `hf:<user>/<model>/<file-path>#<branch>` (`#<branch>` is optional)
9
10
  */
10
11
  modelUri: string;
@@ -66,6 +67,7 @@ export type ModelDownloaderOptions = ({
66
67
  *
67
68
  * The supported URI schemes are:
68
69
  * - **HTTP:** `https://`, `http://`
70
+ * - **Hugging Face:** `hf:<user>/<model>:<quant>` (`#<quant>` is optional, but recommended)
69
71
  * - **Hugging Face:** `hf:<user>/<model>/<file-path>#<branch>` (`#<branch>` is optional)
70
72
  * @example
71
73
  * ```typescript
@@ -95,7 +97,7 @@ export type ModelDownloaderOptions = ({
95
97
  * const __dirname = path.dirname(fileURLToPath(import.meta.url));
96
98
  *
97
99
  * const downloader = await createModelDownloader({
98
- * modelUri: "hf:user/model/model-file.gguf",
100
+ * modelUri: "hf:user/model:quant",
99
101
  * dirPath: path.join(__dirname, "models")
100
102
  * });
101
103
  * const modelPath = await downloader.download();
@@ -112,6 +114,13 @@ export declare function createModelDownloader(options: ModelDownloaderOptions):
112
114
  *
113
115
  * You can check each individual model downloader for its download progress,
114
116
  * but only the `onProgress` passed to the combined downloader will be called during the download.
117
+ *
118
+ * When combining `ModelDownloader` instances, the following options on each individual `ModelDownloader` are ignored:
119
+ * - `showCliProgress`
120
+ * - `onProgress`
121
+ * - `parallelDownloads`
122
+ *
123
+ * To set any of those options for the combined downloader, you have to pass them to the combined downloader instance.
115
124
  * @example
116
125
  * ```typescript
117
126
  * import {fileURLToPath} from "url";
@@ -126,7 +135,11 @@ export declare function createModelDownloader(options: ModelDownloaderOptions):
126
135
  * dirPath: path.join(__dirname, "models")
127
136
  * }),
128
137
  * createModelDownloader({
129
- * modelUri: "hf:user/model/model2.gguf",
138
+ * modelUri: "hf:user/model2:quant",
139
+ * dirPath: path.join(__dirname, "models")
140
+ * }),
141
+ * createModelDownloader({
142
+ * modelUri: "hf:user/model/model3.gguf",
130
143
  * dirPath: path.join(__dirname, "models")
131
144
  * })
132
145
  * ];
@@ -135,7 +148,8 @@ export declare function createModelDownloader(options: ModelDownloaderOptions):
135
148
  * });
136
149
  * const [
137
150
  * model1Path,
138
- * model2Path
151
+ * model2Path,
152
+ * model3Path
139
153
  * ] = await combinedDownloader.download();
140
154
  *
141
155
  * const llama = await getLlama();
@@ -145,6 +159,9 @@ export declare function createModelDownloader(options: ModelDownloaderOptions):
145
159
  * const model2 = await llama.loadModel({
146
160
  * modelPath: model2Path!
147
161
  * });
162
+ * const model3 = await llama.loadModel({
163
+ * modelPath: model3Path!
164
+ * });
148
165
  * ```
149
166
  */
150
167
  export declare function combineModelDownloaders(downloaders: (ModelDownloader | Promise<ModelDownloader>)[], options?: CombinedModelDownloaderOptions): Promise<CombinedModelDownloader>;
@@ -210,7 +227,7 @@ export declare class CombinedModelDownloader {
210
227
  *
211
228
  * To set any of those options for the combined downloader, you have to pass them to the combined downloader instance
212
229
  */
213
- constructor(downloaders: ModelDownloader[], options?: CombinedModelDownloaderOptions);
230
+ private constructor();
214
231
  cancel(): Promise<void>;
215
232
  /**
216
233
  * @returns The paths to the entrypoint files that should be used to load the models
@@ -2,6 +2,7 @@ import process from "process";
2
2
  import path from "path";
3
3
  import { downloadFile, downloadSequence } from "ipull";
4
4
  import fs from "fs-extra";
5
+ import chalk from "chalk";
5
6
  import { createSplitPartFilename, resolveSplitGgufParts } from "../gguf/utils/resolveSplitGgufParts.js";
6
7
  import { getFilenameForBinarySplitGgufPartUrls, resolveBinarySplitGgufPartUrls } from "../gguf/utils/resolveBinarySplitGgufPartUrls.js";
7
8
  import { cliModelsDirectory, isCI } from "../config.js";
@@ -9,6 +10,8 @@ import { safeEventCallback } from "./safeEventCallback.js";
9
10
  import { resolveModelFileAccessTokensTryHeaders } from "./modelFileAccesTokens.js";
10
11
  import { pushAll } from "./pushAll.js";
11
12
  import { resolveModelDestination } from "./resolveModelDestination.js";
13
+ import { getAuthorizationHeader, resolveParsedModelUri } from "./parseModelUri.js";
14
+ import withOra from "./withOra.js";
12
15
  /**
13
16
  * Create a model downloader to download a model from a URI.
14
17
  * Uses [`ipull`](https://github.com/ido-pluto/ipull) to download a model file as fast as possible with parallel connections
@@ -25,6 +28,7 @@ import { resolveModelDestination } from "./resolveModelDestination.js";
25
28
  *
26
29
  * The supported URI schemes are:
27
30
  * - **HTTP:** `https://`, `http://`
31
+ * - **Hugging Face:** `hf:<user>/<model>:<quant>` (`#<quant>` is optional, but recommended)
28
32
  * - **Hugging Face:** `hf:<user>/<model>/<file-path>#<branch>` (`#<branch>` is optional)
29
33
  * @example
30
34
  * ```typescript
@@ -54,7 +58,7 @@ import { resolveModelDestination } from "./resolveModelDestination.js";
54
58
  * const __dirname = path.dirname(fileURLToPath(import.meta.url));
55
59
  *
56
60
  * const downloader = await createModelDownloader({
57
- * modelUri: "hf:user/model/model-file.gguf",
61
+ * modelUri: "hf:user/model:quant",
58
62
  * dirPath: path.join(__dirname, "models")
59
63
  * });
60
64
  * const modelPath = await downloader.download();
@@ -65,16 +69,21 @@ import { resolveModelDestination } from "./resolveModelDestination.js";
65
69
  * });
66
70
  * ```
67
71
  */
68
- export async function createModelDownloader(options) {
69
- const downloader = ModelDownloader._create(options);
70
- await downloader._init();
71
- return downloader;
72
+ export function createModelDownloader(options) {
73
+ return ModelDownloader._create(options);
72
74
  }
73
75
  /**
74
76
  * Combine multiple models downloaders to a single downloader to download everything using as much parallelism as possible.
75
77
  *
76
78
  * You can check each individual model downloader for its download progress,
77
79
  * but only the `onProgress` passed to the combined downloader will be called during the download.
80
+ *
81
+ * When combining `ModelDownloader` instances, the following options on each individual `ModelDownloader` are ignored:
82
+ * - `showCliProgress`
83
+ * - `onProgress`
84
+ * - `parallelDownloads`
85
+ *
86
+ * To set any of those options for the combined downloader, you have to pass them to the combined downloader instance.
78
87
  * @example
79
88
  * ```typescript
80
89
  * import {fileURLToPath} from "url";
@@ -89,7 +98,11 @@ export async function createModelDownloader(options) {
89
98
  * dirPath: path.join(__dirname, "models")
90
99
  * }),
91
100
  * createModelDownloader({
92
- * modelUri: "hf:user/model/model2.gguf",
101
+ * modelUri: "hf:user/model2:quant",
102
+ * dirPath: path.join(__dirname, "models")
103
+ * }),
104
+ * createModelDownloader({
105
+ * modelUri: "hf:user/model/model3.gguf",
93
106
  * dirPath: path.join(__dirname, "models")
94
107
  * })
95
108
  * ];
@@ -98,7 +111,8 @@ export async function createModelDownloader(options) {
98
111
  * });
99
112
  * const [
100
113
  * model1Path,
101
- * model2Path
114
+ * model2Path,
115
+ * model3Path
102
116
  * ] = await combinedDownloader.download();
103
117
  *
104
118
  * const llama = await getLlama();
@@ -108,6 +122,9 @@ export async function createModelDownloader(options) {
108
122
  * const model2 = await llama.loadModel({
109
123
  * modelPath: model2Path!
110
124
  * });
125
+ * const model3 = await llama.loadModel({
126
+ * modelPath: model3Path!
127
+ * });
111
128
  * ```
112
129
  */
113
130
  export async function combineModelDownloaders(downloaders, options) {
@@ -132,19 +149,11 @@ export class ModelDownloader {
132
149
  /** @internal */ _splitBinaryParts;
133
150
  /** @internal */ _totalFiles;
134
151
  /** @internal */ _tryHeaders = [];
135
- constructor(options) {
136
- const { modelUri, modelUrl, dirPath = cliModelsDirectory, fileName, headers, showCliProgress = false, onProgress, deleteTempFileOnCancel = true, skipExisting = true, parallelDownloads = 4, tokens } = options;
137
- const resolvedModelUri = modelUri || modelUrl;
138
- if (resolvedModelUri == null || dirPath == null)
139
- throw new Error("modelUri and dirPath cannot be null");
140
- const resolvedModelDestination = resolveModelDestination(resolvedModelUri);
141
- this._modelUrl = resolvedModelDestination.type === "file"
142
- ? path.join(dirPath, resolvedModelUri)
143
- : resolvedModelDestination.url;
152
+ constructor(options, { resolvedModelUrl, resolvedFileName }) {
153
+ const { dirPath = cliModelsDirectory, headers, showCliProgress = false, onProgress, deleteTempFileOnCancel = true, skipExisting = true, parallelDownloads = 4, tokens } = options;
154
+ this._modelUrl = resolvedModelUrl;
144
155
  this._dirPath = path.resolve(process.cwd(), dirPath);
145
- this._fileName = fileName || (resolvedModelDestination.type === "uri"
146
- ? resolvedModelDestination.parsedUri.fullFilename
147
- : undefined);
156
+ this._fileName = resolvedFileName;
148
157
  this._headers = headers;
149
158
  this._showCliProgress = showCliProgress;
150
159
  this._onProgress = safeEventCallback(onProgress);
@@ -221,14 +230,10 @@ export class ModelDownloader {
221
230
  return this.entrypointFilePath;
222
231
  }
223
232
  async cancel({ deleteTempFile = this._deleteTempFileOnCancel } = {}) {
224
- for (const downloader of this._specificFileDownloaders) {
225
- if (deleteTempFile)
226
- await downloader.closeAndDeleteFile();
227
- else
228
- await downloader.close();
229
- }
233
+ for (const downloader of this._specificFileDownloaders)
234
+ await downloader.close({ deleteTempFile });
230
235
  if (this._downloader !== this._specificFileDownloaders[0])
231
- await this._downloader?.close();
236
+ await this._downloader?.close({ deleteTempFile });
232
237
  }
233
238
  /** @internal */
234
239
  _onDownloadProgress() {
@@ -310,8 +315,52 @@ export class ModelDownloader {
310
315
  return;
311
316
  }
312
317
  /** @internal */
313
- static _create(options) {
314
- return new ModelDownloader(options);
318
+ static async _create(options) {
319
+ const { modelUri, modelUrl, dirPath = cliModelsDirectory, fileName, _showUriResolvingProgress = false } = options;
320
+ const resolvedModelUri = modelUri || modelUrl;
321
+ if (resolvedModelUri == null || dirPath == null)
322
+ throw new Error("modelUri and dirPath cannot be null");
323
+ async function getModelUrlAndFilename() {
324
+ const resolvedModelDestination = resolveModelDestination(resolvedModelUri);
325
+ if (resolvedModelDestination.type == "file")
326
+ return {
327
+ resolvedModelUrl: path.resolve(dirPath, resolvedModelDestination.path),
328
+ resolvedFileName: fileName
329
+ };
330
+ else if (resolvedModelDestination.type === "url")
331
+ return {
332
+ resolvedModelUrl: resolvedModelDestination.url,
333
+ resolvedFileName: fileName
334
+ };
335
+ else if (resolvedModelDestination.parsedUri.type === "resolved")
336
+ return {
337
+ resolvedModelUrl: resolvedModelDestination.parsedUri.resolvedUrl,
338
+ resolvedFileName: fileName || resolvedModelDestination.parsedUri.fullFilename
339
+ };
340
+ const resolvedUri = _showUriResolvingProgress
341
+ ? await withOra({
342
+ loading: chalk.blue("Resolving model URI"),
343
+ success: chalk.blue("Resolved model URI"),
344
+ fail: chalk.blue("Failed to resolve model URI"),
345
+ noSuccessLiveStatus: true
346
+ }, () => {
347
+ return resolveParsedModelUri(resolvedModelDestination.parsedUri, {
348
+ tokens: options.tokens,
349
+ authorizationHeader: getAuthorizationHeader(options.headers)
350
+ });
351
+ })
352
+ : await resolveParsedModelUri(resolvedModelDestination.parsedUri, {
353
+ tokens: options.tokens,
354
+ authorizationHeader: getAuthorizationHeader(options.headers)
355
+ });
356
+ return {
357
+ resolvedModelUrl: resolvedUri.resolvedUrl,
358
+ resolvedFileName: fileName || resolvedUri.fullFilename
359
+ };
360
+ }
361
+ const modelDownloader = new ModelDownloader(options, await getModelUrlAndFilename());
362
+ await modelDownloader._init();
363
+ return modelDownloader;
315
364
  }
316
365
  }
317
366
  export class CombinedModelDownloader {
@@ -338,15 +387,13 @@ export class CombinedModelDownloader {
338
387
  this._onDownloadProgress = this._onDownloadProgress.bind(this);
339
388
  }
340
389
  async cancel() {
341
- for (const modelDownloader of await Promise.all(this._downloaders)) {
390
+ for (const modelDownloader of this._downloaders) {
342
391
  if (modelDownloader._specificFileDownloaders.every((downloader) => downloader.status.downloadStatus === "Finished"))
343
392
  continue;
344
- for (const downloader of modelDownloader._specificFileDownloaders) {
345
- if (modelDownloader._deleteTempFileOnCancel)
346
- await downloader.closeAndDeleteFile();
347
- else
348
- await downloader.close();
349
- }
393
+ for (const downloader of modelDownloader._specificFileDownloaders)
394
+ await downloader.close({
395
+ deleteTempFile: modelDownloader._deleteTempFileOnCancel
396
+ });
350
397
  }
351
398
  }
352
399
  /**
@@ -425,7 +472,7 @@ export class CombinedModelDownloader {
425
472
  cliProgress: this._showCliProgress,
426
473
  cliStyle: isCI ? "ci" : "fancy",
427
474
  parallelDownloads: this._parallelDownloads
428
- }, ...(await Promise.all(this._downloaders)).flatMap((downloader) => downloader._specificFileDownloaders));
475
+ }, ...this._downloaders.flatMap((downloader) => downloader._specificFileDownloaders));
429
476
  }
430
477
  /** @internal */
431
478
  static _create(downloaders, options) {