node-llama-cpp 3.0.0-beta.12 → 3.0.0-beta.14

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 (235) hide show
  1. package/dist/ChatWrapper.d.ts +1 -0
  2. package/dist/ChatWrapper.js +2 -1
  3. package/dist/ChatWrapper.js.map +1 -1
  4. package/dist/TemplateChatWrapper.d.ts +68 -0
  5. package/dist/TemplateChatWrapper.js +239 -0
  6. package/dist/TemplateChatWrapper.js.map +1 -0
  7. package/dist/bindings/AddonTypes.d.ts +15 -5
  8. package/dist/bindings/Llama.d.ts +9 -3
  9. package/dist/bindings/Llama.js +61 -19
  10. package/dist/bindings/Llama.js.map +1 -1
  11. package/dist/bindings/consts.d.ts +2 -0
  12. package/dist/bindings/consts.js +11 -0
  13. package/dist/bindings/consts.js.map +1 -0
  14. package/dist/bindings/getLlama.d.ts +14 -18
  15. package/dist/bindings/getLlama.js +210 -78
  16. package/dist/bindings/getLlama.js.map +1 -1
  17. package/dist/bindings/types.d.ts +11 -5
  18. package/dist/bindings/types.js +22 -0
  19. package/dist/bindings/types.js.map +1 -1
  20. package/dist/bindings/utils/asyncEvery.d.ts +5 -0
  21. package/dist/bindings/utils/asyncEvery.js +15 -0
  22. package/dist/bindings/utils/asyncEvery.js.map +1 -0
  23. package/dist/bindings/utils/asyncSome.d.ts +5 -0
  24. package/dist/bindings/utils/asyncSome.js +27 -0
  25. package/dist/bindings/utils/asyncSome.js.map +1 -0
  26. package/dist/bindings/utils/cloneLlamaCppRepo.js +13 -3
  27. package/dist/bindings/utils/cloneLlamaCppRepo.js.map +1 -1
  28. package/dist/bindings/utils/compileLLamaCpp.d.ts +4 -1
  29. package/dist/bindings/utils/compileLLamaCpp.js +136 -74
  30. package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
  31. package/dist/bindings/utils/detectAvailableComputeLayers.d.ts +14 -0
  32. package/dist/bindings/utils/detectAvailableComputeLayers.js +300 -0
  33. package/dist/bindings/utils/detectAvailableComputeLayers.js.map +1 -0
  34. package/dist/bindings/utils/detectGlibc.d.ts +4 -0
  35. package/dist/bindings/utils/detectGlibc.js +36 -0
  36. package/dist/bindings/utils/detectGlibc.js.map +1 -0
  37. package/dist/bindings/utils/getBestComputeLayersAvailable.d.ts +9 -0
  38. package/dist/bindings/utils/getBestComputeLayersAvailable.js +29 -0
  39. package/dist/bindings/utils/getBestComputeLayersAvailable.js.map +1 -0
  40. package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js +12 -6
  41. package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js.map +1 -1
  42. package/dist/bindings/utils/getGpuTypesToUseForOption.d.ts +11 -0
  43. package/dist/bindings/utils/getGpuTypesToUseForOption.js +30 -0
  44. package/dist/bindings/utils/getGpuTypesToUseForOption.js.map +1 -0
  45. package/dist/bindings/utils/getLinuxDistroInfo.d.ts +9 -0
  46. package/dist/bindings/utils/getLinuxDistroInfo.js +46 -0
  47. package/dist/bindings/utils/getLinuxDistroInfo.js.map +1 -0
  48. package/dist/bindings/utils/getPlatformInfo.d.ts +5 -0
  49. package/dist/bindings/utils/getPlatformInfo.js +28 -0
  50. package/dist/bindings/utils/getPlatformInfo.js.map +1 -0
  51. package/dist/bindings/utils/hasFileInPath.d.ts +2 -0
  52. package/dist/bindings/utils/hasFileInPath.js +34 -0
  53. package/dist/bindings/utils/hasFileInPath.js.map +1 -0
  54. package/dist/bindings/utils/logBinaryUsageExampleToConsole.d.ts +1 -1
  55. package/dist/bindings/utils/logBinaryUsageExampleToConsole.js +3 -9
  56. package/dist/bindings/utils/logBinaryUsageExampleToConsole.js.map +1 -1
  57. package/dist/bindings/utils/logDistroInstallInstruction.d.ts +14 -0
  58. package/dist/bindings/utils/logDistroInstallInstruction.js +48 -0
  59. package/dist/bindings/utils/logDistroInstallInstruction.js.map +1 -0
  60. package/dist/bindings/utils/resolveChatWrapperBasedOnWrapperTypeName.d.ts +9 -2
  61. package/dist/bindings/utils/resolveChatWrapperBasedOnWrapperTypeName.js +10 -4
  62. package/dist/bindings/utils/resolveChatWrapperBasedOnWrapperTypeName.js.map +1 -1
  63. package/dist/bindings/utils/testBindingBinary.d.ts +1 -0
  64. package/dist/bindings/utils/testBindingBinary.js +98 -0
  65. package/dist/bindings/utils/testBindingBinary.js.map +1 -0
  66. package/dist/bindings/utils/testCmakeBinary.d.ts +5 -0
  67. package/dist/bindings/utils/testCmakeBinary.js +32 -0
  68. package/dist/bindings/utils/testCmakeBinary.js.map +1 -0
  69. package/dist/chatWrappers/ChatMLChatWrapper.js +1 -1
  70. package/dist/chatWrappers/ChatMLChatWrapper.js.map +1 -1
  71. package/dist/chatWrappers/GemmaChatWrapper.d.ts +18 -0
  72. package/dist/chatWrappers/GemmaChatWrapper.js +86 -0
  73. package/dist/chatWrappers/GemmaChatWrapper.js.map +1 -0
  74. package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js +3 -0
  75. package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js.map +1 -1
  76. package/dist/cli/cli.js +2 -0
  77. package/dist/cli/cli.js.map +1 -1
  78. package/dist/cli/commands/BuildCommand.d.ts +5 -5
  79. package/dist/cli/commands/BuildCommand.js +78 -60
  80. package/dist/cli/commands/BuildCommand.js.map +1 -1
  81. package/dist/cli/commands/ChatCommand.js +31 -14
  82. package/dist/cli/commands/ChatCommand.js.map +1 -1
  83. package/dist/cli/commands/CompleteCommand.js +30 -13
  84. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  85. package/dist/cli/commands/DebugCommand.js +3 -9
  86. package/dist/cli/commands/DebugCommand.js.map +1 -1
  87. package/dist/cli/commands/DownloadCommand.d.ts +5 -5
  88. package/dist/cli/commands/DownloadCommand.js +97 -56
  89. package/dist/cli/commands/DownloadCommand.js.map +1 -1
  90. package/dist/cli/commands/InfillCommand.js +30 -13
  91. package/dist/cli/commands/InfillCommand.js.map +1 -1
  92. package/dist/cli/commands/InspectCommand.d.ts +7 -0
  93. package/dist/cli/commands/InspectCommand.js +113 -0
  94. package/dist/cli/commands/InspectCommand.js.map +1 -0
  95. package/dist/cli/commands/OnPostInstallCommand.js +2 -0
  96. package/dist/cli/commands/OnPostInstallCommand.js.map +1 -1
  97. package/dist/cli/utils/logUsedGpuTypeOption.d.ts +2 -0
  98. package/dist/cli/utils/logUsedGpuTypeOption.js +9 -0
  99. package/dist/cli/utils/logUsedGpuTypeOption.js.map +1 -0
  100. package/dist/config.d.ts +4 -4
  101. package/dist/config.js +11 -12
  102. package/dist/config.js.map +1 -1
  103. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.d.ts +3 -0
  104. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js +3 -0
  105. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js.map +1 -1
  106. package/dist/evaluator/LlamaContext/LlamaContext.d.ts +5 -8
  107. package/dist/evaluator/LlamaContext/LlamaContext.js +111 -65
  108. package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
  109. package/dist/evaluator/LlamaContext/types.d.ts +13 -6
  110. package/dist/evaluator/LlamaEmbeddingContext.d.ts +6 -5
  111. package/dist/evaluator/LlamaEmbeddingContext.js +32 -22
  112. package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
  113. package/dist/evaluator/LlamaGrammar.js +1 -0
  114. package/dist/evaluator/LlamaGrammar.js.map +1 -1
  115. package/dist/evaluator/LlamaModel.d.ts +16 -16
  116. package/dist/evaluator/LlamaModel.js +95 -20
  117. package/dist/evaluator/LlamaModel.js.map +1 -1
  118. package/dist/gguf/GGUFInsights.d.ts +28 -0
  119. package/dist/gguf/GGUFInsights.js +58 -0
  120. package/dist/gguf/GGUFInsights.js.map +1 -0
  121. package/dist/gguf/GGUFMetadata.d.ts +19 -0
  122. package/dist/gguf/GGUFMetadata.js +38 -0
  123. package/dist/gguf/GGUFMetadata.js.map +1 -0
  124. package/dist/gguf/errors/InvalidGGUFMagicError.d.ts +3 -0
  125. package/dist/gguf/errors/InvalidGGUFMagicError.js +6 -0
  126. package/dist/gguf/errors/InvalidGGUFMagicError.js.map +1 -0
  127. package/dist/gguf/errors/MetadataNotParsedYetError.d.ts +3 -0
  128. package/dist/gguf/errors/MetadataNotParsedYetError.js +6 -0
  129. package/dist/gguf/errors/MetadataNotParsedYetError.js.map +1 -0
  130. package/dist/gguf/errors/MissingNodeLlamaError.d.ts +3 -0
  131. package/dist/gguf/errors/MissingNodeLlamaError.js +6 -0
  132. package/dist/gguf/errors/MissingNodeLlamaError.js.map +1 -0
  133. package/dist/gguf/errors/ModelScore/NotEnoughVRamError.d.ts +5 -0
  134. package/dist/gguf/errors/ModelScore/NotEnoughVRamError.js +11 -0
  135. package/dist/gguf/errors/ModelScore/NotEnoughVRamError.js.map +1 -0
  136. package/dist/gguf/errors/UnsupportedMetadataTypeError.d.ts +4 -0
  137. package/dist/gguf/errors/UnsupportedMetadataTypeError.js +8 -0
  138. package/dist/gguf/errors/UnsupportedMetadataTypeError.js.map +1 -0
  139. package/dist/gguf/ggufParser/GGUFParser.d.ts +18 -0
  140. package/dist/gguf/ggufParser/GGUFParser.js +123 -0
  141. package/dist/gguf/ggufParser/GGUFParser.js.map +1 -0
  142. package/dist/gguf/ggufParser/GGUFTypes.d.ts +257 -0
  143. package/dist/gguf/ggufParser/GGUFTypes.js +2 -0
  144. package/dist/gguf/ggufParser/GGUFTypes.js.map +1 -0
  145. package/dist/gguf/ggufParser/checkArchitecture.d.ts +14 -0
  146. package/dist/gguf/ggufParser/checkArchitecture.js +74 -0
  147. package/dist/gguf/ggufParser/checkArchitecture.js.map +1 -0
  148. package/dist/gguf/ggufParser/stream/GGUFBaseStream.d.ts +38 -0
  149. package/dist/gguf/ggufParser/stream/GGUFBaseStream.js +83 -0
  150. package/dist/gguf/ggufParser/stream/GGUFBaseStream.js.map +1 -0
  151. package/dist/gguf/ggufParser/stream/GGUFFetchStream.d.ts +14 -0
  152. package/dist/gguf/ggufParser/stream/GGUFFetchStream.js +35 -0
  153. package/dist/gguf/ggufParser/stream/GGUFFetchStream.js.map +1 -0
  154. package/dist/gguf/ggufParser/stream/GGUFReadStream.d.ts +15 -0
  155. package/dist/gguf/ggufParser/stream/GGUFReadStream.js +40 -0
  156. package/dist/gguf/ggufParser/stream/GGUFReadStream.js.map +1 -0
  157. package/dist/index.d.ts +3 -1
  158. package/dist/index.js +3 -1
  159. package/dist/index.js.map +1 -1
  160. package/dist/state.d.ts +2 -0
  161. package/dist/state.js +7 -0
  162. package/dist/state.js.map +1 -1
  163. package/dist/utils/DisposeGuard.d.ts +13 -0
  164. package/dist/utils/DisposeGuard.js +120 -0
  165. package/dist/utils/DisposeGuard.js.map +1 -0
  166. package/dist/utils/LlamaText.js +2 -2
  167. package/dist/utils/LlamaText.js.map +1 -1
  168. package/dist/utils/cmake.js +23 -10
  169. package/dist/utils/cmake.js.map +1 -1
  170. package/dist/utils/getBuildDefaults.d.ts +1 -3
  171. package/dist/utils/getBuildDefaults.js +2 -4
  172. package/dist/utils/getBuildDefaults.js.map +1 -1
  173. package/dist/utils/getConsoleLogPrefix.d.ts +1 -1
  174. package/dist/utils/getConsoleLogPrefix.js +5 -4
  175. package/dist/utils/getConsoleLogPrefix.js.map +1 -1
  176. package/dist/utils/mergeUnionTypes.d.ts +6 -0
  177. package/dist/utils/mergeUnionTypes.js +2 -0
  178. package/dist/utils/mergeUnionTypes.js.map +1 -0
  179. package/dist/utils/parseTextTemplate.d.ts +66 -0
  180. package/dist/utils/parseTextTemplate.js +116 -0
  181. package/dist/utils/parseTextTemplate.js.map +1 -0
  182. package/dist/utils/removeNullFields.d.ts +2 -2
  183. package/dist/utils/removeNullFields.js.map +1 -1
  184. package/dist/utils/spawnCommand.d.ts +11 -1
  185. package/dist/utils/spawnCommand.js +55 -7
  186. package/dist/utils/spawnCommand.js.map +1 -1
  187. package/llama/CMakeLists.txt +11 -5
  188. package/llama/addon.cpp +700 -83
  189. package/llama/binariesGithubRelease.json +1 -1
  190. package/llama/gitRelease.bundle +0 -0
  191. package/llama/grammars/json.gbnf +1 -1
  192. package/llama/grammars/json_arr.gbnf +1 -1
  193. package/llama/llama.cpp.info.json +1 -1
  194. package/llamaBins/linux-arm64/_nlcBuildMetadata.json +1 -0
  195. package/llamaBins/linux-arm64/llama-addon.node +0 -0
  196. package/llamaBins/linux-armv7l/_nlcBuildMetadata.json +1 -0
  197. package/llamaBins/linux-armv7l/llama-addon.node +0 -0
  198. package/llamaBins/linux-x64/_nlcBuildMetadata.json +1 -0
  199. package/llamaBins/linux-x64/llama-addon.node +0 -0
  200. package/llamaBins/linux-x64-cuda/_nlcBuildMetadata.json +1 -0
  201. package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
  202. package/llamaBins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -0
  203. package/llamaBins/linux-x64-vulkan/llama-addon.node +0 -0
  204. package/llamaBins/mac-arm64-metal/_nlcBuildMetadata.json +1 -0
  205. package/llamaBins/mac-arm64-metal/default.metallib +0 -0
  206. package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
  207. package/llamaBins/mac-x64/_nlcBuildMetadata.json +1 -0
  208. package/llamaBins/mac-x64/llama-addon.node +0 -0
  209. package/llamaBins/win-x64/_nlcBuildMetadata.json +1 -0
  210. package/llamaBins/win-x64/llama-addon.exp +0 -0
  211. package/llamaBins/win-x64/llama-addon.lib +0 -0
  212. package/llamaBins/win-x64/llama-addon.node +0 -0
  213. package/llamaBins/win-x64-cuda/_nlcBuildMetadata.json +1 -0
  214. package/llamaBins/win-x64-cuda/llama-addon.exp +0 -0
  215. package/llamaBins/win-x64-cuda/llama-addon.lib +0 -0
  216. package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
  217. package/llamaBins/win-x64-vulkan/_nlcBuildMetadata.json +1 -0
  218. package/llamaBins/win-x64-vulkan/llama-addon.exp +0 -0
  219. package/llamaBins/win-x64-vulkan/llama-addon.lib +0 -0
  220. package/llamaBins/win-x64-vulkan/llama-addon.node +0 -0
  221. package/package.json +14 -9
  222. package/dist/cli/utils/logEnabledComputeLayers.d.ts +0 -8
  223. package/dist/cli/utils/logEnabledComputeLayers.js +0 -11
  224. package/dist/cli/utils/logEnabledComputeLayers.js.map +0 -1
  225. package/llamaBins/linux-arm64/.buildMetadata.json +0 -1
  226. package/llamaBins/linux-armv7l/.buildMetadata.json +0 -1
  227. package/llamaBins/linux-x64/.buildMetadata.json +0 -1
  228. package/llamaBins/linux-x64-cuda/.buildMetadata.json +0 -1
  229. package/llamaBins/linux-x64-vulkan/.buildMetadata.json +0 -1
  230. package/llamaBins/mac-arm64-metal/.buildMetadata.json +0 -1
  231. package/llamaBins/mac-arm64-metal/ggml-metal.metal +0 -7022
  232. package/llamaBins/mac-x64/.buildMetadata.json +0 -1
  233. package/llamaBins/win-x64/.buildMetadata.json +0 -1
  234. package/llamaBins/win-x64-cuda/.buildMetadata.json +0 -1
  235. package/llamaBins/win-x64-vulkan/.buildMetadata.json +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GGUFFetchStream.js","sourceRoot":"","sources":["../../../../src/gguf/ggufParser/stream/GGUFFetchStream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,cAAc,EAAE,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAMpE,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,cAAc;IACvC,GAAG,CAAS;IACZ,OAAO,GAAoC,EAAE,CAAC;IAE9D,YAAmB,GAAW,EAAE,UAA2C,EAAE;QACzE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAEe,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAM,GAAG,CAAC;QACzD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,qBAAqB;YACrE,IAAI,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;aAC3D;YAED,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,KAAK,IAAI,EAAE;gBAC7C,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,CAAC,CAAC;YACxG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAEvB,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YACrC,OAAO,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,KAAa,EAAE,GAAW;QAC5D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,OAAO,EAAE;gBACL,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,EAAE;gBAC9B,MAAM,EAAE,KAAK;aAChB;SACJ,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;CACJ"}
