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 +1 @@
1
- {"version":3,"file":"createModelDownloader.js","sourceRoot":"","sources":["../../src/utils/createModelDownloader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createModelDownloader.js","sourceRoot":"","sources":["../../src/utils/createModelDownloader.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ export async function resolveModelFileAccessTokensTryHeaders(modelUrl, tokens, b
9
9
  return res;
10
10
  const parsedUrl = new URL(modelUrl);
11
11
  const { huggingFace } = tokens;
12
- if (parsedUrl.hostname === "huggingface.co") {
12
+ if (parsedUrl.hostname === "huggingface.co" || parsedUrl.hostname === "hf.co") {
13
13
  const hfToken = resolveHfToken(huggingFace);
14
14
  res.push({
15
15
  ...(baseHeaders ?? {}),
@@ -1 +1 @@
1
- {"version":3,"file":"modelFileAccesTokens.js","sourceRoot":"","sources":["../../src/utils/modelFileAccesTokens.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAMjC,MAAM,CAAC,KAAK,UAAU,sCAAsC,CACxD,QAAgB,EAChB,MAA8B,EAC9B,WAAoC;IAEpC,MAAM,GAAG,GAA6B,EAAE,CAAC;IAEzC,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAClC,OAAO,GAAG,CAAC;IAEf,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,EAAC,WAAW,EAAC,GAAG,MAAM,CAAC;IAE7B,IAAI,SAAS,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAE5C,GAAG,CAAC,IAAI,CAAC;YACL,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACtB,eAAe,EAAE,UAAU,OAAO,EAAE;SACvC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,aAAsB;IAChD,IAAI,aAAa,KAAK,IAAI;QACtB,OAAO,aAAa,CAAC;IAEzB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAEhC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAC;IAE9F,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChF,IAAI,CAAC;QACD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,KAAK,KAAK,EAAE;gBACZ,OAAO,KAAK,CAAC;QACrB,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,aAAa;IACjB,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"modelFileAccesTokens.js","sourceRoot":"","sources":["../../src/utils/modelFileAccesTokens.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAMjC,MAAM,CAAC,KAAK,UAAU,sCAAsC,CACxD,QAAgB,EAChB,MAA8B,EAC9B,WAAoC;IAEpC,MAAM,GAAG,GAA6B,EAAE,CAAC;IAEzC,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAClC,OAAO,GAAG,CAAC;IAEf,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,EAAC,WAAW,EAAC,GAAG,MAAM,CAAC;IAE7B,IAAI,SAAS,CAAC,QAAQ,KAAK,gBAAgB,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAE5C,GAAG,CAAC,IAAI,CAAC;YACL,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACtB,eAAe,EAAE,UAAU,OAAO,EAAE;SACvC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,aAAsB;IAChD,IAAI,aAAa,KAAK,IAAI;QACtB,OAAO,aAAa,CAAC;IAEzB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAEhC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAC;IAE9F,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChF,IAAI,CAAC;QACD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,KAAK,KAAK,EAAE;gBACZ,OAAO,KAAK,CAAC;QACrB,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,aAAa;IACjB,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -6,5 +6,10 @@ export declare function parseModelFileName(filename: string): {
6
6
  version: string | undefined;
7
7
  contextSize: string | undefined;
8
8
  parameters: `${number}B` | undefined;
9
+ parts: {
10
+ part: string;
11
+ parts: string;
12
+ } | undefined;
9
13
  otherInfo: string[];
10
14
  };
15
+ export declare function isFilePartText(text?: string): boolean;
@@ -1,19 +1,55 @@
1
+ import { ggufQuantNames } from "../gguf/utils/ggufQuantNames.js";
1
2
  export function parseModelFileName(filename) {
2
3
  const parts = filename.split("-");
3
4
  let quantization;
4
5
  let fileType;
5
6
  let version;
6
7
  let contextSize;
8
+ let filePart;
9
+ let fileParts;
10
+ if (parts.at(-2) === "of" && isFilePartText(parts.at(-1)?.slice(0, 5)) && isFilePartText(parts.at(-3))) {
11
+ filePart = parts.at(-3);
12
+ fileParts = parts.at(-1)?.slice(0, 5);
13
+ const lastPart = parts.pop();
14
+ parts.pop(); // of
15
+ parts.pop(); // part number
16
+ const partWithoutNumber = lastPart?.slice(5);
17
+ if (partWithoutNumber != null && partWithoutNumber !== "")
18
+ parts.push(partWithoutNumber);
19
+ }
7
20
  if (parts.length > 0) {
8
- const lastPart = parts[parts.length - 1];
21
+ const lastPart = parts.at(-1);
9
22
  const lastParts = lastPart.split(".");
10
23
  fileType = lastParts.pop();
11
- quantization = lastParts.pop();
24
+ quantization = lastParts.pop()?.toUpperCase();
12
25
  if (lastParts.length > 0)
13
26
  parts[parts.length - 1] = lastParts.join(".");
14
27
  else
15
28
  parts.pop();
16
29
  }
30
+ if (parts.length > 0 && (quantization == null || quantization === "")) {
31
+ const lastPart = parts.at(-1).toUpperCase();
32
+ if (ggufQuantNames.has(lastPart)) {
33
+ quantization = lastPart;
34
+ parts.pop();
35
+ }
36
+ }
37
+ if (quantization != null && !ggufQuantNames.has(quantization))
38
+ quantization = undefined;
39
+ if (quantization == null) {
40
+ const potentialParts = filename
41
+ .replaceAll(".", "-")
42
+ .replaceAll(" ", "-")
43
+ .split("-")
44
+ .reverse();
45
+ for (const part of potentialParts) {
46
+ const upperPart = part.toUpperCase();
47
+ if (ggufQuantNames.has(upperPart)) {
48
+ quantization = upperPart;
49
+ break;
50
+ }
51
+ }
52
+ }
17
53
  const { previousParts, parameters, nextParts } = splitByModelParameters(parts);
18
54
  const name = previousParts.shift();
19
55
  const otherInfo = [];
@@ -41,6 +77,12 @@ export function parseModelFileName(filename) {
41
77
  version,
42
78
  contextSize,
43
79
  parameters,
80
+ parts: (filePart != null && fileParts != null)
81
+ ? {
82
+ part: filePart,
83
+ parts: fileParts
84
+ }
85
+ : undefined,
44
86
  otherInfo
45
87
  };
46
88
  }
@@ -53,10 +95,27 @@ function isVersionText(text) {
53
95
  function isContextSizeText(text) {
54
96
  return /^[0-9]+[kKmM]$/.test(text);
55
97
  }
98
+ export function isFilePartText(text) {
99
+ if (text == null)
100
+ return false;
101
+ return /^\d{5}$/.test(text);
102
+ }
56
103
  function splitByModelParameters(parts) {
104
+ parts = parts.slice();
57
105
  for (let i = 0; i < parts.length; i++) {
58
- const part = parts[i];
59
- if (isParametersText(part)) {
106
+ let part = parts[i];
107
+ let isParameters = isParametersText(part);
108
+ if (!isParameters && isParametersText(part.split(".").shift())) {
109
+ const [parameters, ...rest] = part.split(".");
110
+ part = parameters;
111
+ parts[i] = part;
112
+ if (rest.length > 0) {
113
+ while (rest.length > 0)
114
+ parts.splice(i + 1, 0, rest.pop());
115
+ }
116
+ isParameters = true;
117
+ }
118
+ if (isParameters) {
60
119
  return {
61
120
  parameters: part.toUpperCase(),
62
121
  previousParts: parts.slice(0, i),
@@ -1 +1 @@
1
- {"version":3,"file":"parseModelFileName.js","sourceRoot":"","sources":["../../src/utils/parseModelFileName.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseModelFileName.js","sourceRoot":"","sources":["../../src/utils/parseModelFileName.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,37 @@
1
- export type ParseModelUri = {
1
+ import { ModelFileAccessTokens } from "./modelFileAccesTokens.js";
2
+ export declare const genericFilePartNumber: "{:\n{number}\n:}";
3
+ export type ParsedModelUri = ResolvedParsedModelUri | UnresolvedParsedModelUri;
4
+ export type UnresolvedParsedModelUri = {
5
+ type: "unresolved";
6
+ uri: string;
7
+ filePrefix: string;
8
+ baseFilename: string;
9
+ possibleFullFilenames: (string | `${string}${typeof genericFilePartNumber}${string}`)[];
10
+ resolveDetails: {
11
+ type: "hf";
12
+ user: string;
13
+ model: string;
14
+ tag: string;
15
+ };
16
+ };
17
+ export type ResolvedParsedModelUri = {
18
+ type: "resolved";
2
19
  uri: string;
3
20
  resolvedUrl: string;
4
21
  filePrefix: string;
5
22
  filename: string;
6
23
  fullFilename: string;
7
24
  };
8
- export declare function parseModelUri(urlOrUri: string, convertUrlToSupportedUri?: boolean): ParseModelUri | null;
25
+ export declare function parseModelUri(urlOrUri: string, convertUrlToSupportedUri?: boolean): ParsedModelUri | null;
9
26
  export declare function isModelUri(modelUri: string): boolean;
27
+ export declare function resolveParsedModelUri(modelUri: ParsedModelUri, options?: {
28
+ tokens?: ModelFileAccessTokens;
29
+ signal?: AbortSignal;
30
+ authorizationHeader?: string;
31
+ }): Promise<ResolvedParsedModelUri>;
32
+ export declare function resolveParsedModelUri(modelUri: ParsedModelUri | undefined | null, options?: {
33
+ tokens?: ModelFileAccessTokens;
34
+ signal?: AbortSignal;
35
+ authorizationHeader?: string;
36
+ }): Promise<ResolvedParsedModelUri | undefined | null>;
37
+ export declare function getAuthorizationHeader(headers?: Record<string, string>): string | undefined;
@@ -1,17 +1,43 @@
1
1
  import filenamify from "filenamify";
2
2
  import { normalizeGgufDownloadUrl } from "../gguf/utils/normalizeGgufDownloadUrl.js";
3
3
  import { getFilenameForBinarySplitGgufPartUrls, resolveBinarySplitGgufPartUrls } from "../gguf/utils/resolveBinarySplitGgufPartUrls.js";
4
- import { getGgufSplitPartsInfo } from "../gguf/utils/resolveSplitGgufParts.js";
4
+ import { createSplitPartFilename, getGgufSplitPartsInfo } from "../gguf/utils/resolveSplitGgufParts.js";
5
+ import { ggufQuantNames } from "../gguf/utils/ggufQuantNames.js";
5
6
  import { isUrl } from "./isUrl.js";
7
+ import { resolveModelFileAccessTokensTryHeaders } from "./modelFileAccesTokens.js";
8
+ import { parseModelFileName } from "./parseModelFileName.js";
6
9
  const defaultHuggingFaceBranch = "main";
10
+ const defaultHuggingFaceFileQuantization = "Q4_K_M";
11
+ export const genericFilePartNumber = "{:\n{number}\n:}";
7
12
  export function parseModelUri(urlOrUri, convertUrlToSupportedUri = false) {
8
- if (urlOrUri.startsWith("hf:"))
9
- return parseHuggingFaceUriContent(urlOrUri.slice("hf:".length));
13
+ if (urlOrUri.startsWith("hf://"))
14
+ return parseHuggingFaceUriContent(urlOrUri.slice("hf://".length), urlOrUri);
15
+ else if (urlOrUri.startsWith("huggingface://"))
16
+ return parseHuggingFaceUriContent(urlOrUri.slice("huggingface://".length), urlOrUri);
17
+ else if (urlOrUri.startsWith("hf:"))
18
+ return parseHuggingFaceUriContent(urlOrUri.slice("hf:".length), urlOrUri);
10
19
  else if (urlOrUri.startsWith("huggingface:"))
11
- return parseHuggingFaceUriContent(urlOrUri.slice("huggingface:".length));
20
+ return parseHuggingFaceUriContent(urlOrUri.slice("huggingface:".length), urlOrUri);
21
+ else if (urlOrUri.startsWith("hf.co/"))
22
+ return parseHuggingFaceUriContent(urlOrUri.slice("hf.co/".length), urlOrUri);
23
+ else if (urlOrUri.startsWith("huggingface.co/"))
24
+ return parseHuggingFaceUriContent(urlOrUri.slice("huggingface.co/".length), urlOrUri);
25
+ if (isUrl(urlOrUri)) {
26
+ const parsedUrl = new URL(urlOrUri);
27
+ if (parsedUrl.hostname === "huggingface.co" || parsedUrl.hostname === "hf.co") {
28
+ const pathnameParts = parsedUrl.pathname.split("/");
29
+ const slashes = pathnameParts.length - 1;
30
+ const [, user, model] = pathnameParts;
31
+ if (slashes === 2 && user != null && model != null) {
32
+ return parseHuggingFaceUriContent([
33
+ decodeURIComponent(user), "/", decodeURIComponent(model)
34
+ ].join(""), urlOrUri);
35
+ }
36
+ }
37
+ }
12
38
  if (convertUrlToSupportedUri && isUrl(urlOrUri)) {
13
39
  const parsedUrl = new URL(normalizeGgufDownloadUrl(urlOrUri));
14
- if (parsedUrl.hostname === "huggingface.co") {
40
+ if (parsedUrl.hostname === "huggingface.co" || parsedUrl.hostname === "hf.co") {
15
41
  const pathnameParts = parsedUrl.pathname.split("/");
16
42
  const [, user, model, resolve, branch, ...pathParts] = pathnameParts;
17
43
  const filePath = pathParts.join("/");
@@ -26,7 +52,7 @@ export function parseModelUri(urlOrUri, convertUrlToSupportedUri = false) {
26
52
  branch !== defaultHuggingFaceBranch
27
53
  ? `#${decodeURIComponent(branch)}`
28
54
  : ""
29
- ].join(""));
55
+ ].join(""), urlOrUri);
30
56
  }
31
57
  }
32
58
  }
@@ -40,9 +66,157 @@ export function isModelUri(modelUri) {
40
66
  return false;
41
67
  }
42
68
  }
43
- function parseHuggingFaceUriContent(uri) {
69
+ export async function resolveParsedModelUri(modelUri, { tokens, signal, authorizationHeader } = {}) {
70
+ if (modelUri == null)
71
+ return modelUri;
72
+ if (modelUri.type === "resolved")
73
+ return modelUri;
74
+ if (modelUri.resolveDetails.type !== "hf")
75
+ throw new Error(`Unsupported model URI type: ${modelUri.resolveDetails.type}`);
76
+ const modelTag = modelUri.resolveDetails.tag || "latest";
77
+ const manifest = await fetchHuggingFaceModelManifest({
78
+ user: modelUri.resolveDetails.user,
79
+ model: modelUri.resolveDetails.model,
80
+ modelTag,
81
+ fullUri: modelUri.uri,
82
+ tokens,
83
+ signal,
84
+ authorizationHeader
85
+ });
86
+ const filename = manifest.rfilename;
87
+ const splitPartsInfo = getGgufSplitPartsInfo(filename);
88
+ function resolveQuantizationText() {
89
+ if (modelTag.toLowerCase() !== "latest")
90
+ return modelTag.toUpperCase();
91
+ if (filename.toLowerCase().includes(defaultHuggingFaceFileQuantization.toLowerCase()))
92
+ return defaultHuggingFaceFileQuantization;
93
+ const quantizationText = parseModelFileName(filename).quantization;
94
+ if (quantizationText != null && ggufQuantNames.has(quantizationText))
95
+ return quantizationText;
96
+ return "";
97
+ }
98
+ const quantizationText = resolveQuantizationText();
99
+ const resolvedBaseFilename = modelUri.baseFilename + (quantizationText !== "" ? ("." + quantizationText) : "") + ".gguf";
100
+ const resolvedFilename = splitPartsInfo != null
101
+ ? createSplitPartFilename(resolvedBaseFilename, splitPartsInfo.part, splitPartsInfo.parts)
102
+ : resolvedBaseFilename;
103
+ const resolvedUrl = normalizeGgufDownloadUrl([
104
+ "https://huggingface.co/", encodeURIComponent(modelUri.resolveDetails.user),
105
+ "/", encodeURIComponent(modelUri.resolveDetails.model),
106
+ "/resolve/", encodeURIComponent(defaultHuggingFaceBranch), "/",
107
+ filename
108
+ .split("/")
109
+ .map((item) => encodeURIComponent(item))
110
+ .join("/"),
111
+ "?download=true"
112
+ ].join(""));
113
+ return {
114
+ type: "resolved",
115
+ uri: modelUri.uri,
116
+ filePrefix: modelUri.filePrefix,
117
+ filename: resolvedFilename,
118
+ fullFilename: `${modelUri.filePrefix}${resolvedFilename}`,
119
+ resolvedUrl
120
+ };
121
+ }
122
+ export function getAuthorizationHeader(headers) {
123
+ return headers?.["Authorization"] || headers?.["authorization"];
124
+ }
125
+ async function fetchHuggingFaceModelManifest({ user, model, modelTag, fullUri, tokens, signal, authorizationHeader }) {
126
+ const manifestUrl = [
127
+ "https://huggingface.co/v2/", encodeURIComponent(user),
128
+ "/", encodeURIComponent(model),
129
+ "/manifests/", encodeURIComponent(modelTag)
130
+ ].join("");
131
+ const headersToTry = [
132
+ {},
133
+ await resolveModelFileAccessTokensTryHeaders(manifestUrl, tokens)
134
+ ];
135
+ while (headersToTry.length > 0) {
136
+ const headers = headersToTry.shift();
137
+ let response;
138
+ try {
139
+ response = await fetch(manifestUrl, {
140
+ headers: {
141
+ ...(authorizationHeader != null ? { "Authorization": authorizationHeader } : {}),
142
+ ...headers,
143
+ // we need this to get the `ggufFile` field in the response
144
+ // https://github.com/ggerganov/llama.cpp/pull/11195
145
+ "User-Agent": "llama-cpp"
146
+ },
147
+ signal
148
+ });
149
+ }
150
+ catch (err) {
151
+ throw new Error(`Failed to fetch manifest for resolving URI ${JSON.stringify(fullUri)}: ${err}`);
152
+ }
153
+ if ((response.status >= 500 || response.status === 429 || response.status === 401) && headersToTry.length > 0)
154
+ continue;
155
+ if (response.status === 400 || response.status === 404)
156
+ throw new Error(`Cannot get quantization "${modelTag}" for model "hf:${user}/${model}" or it does not exist`);
157
+ if (!response.ok)
158
+ throw new Error(`Failed to fetch manifest for ${JSON.stringify(fullUri)}: ${response.status} ${response.statusText}`);
159
+ try {
160
+ const json = await response.json();
161
+ if (json?.ggufFile?.rfilename == null)
162
+ throw new Error(`Invalid manifest for ${JSON.stringify(fullUri)}`);
163
+ return json.ggufFile;
164
+ }
165
+ catch (err) {
166
+ throw new Error(`Invalid manifest response for ${JSON.stringify(fullUri)}`);
167
+ }
168
+ }
169
+ throw new Error(`Failed to fetch manifest for ${JSON.stringify(fullUri)}: no more headers to try`);
170
+ }
171
+ function parseHuggingFaceUriContent(uri, fullUri) {
44
172
  const [user, model, ...pathParts] = uri.split("/");
45
173
  let rest = pathParts.join("/");
174
+ if (user != null && model != null && (rest === "" || model.includes(":"))) {
175
+ const [actualModel, tag, ...tagParts] = model.split(":");
176
+ const actualTag = tagParts.length > 0
177
+ ? [tag, ...tagParts].join(":").trimEnd()
178
+ : (tag ?? "").trimEnd();
179
+ const assumedQuant = ggufQuantNames.has(actualTag.toUpperCase())
180
+ ? actualTag.toUpperCase()
181
+ : undefined;
182
+ const resolvedTag = assumedQuant != null
183
+ ? assumedQuant
184
+ : actualTag;
185
+ if (actualModel == null || actualModel === "" || user === "")
186
+ throw new Error(`Invalid Hugging Face URI: ${fullUri}`);
187
+ const baseFilename = actualModel.toLowerCase().endsWith("-gguf")
188
+ ? filenamify(actualModel.slice(0, -"-gguf".length))
189
+ : filenamify(actualModel);
190
+ const filePrefix = buildHuggingFaceFilePrefix(user, actualModel, defaultHuggingFaceBranch, [], baseFilename + ".gguf");
191
+ return {
192
+ type: "unresolved",
193
+ uri: `hf:${user}/${actualModel}${resolvedTag !== "" ? `:${resolvedTag}` : ""}`,
194
+ filePrefix,
195
+ baseFilename,
196
+ possibleFullFilenames: assumedQuant != null
197
+ ? [
198
+ `${filePrefix}${baseFilename}.${assumedQuant}.gguf`,
199
+ `${filePrefix}${baseFilename}.${assumedQuant}-00001-of-${genericFilePartNumber}.gguf`
200
+ ]
201
+ : (resolvedTag != null && resolvedTag !== "" && resolvedTag !== "latest")
202
+ ? [
203
+ `${filePrefix}${baseFilename}.${resolvedTag.toUpperCase()}.gguf`,
204
+ `${filePrefix}${baseFilename}.${resolvedTag.toUpperCase()}-00001-of-${genericFilePartNumber}.gguf`
205
+ ]
206
+ : [
207
+ `${filePrefix}${baseFilename}.${defaultHuggingFaceFileQuantization}.gguf`,
208
+ `${filePrefix}${baseFilename}.${defaultHuggingFaceFileQuantization}-00001-of-${genericFilePartNumber}.gguf`,
209
+ `${filePrefix}${baseFilename}.gguf`,
210
+ `${filePrefix}${baseFilename}-00001-of-${genericFilePartNumber}.gguf`
211
+ ],
212
+ resolveDetails: {
213
+ type: "hf",
214
+ user,
215
+ model: actualModel,
216
+ tag: resolvedTag
217
+ }
218
+ };
219
+ }
46
220
  const hashIndex = rest.indexOf("#");
47
221
  let branch = defaultHuggingFaceBranch;
48
222
  if (hashIndex >= 0) {
@@ -56,31 +230,17 @@ function parseHuggingFaceUriContent(uri) {
56
230
  .map((part) => encodeURIComponent(part))
57
231
  .join("/");
58
232
  if (!user || !model || filePath === "")
59
- throw new Error(`Invalid Hugging Face URI: ${uri}`);
233
+ throw new Error(`Invalid Hugging Face URI: ${fullUri}`);
60
234
  const resolvedUrl = normalizeGgufDownloadUrl([
61
235
  "https://huggingface.co/", encodeURIComponent(user),
62
236
  "/", encodeURIComponent(model),
63
237
  "/resolve/", encodeURIComponent(branch),
64
238
  "/", filePath, "?download=true"
65
239
  ].join(""));
66
- function buildFilePrefix(user, model, branch, pathParts, filename) {
67
- const res = ["hf"];
68
- res.push(filenamify(user));
69
- if (!doesFilenameMatchExactModelName(filename, model) || branch !== defaultHuggingFaceBranch)
70
- res.push(filenamify(model));
71
- if (branch !== defaultHuggingFaceBranch)
72
- res.push(filenamify(branch));
73
- if (pathParts.length > 0) {
74
- if (doesFilenameMatchExactFolderName(filename, pathParts.at(-1)))
75
- pathParts = pathParts.slice(0, -1);
76
- if (pathParts.length > 0)
77
- res.push(filenamify(pathParts.join("__")));
78
- }
79
- return res.join("_") + "_";
80
- }
81
240
  const filename = resolveModelFilenameFromUrl(resolvedUrl);
82
- const filePrefix = buildFilePrefix(user, model, branch, filePathParts.slice(0, -1), filename);
241
+ const filePrefix = buildHuggingFaceFilePrefix(user, model, branch, filePathParts.slice(0, -1), filename);
83
242
  return {
243
+ type: "resolved",
84
244
  uri: `hf:${user}/${model}/${filePathParts.join("/")}${branch !== defaultHuggingFaceBranch ? `#${branch}` : ""}`,
85
245
  resolvedUrl,
86
246
  filePrefix,
@@ -88,6 +248,21 @@ function parseHuggingFaceUriContent(uri) {
88
248
  fullFilename: `${filePrefix}${filename}`
89
249
  };
90
250
  }
251
+ function buildHuggingFaceFilePrefix(user, model, branch, pathParts, filename) {
252
+ const res = ["hf"];
253
+ res.push(filenamify(user));
254
+ if (!doesFilenameMatchExactModelName(filename, model) || branch !== defaultHuggingFaceBranch)
255
+ res.push(filenamify(model));
256
+ if (branch !== defaultHuggingFaceBranch)
257
+ res.push(filenamify(branch));
258
+ if (pathParts.length > 0) {
259
+ if (doesFilenameMatchExactFolderName(filename, pathParts.at(-1)))
260
+ pathParts = pathParts.slice(0, -1);
261
+ if (pathParts.length > 0)
262
+ res.push(filenamify(pathParts.join("__")));
263
+ }
264
+ return res.join("_") + "_";
265
+ }
91
266
  function resolveModelFilenameFromUrl(modelUrl) {
92
267
  const binarySplitPartUrls = resolveBinarySplitGgufPartUrls(modelUrl);
93
268
  if (binarySplitPartUrls instanceof Array)
@@ -1 +1 @@
1
- {"version":3,"file":"parseModelUri.js","sourceRoot":"","sources":["../../src/utils/parseModelUri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseModelUri.js","sourceRoot":"","sources":["../../src/utils/parseModelUri.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
- import { ParseModelUri } from "./parseModelUri.js";
1
+ import { ParsedModelUri } from "./parseModelUri.js";
2
2
  export type ResolveModelDestination = {
3
3
  type: "url";
4
4
  url: string;
5
5
  } | {
6
6
  type: "uri";
7
- url: string;
7
+ url?: string;
8
8
  uri: string;
9
- parsedUri: ParseModelUri;
9
+ parsedUri: ParsedModelUri;
10
10
  } | {
11
11
  type: "file";
12
12
  path: string;
13
13
  };
14
14
  export declare function resolveModelDestination(modelDestination: string, convertUrlToUri?: boolean): ResolveModelDestination;
15
+ export declare function resolveModelArgToFilePathOrUrl(modelDestination: string, optionHeaders?: Record<string, string>): Promise<[resolvedModelDestination: ResolveModelDestination, filePathOrUrl: string]>;
@@ -1,13 +1,15 @@
1
1
  import path from "path";
2
2
  import { normalizeGgufDownloadUrl } from "../gguf/utils/normalizeGgufDownloadUrl.js";
3
- import { parseModelUri } from "./parseModelUri.js";
3
+ import { parseModelUri, resolveParsedModelUri, getAuthorizationHeader } from "./parseModelUri.js";
4
4
  import { isUrl } from "./isUrl.js";
5
5
  export function resolveModelDestination(modelDestination, convertUrlToUri = false) {
6
6
  const parsedUri = parseModelUri(modelDestination, convertUrlToUri);
7
7
  if (parsedUri != null) {
8
8
  return {
9
9
  type: "uri",
10
- url: parsedUri.resolvedUrl,
10
+ url: parsedUri.type === "resolved"
11
+ ? parsedUri.resolvedUrl
12
+ : undefined,
11
13
  uri: parsedUri.uri,
12
14
  parsedUri
13
15
  };
@@ -28,4 +30,25 @@ export function resolveModelDestination(modelDestination, convertUrlToUri = fals
28
30
  throw new Error(`Invalid path: ${modelDestination}`);
29
31
  }
30
32
  }
33
+ export async function resolveModelArgToFilePathOrUrl(modelDestination, optionHeaders) {
34
+ const resolvedModelDestination = resolveModelDestination(modelDestination);
35
+ if (resolvedModelDestination.type == "file")
36
+ return [resolvedModelDestination, resolvedModelDestination.path];
37
+ else if (resolvedModelDestination.type === "url")
38
+ return [resolvedModelDestination, resolvedModelDestination.url];
39
+ else if (resolvedModelDestination.parsedUri.type === "resolved")
40
+ return [resolvedModelDestination, resolvedModelDestination.parsedUri.resolvedUrl];
41
+ const resolvedModelUri = await resolveParsedModelUri(resolvedModelDestination.parsedUri, {
42
+ authorizationHeader: getAuthorizationHeader(optionHeaders)
43
+ });
44
+ return [
45
+ {
46
+ type: "uri",
47
+ url: resolvedModelUri.resolvedUrl,
48
+ uri: resolvedModelUri.uri,
49
+ parsedUri: resolvedModelUri
50
+ },
51
+ resolvedModelUri.resolvedUrl
52
+ ];
53
+ }
31
54
  //# sourceMappingURL=resolveModelDestination.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveModelDestination.js","sourceRoot":"","sources":["../../src/utils/resolveModelDestination.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,wBAAwB,EAAC,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAgB,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAejC,MAAM,UAAU,uBAAuB,CAAC,gBAAwB,EAAE,kBAA2B,KAAK;IAC9F,MAAM,SAAS,GAAG,aAAa,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAEnE,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO;YACH,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,SAAS,CAAC,WAAW;YAC1B,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,SAAS;SACZ,CAAC;IACN,CAAC;SAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,OAAO;YACH,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,wBAAwB,CAAC,gBAAgB,CAAC;SAClD,CAAC;IACN,CAAC;IAED,IAAI,CAAC;QACD,OAAO;YACH,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC;SACtD,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,gBAAgB,EAAE,CAAC,CAAC;IACzD,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"resolveModelDestination.js","sourceRoot":"","sources":["../../src/utils/resolveModelDestination.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,wBAAwB,EAAC,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAC,aAAa,EAAkB,qBAAqB,EAAE,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAChH,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAejC,MAAM,UAAU,uBAAuB,CAAC,gBAAwB,EAAE,kBAA2B,KAAK;IAC9F,MAAM,SAAS,GAAG,aAAa,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAEnE,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO;YACH,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,SAAS,CAAC,IAAI,KAAK,UAAU;gBAC9B,CAAC,CAAC,SAAS,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS;YACf,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,SAAS;SACZ,CAAC;IACN,CAAC;SAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,OAAO;YACH,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,wBAAwB,CAAC,gBAAgB,CAAC;SAClD,CAAC;IACN,CAAC;IAED,IAAI,CAAC;QACD,OAAO;YACH,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC;SACtD,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,gBAAgB,EAAE,CAAC,CAAC;IACzD,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAChD,gBAAwB,EAAE,aAAsC;IAEhE,MAAM,wBAAwB,GAAG,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;IAE3E,IAAI,wBAAwB,CAAC,IAAI,IAAI,MAAM;QACvC,OAAO,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;SAChE,IAAI,wBAAwB,CAAC,IAAI,KAAK,KAAK;QAC5C,OAAO,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC;SAC/D,IAAI,wBAAwB,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU;QAC3D,OAAO,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAEtF,MAAM,gBAAgB,GAAG,MAAM,qBAAqB,CAAC,wBAAwB,CAAC,SAAS,EAAE;QACrF,mBAAmB,EAAE,sBAAsB,CAAC,aAAa,CAAC;KAC7D,CAAC,CAAC;IACH,OAAO;QACH;YACI,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,gBAAgB,CAAC,WAAW;YACjC,GAAG,EAAE,gBAAgB,CAAC,GAAG;YACzB,SAAS,EAAE,gBAAgB;SAC9B;QACD,gBAAgB,CAAC,WAAW;KAC/B,CAAC;AACN,CAAC"}