node-llama-cpp 3.0.0-beta.43 → 3.0.0-beta.45

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 (329) hide show
  1. package/README.md +33 -21
  2. package/bins/_linux-arm64.moved.txt +1 -0
  3. package/bins/_linux-armv7l.moved.txt +1 -0
  4. package/bins/_linux-x64-vulkan.moved.txt +1 -0
  5. package/bins/_linux-x64.moved.txt +1 -0
  6. package/bins/_mac-arm64-metal.moved.txt +1 -0
  7. package/bins/_mac-x64.moved.txt +1 -0
  8. package/bins/_win-arm64.moved.txt +1 -0
  9. package/bins/_win-x64-vulkan.moved.txt +1 -0
  10. package/bins/_win-x64.moved.txt +1 -0
  11. package/dist/ChatWrapper.d.ts +11 -1
  12. package/dist/ChatWrapper.js +1 -1
  13. package/dist/ChatWrapper.js.map +1 -1
  14. package/dist/bindings/AddonTypes.d.ts +30 -19
  15. package/dist/bindings/Llama.d.ts +9 -0
  16. package/dist/bindings/Llama.js +33 -6
  17. package/dist/bindings/Llama.js.map +1 -1
  18. package/dist/bindings/consts.d.ts +1 -1
  19. package/dist/bindings/consts.js +2 -0
  20. package/dist/bindings/consts.js.map +1 -1
  21. package/dist/bindings/getLlama.d.ts +33 -5
  22. package/dist/bindings/getLlama.js +14 -3
  23. package/dist/bindings/getLlama.js.map +1 -1
  24. package/dist/bindings/types.d.ts +2 -2
  25. package/dist/bindings/types.js +2 -0
  26. package/dist/bindings/types.js.map +1 -1
  27. package/dist/bindings/utils/cloneLlamaCppRepo.js.map +1 -1
  28. package/dist/bindings/utils/compileLLamaCpp.d.ts +0 -1
  29. package/dist/bindings/utils/compileLLamaCpp.js +45 -7
  30. package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
  31. package/dist/bindings/utils/getBestComputeLayersAvailable.d.ts +0 -1
  32. package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js +2 -2
  33. package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js.map +1 -1
  34. package/dist/bindings/utils/getGpuTypesToUseForOption.d.ts +0 -1
  35. package/dist/bindings/utils/testCmakeBinary.d.ts +0 -1
  36. package/dist/chatWrappers/AlpacaChatWrapper.js +4 -3
  37. package/dist/chatWrappers/AlpacaChatWrapper.js.map +1 -1
  38. package/dist/chatWrappers/ChatMLChatWrapper.js +1 -1
  39. package/dist/chatWrappers/ChatMLChatWrapper.js.map +1 -1
  40. package/dist/chatWrappers/FalconChatWrapper.js +5 -4
  41. package/dist/chatWrappers/FalconChatWrapper.js.map +1 -1
  42. package/dist/chatWrappers/FunctionaryChatWrapper.d.ts +2 -2
  43. package/dist/chatWrappers/FunctionaryChatWrapper.js +200 -12
  44. package/dist/chatWrappers/FunctionaryChatWrapper.js.map +1 -1
  45. package/dist/chatWrappers/GemmaChatWrapper.js +1 -1
  46. package/dist/chatWrappers/GemmaChatWrapper.js.map +1 -1
  47. package/dist/chatWrappers/GeneralChatWrapper.js +5 -4
  48. package/dist/chatWrappers/GeneralChatWrapper.js.map +1 -1
  49. package/dist/chatWrappers/Llama2ChatWrapper.js +5 -6
  50. package/dist/chatWrappers/Llama2ChatWrapper.js.map +1 -1
  51. package/dist/chatWrappers/Llama3ChatWrapper.js +1 -1
  52. package/dist/chatWrappers/Llama3ChatWrapper.js.map +1 -1
  53. package/dist/chatWrappers/Llama3_1ChatWrapper.d.ts +13 -9
  54. package/dist/chatWrappers/Llama3_1ChatWrapper.js +92 -38
  55. package/dist/chatWrappers/Llama3_1ChatWrapper.js.map +1 -1
  56. package/dist/chatWrappers/MistralChatWrapper.d.ts +15 -0
  57. package/dist/chatWrappers/MistralChatWrapper.js +169 -0
  58. package/dist/chatWrappers/MistralChatWrapper.js.map +1 -0
  59. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.d.ts +25 -1
  60. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js +50 -12
  61. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js.map +1 -1
  62. package/dist/chatWrappers/generic/TemplateChatWrapper.d.ts +22 -16
  63. package/dist/chatWrappers/generic/TemplateChatWrapper.js +28 -24
  64. package/dist/chatWrappers/generic/TemplateChatWrapper.js.map +1 -1
  65. package/dist/chatWrappers/generic/utils/chatHistoryFunctionCallMessageTemplate.d.ts +1 -1
  66. package/dist/chatWrappers/utils/chunkChatItems.d.ts +10 -0
  67. package/dist/chatWrappers/utils/chunkChatItems.js +44 -0
  68. package/dist/chatWrappers/utils/chunkChatItems.js.map +1 -0
  69. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js +37 -26
  70. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js.map +1 -1
  71. package/dist/chatWrappers/utils/jsonDumps.d.ts +1 -1
  72. package/dist/chatWrappers/utils/jsonDumps.js +2 -2
  73. package/dist/chatWrappers/utils/jsonDumps.js.map +1 -1
  74. package/dist/chatWrappers/utils/resolveChatWrapper.d.ts +30 -6
  75. package/dist/chatWrappers/utils/resolveChatWrapper.js +71 -25
  76. package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
  77. package/dist/cli/cli.js +2 -6
  78. package/dist/cli/cli.js.map +1 -1
  79. package/dist/cli/commands/ChatCommand.d.ts +2 -1
  80. package/dist/cli/commands/ChatCommand.js +83 -53
  81. package/dist/cli/commands/ChatCommand.js.map +1 -1
  82. package/dist/cli/commands/CompleteCommand.d.ts +2 -1
  83. package/dist/cli/commands/CompleteCommand.js +58 -30
  84. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  85. package/dist/cli/commands/DebugCommand.js +1 -1
  86. package/dist/cli/commands/DebugCommand.js.map +1 -1
  87. package/dist/cli/commands/InfillCommand.d.ts +2 -1
  88. package/dist/cli/commands/InfillCommand.js +58 -30
  89. package/dist/cli/commands/InfillCommand.js.map +1 -1
  90. package/dist/cli/commands/InitCommand.js +1 -1
  91. package/dist/cli/commands/PullCommand.d.ts +2 -1
  92. package/dist/cli/commands/PullCommand.js +85 -44
  93. package/dist/cli/commands/PullCommand.js.map +1 -1
  94. package/dist/cli/commands/inspect/InspectCommand.js +5 -3
  95. package/dist/cli/commands/inspect/InspectCommand.js.map +1 -1
  96. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.d.ts +12 -0
  97. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js +225 -0
  98. package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js.map +1 -0
  99. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +17 -4
  100. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
  101. package/dist/cli/commands/inspect/commands/InspectGpuCommand.js +31 -9
  102. package/dist/cli/commands/inspect/commands/InspectGpuCommand.js.map +1 -1
  103. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +7 -4
  104. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
  105. package/dist/cli/commands/source/SourceCommand.d.ts +4 -0
  106. package/dist/cli/commands/source/SourceCommand.js +19 -0
  107. package/dist/cli/commands/source/SourceCommand.js.map +1 -0
  108. package/dist/cli/commands/{BuildCommand.d.ts → source/commands/BuildCommand.d.ts} +1 -2
  109. package/dist/cli/commands/{BuildCommand.js → source/commands/BuildCommand.js} +21 -19
  110. package/dist/cli/commands/source/commands/BuildCommand.js.map +1 -0
  111. package/dist/cli/commands/{ClearCommand.js → source/commands/ClearCommand.js} +6 -6
  112. package/dist/cli/commands/source/commands/ClearCommand.js.map +1 -0
  113. package/dist/cli/commands/{DownloadCommand.d.ts → source/commands/DownloadCommand.d.ts} +1 -2
  114. package/dist/cli/commands/{DownloadCommand.js → source/commands/DownloadCommand.js} +26 -22
  115. package/dist/cli/commands/source/commands/DownloadCommand.js.map +1 -0
  116. package/dist/cli/recommendedModels.js +192 -23
  117. package/dist/cli/recommendedModels.js.map +1 -1
  118. package/dist/cli/utils/ConsoleInteraction.d.ts +0 -1
  119. package/dist/cli/utils/ConsoleTable.js.map +1 -1
  120. package/dist/cli/utils/basicChooseFromListConsoleInteraction.js.map +1 -1
  121. package/dist/cli/utils/interactivelyAskForModel.js +6 -17
  122. package/dist/cli/utils/interactivelyAskForModel.js.map +1 -1
  123. package/dist/cli/utils/printCommonInfoLines.js +3 -0
  124. package/dist/cli/utils/printCommonInfoLines.js.map +1 -1
  125. package/dist/cli/utils/renderModelCompatibilityPercentageWithColors.d.ts +6 -0
  126. package/dist/cli/utils/renderModelCompatibilityPercentageWithColors.js +14 -0
  127. package/dist/cli/utils/renderModelCompatibilityPercentageWithColors.js.map +1 -0
  128. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +1 -1
  129. package/dist/cli/utils/withCliCommandDescriptionDocsUrl.js.map +1 -1
  130. package/dist/commands.d.ts +3 -3
  131. package/dist/commands.js +3 -3
  132. package/dist/commands.js.map +1 -1
  133. package/dist/config.d.ts +7 -3
  134. package/dist/config.js +10 -6
  135. package/dist/config.js.map +1 -1
  136. package/dist/evaluator/LlamaChat/LlamaChat.d.ts +17 -2
  137. package/dist/evaluator/LlamaChat/LlamaChat.js +24 -12
  138. package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
  139. package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js +3 -1
  140. package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js.map +1 -1
  141. package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +21 -13
  142. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +15 -14
  143. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
  144. package/dist/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.d.ts +1 -0
  145. package/dist/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.js.map +1 -1
  146. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.d.ts +3 -0
  147. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js +3 -0
  148. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js.map +1 -1
  149. package/dist/evaluator/LlamaCompletion.d.ts +18 -4
  150. package/dist/evaluator/LlamaCompletion.js +51 -22
  151. package/dist/evaluator/LlamaCompletion.js.map +1 -1
  152. package/dist/evaluator/LlamaContext/LlamaContext.d.ts +21 -0
  153. package/dist/evaluator/LlamaContext/LlamaContext.js +256 -133
  154. package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
  155. package/dist/evaluator/LlamaContext/LlamaSampler.d.ts +1 -0
  156. package/dist/evaluator/LlamaContext/LlamaSampler.js +31 -0
  157. package/dist/evaluator/LlamaContext/LlamaSampler.js.map +1 -0
  158. package/dist/evaluator/LlamaContext/types.d.ts +71 -9
  159. package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/maximumParallelismStrategy.js.map +1 -1
  160. package/dist/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.js +1 -1
  161. package/dist/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.js.map +1 -1
  162. package/dist/evaluator/LlamaEmbedding.d.ts +21 -0
  163. package/dist/evaluator/LlamaEmbedding.js +53 -0
  164. package/dist/evaluator/LlamaEmbedding.js.map +1 -0
  165. package/dist/evaluator/LlamaEmbeddingContext.d.ts +1 -5
  166. package/dist/evaluator/LlamaEmbeddingContext.js +6 -8
  167. package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
  168. package/dist/evaluator/LlamaGrammar.d.ts +9 -10
  169. package/dist/evaluator/LlamaGrammar.js +10 -5
  170. package/dist/evaluator/LlamaGrammar.js.map +1 -1
  171. package/dist/evaluator/LlamaGrammarEvaluationState.d.ts +7 -3
  172. package/dist/evaluator/LlamaGrammarEvaluationState.js +8 -4
  173. package/dist/evaluator/LlamaGrammarEvaluationState.js.map +1 -1
  174. package/dist/evaluator/LlamaJsonSchemaGrammar.d.ts +3 -0
  175. package/dist/evaluator/LlamaJsonSchemaGrammar.js +3 -0
  176. package/dist/evaluator/LlamaJsonSchemaGrammar.js.map +1 -1
  177. package/dist/evaluator/LlamaModel/LlamaModel.d.ts +28 -15
  178. package/dist/evaluator/LlamaModel/LlamaModel.js +66 -51
  179. package/dist/evaluator/LlamaModel/LlamaModel.js.map +1 -1
  180. package/dist/evaluator/LlamaModel/utils/TokenAttributes.d.ts +10 -10
  181. package/dist/evaluator/LlamaModel/utils/TokenAttributes.js +10 -10
  182. package/dist/evaluator/LlamaModel/utils/TokenAttributes.js.map +1 -1
  183. package/dist/evaluator/TokenBias.d.ts +20 -8
  184. package/dist/evaluator/TokenBias.js +44 -12
  185. package/dist/evaluator/TokenBias.js.map +1 -1
  186. package/dist/evaluator/TokenMeter.d.ts +3 -12
  187. package/dist/evaluator/TokenMeter.js +4 -16
  188. package/dist/evaluator/TokenMeter.js.map +1 -1
  189. package/dist/gguf/fileReaders/GgufFileReader.d.ts +0 -1
  190. package/dist/gguf/fileReaders/GgufFileReader.js.map +1 -1
  191. package/dist/gguf/fileReaders/GgufFsFileReader.d.ts +0 -2
  192. package/dist/gguf/fileReaders/GgufNetworkFetchFileReader.d.ts +5 -3
  193. package/dist/gguf/fileReaders/GgufNetworkFetchFileReader.js +26 -13
  194. package/dist/gguf/fileReaders/GgufNetworkFetchFileReader.js.map +1 -1
  195. package/dist/gguf/insights/GgufInsightsConfigurationResolver.d.ts +57 -1
  196. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js +86 -4
  197. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js.map +1 -1
  198. package/dist/gguf/insights/utils/scoreLevels.js.map +1 -1
  199. package/dist/gguf/readGgufFileInfo.d.ts +18 -6
  200. package/dist/gguf/readGgufFileInfo.js +8 -3
  201. package/dist/gguf/readGgufFileInfo.js.map +1 -1
  202. package/dist/gguf/types/GgufMetadataTypes.d.ts +18 -2
  203. package/dist/gguf/types/GgufMetadataTypes.js +16 -1
  204. package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
  205. package/dist/gguf/utils/convertMetadataKeyValueRecordToNestedObject.js +2 -0
  206. package/dist/gguf/utils/convertMetadataKeyValueRecordToNestedObject.js.map +1 -1
  207. package/dist/gguf/utils/getGgufFileTypeName.d.ts +1 -1
  208. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +1 -1
  209. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -1
  210. package/dist/index.d.ts +8 -4
  211. package/dist/index.js +5 -3
  212. package/dist/index.js.map +1 -1
  213. package/dist/tsconfig.tsbuildinfo +1 -0
  214. package/dist/types.d.ts +1 -0
  215. package/dist/types.js.map +1 -1
  216. package/dist/utils/LlamaText.d.ts +3 -0
  217. package/dist/utils/LlamaText.js +7 -4
  218. package/dist/utils/LlamaText.js.map +1 -1
  219. package/dist/utils/LruCache.d.ts +2 -2
  220. package/dist/utils/LruCache.js.map +1 -1
  221. package/dist/utils/OverridesObject.d.ts +7 -0
  222. package/dist/utils/OverridesObject.js +2 -0
  223. package/dist/utils/OverridesObject.js.map +1 -0
  224. package/dist/utils/StopGenerationDetector.js.map +1 -1
  225. package/dist/utils/ThreadsSplitter.d.ts +26 -0
  226. package/dist/utils/ThreadsSplitter.js +164 -0
  227. package/dist/utils/ThreadsSplitter.js.map +1 -0
  228. package/dist/utils/TokenStreamRegulator.js.map +1 -1
  229. package/dist/utils/appendUserMessageToChatHistory.d.ts +4 -0
  230. package/dist/utils/appendUserMessageToChatHistory.js +4 -0
  231. package/dist/utils/appendUserMessageToChatHistory.js.map +1 -1
  232. package/dist/utils/compareTokens.d.ts +1 -1
  233. package/dist/utils/compareTokens.js.map +1 -1
  234. package/dist/utils/createModelDownloader.d.ts +94 -6
  235. package/dist/utils/createModelDownloader.js +174 -46
  236. package/dist/utils/createModelDownloader.js.map +1 -1
  237. package/dist/utils/gbnfJson/terminals/GbnfOr.js.map +1 -1
  238. package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js +1 -1
  239. package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js.map +1 -1
  240. package/dist/utils/getGrammarsFolder.js +1 -1
  241. package/dist/utils/getGrammarsFolder.js.map +1 -1
  242. package/dist/utils/gitReleaseBundles.js.map +1 -1
  243. package/dist/utils/modelFileAccesTokens.d.ts +4 -0
  244. package/dist/utils/modelFileAccesTokens.js +40 -0
  245. package/dist/utils/modelFileAccesTokens.js.map +1 -0
  246. package/dist/utils/parseModelFileName.js.map +1 -1
  247. package/dist/utils/parseTextTemplate.js.map +1 -1
  248. package/dist/utils/resolveGithubRelease.d.ts +1 -1
  249. package/dist/utils/resolveLastTokens.js.map +1 -1
  250. package/dist/utils/spawnCommand.d.ts +0 -1
  251. package/dist/utils/truncateTextAndRoundToWords.js +3 -1
  252. package/dist/utils/truncateTextAndRoundToWords.js.map +1 -1
  253. package/dist/utils/withOra.js +1 -1
  254. package/dist/utils/withOra.js.map +1 -1
  255. package/dist/utils/withProgressLog.d.ts +0 -1
  256. package/dist/utils/wrapAbortSignal.d.ts +0 -1
  257. package/llama/CMakeLists.txt +20 -12
  258. package/llama/addon/AddonContext.cpp +69 -202
  259. package/llama/addon/AddonContext.h +4 -5
  260. package/llama/addon/AddonGrammar.cpp +8 -11
  261. package/llama/addon/AddonGrammar.h +4 -3
  262. package/llama/addon/AddonGrammarEvaluationState.cpp +9 -10
  263. package/llama/addon/AddonGrammarEvaluationState.h +3 -1
  264. package/llama/addon/AddonModel.cpp +6 -5
  265. package/llama/addon/AddonSampler.cpp +513 -0
  266. package/llama/addon/AddonSampler.h +65 -0
  267. package/llama/addon/RingBuffer.h +109 -0
  268. package/llama/addon/addon.cpp +7 -0
  269. package/llama/addon/globals/addonLog.cpp +2 -1
  270. package/llama/binariesGithubRelease.json +1 -1
  271. package/llama/gitRelease.bundle +0 -0
  272. package/llama/grammars/README.md +1 -1
  273. package/llama/llama.cpp.info.json +1 -1
  274. package/package.json +71 -46
  275. package/templates/packed/electron-typescript-react.json +1 -1
  276. package/templates/packed/node-typescript.json +1 -1
  277. package/bins/linux-arm64/_nlcBuildMetadata.json +0 -1
  278. package/bins/linux-arm64/libggml.so +0 -0
  279. package/bins/linux-arm64/libllama.so +0 -0
  280. package/bins/linux-arm64/llama-addon.node +0 -0
  281. package/bins/linux-armv7l/_nlcBuildMetadata.json +0 -1
  282. package/bins/linux-armv7l/libggml.so +0 -0
  283. package/bins/linux-armv7l/libllama.so +0 -0
  284. package/bins/linux-armv7l/llama-addon.node +0 -0
  285. package/bins/linux-x64/_nlcBuildMetadata.json +0 -1
  286. package/bins/linux-x64/libggml.so +0 -0
  287. package/bins/linux-x64/libllama.so +0 -0
  288. package/bins/linux-x64/llama-addon.node +0 -0
  289. package/bins/linux-x64-vulkan/_nlcBuildMetadata.json +0 -1
  290. package/bins/linux-x64-vulkan/libggml.so +0 -0
  291. package/bins/linux-x64-vulkan/libllama.so +0 -0
  292. package/bins/linux-x64-vulkan/llama-addon.node +0 -0
  293. package/bins/linux-x64-vulkan/vulkan-shaders-gen +0 -0
  294. package/bins/mac-arm64-metal/_nlcBuildMetadata.json +0 -1
  295. package/bins/mac-arm64-metal/ggml-common.h +0 -1833
  296. package/bins/mac-arm64-metal/ggml-metal.metal +0 -6168
  297. package/bins/mac-arm64-metal/libggml.dylib +0 -0
  298. package/bins/mac-arm64-metal/libllama.dylib +0 -0
  299. package/bins/mac-arm64-metal/llama-addon.node +0 -0
  300. package/bins/mac-x64/_nlcBuildMetadata.json +0 -1
  301. package/bins/mac-x64/libggml.dylib +0 -0
  302. package/bins/mac-x64/libllama.dylib +0 -0
  303. package/bins/mac-x64/llama-addon.node +0 -0
  304. package/bins/win-arm64/_nlcBuildMetadata.json +0 -1
  305. package/bins/win-arm64/ggml.dll +0 -0
  306. package/bins/win-arm64/llama-addon.exp +0 -0
  307. package/bins/win-arm64/llama-addon.lib +0 -0
  308. package/bins/win-arm64/llama-addon.node +0 -0
  309. package/bins/win-arm64/llama.dll +0 -0
  310. package/bins/win-x64/_nlcBuildMetadata.json +0 -1
  311. package/bins/win-x64/ggml.dll +0 -0
  312. package/bins/win-x64/llama-addon.exp +0 -0
  313. package/bins/win-x64/llama-addon.lib +0 -0
  314. package/bins/win-x64/llama-addon.node +0 -0
  315. package/bins/win-x64/llama.dll +0 -0
  316. package/bins/win-x64-vulkan/_nlcBuildMetadata.json +0 -1
  317. package/bins/win-x64-vulkan/ggml.dll +0 -0
  318. package/bins/win-x64-vulkan/llama-addon.exp +0 -0
  319. package/bins/win-x64-vulkan/llama-addon.lib +0 -0
  320. package/bins/win-x64-vulkan/llama-addon.node +0 -0
  321. package/bins/win-x64-vulkan/llama.dll +0 -0
  322. package/bins/win-x64-vulkan/vulkan-shaders-gen.exe +0 -0
  323. package/dist/cli/commands/BuildCommand.js.map +0 -1
  324. package/dist/cli/commands/ClearCommand.js.map +0 -1
  325. package/dist/cli/commands/DownloadCommand.js.map +0 -1
  326. package/dist/utils/DeepPartialObject.d.ts +0 -3
  327. package/dist/utils/DeepPartialObject.js +0 -2
  328. package/dist/utils/DeepPartialObject.js.map +0 -1
  329. /package/dist/cli/commands/{ClearCommand.d.ts → source/commands/ClearCommand.d.ts} +0 -0