@@ -0,0 +1,15 @@
1
+ /// <reference types="node" />
2
+ import retry from "async-retry";
3
+ import GgufBaseStream from "./GGUFBaseStream.js";
4
+ type GGUFReadStreamOptions = {
5
+ retry?: retry.Options;
6
+ mode: string;
7
+ };
8
+ export default class GGUFReadStream extends GgufBaseStream {
9
+ readonly options: GGUFReadStreamOptions;
10
+ readonly path: string;
11
+ constructor(path: string, options?: Partial<GGUFReadStreamOptions>);
12
+ readNBytes(numBytes: number, offset?: number): Promise<Buffer>;
13
+ private _readBytesWithoutRetry;
14
+ }
15
+ export {};
@@ -0,0 +1,40 @@
1
+ import fs from "node:fs/promises";
2
+ import retry from "async-retry";
3
+ import { withLock } from "lifecycle-utils";
4
+ import GgufBaseStream, { ALLOCATION_SIZE } from "./GGUFBaseStream.js";
5
+ const DEFAULT_OPTIONS = {
6
+ mode: "r"
7
+ };
8
+ export default class GGUFReadStream extends GgufBaseStream {
9
+ options;
10
+ path;
11
+ constructor(path, options = {}) {
12
+ super();
13
+ this.path = path;
14
+ this.options = { ...DEFAULT_OPTIONS, ...options };
15
+ }
16
+ async readNBytes(numBytes, offset = 0) {
17
+ return await withLock(this, "_lock", async function readNBytesWithoutLock() {
18
+ if (offset + numBytes < this._buffer.length) {
19
+ return this._buffer.subarray(offset, offset + numBytes);
20
+ }
21
+ const readMissingBytes = await retry(async () => {
22
+ return await this._readBytesWithoutRetry(numBytes + ALLOCATION_SIZE, this._buffer.length);
23
+ }, this.options.retry);
24
+ this._addToBuffer(readMissingBytes);
25
+ return await readNBytesWithoutLock.call(this);
26
+ });
27
+ }
28
+ async _readBytesWithoutRetry(numBytes, offset) {
29
+ const fd = await fs.open(this.path, this.options.mode);
30
+ try {
31
+ const buffer = Buffer.alloc(numBytes);
32
+ await fd.read(buffer, 0, numBytes, offset);
33
+ return buffer;
34
+ }
35
+ finally {
36
+ await fd.close();
37
+ }
38
+ }
39
+ }
40
+ //# sourceMappingURL=GGUFReadStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GGUFReadStream.js","sourceRoot":"","sources":["../../../../src/gguf/ggufParser/stream/GGUFReadStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AACzC,OAAO,cAAc,EAAE,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAOpE,MAAM,eAAe,GAA0B;IAC3C,IAAI,EAAE,GAAG;CACZ,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACtC,OAAO,CAAwB;IAC/B,IAAI,CAAS;IAE7B,YAAmB,IAAY,EAAE,UAA0C,EAAE;QACzE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,EAAC,GAAG,eAAe,EAAE,GAAG,OAAO,EAAC,CAAC;IACpD,CAAC;IAEe,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAM,GAAG,CAAC;QACzD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,qBAAqB;YACrE,IAAI,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;aAC3D;YAED,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,KAAK,IAAI,EAAE;gBAC5C,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,GAAG,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9F,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAEvB,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACpC,OAAO,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,QAAgB,EAAE,MAAc;QACjE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI;YACA,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC;SACjB;gBAAS;YACN,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;SACpB;IACL,CAAC;CACJ"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,8 @@ import { ChatMLChatWrapper } from "./chatWrappers/ChatMLChatWrapper.js";
24
24
  import { FalconChatWrapper } from "./chatWrappers/FalconChatWrapper.js";
