node-llama-cpp 3.16.1 → 3.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/bindings/Llama.js +9 -3
  2. package/dist/bindings/Llama.js.map +1 -1
  3. package/dist/bindings/getLlama.d.ts +27 -10
  4. package/dist/bindings/getLlama.js +43 -2
  5. package/dist/bindings/getLlama.js.map +1 -1
  6. package/dist/bindings/utils/cloneLlamaCppRepo.js +1 -1
  7. package/dist/bindings/utils/cloneLlamaCppRepo.js.map +1 -1
  8. package/dist/bindings/utils/compileLLamaCpp.js +2 -0
  9. package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
  10. package/dist/bindings/utils/detectGlibc.js +53 -25
  11. package/dist/bindings/utils/detectGlibc.js.map +1 -1
  12. package/dist/bindings/utils/disposeBeforeExit.d.ts +8 -0
  13. package/dist/bindings/utils/disposeBeforeExit.js +36 -0
  14. package/dist/bindings/utils/disposeBeforeExit.js.map +1 -0
  15. package/dist/cli/commands/ChatCommand.d.ts +1 -1
  16. package/dist/cli/commands/ChatCommand.js +5 -6
  17. package/dist/cli/commands/ChatCommand.js.map +1 -1
  18. package/dist/cli/commands/CompleteCommand.d.ts +1 -1
  19. package/dist/cli/commands/CompleteCommand.js +5 -6
  20. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  21. package/dist/cli/commands/InfillCommand.d.ts +1 -1
  22. package/dist/cli/commands/InfillCommand.js +5 -6
  23. package/dist/cli/commands/InfillCommand.js.map +1 -1
  24. package/dist/tsconfig.tsbuildinfo +1 -1
  25. package/dist/utils/gitReleaseBundles.js +1 -1
  26. package/dist/utils/gitReleaseBundles.js.map +1 -1
  27. package/dist/utils/resolveGithubRelease.d.ts +1 -1
  28. package/dist/utils/resolveGithubRelease.js +54 -13
  29. package/dist/utils/resolveGithubRelease.js.map +1 -1
  30. package/llama/addon/addon.cpp +18 -3
  31. package/llama/binariesGithubRelease.json +1 -1
  32. package/llama/gitRelease.bundle +0 -0
  33. package/llama/llama.cpp.info.json +1 -1
  34. package/package.json +15 -16
  35. package/templates/packed/electron-typescript-react.json +1 -1
  36. package/templates/packed/node-typescript.json +1 -1