@@ -3,6 +3,7 @@
3
3
  #include "AddonModelLora.h"
4
4
  #include "AddonGrammar.h"
5
5
  #include "AddonGrammarEvaluationState.h"
6
+ #include "AddonSampler.h"
6
7
  #include "AddonContext.h"
7
8
  #include "globals/addonLog.h"
8
9
  #include "globals/addonProgress.h"
@@ -27,6 +28,10 @@ Napi::Value addonGetSupportsMlock(const Napi::CallbackInfo& info) {
27
28
  return Napi::Boolean::New(info.Env(), llama_supports_mlock());
28
29
  }
29
30
 
31
+ Napi::Value addonGetMathCores(const Napi::CallbackInfo& info) {
32
+ return Napi::Number::New(info.Env(), cpu_get_num_math());
33
+ }
34
+
30
35
  Napi::Value addonGetBlockSizeForGgmlType(const Napi::CallbackInfo& info) {
31
36
  const int ggmlType = info[0].As<Napi::Number>().Int32Value();
32
37
 
@@ -189,6 +194,7 @@ Napi::Object registerCallback(Napi::Env env, Napi::Object exports) {
189
194
  Napi::PropertyDescriptor::Function("getSupportsGpuOffloading", addonGetSupportsGpuOffloading),
190
195
  Napi::PropertyDescriptor::Function("getSupportsMmap", addonGetSupportsMmap),
191
196
  Napi::PropertyDescriptor::Function("getSupportsMlock", addonGetSupportsMlock),
197
+ Napi::PropertyDescriptor::Function("getMathCores", addonGetMathCores),
192
198
  Napi::PropertyDescriptor::Function("getBlockSizeForGgmlType", addonGetBlockSizeForGgmlType),
193
199
  Napi::PropertyDescriptor::Function("getTypeSizeForGgmlType", addonGetTypeSizeForGgmlType),
194
200
  Napi::PropertyDescriptor::Function("getConsts", addonGetConsts),
@@ -205,6 +211,7 @@ Napi::Object registerCallback(Napi::Env env, Napi::Object exports) {
205
211
  AddonGrammar::init(exports);
206
212
  AddonGrammarEvaluationState::init(exports);
207
213
  AddonContext::init(exports);
214
+ AddonSampler::init(exports);
208
215
 
209
216
  llama_log_set(addonLlamaCppLogCallback, nullptr);
210
217
 
@@ -11,7 +11,8 @@ static int addonGetGgmlLogLevelNumber(ggml_log_level level) {
11
11
  case GGML_LOG_LEVEL_ERROR: return 2;
12
12
  case GGML_LOG_LEVEL_WARN: return 3;
13
13
  case GGML_LOG_LEVEL_INFO: return 4;
14
- case GGML_LOG_LEVEL_DEBUG: return 5;
14
+ case GGML_LOG_LEVEL_NONE: return 5;
15
+ case GGML_LOG_LEVEL_DEBUG: return 6;
15
16
  }
16
17
 
17
18
  return 1;
@@ -1,3 +1,3 @@
1
1
  {
2
- "release": "b3560"
2
+ "release": "b3785"
3
3
  }
Binary file
@@ -120,7 +120,7 @@ You can use GBNF grammars:
120
120
 
121
121
  - In [llama-server](../examples/server):
122
122
  - For any completion endpoints, passed as the `json_schema` body field
123
- - For the `/chat/completions` endpoint, passed inside the `result_format` body field (e.g. `{"type", "json_object", "schema": {"items": {}}}`)
123
+ - For the `/chat/completions` endpoint, passed inside the `response_format` body field (e.g. `{"type", "json_object", "schema": {"items": {}}}` or `{ type: "json_schema", json_schema: {"schema": ...} }`)
124
124
  - In [llama-cli](../examples/main), passed as the `--json` / `-j` flag
125
125
  - To convert to a grammar ahead of time:
126
126
  - in CLI, with [examples/json_schema_to_grammar.py](../examples/json_schema_to_grammar.py)
@@ -1,4 +1,4 @@
1
1
  {
2
- "tag": "b3560",
2
+ "tag": "b3785",
3
3
  "llamaCppGithubRepo": "ggerganov/llama.cpp"
4
4
  }
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "node-llama-cpp",
3
- "version": "3.0.0-beta.43",
3
+ "version": "3.0.0-beta.45",
4
4
  "description": "Run AI models locally on your machine with node.js bindings for llama.cpp. Force a JSON schema on the model output on the generation level",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
7
7
  "types": "./dist/index.d.ts",
8
8
  "bin": {
9
- "node-llama-cpp": "dist/cli/cli.js"
9
+ "node-llama-cpp": "dist/cli/cli.js",
10
+ "nlc": "dist/cli/cli.js"
10
11
  },
11
12
  "files": [
12
13
  "dist/",
@@ -57,15 +58,15 @@
57
58
  "test:standalone:interactive": "vitest watch ./test/standalone",
58
59
  "test:modelDependent": "vitest run ./test/modelDependent",
59
60
  "test:modelDependent:interactive": "vitest watch ./test/modelDependent",
60
- "test:typescript": "tsc --build tsconfig.json --dry --force",
61
+ "test:typescript": "tsc --noEmit --project tsconfig.json",
61
62
  "lint": "npm run lint:eslint",
62
63
  "lint:eslint": "eslint --ext .js --ext .ts --report-unused-disable-directives .",
63
64
  "format": "npm run lint:eslint -- --fix",
64
65
  "dev:setup:downloadAllTestModels": "vite-node test/utils/scripts/downloadAllTestModels.ts",
65
- "dev:setup": "npm run build && node ./dist/cli/cli.js download --noUsageExample && npm run docs:generateTypedoc && npm run dev:setup:downloadAllTestModels",
66
- "dev:build": "npm run build && node ./dist/cli/cli.js build --noUsageExample",
66
+ "dev:setup": "npm run build && node ./dist/cli/cli.js source download --noUsageExample && npm run docs:generateTypedoc && npm run dev:setup:downloadAllTestModels",
67
+ "dev:build": "npm run build && node ./dist/cli/cli.js source build --noUsageExample",
67
68
  "clean": "rm -rf ./node_modules ./dist ./tsconfig.tsbuildinfo ./test/.models ./docs/api ./docs/api-overrides ./templates/packed",
68
- "docs:generateTypedoc": "typedoc --entryPoints ./src/apiDocsIndex.ts && rimraf ./docs/api/index.md ./docs/api/globals.md ./docs/api/functions/LlamaText.md",
69
+ "docs:generateTypedoc": "typedoc && rimraf ./docs/api/index.md ./docs/api/globals.md ./docs/api/functions/LlamaText.md",
69
70
  "docs:dev": "npm run docs:generateTypedoc && vitepress dev",
70
71
  "docs:build": "npm run docs:generateTypedoc && vitepress build",
71
72
  "docs:preview": "npm run docs:generateTypedoc && vitepress preview"
@@ -89,6 +90,7 @@
89
90
  "cuda",
90
91
  "vulkan",
91
92
  "grammar",
93
+ "embedding",
92
94
  "json-grammar",
93
95
  "json-schema-grammar",
94
96
  "functions",
@@ -98,11 +100,17 @@
98
100
  "minP",
99
101
  "topK",
100
102
  "topP",
103
+ "seed",
101
104
  "json-schema",
102
105
  "raspberry-pi",
103
106
  "self-hosted",
104
107
  "local",
105
- "catai"
108
+ "catai",
109
+ "mistral",
110
+ "typescript",
111
+ "lora",
112
+ "batching",
113
+ "gpu"
106
114
  ],
107
115
  "author": "Gilad S.",
108
116
  "license": "MIT",
@@ -114,46 +122,54 @@
114
122
  "type": "github",
115
123
  "url": "https://github.com/sponsors/giladgd"
116
124
  },
117
- "homepage": "https://withcatai.github.io/node-llama-cpp/",
125
+ "homepage": "https://node-llama-cpp.withcat.ai",
118
126
  "devDependencies": {
119
- "@commitlint/cli": "^19.3.0",
120
- "@commitlint/config-conventional": "^19.2.2",
127
+ "@commitlint/cli": "^19.5.0",
128
+ "@commitlint/config-conventional": "^19.5.0",
129
+ "@fontsource/inter": "^5.1.0",
130
+ "@nolebase/vitepress-plugin-git-changelog": "^2.5.0",
131
+ "@nolebase/vitepress-plugin-og-image": "^2.5.0",
132
+ "@resvg/resvg-js": "^2.6.2",
121
133
  "@semantic-release/exec": "^6.0.3",
122
- "@shikijs/vitepress-twoslash": "^1.6.3",
134
+ "@semantic-release/npm": "12.0.1",
135
+ "@shikijs/vitepress-twoslash": "^1.17.7",
123
136
  "@types/async-retry": "^1.4.8",
124
137
  "@types/bytes": "^3.1.4",
125
138
  "@types/cross-spawn": "^6.0.2",
126
139
  "@types/fs-extra": "^11.0.4",
127
- "@types/node": "^20.14.2",
140
+ "@types/node": "^22.5.5",
128
141
  "@types/proper-lockfile": "^4.1.4",
129
142
  "@types/semver": "^7.5.8",
130
143
  "@types/validate-npm-package-name": "^4.0.2",
131
144
  "@types/which": "^3.0.4",
132
- "@types/yargs": "^17.0.24",
133
- "@typescript-eslint/eslint-plugin": "^7.12.0",
134
- "@typescript-eslint/parser": "^7.12.0",
135
- "@vitest/coverage-v8": "^1.6.0",
136
- "@vitest/ui": "^1.6.0",
145
+ "@types/yargs": "^17.0.33",
146
+ "@typescript-eslint/eslint-plugin": "^7.15.0",
147
+ "@typescript-eslint/parser": "^7.15.0",
148
+ "@vitest/coverage-v8": "^2.1.1",
149
+ "@vitest/ui": "^2.1.1",
137
150
  "eslint": "^8.46.0",
138
- "eslint-plugin-import": "^2.29.1",
139
- "eslint-plugin-jsdoc": "^46.10.1",
140
- "eslint-plugin-n": "^17.8.1",
141
- "husky": "^9.0.11",
142
- "rimraf": "^5.0.7",
143
- "semantic-release": "^23.1.1",
144
- "tslib": "^2.6.3",
145
- "typedoc": "^0.25.13",
146
- "typedoc-plugin-markdown": "^4.0.3",
147
- "typedoc-plugin-mdn-links": "^3.1.28",
148
- "typedoc-vitepress-theme": "^1.0.0",
149
- "typescript": "^5.4.5",
150
- "vite-node": "^1.6.0",
151
- "vitepress": "^1.2.3",
152
- "vitest": "^1.6.0",
153
- "zx": "^8.1.2"
151
+ "eslint-plugin-import": "^2.30.0",
152
+ "eslint-plugin-jsdoc": "^50.2.3",
153
+ "eslint-plugin-n": "^17.10.2",
154
+ "feed": "^4.2.2",
155
+ "husky": "^9.1.6",
156
+ "rehype": "^13.0.1",
157
+ "rimraf": "^6.0.1",
158
+ "semantic-release": "24.1.1",
159
+ "sharp": "^0.33.5",
160
+ "tslib": "^2.7.0",
161
+ "typedoc": "^0.26.7",
162
+ "typedoc-plugin-markdown": "^4.2.7",
163
+ "typedoc-plugin-mdn-links": "^3.2.12",
164
+ "typedoc-vitepress-theme": "^1.0.1",
165
+ "typescript": "^5.6.2",
166
+ "vite-node": "^2.1.1",
167
+ "vitepress": "^1.3.4",
168
+ "vitest": "^2.1.1",
169
+ "zx": "^8.1.7"
154
170
  },
155
171
  "dependencies": {
156
- "@huggingface/jinja": "^0.2.2",
172
+ "@huggingface/jinja": "^0.3.1",
157
173
  "async-retry": "^1.3.3",
158
174
  "bytes": "^3.1.2",
159
175
  "chalk": "^5.3.0",
@@ -164,19 +180,19 @@
164
180
  "env-var": "^7.5.0",
165
181
  "filenamify": "^6.0.0",
166
182
  "fs-extra": "^11.2.0",
167
- "ignore": "^5.3.1",
168
- "ipull": "^3.6.0",
169
- "is-unicode-supported": "^2.0.0",
170
- "lifecycle-utils": "^1.4.1",
171
- "log-symbols": "^6.0.0",
183
+ "ignore": "^5.3.2",
184
+ "ipull": "^3.6.2",
185
+ "is-unicode-supported": "^2.1.0",
186
+ "lifecycle-utils": "^1.7.0",
187
+ "log-symbols": "^7.0.0",
172
188
  "nanoid": "^5.0.7",
173
- "node-addon-api": "^8.0.0",
189
+ "node-addon-api": "^8.1.0",
174
190
  "octokit": "^4.0.2",
175
- "ora": "^8.0.1",
176
- "pretty-ms": "^9.0.0",
191
+ "ora": "^8.1.0",
192
+ "pretty-ms": "^9.1.0",
177
193
  "proper-lockfile": "^4.1.2",
178
- "semver": "^7.6.2",
179
- "simple-git": "^3.24.0",
194
+ "semver": "^7.6.3",
195
+ "simple-git": "^3.26.0",
180
196
  "slice-ansi": "^7.1.0",
181
197
  "stdout-update": "^4.0.1",
182
198
  "strip-ansi": "^7.1.0",
@@ -193,7 +209,16 @@
193
209
  }
194
210
  },
195
211
  "optionalDependencies": {
196
- "@node-llama-cpp/linux-x64-cuda": "3.0.0-beta.43",
197
- "@node-llama-cpp/win-x64-cuda": "3.0.0-beta.43"
212
+ "@node-llama-cpp/linux-arm64": "3.0.0-beta.45",
213
+ "@node-llama-cpp/linux-armv7l": "3.0.0-beta.45",
214
+ "@node-llama-cpp/linux-x64": "3.0.0-beta.45",
215
+ "@node-llama-cpp/linux-x64-cuda": "3.0.0-beta.45",
216
+ "@node-llama-cpp/linux-x64-vulkan": "3.0.0-beta.45",
217
+ "@node-llama-cpp/mac-arm64-metal": "3.0.0-beta.45",
218
+ "@node-llama-cpp/mac-x64": "3.0.0-beta.45",
219
+ "@node-llama-cpp/win-arm64": "3.0.0-beta.45",
220
+ "@node-llama-cpp/win-x64": "3.0.0-beta.45",
221
+ "@node-llama-cpp/win-x64-cuda": "3.0.0-beta.45",
222
+ "@node-llama-cpp/win-x64-vulkan": "3.0.0-beta.45"
198
223
  }
199
224
  }