25
25
  import { AlpacaChatWrapper } from "./chatWrappers/AlpacaChatWrapper.js";
26
26
  import { FunctionaryChatWrapper } from "./chatWrappers/FunctionaryChatWrapper.js";
27
+ import { GemmaChatWrapper } from "./chatWrappers/GemmaChatWrapper.js";
28
+ import { TemplateChatWrapper, type TemplateChatWrapperOptions } from "./TemplateChatWrapper.js";
27
29
  import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
28
30
  import { resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames, type ChatWrapperTypeName } from "./bindings/utils/resolveChatWrapperBasedOnWrapperTypeName.js";
29
31
  import { LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokenJSON } from "./utils/LlamaText.js";
@@ -31,4 +33,4 @@ import { appendUserMessageToChatHistory } from "./utils/appendUserMessageToChatH
31
33
  import { getModuleVersion } from "./utils/getModuleVersion.js";
32
34
  import { type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, isChatModelResponseFunctionCall, type LLamaContextualRepeatPenalty } from "./types.js";
33
35
  import { type GbnfJsonArraySchema, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonObjectSchema, type GbnfJsonOneOfSchema, type GbnfJsonSchema, type GbnfJsonSchemaImmutableType, type GbnfJsonSchemaToType } from "./utils/gbnfJson/types.js";