@@ -1 +1 @@
1
- {"root":["../src/index.ts","../src/ChatWrapper.ts","../src/apiDocsIndex.ts","../src/commands.ts","../src/config.ts","../src/consts.ts","../src/state.ts","../src/types.ts","../src/bindings/AddonTypes.ts","../src/bindings/Llama.ts","../src/bindings/consts.ts","../src/bindings/getLlama.ts","../src/bindings/types.ts","../src/bindings/utils/MemoryOrchestrator.ts","../src/bindings/utils/NoBinaryFoundError.ts","../src/bindings/utils/asyncEvery.ts","../src/bindings/utils/asyncSome.ts","../src/bindings/utils/binariesGithubRelease.ts","../src/bindings/utils/clearAllLocalBuilds.ts","../src/bindings/utils/cloneLlamaCppRepo.ts","../src/bindings/utils/compileLLamaCpp.ts","../src/bindings/utils/detectAvailableComputeLayers.ts","../src/bindings/utils/detectBuildTools.ts","../src/bindings/utils/detectGlibc.ts","../src/bindings/utils/getBestComputeLayersAvailable.ts","../src/bindings/utils/getBuildFolderNameForBuildOptions.ts","../src/bindings/utils/getCanUsePrebuiltBinaries.ts","../src/bindings/utils/getExampleUsageCodeOfGetLlama.ts","../src/bindings/utils/getGpuTypesToUseForOption.ts","../src/bindings/utils/getLinuxDistroInfo.ts","../src/bindings/utils/getLlamaGpuTypes.ts","../src/bindings/utils/getLlamaWithoutBackend.ts","../src/bindings/utils/getPlatform.ts","../src/bindings/utils/getPlatformInfo.ts","../src/bindings/utils/hasBuildingFromSourceDependenciesInstalled.ts","../src/bindings/utils/hasFileInPath.ts","../src/bindings/utils/lastBuildInfo.ts","../src/bindings/utils/logBinaryUsageExampleToConsole.ts","../src/bindings/utils/logDistroInstallInstruction.ts","../src/bindings/utils/resolveActualBindingBinaryPath.ts","../src/bindings/utils/resolveCustomCmakeOptions.ts","../src/bindings/utils/testBindingBinary.ts","../src/bindings/utils/testCmakeBinary.ts","../src/chatWrappers/AlpacaChatWrapper.ts","../src/chatWrappers/ChatMLChatWrapper.ts","../src/chatWrappers/DeepSeekChatWrapper.ts","../src/chatWrappers/EmptyChatWrapper.ts","../src/chatWrappers/FalconChatWrapper.ts","../src/chatWrappers/FunctionaryChatWrapper.ts","../src/chatWrappers/GemmaChatWrapper.ts","../src/chatWrappers/GeneralChatWrapper.ts","../src/chatWrappers/HarmonyChatWrapper.ts","../src/chatWrappers/Llama2ChatWrapper.ts","../src/chatWrappers/Llama3ChatWrapper.ts","../src/chatWrappers/Llama3_1ChatWrapper.ts","../src/chatWrappers/Llama3_2LightweightChatWrapper.ts","../src/chatWrappers/MistralChatWrapper.ts","../src/chatWrappers/QwenChatWrapper.ts","../src/chatWrappers/SeedChatWrapper.ts","../src/chatWrappers/generic/JinjaTemplateChatWrapper.ts","../src/chatWrappers/generic/TemplateChatWrapper.ts","../src/chatWrappers/generic/utils/UniqueIdGenerator.ts","../src/chatWrappers/generic/utils/chatHistoryFunctionCallMessageTemplate.ts","../src/chatWrappers/generic/utils/extractFunctionCallSettingsFromJinjaTemplate.ts","../src/chatWrappers/generic/utils/extractSegmentSettingsFromTokenizerAndChatTemplate.ts","../src/chatWrappers/generic/utils/getFirstValidResult.ts","../src/chatWrappers/generic/utils/squashChatHistoryItems.ts","../src/chatWrappers/generic/utils/templateSegmentOptionsToChatWrapperSettings.ts","../src/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.ts","../src/chatWrappers/utils/chunkChatItems.ts","../src/chatWrappers/utils/getModelLinageNames.ts","../src/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.ts","../src/chatWrappers/utils/isLlama3_2LightweightModel.ts","../src/chatWrappers/utils/jsonDumps.ts","../src/chatWrappers/utils/resolveChatWrapper.ts","../src/cli/cli.ts","../src/cli/projectTemplates.ts","../src/cli/recommendedModels.ts","../src/cli/startCreateCli.ts","../src/cli/commands/ChatCommand.ts","../src/cli/commands/CompleteCommand.ts","../src/cli/commands/DebugCommand.ts","../src/cli/commands/InfillCommand.ts","../src/cli/commands/InitCommand.ts","../src/cli/commands/OnPostInstallCommand.ts","../src/cli/commands/PullCommand.ts","../src/cli/commands/inspect/InspectCommand.ts","../src/cli/commands/inspect/commands/InspectEstimateCommand.ts","../src/cli/commands/inspect/commands/InspectGgufCommand.ts","../src/cli/commands/inspect/commands/InspectGpuCommand.ts","../src/cli/commands/inspect/commands/InspectMeasureCommand.ts","../src/cli/commands/source/SourceCommand.ts","../src/cli/commands/source/commands/BuildCommand.ts","../src/cli/commands/source/commands/ClearCommand.ts","../src/cli/commands/source/commands/DownloadCommand.ts","../src/cli/utils/ConsoleInteraction.ts","../src/cli/utils/ConsoleTable.ts","../src/cli/utils/basicChooseFromListConsoleInteraction.ts","../src/cli/utils/consolePromptQuestion.ts","../src/cli/utils/getReadablePath.ts","../src/cli/utils/interactivelyAskForModel.ts","../src/cli/utils/isRunningUnderRosetta.ts","../src/cli/utils/logUsedGpuTypeOption.ts","../src/cli/utils/parseXtcArg.ts","../src/cli/utils/printCommonInfoLines.ts","../src/cli/utils/printInfoLine.ts","../src/cli/utils/printModelDestination.ts","../src/cli/utils/projectTemplates.ts","../src/cli/utils/renderModelCompatibilityPercentageWithColors.ts","../src/cli/utils/resolveCommandGgufPath.ts","../src/cli/utils/resolveHeaderFlag.ts","../src/cli/utils/resolveModelRecommendationFileOptions.ts","../src/cli/utils/splitAnsiToLines.ts","../src/cli/utils/toBytes.ts","../src/cli/utils/withCliCommandDescriptionDocsUrl.ts","../src/evaluator/LlamaCompletion.ts","../src/evaluator/LlamaEmbedding.ts","../src/evaluator/LlamaEmbeddingContext.ts","../src/evaluator/LlamaGrammar.ts","../src/evaluator/LlamaGrammarEvaluationState.ts","../src/evaluator/LlamaJsonSchemaGrammar.ts","../src/evaluator/LlamaRankingContext.ts","../src/evaluator/TokenBias.ts","../src/evaluator/TokenMeter.ts","../src/evaluator/LlamaChat/LlamaChat.ts","../src/evaluator/LlamaChat/utils/FunctionCallNameGrammar.ts","../src/evaluator/LlamaChat/utils/FunctionCallParamsGrammar.ts","../src/evaluator/LlamaChat/utils/LlamaFunctionCallValidationError.ts","../src/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.ts","../src/evaluator/LlamaChatSession/LlamaChatSession.ts","../src/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.ts","../src/evaluator/LlamaChatSession/utils/defineChatSessionFunction.ts","../src/evaluator/LlamaContext/LlamaContext.ts","../src/evaluator/LlamaContext/LlamaSampler.ts","../src/evaluator/LlamaContext/TokenPredictor.ts","../src/evaluator/LlamaContext/types.ts","../src/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.ts","../src/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.ts","../src/evaluator/LlamaContext/utils/padSafeContextSize.ts","../src/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/firstInFirstOutStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/maximumParallelismStrategy.ts","../src/evaluator/LlamaModel/LlamaModel.ts","../src/evaluator/LlamaModel/utils/TokenAttributes.ts","../src/evaluator/utils/chunkDocument.ts","../src/gguf/consts.ts","../src/gguf/readGgufFileInfo.ts","../src/gguf/errors/InvalidGgufMagicError.ts","../src/gguf/errors/UnsupportedGgufValueTypeError.ts","../src/gguf/fileReaders/GgufFileReader.ts","../src/gguf/fileReaders/GgufFsFileReader.ts","../src/gguf/fileReaders/GgufNetworkFetchFileReader.ts","../src/gguf/insights/GgufInsights.ts","../src/gguf/insights/GgufInsightsConfigurationResolver.ts","../src/gguf/insights/GgufInsightsTokens.ts","../src/gguf/insights/utils/getRamUsageFromUnifiedVram.ts","../src/gguf/insights/utils/resolveContextContextSizeOption.ts","../src/gguf/insights/utils/resolveModelGpuLayersOption.ts","../src/gguf/insights/utils/scoreLevels.ts","../src/gguf/parser/GgufV2Parser.ts","../src/gguf/parser/GgufV3Parser.ts","../src/gguf/parser/parseGguf.ts","../src/gguf/types/GgufFileInfoTypes.ts","../src/gguf/types/GgufMetadataTypes.ts","../src/gguf/types/GgufTensorInfoTypes.ts","../src/gguf/utils/GgufReadOffset.ts","../src/gguf/utils/convertMetadataKeyValueRecordToNestedObject.ts","../src/gguf/utils/getGgufFileTypeName.ts","../src/gguf/utils/getGgufMetadataArchitectureData.ts","../src/gguf/utils/getGgufMetadataKeyValue.ts","../src/gguf/utils/ggufQuantNames.ts","../src/gguf/utils/normalizeGgufDownloadUrl.ts","../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts","../src/gguf/utils/resolveSplitGgufParts.ts","../src/utils/DisposeGuard.ts","../src/utils/InsufficientMemoryError.ts","../src/utils/LlamaText.ts","../src/utils/LruCache.ts","../src/utils/OpenAIFormat.ts","../src/utils/OverridesObject.ts","../src/utils/ReplHistory.ts","../src/utils/StopGenerationDetector.ts","../src/utils/ThreadsSplitter.ts","../src/utils/TokenStreamRegulator.ts","../src/utils/UnsupportedError.ts","../src/utils/appendUserMessageToChatHistory.ts","../src/utils/clearTempFolder.ts","../src/utils/cmake.ts","../src/utils/compareTokens.ts","../src/utils/createModelDownloader.ts","../src/utils/findBestOption.ts","../src/utils/findCharacterRemovalCountToFitChatHistoryInContext.ts","../src/utils/getBuildDefaults.ts","../src/utils/getChatWrapperSegmentDefinition.ts","../src/utils/getConsoleLogPrefix.ts","../src/utils/getGrammarsFolder.ts","../src/utils/getLlamaClasses.ts","../src/utils/getModuleVersion.ts","../src/utils/getQueuedTokensBeforeStopTrigger.ts","../src/utils/getReadableContextSize.ts","../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts","../src/utils/gitReleaseBundles.ts","../src/utils/hashString.ts","../src/utils/includesText.ts","../src/utils/isLockfileActive.ts","../src/utils/isToken.ts","../src/utils/isUrl.ts","../src/utils/mergeUnionTypes.ts","../src/utils/modelDownloadEndpoints.ts","../src/utils/modelFileAccessTokens.ts","../src/utils/optionsMatrix.ts","../src/utils/parseModelFileName.ts","../src/utils/parseModelUri.ts","../src/utils/parseTextTemplate.ts","../src/utils/prettyPrintObject.ts","../src/utils/pushAll.ts","../src/utils/removeNullFields.ts","../src/utils/resolveGithubRelease.ts","../src/utils/resolveLastTokens.ts","../src/utils/resolveModelDestination.ts","../src/utils/resolveModelFile.ts","../src/utils/runtime.ts","../src/utils/safeEventCallback.ts","../src/utils/signalSleep.ts","../src/utils/spawnCommand.ts","../src/utils/tokenizeInput.ts","../src/utils/tokenizerUtils.ts","../src/utils/transformPromisable.ts","../src/utils/truncateTextAndRoundToWords.ts","../src/utils/utilTypes.ts","../src/utils/waitForLockfileRelease.ts","../src/utils/withLockfile.ts","../src/utils/withOra.ts","../src/utils/withProgressLog.ts","../src/utils/withStatusLogs.ts","../src/utils/wrapAbortSignal.ts","../src/utils/gbnfJson/GbnfGrammarGenerator.ts","../src/utils/gbnfJson/GbnfTerminal.ts","../src/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.ts","../src/utils/gbnfJson/types.ts","../src/utils/gbnfJson/terminals/GbnfAnyJson.ts","../src/utils/gbnfJson/terminals/GbnfArray.ts","../src/utils/gbnfJson/terminals/GbnfBoolean.ts","../src/utils/gbnfJson/terminals/GbnfBooleanValue.ts","../src/utils/gbnfJson/terminals/GbnfCommaWhitespace.ts","../src/utils/gbnfJson/terminals/GbnfFormatString.ts","../src/utils/gbnfJson/terminals/GbnfGrammar.ts","../src/utils/gbnfJson/terminals/GbnfInsideStringChar.ts","../src/utils/gbnfJson/terminals/GbnfNull.ts","../src/utils/gbnfJson/terminals/GbnfNumber.ts","../src/utils/gbnfJson/terminals/GbnfNumberValue.ts","../src/utils/gbnfJson/terminals/GbnfObjectMap.ts","../src/utils/gbnfJson/terminals/GbnfOr.ts","../src/utils/gbnfJson/terminals/GbnfRef.ts","../src/utils/gbnfJson/terminals/GbnfRepetition.ts","../src/utils/gbnfJson/terminals/GbnfString.ts","../src/utils/gbnfJson/terminals/GbnfStringValue.ts","../src/utils/gbnfJson/terminals/GbnfVerbatimText.ts","../src/utils/gbnfJson/terminals/GbnfWhitespace.ts","../src/utils/gbnfJson/terminals/gbnfConsts.ts","../src/utils/gbnfJson/utils/GbnfJsonScopeState.ts","../src/utils/gbnfJson/utils/defsScope.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.ts","../src/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.ts"],"version":"5.9.3"}
1
+ {"root":["../src/index.ts","../src/ChatWrapper.ts","../src/apiDocsIndex.ts","../src/commands.ts","../src/config.ts","../src/consts.ts","../src/state.ts","../src/types.ts","../src/bindings/AddonTypes.ts","../src/bindings/Llama.ts","../src/bindings/consts.ts","../src/bindings/getLlama.ts","../src/bindings/types.ts","../src/bindings/utils/MemoryOrchestrator.ts","../src/bindings/utils/NoBinaryFoundError.ts","../src/bindings/utils/asyncEvery.ts","../src/bindings/utils/asyncSome.ts","../src/bindings/utils/binariesGithubRelease.ts","../src/bindings/utils/clearAllLocalBuilds.ts","../src/bindings/utils/cloneLlamaCppRepo.ts","../src/bindings/utils/compileLLamaCpp.ts","../src/bindings/utils/detectAvailableComputeLayers.ts","../src/bindings/utils/detectBuildTools.ts","../src/bindings/utils/detectGlibc.ts","../src/bindings/utils/disposeBeforeExit.ts","../src/bindings/utils/getBestComputeLayersAvailable.ts","../src/bindings/utils/getBuildFolderNameForBuildOptions.ts","../src/bindings/utils/getCanUsePrebuiltBinaries.ts","../src/bindings/utils/getExampleUsageCodeOfGetLlama.ts","../src/bindings/utils/getGpuTypesToUseForOption.ts","../src/bindings/utils/getLinuxDistroInfo.ts","../src/bindings/utils/getLlamaGpuTypes.ts","../src/bindings/utils/getLlamaWithoutBackend.ts","../src/bindings/utils/getPlatform.ts","../src/bindings/utils/getPlatformInfo.ts","../src/bindings/utils/hasBuildingFromSourceDependenciesInstalled.ts","../src/bindings/utils/hasFileInPath.ts","../src/bindings/utils/lastBuildInfo.ts","../src/bindings/utils/logBinaryUsageExampleToConsole.ts","../src/bindings/utils/logDistroInstallInstruction.ts","../src/bindings/utils/resolveActualBindingBinaryPath.ts","../src/bindings/utils/resolveCustomCmakeOptions.ts","../src/bindings/utils/testBindingBinary.ts","../src/bindings/utils/testCmakeBinary.ts","../src/chatWrappers/AlpacaChatWrapper.ts","../src/chatWrappers/ChatMLChatWrapper.ts","../src/chatWrappers/DeepSeekChatWrapper.ts","../src/chatWrappers/EmptyChatWrapper.ts","../src/chatWrappers/FalconChatWrapper.ts","../src/chatWrappers/FunctionaryChatWrapper.ts","../src/chatWrappers/GemmaChatWrapper.ts","../src/chatWrappers/GeneralChatWrapper.ts","../src/chatWrappers/HarmonyChatWrapper.ts","../src/chatWrappers/Llama2ChatWrapper.ts","../src/chatWrappers/Llama3ChatWrapper.ts","../src/chatWrappers/Llama3_1ChatWrapper.ts","../src/chatWrappers/Llama3_2LightweightChatWrapper.ts","../src/chatWrappers/MistralChatWrapper.ts","../src/chatWrappers/QwenChatWrapper.ts","../src/chatWrappers/SeedChatWrapper.ts","../src/chatWrappers/generic/JinjaTemplateChatWrapper.ts","../src/chatWrappers/generic/TemplateChatWrapper.ts","../src/chatWrappers/generic/utils/UniqueIdGenerator.ts","../src/chatWrappers/generic/utils/chatHistoryFunctionCallMessageTemplate.ts","../src/chatWrappers/generic/utils/extractFunctionCallSettingsFromJinjaTemplate.ts","../src/chatWrappers/generic/utils/extractSegmentSettingsFromTokenizerAndChatTemplate.ts","../src/chatWrappers/generic/utils/getFirstValidResult.ts","../src/chatWrappers/generic/utils/squashChatHistoryItems.ts","../src/chatWrappers/generic/utils/templateSegmentOptionsToChatWrapperSettings.ts","../src/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.ts","../src/chatWrappers/utils/chunkChatItems.ts","../src/chatWrappers/utils/getModelLinageNames.ts","../src/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.ts","../src/chatWrappers/utils/isLlama3_2LightweightModel.ts","../src/chatWrappers/utils/jsonDumps.ts","../src/chatWrappers/utils/resolveChatWrapper.ts","../src/cli/cli.ts","../src/cli/projectTemplates.ts","../src/cli/recommendedModels.ts","../src/cli/startCreateCli.ts","../src/cli/commands/ChatCommand.ts","../src/cli/commands/CompleteCommand.ts","../src/cli/commands/DebugCommand.ts","../src/cli/commands/InfillCommand.ts","../src/cli/commands/InitCommand.ts","../src/cli/commands/OnPostInstallCommand.ts","../src/cli/commands/PullCommand.ts","../src/cli/commands/inspect/InspectCommand.ts","../src/cli/commands/inspect/commands/InspectEstimateCommand.ts","../src/cli/commands/inspect/commands/InspectGgufCommand.ts","../src/cli/commands/inspect/commands/InspectGpuCommand.ts","../src/cli/commands/inspect/commands/InspectMeasureCommand.ts","../src/cli/commands/source/SourceCommand.ts","../src/cli/commands/source/commands/BuildCommand.ts","../src/cli/commands/source/commands/ClearCommand.ts","../src/cli/commands/source/commands/DownloadCommand.ts","../src/cli/utils/ConsoleInteraction.ts","../src/cli/utils/ConsoleTable.ts","../src/cli/utils/basicChooseFromListConsoleInteraction.ts","../src/cli/utils/consolePromptQuestion.ts","../src/cli/utils/getReadablePath.ts","../src/cli/utils/interactivelyAskForModel.ts","../src/cli/utils/isRunningUnderRosetta.ts","../src/cli/utils/logUsedGpuTypeOption.ts","../src/cli/utils/parseXtcArg.ts","../src/cli/utils/printCommonInfoLines.ts","../src/cli/utils/printInfoLine.ts","../src/cli/utils/printModelDestination.ts","../src/cli/utils/projectTemplates.ts","../src/cli/utils/renderModelCompatibilityPercentageWithColors.ts","../src/cli/utils/resolveCommandGgufPath.ts","../src/cli/utils/resolveHeaderFlag.ts","../src/cli/utils/resolveModelRecommendationFileOptions.ts","../src/cli/utils/splitAnsiToLines.ts","../src/cli/utils/toBytes.ts","../src/cli/utils/withCliCommandDescriptionDocsUrl.ts","../src/evaluator/LlamaCompletion.ts","../src/evaluator/LlamaEmbedding.ts","../src/evaluator/LlamaEmbeddingContext.ts","../src/evaluator/LlamaGrammar.ts","../src/evaluator/LlamaGrammarEvaluationState.ts","../src/evaluator/LlamaJsonSchemaGrammar.ts","../src/evaluator/LlamaRankingContext.ts","../src/evaluator/TokenBias.ts","../src/evaluator/TokenMeter.ts","../src/evaluator/LlamaChat/LlamaChat.ts","../src/evaluator/LlamaChat/utils/FunctionCallNameGrammar.ts","../src/evaluator/LlamaChat/utils/FunctionCallParamsGrammar.ts","../src/evaluator/LlamaChat/utils/LlamaFunctionCallValidationError.ts","../src/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.ts","../src/evaluator/LlamaChatSession/LlamaChatSession.ts","../src/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.ts","../src/evaluator/LlamaChatSession/utils/defineChatSessionFunction.ts","../src/evaluator/LlamaContext/LlamaContext.ts","../src/evaluator/LlamaContext/LlamaSampler.ts","../src/evaluator/LlamaContext/TokenPredictor.ts","../src/evaluator/LlamaContext/types.ts","../src/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.ts","../src/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.ts","../src/evaluator/LlamaContext/utils/padSafeContextSize.ts","../src/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizationStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/firstInFirstOutStrategy.ts","../src/evaluator/LlamaContext/utils/batchItemsPrioritizationStrategies/maximumParallelismStrategy.ts","../src/evaluator/LlamaModel/LlamaModel.ts","../src/evaluator/LlamaModel/utils/TokenAttributes.ts","../src/evaluator/utils/chunkDocument.ts","../src/gguf/consts.ts","../src/gguf/readGgufFileInfo.ts","../src/gguf/errors/InvalidGgufMagicError.ts","../src/gguf/errors/UnsupportedGgufValueTypeError.ts","../src/gguf/fileReaders/GgufFileReader.ts","../src/gguf/fileReaders/GgufFsFileReader.ts","../src/gguf/fileReaders/GgufNetworkFetchFileReader.ts","../src/gguf/insights/GgufInsights.ts","../src/gguf/insights/GgufInsightsConfigurationResolver.ts","../src/gguf/insights/GgufInsightsTokens.ts","../src/gguf/insights/utils/getRamUsageFromUnifiedVram.ts","../src/gguf/insights/utils/resolveContextContextSizeOption.ts","../src/gguf/insights/utils/resolveModelGpuLayersOption.ts","../src/gguf/insights/utils/scoreLevels.ts","../src/gguf/parser/GgufV2Parser.ts","../src/gguf/parser/GgufV3Parser.ts","../src/gguf/parser/parseGguf.ts","../src/gguf/types/GgufFileInfoTypes.ts","../src/gguf/types/GgufMetadataTypes.ts","../src/gguf/types/GgufTensorInfoTypes.ts","../src/gguf/utils/GgufReadOffset.ts","../src/gguf/utils/convertMetadataKeyValueRecordToNestedObject.ts","../src/gguf/utils/getGgufFileTypeName.ts","../src/gguf/utils/getGgufMetadataArchitectureData.ts","../src/gguf/utils/getGgufMetadataKeyValue.ts","../src/gguf/utils/ggufQuantNames.ts","../src/gguf/utils/normalizeGgufDownloadUrl.ts","../src/gguf/utils/resolveBinarySplitGgufPartUrls.ts","../src/gguf/utils/resolveSplitGgufParts.ts","../src/utils/DisposeGuard.ts","../src/utils/InsufficientMemoryError.ts","../src/utils/LlamaText.ts","../src/utils/LruCache.ts","../src/utils/OpenAIFormat.ts","../src/utils/OverridesObject.ts","../src/utils/ReplHistory.ts","../src/utils/StopGenerationDetector.ts","../src/utils/ThreadsSplitter.ts","../src/utils/TokenStreamRegulator.ts","../src/utils/UnsupportedError.ts","../src/utils/appendUserMessageToChatHistory.ts","../src/utils/clearTempFolder.ts","../src/utils/cmake.ts","../src/utils/compareTokens.ts","../src/utils/createModelDownloader.ts","../src/utils/findBestOption.ts","../src/utils/findCharacterRemovalCountToFitChatHistoryInContext.ts","../src/utils/getBuildDefaults.ts","../src/utils/getChatWrapperSegmentDefinition.ts","../src/utils/getConsoleLogPrefix.ts","../src/utils/getGrammarsFolder.ts","../src/utils/getLlamaClasses.ts","../src/utils/getModuleVersion.ts","../src/utils/getQueuedTokensBeforeStopTrigger.ts","../src/utils/getReadableContextSize.ts","../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts","../src/utils/gitReleaseBundles.ts","../src/utils/hashString.ts","../src/utils/includesText.ts","../src/utils/isLockfileActive.ts","../src/utils/isToken.ts","../src/utils/isUrl.ts","../src/utils/mergeUnionTypes.ts","../src/utils/modelDownloadEndpoints.ts","../src/utils/modelFileAccessTokens.ts","../src/utils/optionsMatrix.ts","../src/utils/parseModelFileName.ts","../src/utils/parseModelUri.ts","../src/utils/parseTextTemplate.ts","../src/utils/prettyPrintObject.ts","../src/utils/pushAll.ts","../src/utils/removeNullFields.ts","../src/utils/resolveGithubRelease.ts","../src/utils/resolveLastTokens.ts","../src/utils/resolveModelDestination.ts","../src/utils/resolveModelFile.ts","../src/utils/runtime.ts","../src/utils/safeEventCallback.ts","../src/utils/signalSleep.ts","../src/utils/spawnCommand.ts","../src/utils/tokenizeInput.ts","../src/utils/tokenizerUtils.ts","../src/utils/transformPromisable.ts","../src/utils/truncateTextAndRoundToWords.ts","../src/utils/utilTypes.ts","../src/utils/waitForLockfileRelease.ts","../src/utils/withLockfile.ts","../src/utils/withOra.ts","../src/utils/withProgressLog.ts","../src/utils/withStatusLogs.ts","../src/utils/wrapAbortSignal.ts","../src/utils/gbnfJson/GbnfGrammarGenerator.ts","../src/utils/gbnfJson/GbnfTerminal.ts","../src/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.ts","../src/utils/gbnfJson/types.ts","../src/utils/gbnfJson/terminals/GbnfAnyJson.ts","../src/utils/gbnfJson/terminals/GbnfArray.ts","../src/utils/gbnfJson/terminals/GbnfBoolean.ts","../src/utils/gbnfJson/terminals/GbnfBooleanValue.ts","../src/utils/gbnfJson/terminals/GbnfCommaWhitespace.ts","../src/utils/gbnfJson/terminals/GbnfFormatString.ts","../src/utils/gbnfJson/terminals/GbnfGrammar.ts","../src/utils/gbnfJson/terminals/GbnfInsideStringChar.ts","../src/utils/gbnfJson/terminals/GbnfNull.ts","../src/utils/gbnfJson/terminals/GbnfNumber.ts","../src/utils/gbnfJson/terminals/GbnfNumberValue.ts","../src/utils/gbnfJson/terminals/GbnfObjectMap.ts","../src/utils/gbnfJson/terminals/GbnfOr.ts","../src/utils/gbnfJson/terminals/GbnfRef.ts","../src/utils/gbnfJson/terminals/GbnfRepetition.ts","../src/utils/gbnfJson/terminals/GbnfString.ts","../src/utils/gbnfJson/terminals/GbnfStringValue.ts","../src/utils/gbnfJson/terminals/GbnfVerbatimText.ts","../src/utils/gbnfJson/terminals/GbnfWhitespace.ts","../src/utils/gbnfJson/terminals/gbnfConsts.ts","../src/utils/gbnfJson/utils/GbnfJsonScopeState.ts","../src/utils/gbnfJson/utils/defsScope.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.ts","../src/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.ts","../src/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.ts"],"version":"5.9.3"}
@@ -1,6 +1,6 @@
1
1
  import path from "path";
