node-llama-cpp 2.6.0 → 2.6.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.
package/README.md CHANGED
@@ -28,6 +28,7 @@
28
28
  * [Getting started guide](https://withcatai.github.io/node-llama-cpp/guide/)
29
29
  * [API reference](https://withcatai.github.io/node-llama-cpp/api/classes/LlamaModel)
30
30
  * [CLI help](https://withcatai.github.io/node-llama-cpp/guide/cli/)
31
+ * [Changelog](https://github.com/withcatai/node-llama-cpp/releases)
31
32
 
32
33
  ## Installation
33
34
  ```bash
@@ -7,8 +7,9 @@ type DownloadCommandArgs = {
7
7
  metal: boolean;
8
8
  cuda: boolean;
9
9
  skipBuild?: boolean;
10
+ noBundle?: boolean;
10
11
  updateBinariesReleaseMetadataAndSaveGitBundle?: boolean;
11
12
  };
12
13
  export declare const DownloadCommand: CommandModule<object, DownloadCommandArgs>;
13
- export declare function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget, metal, cuda, skipBuild, updateBinariesReleaseMetadataAndSaveGitBundle }: DownloadCommandArgs): Promise<void>;
14
+ export declare function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget, metal, cuda, skipBuild, noBundle, updateBinariesReleaseMetadataAndSaveGitBundle }: DownloadCommandArgs): Promise<void>;
14
15
  export {};
@@ -10,7 +10,7 @@ import { setBinariesGithubRelease } from "../../utils/binariesGithubRelease.js";
10
10
  import { downloadCmakeIfNeeded } from "../../utils/cmake.js";
11
11
  import withStatusLogs from "../../utils/withStatusLogs.js";
12
12
  import { getIsInDocumentationMode } from "../../state.js";
13
- import { saveCurrentRepoAsReleaseBundle } from "../../utils/gitReleaseBundles.js";
13
+ import { unshallowAndSquashCurrentRepoAndSaveItAsReleaseBundle } from "../../utils/gitReleaseBundles.js";
14
14
  import { cloneLlamaCppRepo } from "../../utils/cloneLlamaCppRepo.js";
15
15
  export const DownloadCommand = {
16
16
  command: "download",
@@ -54,6 +54,12 @@ export const DownloadCommand = {
54
54
  type: "boolean",
55
55
  default: false,
56
56
  description: "Skip building llama.cpp after downloading it"
57
+ })
58
+ .option("noBundle", {
59
+ alias: "nb",
60
+ type: "boolean",
61
+ default: false,
62
+ description: "Download a llama.cpp only from GitHub, even if a local git bundle exists for the release"
57
63
  })
58
64
  .option("updateBinariesReleaseMetadataAndSaveGitBundle", {
59
65
  type: "boolean",
@@ -64,7 +70,7 @@ export const DownloadCommand = {
64
70
  },
65
71
  handler: DownloadLlamaCppCommand
66
72
  };
67
- export async function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget, metal, cuda, skipBuild, updateBinariesReleaseMetadataAndSaveGitBundle }) {
73
+ export async function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget, metal, cuda, skipBuild, noBundle, updateBinariesReleaseMetadataAndSaveGitBundle }) {
68
74
  const octokit = new Octokit();
69
75
  const [githubOwner, githubRepo] = repo.split("/");
70
76
  console.log(`${chalk.yellow("Repo:")} ${repo}`);
@@ -118,7 +124,7 @@ export async function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget,
118
124
  await fs.remove(llamaCppDirectory);
119
125
  });
120
126
  console.log(chalk.blue("Cloning llama.cpp"));
121
- await cloneLlamaCppRepo(githubOwner, githubRepo, githubRelease.data.tag_name);
127
+ await cloneLlamaCppRepo(githubOwner, githubRepo, githubRelease.data.tag_name, noBundle != true);
122
128
  if (!skipBuild) {
123
129
  await downloadCmakeIfNeeded(true);
124
130
  await withStatusLogs({
@@ -137,7 +143,7 @@ export async function DownloadLlamaCppCommand({ repo, release, arch, nodeTarget,
137
143
  }
138
144
  if (isCI && updateBinariesReleaseMetadataAndSaveGitBundle) {
139
145
  await setBinariesGithubRelease(githubRelease.data.tag_name);
140
- await saveCurrentRepoAsReleaseBundle();
146
+ await unshallowAndSquashCurrentRepoAndSaveItAsReleaseBundle();
141
147
  }
142
148
  console.log();
143
149
  console.log();
@@ -1 +1 @@
1
- {"version":3,"file":"DownloadCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/DownloadCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DownloadCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/DownloadCommand.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare function cloneLlamaCppRepo(githubOwner: string, githubRepo: string, tag: string): Promise<void>;
1
+ export declare function cloneLlamaCppRepo(githubOwner: string, githubRepo: string, tag: string, useBundles?: boolean): Promise<void>;
@@ -4,8 +4,8 @@ import chalk from "chalk";
4
4
  import fs from "fs-extra";
5
5
  import { llamaCppDirectory } from "../config.js";
6
6
  import { getGitBundlePathForRelease } from "./gitReleaseBundles.js";
7
- export async function cloneLlamaCppRepo(githubOwner, githubRepo, tag) {
8
- const gitBundleForTag = await getGitBundlePathForRelease(githubOwner, githubRepo, tag);
7
+ export async function cloneLlamaCppRepo(githubOwner, githubRepo, tag, useBundles = true) {
8
+ const gitBundleForTag = !useBundles ? null : await getGitBundlePathForRelease(githubOwner, githubRepo, tag);
9
9
  const remoteGitUrl = `https://github.com/${githubOwner}/${githubRepo}.git`;
10
10
  async function withGitCloneProgress(cloneName, callback) {
11
11
  const progressBar = new cliProgress.Bar({
@@ -39,10 +39,7 @@ export async function cloneLlamaCppRepo(githubOwner, githubRepo, tag) {
39
39
  await gitWithCloneProgress.clone(gitBundleForTag, llamaCppDirectory, {
40
40
  "--quiet": null
41
41
  });
42
- await simpleGit(llamaCppDirectory)
43
- .removeRemote("origin");
44
- await simpleGit(llamaCppDirectory)
45
- .addRemote("origin", remoteGitUrl);
42
+ await simpleGit(llamaCppDirectory).removeRemote("origin");
46
43
  });
47
44
  return;
48
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cloneLlamaCppRepo.js","sourceRoot":"","sources":["../../src/utils/cloneLlamaCppRepo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloneLlamaCppRepo.js","sourceRoot":"","sources":["../../src/utils/cloneLlamaCppRepo.ts"],"names":[],"mappings":"AAAA,OAAO,SAAsB,MAAM,YAAY,CAAC;AAChD,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,0BAA0B,EAAC,MAAM,wBAAwB,CAAC;AAGlE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,WAAmB,EAAE,UAAkB,EAAE,GAAW,EAAE,aAAsB,IAAI;IACpH,MAAM,eAAe,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,0BAA0B,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC5G,MAAM,YAAY,GAAG,sBAAsB,WAAW,IAAI,UAAU,MAAM,CAAC;IAE3E,KAAK,UAAU,oBAAoB,CAAI,SAAiB,EAAE,QAAyD;QAC/G,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC;YACpC,eAAe,EAAE,KAAK;YACtB,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;SACpI,EAAE,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAEvC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE;YACtB,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,GAAG,WAAW,IAAI,UAAU,KAAK,SAAS,GAAG;SACtD,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAG,SAAS,CAAC;YACnC,QAAQ,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAC;gBACjC,MAAM,aAAa,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;gBAE7D,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;YAChE,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI;YACA,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YAEjD,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAExB,OAAO,GAAG,CAAC;SACd;gBAAS;YACN,WAAW,CAAC,IAAI,EAAE,CAAC;SACtB;IACL,CAAC;IAED,IAAI,eAAe,IAAI,IAAI,EAAE;QACzB,IAAI;YACA,MAAM,oBAAoB,CAAC,cAAc,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE;gBACtE,MAAM,oBAAoB,CAAC,KAAK,CAAC,eAAe,EAAE,iBAAiB,EAAE;oBACjE,SAAS,EAAE,IAAI;iBAClB,CAAC,CAAC;gBAEH,MAAM,SAAS,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YACH,OAAO;SACV;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,yDAAyD,EAAE,GAAG,CAAC,CAAC;SACjF;KACJ;IAED,MAAM,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE;QAChE,MAAM,oBAAoB,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,EAAE;YAC9D,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,IAAI;SAClB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare function saveCurrentRepoAsReleaseBundle(): Promise<void>;
1
+ export declare function unshallowAndSquashCurrentRepoAndSaveItAsReleaseBundle(): Promise<void>;
2
2
  export declare function getGitBundlePathForRelease(githubOwner: string, githubRepo: string, release: string): Promise<string | null>;
@@ -2,11 +2,40 @@ import fs from "fs-extra";
2
2
  import simpleGit from "simple-git";
3
3
  import { currentReleaseGitBundlePath, defaultLlamaCppGitHubRepo, llamaCppDirectory } from "../config.js";
4
4
  import { getBinariesGithubRelease } from "./binariesGithubRelease.js";
5
- export async function saveCurrentRepoAsReleaseBundle() {
5
+ export async function unshallowAndSquashCurrentRepoAndSaveItAsReleaseBundle() {
6
6
  if (!(await fs.pathExists(llamaCppDirectory)))
7
7
  throw new Error("llama.cpp directory does not exist");
8
8
  if (await fs.pathExists(currentReleaseGitBundlePath))
9
9
  await fs.remove(currentReleaseGitBundlePath);
10
+ await simpleGit(llamaCppDirectory).addConfig("user.name", "node-llama-cpp-ci");
11
+ await simpleGit(llamaCppDirectory).addConfig("user.email", "node-llama-cpp-ci@node-llama-cpp-ci.node-llama-cpp-ci");
12
+ const currentBranch = await getCurrentTagOrBranch();
13
+ await simpleGit(llamaCppDirectory).fetch(["--unshallow"]);
14
+ const lastCommit = await simpleGit(llamaCppDirectory).log(["-1"]);
15
+ const lastCommitMessage = lastCommit?.all?.[0]?.message;
16
+ const newCommitMessage = "## SQUASHED ##\n\n" + (lastCommitMessage ?? "");
17
+ const newCommitSha = await simpleGit(llamaCppDirectory).raw(["commit-tree", "HEAD^{tree}", "-m", newCommitMessage]);
18
+ await simpleGit(llamaCppDirectory).reset(["--hard", newCommitSha.trim()]);
19
+ const tags = await simpleGit(llamaCppDirectory).tags();
20
+ for (const tag of tags.all) {
21
+ await simpleGit(llamaCppDirectory).tag(["--delete", tag]);
22
+ }
23
+ const branches = await simpleGit(llamaCppDirectory).branch();
24
+ for (const branch of branches.all) {
25
+ try {
26
+ await simpleGit(llamaCppDirectory).branch(["--delete", branch]);
27
+ }
28
+ catch (err) {
29
+ // If the branch is not found, it's fine
30
+ // this happens as when there are no branches git returnes an output saying so, and `simpleGit` parses it as a branch,
31
+ // so the list may contain branches that do not exist.
32
+ // Right now, the non-existent branch name returned called `(no`, but I wouldn't want to rely on this specific text,
33
+ // as this is a bug in `simpleGit`.
34
+ }
35
+ }
36
+ if (currentBranch != null)
37
+ await simpleGit(llamaCppDirectory).tag([currentBranch]);
38
+ await simpleGit(llamaCppDirectory).raw(["gc", "--aggressive", "--prune=all"]);
10
39
  await simpleGit(llamaCppDirectory).raw(["bundle", "create", currentReleaseGitBundlePath, "HEAD"]);
11
40
  }
12
41
  export async function getGitBundlePathForRelease(githubOwner, githubRepo, release) {
@@ -22,4 +51,14 @@ export async function getGitBundlePathForRelease(githubOwner, githubRepo, releas
22
51
  return null;
23
52
  return currentReleaseGitBundlePath;
24
53
  }
54
+ async function getCurrentTagOrBranch() {
55
+ const branch = await simpleGit(llamaCppDirectory).revparse(["--abbrev-ref", "HEAD"]);
56
+ if (branch !== "HEAD")
57
+ return branch;
58
+ const tags = await simpleGit(llamaCppDirectory).tag(["--points-at", "HEAD"]);
59
+ const tagArray = tags.split("\n").filter(Boolean);
60
+ if (tagArray.length > 0)
61
+ return tagArray[0];
62
+ return null;
63
+ }
25
64
  //# sourceMappingURL=gitReleaseBundles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gitReleaseBundles.js","sourceRoot":"","sources":["../../src/utils/gitReleaseBundles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAC,2BAA2B,EAAE,yBAAyB,EAAE,iBAAiB,EAAC,MAAM,cAAc,CAAC;AACvG,OAAO,EAAC,wBAAwB,EAAC,MAAM,4BAA4B,CAAC;AAGpE,MAAM,CAAC,KAAK,UAAU,8BAA8B;IAChD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAE1D,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC;QAChD,MAAM,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAEjD,MAAM,SAAS,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,CAAC,CAAC,CAAC;AACtG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,WAAmB,EAAE,UAAkB,EAAE,OAAe;IACrG,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,GAAG,yBAAyB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrF,IAAI,WAAW,KAAK,kBAAkB,IAAI,UAAU,KAAK,iBAAiB;QACtE,OAAO,IAAI,CAAC;IAEhB,MAAM,oBAAoB,GAAG,MAAM,wBAAwB,EAAE,CAAC;IAE9D,IAAI,oBAAoB,KAAK,QAAQ;QACjC,OAAO,IAAI,CAAC;IAEhB,IAAI,oBAAoB,KAAK,OAAO;QAChC,OAAO,IAAI,CAAC;IAEhB,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC;IAEhB,OAAO,2BAA2B,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"gitReleaseBundles.js","sourceRoot":"","sources":["../../src/utils/gitReleaseBundles.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  {
2
- "release": "b1354"
2
+ "release": "b1357"
3
3
  }
Binary file
@@ -345,10 +345,11 @@ kernel void kernel_rms_norm(
345
345
  uint sgitg[[simdgroup_index_in_threadgroup]],
346
346
  uint tiisg[[thread_index_in_simdgroup]],
347
347
  uint ntg[[threads_per_threadgroup]]) {
348
- device const float4 * x = (device const float4 *) ((device const char *) src0 + tgpig*nb01);
349
- device const float * x_scalar = (device const float *) x;
350
- float4 sumf=0;
351
- float all_sum=0;
348
+ device const float4 * x = (device const float4 *) ((device const char *) src0 + tgpig*nb01);
349
+ device const float * x_scalar = (device const float *) x;
350
+
351
+ float4 sumf = 0;
352
+ float all_sum = 0;
352
353
 
353
354
  // parallel sum
354
355
  for (int i00 = tpitg; i00 < ne00/4; i00 += ntg) {
@@ -361,6 +362,7 @@ kernel void kernel_rms_norm(
361
362
  }
362
363
 
363
364
  threadgroup_barrier(mem_flags::mem_threadgroup);
365
+
364
366
  // broadcast, simd group number is ntg / 32
365
367
  for (uint i = ntg / 32 / 2; i > 0; i /= 2) {
366
368
  if (tpitg < i) {
@@ -368,7 +370,9 @@ kernel void kernel_rms_norm(
368
370
  }
369
371
  }
370
372
  if (tpitg == 0) {
371
- for (int i = 4 * (ne00 / 4); i < ne00; i++) {sum[0] += x_scalar[i];}
373
+ for (int i = 4 * (ne00 / 4); i < ne00; i++) {
374
+ sum[0] += x_scalar[i];
375
+ }
372
376
  sum[0] /= ne00;
373
377
  }
374
378
 
@@ -383,7 +387,9 @@ kernel void kernel_rms_norm(
383
387
  y[i00] = x[i00] * scale;
384
388
  }
385
389
  if (tpitg == 0) {
386
- for (int i00 = 4 * (ne00 / 4); i00 < ne00; i00++) {y_scalar[i00] = x_scalar[i00] * scale;}
390
+ for (int i00 = 4 * (ne00 / 4); i00 < ne00; i00++) {
391
+ y_scalar[i00] = x_scalar[i00] * scale;
392
+ }
387
393
  }
388
394
  }
389
395
 
@@ -345,10 +345,11 @@ kernel void kernel_rms_norm(
345
345
  uint sgitg[[simdgroup_index_in_threadgroup]],
346
346
  uint tiisg[[thread_index_in_simdgroup]],
347
347
  uint ntg[[threads_per_threadgroup]]) {
348
- device const float4 * x = (device const float4 *) ((device const char *) src0 + tgpig*nb01);
349
- device const float * x_scalar = (device const float *) x;
350
- float4 sumf=0;
351
- float all_sum=0;
348
+ device const float4 * x = (device const float4 *) ((device const char *) src0 + tgpig*nb01);
349
+ device const float * x_scalar = (device const float *) x;
350
+
351
+ float4 sumf = 0;
352
+ float all_sum = 0;
352
353
 
353
354
  // parallel sum
354
355
  for (int i00 = tpitg; i00 < ne00/4; i00 += ntg) {
@@ -361,6 +362,7 @@ kernel void kernel_rms_norm(
361
362
  }
362
363
 
363
364
  threadgroup_barrier(mem_flags::mem_threadgroup);
365
+
364
366
  // broadcast, simd group number is ntg / 32
365
367
  for (uint i = ntg / 32 / 2; i > 0; i /= 2) {
366
368
  if (tpitg < i) {
@@ -368,7 +370,9 @@ kernel void kernel_rms_norm(
368
370
  }
369
371
  }
370
372
  if (tpitg == 0) {
371
- for (int i = 4 * (ne00 / 4); i < ne00; i++) {sum[0] += x_scalar[i];}
373
+ for (int i = 4 * (ne00 / 4); i < ne00; i++) {
374
+ sum[0] += x_scalar[i];
375
+ }
372
376
  sum[0] /= ne00;
373
377
  }
374
378
 
@@ -383,7 +387,9 @@ kernel void kernel_rms_norm(
383
387
  y[i00] = x[i00] * scale;
384
388
  }
385
389
  if (tpitg == 0) {
386
- for (int i00 = 4 * (ne00 / 4); i00 < ne00; i00++) {y_scalar[i00] = x_scalar[i00] * scale;}
390
+ for (int i00 = 4 * (ne00 / 4); i00 < ne00; i00++) {
391
+ y_scalar[i00] = x_scalar[i00] * scale;
392
+ }
387
393
  }
388
394
  }
389
395
 
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-llama-cpp",
3
- "version": "2.6.0",
3
+ "version": "2.6.1",
4
4
  "description": "Run AI models locally on your machine with node.js bindings for llama.cpp",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",