34
- export { Llama, getLlama, type LlamaOptions, LlamaLogLevel, NoBinaryFoundError, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, LlamaContextSequence, type LlamaContextOptions, type BatchingOptions, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizeStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type LlamaContextSequenceRepeatPenalty, LlamaEmbeddingContext, type LlamaEmbeddingContextOptions, LlamaEmbedding, type LlamaEmbeddingJSON, LlamaChatSession, defineChatSessionFunction, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty, LlamaChat, type LlamaChatOptions, type LLamaChatGenerateResponseOptions, type LLamaChatContextShiftOptions, type LLamaContextualRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall, LlamaCompletion, type LlamaCompletionOptions, type LlamaCompletionGenerationOptions, type LlamaInfillGenerationOptions, UnsupportedError, DisposedError, ChatWrapper, type ChatWrapperSettings, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, resolveChatWrapperBasedOnModel, resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames, type ChatWrapperTypeName, LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokenJSON, appendUserMessageToChatHistory, getModuleVersion, type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, isChatModelResponseFunctionCall, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema };
36
+ export { Llama, getLlama, type LlamaOptions, LlamaLogLevel, NoBinaryFoundError, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, LlamaContextSequence, type LlamaContextOptions, type BatchingOptions, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizeStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type LlamaContextSequenceRepeatPenalty, LlamaEmbeddingContext, type LlamaEmbeddingContextOptions, LlamaEmbedding, type LlamaEmbeddingJSON, LlamaChatSession, defineChatSessionFunction, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty, LlamaChat, type LlamaChatOptions, type LLamaChatGenerateResponseOptions, type LLamaChatContextShiftOptions, type LLamaContextualRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall, LlamaCompletion, type LlamaCompletionOptions, type LlamaCompletionGenerationOptions, type LlamaInfillGenerationOptions, UnsupportedError, DisposedError, ChatWrapper, type ChatWrapperSettings, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, GemmaChatWrapper, TemplateChatWrapper, type TemplateChatWrapperOptions, resolveChatWrapperBasedOnModel, resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames, type ChatWrapperTypeName, LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokenJSON, appendUserMessageToChatHistory, getModuleVersion, type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, isChatModelResponseFunctionCall, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema };
package/dist/index.js CHANGED
@@ -23,11 +23,13 @@ import { ChatMLChatWrapper } from "./chatWrappers/ChatMLChatWrapper.js";
23
23
  import { FalconChatWrapper } from "./chatWrappers/FalconChatWrapper.js";