2
2
  import fs from "fs-extra";
3
- import simpleGit from "simple-git";
3
+ import { simpleGit } from "simple-git";
4
4
  import { currentReleaseGitBundlePath, builtinLlamaCppGitHubRepo, llamaCppDirectory, enableRecursiveClone } from "../config.js";
5
5
  import { getBinariesGithubRelease } from "../bindings/utils/binariesGithubRelease.js";
6
6
  import { isGithubReleaseNeedsResolving } from "./resolveGithubRelease.js";
@@ -1 +1 @@
1
- {"version":3,"file":"gitReleaseBundles.js","sourceRoot":"","sources":["../../src/utils/gitReleaseBundles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitReleaseBundles.js","sourceRoot":"","sources":["../../src/utils/gitReleaseBundles.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare function resolveGithubRelease(githubOwner: string, githubRepo: string, release: string): Promise<any>;
1
+ export declare function resolveGithubRelease(githubOwner: string, githubRepo: string, release: string): Promise<string>;
2
2
  export declare function isGithubReleaseNeedsResolving(release: string): release is "latest";
@@ -1,36 +1,77 @@
1
- import { Octokit } from "octokit";
2
1
  import { getConsoleLogPrefix } from "./getConsoleLogPrefix.js";
3
2
  export async function resolveGithubRelease(githubOwner, githubRepo, release) {
4
- const octokit = new Octokit();
3
+ const githubClient = new GitHubClient();
5
4
  const repo = githubOwner + "/" + githubRepo;
6
5
  let githubRelease = null;
7
6
  try {
8
- if (release === "latest") {
9
- githubRelease = await octokit.rest.repos.getLatestRelease({
7
+ if (release === "latest")
8
+ githubRelease = await githubClient.getLatestRelease({
10
9
  owner: githubOwner,
11
10
  repo: githubRepo
12
11
  });
13
- }
14
- else {
15
- githubRelease = await octokit.rest.repos.getReleaseByTag({
12
+ else
13
+ githubRelease = await githubClient.getReleaseByTag({
16
14
  owner: githubOwner,
17
15
  repo: githubRepo,
18
16
  tag: release
19
17
  });
20
- }
21
18
  }
22
19
  catch (err) {
23
20
  console.error(getConsoleLogPrefix() + "Failed to fetch llama.cpp release info", err);
24
21
  }
25
- if (githubRelease == null) {
22
+ if (githubRelease == null)
26
23
  throw new Error(`Failed to find release "${release}" of "${repo}"`);
27
- }
28
- if (githubRelease.data.tag_name == null) {
24
+ if (githubRelease.tag_name == null)
29
25
  throw new Error(`Failed to find tag of release "${release}" of "${repo}"`);
30
- }
31
- return githubRelease.data.tag_name;
26
+ return githubRelease.tag_name;
32
27
  }
33
28
  export function isGithubReleaseNeedsResolving(release) {
34
29
  return release === "latest";
35
30
  }
31
+ const defaultGitHubApiBase = "https://api.github.com";
32
+ const defaultGitHubApiVersion = "2022-11-28";
33
+ class GitHubClient {
34
+ _clientOptions;
35
+ constructor(clientOptions = {}) {
36
+ this._clientOptions = clientOptions;
37
+ }
38
+ async getLatestRelease({ owner, repo }) {
39
+ return this._fetchJson(`/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}/releases/latest`);
40
+ }
41
+ async getReleaseByTag({ owner, repo, tag }) {
42
+ return this._fetchJson(`/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}/releases/tags/${encodeURIComponent(tag)}`);
43
+ }
44
+ async _fetchJson(path) {
45
+ const url = this._getApiBase() + path;
46
+ const headers = {
47
+ Accept: "application/vnd.github+json",
48
+ "X-GitHub-Api-Version": this._clientOptions.apiVersion ?? defaultGitHubApiVersion
49
+ };
50
+ if (this._clientOptions.token != null && this._clientOptions.token !== "")
51
+ headers.Authorization = "Bearer " + this._clientOptions.token;
52
+ if (this._clientOptions.userAgent != null && this._clientOptions.userAgent !== "")
53
+ headers["User-Agent"] = this._clientOptions.userAgent;
54
+ const res = await fetch(url, {
55
+ method: "GET",
56
+ headers
57
+ });
58
+ if (!res.ok) {
59
+ const err = new Error(`GitHub API error ${res.status} ${res.statusText}`);
60
+ err.status = res.status;
61
+ err.url = url;
62
+ err.headers = Object.fromEntries(res.headers.entries());
63
+ try {
64
+ err.bodyText = await res.text();
65
+ }
66
+ catch {
67
+ err.bodyText = undefined;
68
+ }
69
+ throw err;
70
+ }
71
+ return (await res.json());
72
+ }
73
+ _getApiBase() {
74
+ return this._clientOptions?.apiBase ?? defaultGitHubApiBase;
75
+ }
76
+ }
36
77
  //# sourceMappingURL=resolveGithubRelease.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveGithubRelease.js","sourceRoot":"","sources":["../../src/utils/resolveGithubRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAChC,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,WAAmB,EAAE,UAAkB,EAAE,OAAe;IAC/F,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,WAAW,GAAG,GAAG,GAAG,UAAU,CAAC;IAK5C,IAAI,aAAa,GAA6B,IAAI,CAAC;IAEnD,IAAI,CAAC;QACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACvB,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACtD,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,UAAU;aACnB,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;gBACrD,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,UAAU;gBAChB,GAAG,EAAE,OAAO;aACf,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,wCAAwC,EAAE,GAAG,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,SAAS,IAAI,GAAG,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,OAAO,SAAS,IAAI,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,OAAe;IACzD,OAAO,OAAO,KAAK,QAAQ,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"resolveGithubRelease.js","sourceRoot":"","sources":["../../src/utils/resolveGithubRelease.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,10 @@
12
12
  #include "globals/getMemoryInfo.h"
13
13
 
14
14
  #include <atomic>
15
+ #include <cstdlib>
16
+ #include <mutex>
15
17
 
18
+ std::mutex backendMutex;
16
19
  bool backendInitialized = false;
17
20
  bool backendDisposed = false;
18
21
 
@@ -118,6 +121,8 @@ class AddonBackendLoadWorker : public Napi::AsyncWorker {
118
121
 
119
122
  void Execute() {
120
123
  try {
124
+ std::lock_guard<std::mutex> lock(backendMutex);
125
+
121
126
  llama_backend_init();
122
127
 
123
128
  try {
@@ -163,6 +168,8 @@ class AddonBackendUnloadWorker : public Napi::AsyncWorker {
163
168
  Napi::Promise::Deferred deferred;
164
169
 
165
170
  void Execute() {
171
+ std::lock_guard<std::mutex> lock(backendMutex);
172
+
166
173
  try {
167
174
  if (backendInitialized) {
168
175
  backendInitialized = false;
@@ -234,6 +241,8 @@ Napi::Value markLoaded(const Napi::CallbackInfo& info) {
234
241
  }
235
242
 
236
243
  Napi::Value addonInit(const Napi::CallbackInfo& info) {
244
+ std::lock_guard<std::mutex> lock(backendMutex);
245
+
237
246
  if (backendInitialized) {
238
247
  Napi::Promise::Deferred deferred = Napi::Promise::Deferred::New(info.Env());
239
248
  deferred.Resolve(info.Env().Undefined());
@@ -246,6 +255,8 @@ Napi::Value addonInit(const Napi::CallbackInfo& info) {
246
255
  }
247
256
 
248
257
  Napi::Value addonDispose(const Napi::CallbackInfo& info) {
258
+ std::lock_guard<std::mutex> lock(backendMutex);
259
+
249
260
  if (backendDisposed) {
250
261
  Napi::Promise::Deferred deferred = Napi::Promise::Deferred::New(info.Env());
251
262
  deferred.Resolve(info.Env().Undefined());
@@ -259,7 +270,8 @@ Napi::Value addonDispose(const Napi::CallbackInfo& info) {
259
270
  return worker->GetPromise();
260
271
  }
261
272
 
262
- static void addonFreeLlamaBackend(Napi::Env env, int* data) {
273
+ static void addonFreeLlamaBackend() {
274
+ std::lock_guard<std::mutex> lock(backendMutex);
263
275
  if (backendDisposed) {
264
276
  return;
265
277
  }
@@ -270,6 +282,9 @@ static void addonFreeLlamaBackend(Napi::Env env, int* data) {
270
282
  llama_backend_free();
271
283
  }
272
284
  }
285
+ static void addonFreeLlamaBackendFromFinalizer(Napi::Env env, int* data) {
286
+ addonFreeLlamaBackend();
287
+ }
273
288
 
274
289
  Napi::Object registerCallback(Napi::Env env, Napi::Object exports) {
275
290
  exports.DefineProperties({
@@ -306,8 +321,8 @@ Napi::Object registerCallback(Napi::Env env, Napi::Object exports) {
306
321
 
307
322
  llama_log_set(addonLlamaCppLogCallback, nullptr);
308
323
 
309
- exports.AddFinalizer(addonFreeLlamaBackend, static_cast<int*>(nullptr));
310
-
324
+ exports.AddFinalizer(addonFreeLlamaBackendFromFinalizer, static_cast<int*>(nullptr));
325
+ env.AddCleanupHook(addonFreeLlamaBackend);
311
326
  return exports;
312
327
  }
313
328
 
@@ -1,3 +1,3 @@
1
1
  {
2
- "release": "b8117"
2
+ "release": "b8169"
3
3
  }
Binary file
@@ -1,4 +1,4 @@
1
1
  {
2
- "tag": "b8117",
2
+ "tag": "b8169",
3
3
  "llamaCppGithubRepo": "ggml-org/llama.cpp"
4
4
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-llama-cpp",
3
- "version": "3.16.1",
3
+ "version": "3.17.0",
4
4
  "description": "Run AI models locally on your machine with node.js bindings for llama.cpp. Enforce a JSON schema on the model output on the generation level",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
@@ -203,12 +203,11 @@
203
203
  "log-symbols": "^7.0.1",
204
204
  "nanoid": "^5.1.6",
205
205
  "node-addon-api": "^8.5.0",
206
- "octokit": "^5.0.5",
207
206
  "ora": "^9.3.0",
208
207
  "pretty-ms": "^9.3.0",
209
208
  "proper-lockfile": "^4.1.2",
210
209
  "semver": "^7.7.1",
211
- "simple-git": "^3.31.1",
210
+ "simple-git": "^3.32.2",
212
211
  "slice-ansi": "^8.0.0",
213
212
  "stdout-update": "^4.0.1",
214
213
  "strip-ansi": "^7.1.2",
@@ -225,18 +224,18 @@
225
224
  }
226
225
  },
227
226
  "optionalDependencies": {
228
- "@node-llama-cpp/linux-arm64": "3.16.1",
229
- "@node-llama-cpp/linux-armv7l": "3.16.1",
230
- "@node-llama-cpp/linux-x64": "3.16.1",
231
- "@node-llama-cpp/linux-x64-cuda": "3.16.1",
232
- "@node-llama-cpp/linux-x64-cuda-ext": "3.16.1",
233
- "@node-llama-cpp/linux-x64-vulkan": "3.16.1",
234
- "@node-llama-cpp/mac-arm64-metal": "3.16.1",
235
- "@node-llama-cpp/mac-x64": "3.16.1",
236
- "@node-llama-cpp/win-arm64": "3.16.1",
237
- "@node-llama-cpp/win-x64": "3.16.1",
238
- "@node-llama-cpp/win-x64-cuda": "3.16.1",
239
- "@node-llama-cpp/win-x64-cuda-ext": "3.16.1",
240
- "@node-llama-cpp/win-x64-vulkan": "3.16.1"
227
+ "@node-llama-cpp/linux-arm64": "3.17.0",
228
+ "@node-llama-cpp/linux-armv7l": "3.17.0",
229
+ "@node-llama-cpp/linux-x64": "3.17.0",
230
+ "@node-llama-cpp/linux-x64-cuda": "3.17.0",
231
+ "@node-llama-cpp/linux-x64-cuda-ext": "3.17.0",
232
+ "@node-llama-cpp/linux-x64-vulkan": "3.17.0",
233
+ "@node-llama-cpp/mac-arm64-metal": "3.17.0",
234
+ "@node-llama-cpp/mac-x64": "3.17.0",
235
+ "@node-llama-cpp/win-arm64": "3.17.0",
236
+ "@node-llama-cpp/win-x64": "3.17.0",
237
+ "@node-llama-cpp/win-x64-cuda": "3.17.0",
238
+ "@node-llama-cpp/win-x64-cuda-ext": "3.17.0",
239
+ "@node-llama-cpp/win-x64-vulkan": "3.17.0"
241
240
  }
242
241
  }