24
24
  import { AlpacaChatWrapper } from "./chatWrappers/AlpacaChatWrapper.js";
25
25
  import { FunctionaryChatWrapper } from "./chatWrappers/FunctionaryChatWrapper.js";
26
+ import { GemmaChatWrapper } from "./chatWrappers/GemmaChatWrapper.js";
27
+ import { TemplateChatWrapper } from "./TemplateChatWrapper.js";
26
28
  import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
27
29
  import { resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames } from "./bindings/utils/resolveChatWrapperBasedOnWrapperTypeName.js";
28
30
  import { LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText } from "./utils/LlamaText.js";
29
31
  import { appendUserMessageToChatHistory } from "./utils/appendUserMessageToChatHistory.js";
30
32
  import { getModuleVersion } from "./utils/getModuleVersion.js";
31
33
  import { isChatModelResponseFunctionCall } from "./types.js";
32
- export { Llama, getLlama, LlamaLogLevel, NoBinaryFoundError, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, LlamaGrammar, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, LlamaContext, LlamaContextSequence, LlamaEmbeddingContext, LlamaEmbedding, LlamaChatSession, defineChatSessionFunction, LlamaChat, LlamaCompletion, UnsupportedError, DisposedError, ChatWrapper, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, resolveChatWrapperBasedOnModel, resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames, LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, appendUserMessageToChatHistory, getModuleVersion, isChatModelResponseFunctionCall };
34
+ export { Llama, getLlama, LlamaLogLevel, NoBinaryFoundError, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, LlamaGrammar, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, LlamaContext, LlamaContextSequence, LlamaEmbeddingContext, LlamaEmbedding, LlamaChatSession, defineChatSessionFunction, LlamaChat, LlamaCompletion, UnsupportedError, DisposedError, ChatWrapper, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, GemmaChatWrapper, TemplateChatWrapper, resolveChatWrapperBasedOnModel, resolveChatWrapperBasedOnWrapperTypeName, chatWrapperTypeNames, LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, appendUserMessageToChatHistory, getModuleVersion, isChatModelResponseFunctionCall };
33
35
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,QAAQ,EAAe,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAC,kBAAkB,EAAC,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAC,UAAU,EAAE,sBAAsB,EAA0B,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AACvH,OAAO,EAAC,YAAY,EAA2B,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAC,sBAAsB,EAAC,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAC,8BAA8B,EAAC,MAAM,2DAA2D,CAAC;AACzG,OAAO,EAAC,2BAA2B,EAAqC,MAAM,4CAA4C,CAAC;AAC3H,OAAO,EAAC,YAAY,EAAE,oBAAoB,EAAC,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EACH,qBAAqB,EAAqC,cAAc,EAC3E,MAAM,sCAAsC,CAAC;AAM9C,OAAO,EACH,gBAAgB,EAEnB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAC,yBAAyB,EAAC,MAAM,iEAAiE,CAAC;AAC1G,OAAO,EACH,SAAS,EAEZ,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACH,eAAe,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAC,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAC,gBAAgB,EAAC,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAC,gBAAgB,EAAC,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAC,kBAAkB,EAAC,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAC,iBAAiB,EAAC,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAC,iBAAiB,EAAC,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAC,iBAAiB,EAAC,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAC,8BAA8B,EAAC,MAAM,kDAAkD,CAAC;AAChG,OAAO,EACH,wCAAwC,EAAE,oBAAoB,EACjE,MAAM,8DAA8D,CAAC;AACtE,OAAO,EACH,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAE1E,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,8BAA8B,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAGS,+BAA+B,EAC9C,MAAM,YAAY,CAAC;AAOpB,OAAO,EACH,KAAK,EACL,QAAQ,EAER,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EAEtB,YAAY,EAEZ,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAE3B,YAAY,EACZ,oBAAoB,EAWpB,qBAAqB,EAErB,cAAc,EAEd,gBAAgB,EAChB,yBAAyB,EAKzB,SAAS,EAOT,eAAe,EAIf,gBAAgB,EAChB,aAAa,EACb,WAAW,EAEX,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,wCAAwC,EACxC,oBAAoB,EAEpB,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,YAAY,EAIZ,8BAA8B,EAC9B,gBAAgB,EAUhB,+BAA+B,EAUlC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/state.d.ts CHANGED
@@ -2,3 +2,5 @@ export declare function getIsInDocumentationMode(): boolean;
2
2
  export declare function setIsInDocumentationMode(value: boolean): void;
3
3
  export declare function getIsRunningFromCLI(): boolean;
4
4
  export declare function setIsRunningFromCLI(value: boolean): void;
5
+ export declare function getForceShowConsoleLogPrefix(): boolean;
6
+ export declare function setForceShowConsoleLogPrefix(value: boolean): void;
package/dist/state.js CHANGED
@@ -1,5 +1,6 @@
1
1
  let isInDocumentationMode = false;
2
2
  let isInCLI = false;
3
+ let forceShowConsoleLogPrefix = false;
3
4
  export function getIsInDocumentationMode() {
4
5
  return isInDocumentationMode;
5
6
  }
@@ -12,4 +13,10 @@ export function getIsRunningFromCLI() {
12
13
  export function setIsRunningFromCLI(value) {
13
14
  isInCLI = value;
14
15
  }
16
+ export function getForceShowConsoleLogPrefix() {
17
+ return forceShowConsoleLogPrefix;
18
+ }
19
+ export function setForceShowConsoleLogPrefix(value) {
20
+ forceShowConsoleLogPrefix = value;
21
+ }
15
22
  //# sourceMappingURL=state.js.map
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAClC,IAAI,OAAO,GAAG,KAAK,CAAC;AAEpB,MAAM,UAAU,wBAAwB;IACpC,OAAO,qBAAqB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAc;IACnD,qBAAqB,GAAG,KAAK,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,mBAAmB;IAC/B,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAC9C,OAAO,GAAG,KAAK,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAClC,IAAI,OAAO,GAAG,KAAK,CAAC;AACpB,IAAI,yBAAyB,GAAG,KAAK,CAAC;AAEtC,MAAM,UAAU,wBAAwB;IACpC,OAAO,qBAAqB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAc;IACnD,qBAAqB,GAAG,KAAK,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,mBAAmB;IAC/B,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAC9C,OAAO,GAAG,KAAK,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,4BAA4B;IACxC,OAAO,yBAAyB,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACvD,yBAAyB,GAAG,KAAK,CAAC;AACtC,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare class DisposeGuard {
2
+ constructor(parentDisposeGuards?: DisposeGuard[]);
3
+ addParentDisposeGuard(parent: DisposeGuard): void;
4
+ removeParentDisposeGuard(parent: DisposeGuard): void;
5
+ acquireDisposeLock(): Promise<void>;
6
+ createPreventDisposalHandle(ignoreAwaitingDispose?: boolean): DisposalPreventionHandle;
7
+ }
8
+ export declare class DisposalPreventionHandle {
9
+ private constructor();
10
+ dispose(): void;
11
+ [Symbol.dispose](): void;
12
+ get disposed(): boolean;
13
+ }
@@ -0,0 +1,120 @@
1
+ import { DisposedError } from "lifecycle-utils";
2
+ export class DisposeGuard {
3
+ /** @internal */ _preventionHandles = 0;
4
+ /** @internal */ _awaitingDisposeLockCallbacks = [];
5
+ /** @internal */ _disposeActivated = false;
6
+ /** @internal */ _parentDisposeGuardsLocks = new Map();
7
+ constructor(parentDisposeGuards = []) {
8
+ for (const parent of parentDisposeGuards)
9
+ this._parentDisposeGuardsLocks.set(parent, null);
10
+ }
11
+ addParentDisposeGuard(parent) {
12
+ if (this._parentDisposeGuardsLocks.has(parent))
13
+ return;
14
+ this._parentDisposeGuardsLocks.set(parent, null);
15
+ if (this._preventionHandles > 0)
16
+ this._parentDisposeGuardsLocks.set(parent, parent.createPreventDisposalHandle(true));
17
+ }
18
+ removeParentDisposeGuard(parent) {
19
+ const parentLock = this._parentDisposeGuardsLocks.get(parent);
20
+ if (parentLock != null) {
21
+ parentLock.dispose();
22
+ this._parentDisposeGuardsLocks.delete(parent);
23
+ }
24
+ }
25
+ async acquireDisposeLock() {
26
+ return new Promise((accept) => {
27
+ if (this._preventionHandles > 0)
28
+ this._awaitingDisposeLockCallbacks.push(accept);
29
+ else {
30
+ this._disposeActivated = true;
31
+ accept();
32
+ }
33
+ });
34
+ }
35
+ createPreventDisposalHandle(ignoreAwaitingDispose = false) {
36
+ if (this._isDisposeActivated() || (!ignoreAwaitingDispose && this._hasAwaitingDisposeLocks()))
37
+ throw new DisposedError();
38
+ this._preventionHandles++;
39
+ try {
40
+ this._updateParentDisposeGuardLocks();
41
+ }
42
+ catch (err) {
43
+ this._preventionHandles--;
44
+ if (this._preventionHandles === 0)
45
+ this._updateParentDisposeGuardLocks();
46
+ throw err;
47
+ }
48
+ return DisposalPreventionHandle._create(() => {
49
+ this._preventionHandles--;
50
+ this._activateLocksIfNeeded();
51
+ this._updateParentDisposeGuardLocks(true);
52
+ });
53
+ }
54
+ /** @internal */
55
+ _isDisposeActivated() {
56
+ if (this._disposeActivated)
57
+ return true;
58
+ return [...this._parentDisposeGuardsLocks.keys()].some((parent) => parent._isDisposeActivated());
59
+ }
60
+ /** @internal */
61
+ _activateLocksIfNeeded() {
62
+ if (this._preventionHandles > 0)
63
+ return;
64
+ while (this._awaitingDisposeLockCallbacks.length > 0) {
65
+ this._disposeActivated = true;
66
+ this._awaitingDisposeLockCallbacks.shift()();
67
+ }
68
+ }
69
+ /** @internal */
70
+ _updateParentDisposeGuardLocks(onlyAllowRemoval = false) {
71
+ if (this._preventionHandles === 0) {
72
+ for (const parent of this._parentDisposeGuardsLocks.keys()) {
73
+ const parentLock = this._parentDisposeGuardsLocks.get(parent);
74
+ if (parentLock == null)
75
+ continue;
76
+ parentLock.dispose();
77
+ this._parentDisposeGuardsLocks.set(parent, null);
78
+ }
79
+ }
80
+ else if (!onlyAllowRemoval) {
81
+ for (const parent of this._parentDisposeGuardsLocks.keys()) {
82
+ if (this._parentDisposeGuardsLocks.get(parent) != null)
83
+ continue;
84
+ this._parentDisposeGuardsLocks.set(parent, parent.createPreventDisposalHandle(true));
85
+ }
86
+ }
87
+ }
88
+ /** @internal */
89
+ _hasAwaitingDisposeLocks() {
90
+ if (this._awaitingDisposeLockCallbacks.length > 0)
91
+ return true;
92
+ return [...this._parentDisposeGuardsLocks.keys()].some((parent) => parent._hasAwaitingDisposeLocks());
93
+ }
94
+ }
95
+ export class DisposalPreventionHandle {
96
+ /** @internal */
97
+ _dispose;
98
+ constructor(dispose) {
99
+ this._dispose = dispose;
100
+ this.dispose = this.dispose.bind(this);
101
+ this[Symbol.dispose] = this[Symbol.dispose].bind(this);
102
+ }
103
+ dispose() {
104
+ if (this._dispose != null) {
105
+ this._dispose();
106
+ this._dispose = null;
107
+ }
108
+ }
109
+ [Symbol.dispose]() {
110
+ this.dispose();
111
+ }
112
+ get disposed() {
113
+ return this._dispose == null;
114
+ }
115
+ /** @internal */
116
+ static _create(dispose) {
117
+ return new DisposalPreventionHandle(dispose);
118
+ }
119
+ }
120
+ //# sourceMappingURL=DisposeGuard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisposeGuard.js","sourceRoot":"","sources":["../../src/utils/DisposeGuard.ts"],"names":[],"mappings":"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"}
@@ -168,7 +168,7 @@ function createLlamaText(history) {
168
168
  }
169
169
  function createHistoryFromStringsAndValues(strings, values) {
170
170
  function addItemToRes(res, item) {
171
- if (item === undefined || item === "")
171
+ if (item === undefined || item === "" || (item instanceof SpecialToken && item.value === ""))
172
172
  return res;
173
173
  else if (typeof item === "string" || item instanceof SpecialToken)
174
174
  return res.concat([item]);
@@ -178,7 +178,7 @@ function createHistoryFromStringsAndValues(strings, values) {
178
178
  return res.concat(item.reduce((res, value) => {
179
179
  if (isLlamaText(value))
180
180
  return res.concat(value.values);
181
- else if (value === "")
181
+ else if (value === "" || (value instanceof SpecialToken && value.value === ""))
182
182
  return res;
183
183
  return res.concat([value]);
184
184
  }, []));
@@ -1 +1 @@
1
- {"version":3,"file":"LlamaText.js","sourceRoot":"","sources":["../../src/utils/LlamaText.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlamaText.js","sourceRoot":"","sources":["../../src/utils/LlamaText.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import which from "which";
4
4
  import chalk from "chalk";
5
5
  import { chmodr } from "chmodrp";
6
6
  import { defaultXpacksCacheDirectory, defaultXpacksStoreDirectory, llamaDirectory, localXpacksCacheDirectory, localXpacksStoreDirectory, xpackDirectory, xpmVersion } from "../config.js";
7
+ import { logDistroInstallInstruction } from "../bindings/utils/logDistroInstallInstruction.js";
7
8
  import { spawnCommand } from "./spawnCommand.js";
8
9
  import withStatusLogs from "./withStatusLogs.js";
9
10
  import { withLockfile } from "./withLockfile.js";
@@ -18,8 +19,10 @@ export async function hasBuiltinCmake() {
18
19
  }
19
20
  export async function getCmakePath() {
20
21
  try {
21
- const resolvedPath = await which("cmake");
22
- if (resolvedPath !== "")
22
+ const resolvedPath = await which("cmake", {
23
+ nothrow: true
24
+ });
25
+ if (resolvedPath !== "" && resolvedPath != null)
23
26
  return resolvedPath;
24
27
  }
25
28
  catch (err) { }
@@ -48,14 +51,24 @@ export async function downloadCmakeIfNeeded(wrapWithStatusLogs = false) {
48
51
  catch (err) { }
49
52
  if (!wrapWithStatusLogs)
50
53
  await downloadCmake({ progressLogs: wrapWithStatusLogs });
51
- else
52
- await withStatusLogs({
53
- loading: chalk.blue("Downloading cmake"),
54
- success: chalk.blue("Downloaded cmake"),
55
- fail: chalk.blue("Failed to download cmake")
56
- }, async () => {
57
- await downloadCmake({ progressLogs: wrapWithStatusLogs });
58
- });
54
+ else {
55
+ try {
56
+ await withStatusLogs({
57
+ loading: chalk.blue("Downloading cmake"),
58
+ success: chalk.blue("Downloaded cmake"),
59
+ fail: chalk.blue("Failed to download cmake")
60
+ }, async () => {
61
+ await downloadCmake({ progressLogs: wrapWithStatusLogs });
62
+ });
63
+ }
64
+ catch (err) {
65
+ await logDistroInstallInstruction('To install "cmake", ', {
66
+ linuxPackages: { apt: ["cmake"], apk: ["cmake"] },
67
+ macOsPackages: { brew: ["cmake"] }
68
+ });
69
+ throw err;
70
+ }
71
+ }
59
72
  }
60
73
  export async function clearLocalCmake() {
61
74
  await fs.remove(localXpacksStoreDirectory);
@@ -1 +1 @@
1
- {"version":3,"file":"cmake.js","sourceRoot":"","sources":["../../src/utils/cmake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmake.js","sourceRoot":"","sources":["../../src/utils/cmake.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  export declare function getBuildDefaults(): Promise<{
2
2
  repo: string;
3
3
  release: string;
4
- metalSupport: boolean;
5
- cudaSupport: boolean;
6
- vulkanSupport: boolean;
4
+ gpuSupport: false | "cuda" | "vulkan" | "metal" | "auto";
7
5
  }>;
@@ -1,11 +1,9 @@
1
- import { defaultLlamaCppCudaSupport, defaultLlamaCppGitHubRepo, defaultLlamaCppMetalSupport, defaultLlamaCppRelease, defaultLlamaCppVulkanSupport } from "../config.js";
1
+ import { defaultLlamaCppGitHubRepo, defaultLlamaCppGpuSupport, defaultLlamaCppRelease } from "../config.js";
2
2
  export async function getBuildDefaults() {
3
3
  return {
4
4
  repo: defaultLlamaCppGitHubRepo,
5
5
  release: defaultLlamaCppRelease,
6
- metalSupport: defaultLlamaCppMetalSupport,
7
- cudaSupport: defaultLlamaCppCudaSupport,
8
- vulkanSupport: defaultLlamaCppVulkanSupport
6
+ gpuSupport: defaultLlamaCppGpuSupport
9
7
  };
10
8
  }
11
9
  //# sourceMappingURL=getBuildDefaults.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getBuildDefaults.js","sourceRoot":"","sources":["../../src/utils/getBuildDefaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,0BAA0B,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,4BAA4B,EAC3I,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAClC,OAAO;QACH,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,sBAAsB;QAC/B,YAAY,EAAE,2BAA2B;QACzC,WAAW,EAAE,0BAA0B;QACvC,aAAa,EAAE,4BAA4B;KAC9C,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"getBuildDefaults.js","sourceRoot":"","sources":["../../src/utils/getBuildDefaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,yBAAyB,EAAE,yBAAyB,EAAE,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAE1G,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAClC,OAAO;QACH,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,sBAAsB;QAC/B,UAAU,EAAE,yBAAyB;KACxC,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- export declare function getConsoleLogPrefix(forcePrefix?: boolean): string;
1
+ export declare function getConsoleLogPrefix(forcePrefix?: boolean, padEnd?: boolean): string;
@@ -1,9 +1,10 @@
1
1
  import chalk from "chalk";
2
- import { getIsRunningFromCLI } from "../state.js";
3
- export function getConsoleLogPrefix(forcePrefix = false) {
2
+ import { getForceShowConsoleLogPrefix, getIsRunningFromCLI } from "../state.js";
3
+ export function getConsoleLogPrefix(forcePrefix = false, padEnd = true) {
4
4
  const isInCLI = getIsRunningFromCLI();
5
- if (!isInCLI || forcePrefix)
6
- return chalk.grey("[node-llama-cpp] ");
5
+ const forceShowLogPrefix = getForceShowConsoleLogPrefix();
6
+ if (!isInCLI || forceShowLogPrefix || forcePrefix)
7
+ return chalk.grey("[node-llama-cpp]") + (padEnd ? " " : "");
7
8
  return "";
8
9
  }
9
10
  //# sourceMappingURL=getConsoleLogPrefix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getConsoleLogPrefix.js","sourceRoot":"","sources":["../../src/utils/getConsoleLogPrefix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEhD,MAAM,UAAU,mBAAmB,CAAC,cAAuB,KAAK;IAC5D,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,IAAI,CAAC,OAAO,IAAI,WAAW;QACvB,OAAO,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAE3C,OAAO,EAAE,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"getConsoleLogPrefix.js","sourceRoot":"","sources":["../../src/utils/getConsoleLogPrefix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,4BAA4B,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAE9E,MAAM,UAAU,mBAAmB,CAAC,cAAuB,KAAK,EAAE,SAAkB,IAAI;IACpF,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACtC,MAAM,kBAAkB,GAAG,4BAA4B,EAAE,CAAC;IAE1D,IAAI,CAAC,OAAO,IAAI,kBAAkB,IAAI,WAAW;QAC7C,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEhE,OAAO,EAAE,CAAC;AACd,CAAC"}
@@ -0,0 +1,6 @@
1
+ type UnionToIntersection<U> = (U extends any ? ((k: U) => void) : never) extends ((k: infer I) => void) ? I : never;
2
+ type DistributeUnion<U> = {
3
+ [K in keyof U]: U[K];
4
+ };
5
+ export type MergeUnionTypes<T> = DistributeUnion<UnionToIntersection<T>>;
6
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mergeUnionTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeUnionTypes.js","sourceRoot":"","sources":["../../src/utils/mergeUnionTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,66 @@
1
+ import { MergeUnionTypes } from "./mergeUnionTypes.js";
2
+ /**
3
+ * Parses a text template into a map of parts and their prefixes and suffixes.
4
+ * This parser assumes each part occurs exactly once in the template, and that all parts must occur in the order they are defined.
5
+ * For example,
6
+ * ```typescript
7
+ * const res = parseTextTemplate(
8
+ * "Hello, {{name}}! What is the {{thing}}?",
9
+ * [{
10
+ * key: "name",
11
+ * text: "{{name}}"
12
+ * }, {
13
+ * key: "thing",
14
+ * text: "{{thing}}"
15
+ * }]
16
+ * );
17
+ * expect(res).to.eql({
18
+ * name: {
19
+ * prefix: "Hello, ",
20
+ * suffix: "! What is the "
21
+ * },
22
+ * thing: {
23
+ * prefix: "What is the ",
24
+ * suffix: "?"
25
+ * }
26
+ * });
27
+ * ```
28
+ *
29
+ * ```typescript
30
+ * const res2 = parseTextTemplate(
31
+ * "What is the {{thing}}?",
32
+ * [{
33
+ * key: "name",
34
+ * text: "{{name}}",
35
+ * optional: true
36
+ * }, {
37
+ * key: "thing",
38
+ * text: "{{thing}}"
39
+ * }]
40
+ * );
41
+ * expect(res2).to.eql({
42
+ * thing: {
43
+ * prefix: "What is the ",
44
+ * suffix: "?"
45
+ * }
46
+ * });
47
+ * ```
48
+ */
49
+ export declare function parseTextTemplate<const Parts extends readonly TextTemplatePart[]>(template: string, parts: Parts): ParsedTextTemplate<Parts>;
50
+ type TextTemplatePart = {
51
+ optional?: true | undefined;
52
+ key: string;
53
+ text: string;
54
+ };
55
+ type ParsedTextTemplate<Parts extends readonly TextTemplatePart[]> = MergeUnionTypes<{
56
+ [Num in keyof Parts]: {
57
+ [key in Parts[Num]["key"]]: Parts[Num]["optional"] extends true ? undefined | {
58
+ prefix: string;
59
+ suffix: string;
60
+ } : {
61
+ prefix: string;
62
+ suffix: string;
63
+ };
64
+ };
65
+ }[number]>;
66
+ export {};