node-llama-cpp 2.8.6 → 3.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/ChatWrapper.d.ts +49 -0
- package/dist/ChatWrapper.js +120 -0
- package/dist/ChatWrapper.js.map +1 -0
- package/dist/bindings/AddonTypes.d.ts +92 -0
- package/dist/bindings/AddonTypes.js +2 -0
- package/dist/bindings/AddonTypes.js.map +1 -0
- package/dist/bindings/Llama.d.ts +23 -0
- package/dist/bindings/Llama.js +225 -0
- package/dist/bindings/Llama.js.map +1 -0
- package/dist/bindings/getLlama.d.ts +86 -0
- package/dist/bindings/getLlama.js +225 -0
- package/dist/bindings/getLlama.js.map +1 -0
- package/dist/bindings/types.d.ts +33 -0
- package/dist/bindings/types.js +30 -0
- package/dist/bindings/types.js.map +1 -0
- package/dist/bindings/utils/NoBinaryFoundError.d.ts +2 -0
- package/dist/bindings/utils/NoBinaryFoundError.js +7 -0
- package/dist/bindings/utils/NoBinaryFoundError.js.map +1 -0
- package/dist/{utils → bindings/utils}/binariesGithubRelease.js +1 -1
- package/dist/bindings/utils/binariesGithubRelease.js.map +1 -0
- package/dist/bindings/utils/clearAllLocalBuilds.d.ts +1 -0
- package/dist/bindings/utils/clearAllLocalBuilds.js +47 -0
- package/dist/bindings/utils/clearAllLocalBuilds.js.map +1 -0
- package/dist/bindings/utils/cloneLlamaCppRepo.d.ts +11 -0
- package/dist/bindings/utils/cloneLlamaCppRepo.js +155 -0
- package/dist/bindings/utils/cloneLlamaCppRepo.js.map +1 -0
- package/dist/bindings/utils/compileLLamaCpp.d.ts +12 -0
- package/dist/bindings/utils/compileLLamaCpp.js +157 -0
- package/dist/bindings/utils/compileLLamaCpp.js.map +1 -0
- package/dist/bindings/utils/getBuildFolderNameForBuildOptions.d.ts +5 -0
- package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js +85 -0
- package/dist/bindings/utils/getBuildFolderNameForBuildOptions.js.map +1 -0
- package/dist/bindings/utils/getCanUsePrebuiltBinaries.d.ts +1 -0
- package/dist/bindings/utils/getCanUsePrebuiltBinaries.js +8 -0
- package/dist/bindings/utils/getCanUsePrebuiltBinaries.js.map +1 -0
- package/dist/bindings/utils/getExampleUsageCodeOfGetLlama.d.ts +2 -0
- package/dist/bindings/utils/getExampleUsageCodeOfGetLlama.js +21 -0
- package/dist/bindings/utils/getExampleUsageCodeOfGetLlama.js.map +1 -0
- package/dist/bindings/utils/getPlatform.d.ts +2 -0
- package/dist/bindings/utils/getPlatform.js +15 -0
- package/dist/bindings/utils/getPlatform.js.map +1 -0
- package/dist/bindings/utils/lastBuildInfo.d.ts +6 -0
- package/dist/bindings/utils/lastBuildInfo.js +17 -0
- package/dist/bindings/utils/lastBuildInfo.js.map +1 -0
- package/dist/bindings/utils/logBinaryUsageExampleToConsole.d.ts +2 -0
- package/dist/bindings/utils/logBinaryUsageExampleToConsole.js +28 -0
- package/dist/bindings/utils/logBinaryUsageExampleToConsole.js.map +1 -0
- package/dist/bindings/utils/resolveCustomCmakeOptions.d.ts +1 -0
- package/dist/bindings/utils/resolveCustomCmakeOptions.js +43 -0
- package/dist/bindings/utils/resolveCustomCmakeOptions.js.map +1 -0
- package/dist/chatWrappers/AlpacaChatWrapper.d.ts +12 -0
- package/dist/chatWrappers/AlpacaChatWrapper.js +21 -0
- package/dist/chatWrappers/AlpacaChatWrapper.js.map +1 -0
- package/dist/chatWrappers/ChatMLChatWrapper.d.ts +18 -0
- package/dist/chatWrappers/ChatMLChatWrapper.js +83 -0
- package/dist/chatWrappers/ChatMLChatWrapper.js.map +1 -0
- package/dist/chatWrappers/EmptyChatWrapper.d.ts +4 -0
- package/dist/chatWrappers/EmptyChatWrapper.js +5 -0
- package/dist/chatWrappers/EmptyChatWrapper.js.map +1 -0
- package/dist/chatWrappers/FalconChatWrapper.d.ts +21 -0
- package/dist/chatWrappers/FalconChatWrapper.js +104 -0
- package/dist/chatWrappers/FalconChatWrapper.js.map +1 -0
- package/dist/chatWrappers/FunctionaryChatWrapper.d.ts +41 -0
- package/dist/chatWrappers/FunctionaryChatWrapper.js +200 -0
- package/dist/chatWrappers/FunctionaryChatWrapper.js.map +1 -0
- package/dist/chatWrappers/GeneralChatWrapper.d.ts +21 -0
- package/dist/chatWrappers/GeneralChatWrapper.js +112 -0
- package/dist/chatWrappers/GeneralChatWrapper.js.map +1 -0
- package/dist/chatWrappers/LlamaChatWrapper.d.ts +13 -0
- package/dist/chatWrappers/LlamaChatWrapper.js +78 -0
- package/dist/chatWrappers/LlamaChatWrapper.js.map +1 -0
- package/dist/chatWrappers/resolveChatWrapperBasedOnModel.d.ts +13 -0
- package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js +60 -0
- package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js.map +1 -0
- package/dist/cli/cli.js +5 -1
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/commands/BuildCommand.d.ts +2 -1
- package/dist/cli/commands/BuildCommand.js +50 -10
- package/dist/cli/commands/BuildCommand.js.map +1 -1
- package/dist/cli/commands/ChatCommand.d.ts +10 -4
- package/dist/cli/commands/ChatCommand.js +169 -57
- package/dist/cli/commands/ChatCommand.js.map +1 -1
- package/dist/cli/commands/ClearCommand.js +4 -6
- package/dist/cli/commands/ClearCommand.js.map +1 -1
- package/dist/cli/commands/DebugCommand.d.ts +7 -0
- package/dist/cli/commands/DebugCommand.js +59 -0
- package/dist/cli/commands/DebugCommand.js.map +1 -0
- package/dist/cli/commands/DownloadCommand.d.ts +2 -1
- package/dist/cli/commands/DownloadCommand.js +47 -40
- package/dist/cli/commands/DownloadCommand.js.map +1 -1
- package/dist/cli/commands/OnPostInstallCommand.js +7 -10
- package/dist/cli/commands/OnPostInstallCommand.js.map +1 -1
- package/dist/config.d.ts +10 -3
- package/dist/config.js +18 -7
- package/dist/config.js.map +1 -1
- package/dist/evaluator/LlamaChat/LlamaChat.d.ts +185 -0
- package/dist/evaluator/LlamaChat/LlamaChat.js +705 -0
- package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -0
- package/dist/evaluator/LlamaChat/utils/FunctionCallGrammar.d.ts +22 -0
- package/dist/evaluator/LlamaChat/utils/FunctionCallGrammar.js +121 -0
- package/dist/evaluator/LlamaChat/utils/FunctionCallGrammar.js.map +1 -0
- package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.d.ts +16 -0
- package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js +135 -0
- package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js.map +1 -0
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +157 -0
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +219 -0
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -0
- package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.d.ts +7 -0
- package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js +8 -0
- package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js.map +1 -0
- package/dist/evaluator/LlamaContext/LlamaContext.d.ts +109 -0
- package/dist/evaluator/LlamaContext/LlamaContext.js +606 -0
- package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -0
- package/dist/evaluator/LlamaContext/types.d.ts +82 -0
- package/dist/evaluator/LlamaContext/types.js +2 -0
- package/dist/evaluator/LlamaContext/types.js.map +1 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.d.ts +5 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.js +16 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.js.map +1 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.d.ts +5 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.js +42 -0
- package/dist/evaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.js.map +1 -0
- package/dist/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.d.ts +2 -0
- package/dist/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.js +13 -0
- package/dist/evaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.js.map +1 -0
- package/dist/evaluator/LlamaEmbeddingContext.d.ts +37 -0
- package/dist/evaluator/LlamaEmbeddingContext.js +78 -0
- package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -0
- package/dist/evaluator/LlamaGrammar.d.ts +30 -0
- package/dist/{llamaEvaluator → evaluator}/LlamaGrammar.js +15 -19
- package/dist/evaluator/LlamaGrammar.js.map +1 -0
- package/dist/evaluator/LlamaGrammarEvaluationState.d.ts +15 -0
- package/dist/evaluator/LlamaGrammarEvaluationState.js +17 -0
- package/dist/evaluator/LlamaGrammarEvaluationState.js.map +1 -0
- package/dist/{llamaEvaluator → evaluator}/LlamaJsonSchemaGrammar.d.ts +2 -1
- package/dist/{llamaEvaluator → evaluator}/LlamaJsonSchemaGrammar.js +4 -2
- package/dist/evaluator/LlamaJsonSchemaGrammar.js.map +1 -0
- package/dist/evaluator/LlamaModel.d.ts +120 -0
- package/dist/evaluator/LlamaModel.js +320 -0
- package/dist/evaluator/LlamaModel.js.map +1 -0
- package/dist/index.d.ts +29 -16
- package/dist/index.js +28 -15
- package/dist/index.js.map +1 -1
- package/dist/state.d.ts +2 -0
- package/dist/state.js +7 -0
- package/dist/state.js.map +1 -1
- package/dist/types.d.ts +44 -4
- package/dist/types.js +5 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/LlamaText.d.ts +42 -0
- package/dist/utils/LlamaText.js +207 -0
- package/dist/utils/LlamaText.js.map +1 -0
- package/dist/utils/ReplHistory.js +1 -1
- package/dist/utils/ReplHistory.js.map +1 -1
- package/dist/utils/StopGenerationDetector.d.ts +28 -0
- package/dist/utils/StopGenerationDetector.js +205 -0
- package/dist/utils/StopGenerationDetector.js.map +1 -0
- package/dist/utils/TokenStreamRegulator.d.ts +30 -0
- package/dist/utils/TokenStreamRegulator.js +96 -0
- package/dist/utils/TokenStreamRegulator.js.map +1 -0
- package/dist/utils/appendUserMessageToChatHistory.d.ts +2 -0
- package/dist/utils/appendUserMessageToChatHistory.js +18 -0
- package/dist/utils/appendUserMessageToChatHistory.js.map +1 -0
- package/dist/utils/cmake.js +16 -11
- package/dist/utils/cmake.js.map +1 -1
- package/dist/utils/compareTokens.d.ts +2 -0
- package/dist/utils/compareTokens.js +4 -0
- package/dist/utils/compareTokens.js.map +1 -0
- package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.d.ts +18 -0
- package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js +61 -0
- package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js.map +1 -0
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.d.ts +1 -0
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.js +17 -0
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.js.map +1 -1
- package/dist/utils/gbnfJson/GbnfTerminal.d.ts +1 -1
- package/dist/utils/gbnfJson/GbnfTerminal.js.map +1 -1
- package/dist/utils/gbnfJson/terminals/GbnfVerbatimText.d.ts +6 -0
- package/dist/utils/gbnfJson/terminals/GbnfVerbatimText.js +21 -0
- package/dist/utils/gbnfJson/terminals/GbnfVerbatimText.js.map +1 -0
- package/dist/utils/gbnfJson/types.d.ts +1 -1
- package/dist/utils/gbnfJson/types.js.map +1 -1
- package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.d.ts +1 -0
- package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js.map +1 -1
- package/dist/utils/getConsoleLogPrefix.d.ts +1 -0
- package/dist/utils/getConsoleLogPrefix.js +9 -0
- package/dist/utils/getConsoleLogPrefix.js.map +1 -0
- package/dist/utils/getGbnfGrammarForGbnfJsonSchema.js +1 -15
- package/dist/utils/getGbnfGrammarForGbnfJsonSchema.js.map +1 -1
- package/dist/utils/getGrammarsFolder.d.ts +2 -1
- package/dist/utils/getGrammarsFolder.js +8 -7
- package/dist/utils/getGrammarsFolder.js.map +1 -1
- package/dist/utils/getModuleVersion.d.ts +1 -0
- package/dist/utils/getModuleVersion.js +13 -0
- package/dist/utils/getModuleVersion.js.map +1 -0
- package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.d.ts +2 -0
- package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js +49 -0
- package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js.map +1 -0
- package/dist/utils/gitReleaseBundles.js +6 -5
- package/dist/utils/gitReleaseBundles.js.map +1 -1
- package/dist/utils/hashString.d.ts +1 -0
- package/dist/utils/hashString.js +8 -0
- package/dist/utils/hashString.js.map +1 -0
- package/dist/utils/isLockfileActive.d.ts +4 -0
- package/dist/utils/isLockfileActive.js +12 -0
- package/dist/utils/isLockfileActive.js.map +1 -0
- package/dist/utils/parseModelFileName.d.ts +9 -0
- package/dist/utils/parseModelFileName.js +68 -0
- package/dist/utils/parseModelFileName.js.map +1 -0
- package/dist/utils/parseModelTypeDescription.d.ts +6 -0
- package/dist/utils/parseModelTypeDescription.js +9 -0
- package/dist/utils/parseModelTypeDescription.js.map +1 -0
- package/dist/utils/prettyPrintObject.d.ts +1 -0
- package/dist/utils/prettyPrintObject.js +40 -0
- package/dist/utils/prettyPrintObject.js.map +1 -0
- package/dist/utils/removeNullFields.d.ts +1 -0
- package/dist/utils/removeNullFields.js +8 -0
- package/dist/utils/removeNullFields.js.map +1 -1
- package/dist/utils/resolveChatWrapper.d.ts +4 -0
- package/dist/utils/resolveChatWrapper.js +16 -0
- package/dist/utils/resolveChatWrapper.js.map +1 -0
- package/dist/utils/resolveGithubRelease.d.ts +2 -0
- package/dist/utils/resolveGithubRelease.js +36 -0
- package/dist/utils/resolveGithubRelease.js.map +1 -0
- package/dist/utils/spawnCommand.d.ts +1 -1
- package/dist/utils/spawnCommand.js +4 -2
- package/dist/utils/spawnCommand.js.map +1 -1
- package/dist/utils/tokenizeInput.d.ts +3 -0
- package/dist/utils/tokenizeInput.js +9 -0
- package/dist/utils/tokenizeInput.js.map +1 -0
- package/dist/utils/truncateTextAndRoundToWords.d.ts +8 -0
- package/dist/utils/truncateTextAndRoundToWords.js +27 -0
- package/dist/utils/truncateTextAndRoundToWords.js.map +1 -0
- package/dist/utils/waitForLockfileRelease.d.ts +5 -0
- package/dist/utils/waitForLockfileRelease.js +20 -0
- package/dist/utils/waitForLockfileRelease.js.map +1 -0
- package/dist/utils/withLockfile.d.ts +7 -0
- package/dist/utils/withLockfile.js +44 -0
- package/dist/utils/withLockfile.js.map +1 -0
- package/dist/utils/withOra.js +11 -1
- package/dist/utils/withOra.js.map +1 -1
- package/dist/utils/withStatusLogs.d.ts +2 -1
- package/dist/utils/withStatusLogs.js +11 -8
- package/dist/utils/withStatusLogs.js.map +1 -1
- package/llama/.clang-format +11 -11
- package/llama/CMakeLists.txt +87 -2
- package/llama/addon.cpp +915 -352
- package/llama/binariesGithubRelease.json +1 -1
- package/llama/gitRelease.bundle +0 -0
- package/llama/gpuInfo/cuda-gpu-info.cu +99 -0
- package/llama/gpuInfo/cuda-gpu-info.h +7 -0
- package/llama/gpuInfo/metal-gpu-info.h +5 -0
- package/llama/gpuInfo/metal-gpu-info.mm +17 -0
- package/llama/llama.cpp.info.json +4 -0
- package/llamaBins/linux-arm64/.buildMetadata.json +1 -0
- package/llamaBins/linux-arm64/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l/.buildMetadata.json +1 -0
- package/llamaBins/linux-armv7l/llama-addon.node +0 -0
- package/llamaBins/linux-x64/.buildMetadata.json +1 -0
- package/llamaBins/linux-x64/llama-addon.node +0 -0
- package/llamaBins/linux-x64-cuda/.buildMetadata.json +1 -0
- package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-metal/.buildMetadata.json +1 -0
- package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
- package/llamaBins/mac-x64/.buildMetadata.json +1 -0
- package/llamaBins/mac-x64/llama-addon.node +0 -0
- package/llamaBins/win-x64/.buildMetadata.json +1 -0
- package/llamaBins/win-x64/llama-addon.exp +0 -0
- package/llamaBins/win-x64/llama-addon.node +0 -0
- package/llamaBins/win-x64-cuda/.buildMetadata.json +1 -0
- package/llamaBins/win-x64-cuda/llama-addon.exp +0 -0
- package/llamaBins/win-x64-cuda/llama-addon.lib +0 -0
- package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
- package/package.json +39 -19
- package/dist/ChatPromptWrapper.d.ts +0 -11
- package/dist/ChatPromptWrapper.js +0 -20
- package/dist/ChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/ChatMLChatPromptWrapper.d.ts +0 -12
- package/dist/chatWrappers/ChatMLChatPromptWrapper.js +0 -22
- package/dist/chatWrappers/ChatMLChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/EmptyChatPromptWrapper.d.ts +0 -4
- package/dist/chatWrappers/EmptyChatPromptWrapper.js +0 -5
- package/dist/chatWrappers/EmptyChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/FalconChatPromptWrapper.d.ts +0 -19
- package/dist/chatWrappers/FalconChatPromptWrapper.js +0 -33
- package/dist/chatWrappers/FalconChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/GeneralChatPromptWrapper.d.ts +0 -19
- package/dist/chatWrappers/GeneralChatPromptWrapper.js +0 -38
- package/dist/chatWrappers/GeneralChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/LlamaChatPromptWrapper.d.ts +0 -12
- package/dist/chatWrappers/LlamaChatPromptWrapper.js +0 -23
- package/dist/chatWrappers/LlamaChatPromptWrapper.js.map +0 -1
- package/dist/chatWrappers/createChatWrapperByBos.d.ts +0 -2
- package/dist/chatWrappers/createChatWrapperByBos.js +0 -14
- package/dist/chatWrappers/createChatWrapperByBos.js.map +0 -1
- package/dist/chatWrappers/generateContextTextFromConversationHistory.d.ts +0 -23
- package/dist/chatWrappers/generateContextTextFromConversationHistory.js +0 -47
- package/dist/chatWrappers/generateContextTextFromConversationHistory.js.map +0 -1
- package/dist/llamaEvaluator/LlamaBins.d.ts +0 -4
- package/dist/llamaEvaluator/LlamaBins.js +0 -5
- package/dist/llamaEvaluator/LlamaBins.js.map +0 -1
- package/dist/llamaEvaluator/LlamaChatSession.d.ts +0 -122
- package/dist/llamaEvaluator/LlamaChatSession.js +0 -236
- package/dist/llamaEvaluator/LlamaChatSession.js.map +0 -1
- package/dist/llamaEvaluator/LlamaContext.d.ts +0 -99
- package/dist/llamaEvaluator/LlamaContext.js +0 -143
- package/dist/llamaEvaluator/LlamaContext.js.map +0 -1
- package/dist/llamaEvaluator/LlamaGrammar.d.ts +0 -32
- package/dist/llamaEvaluator/LlamaGrammar.js.map +0 -1
- package/dist/llamaEvaluator/LlamaGrammarEvaluationState.d.ts +0 -14
- package/dist/llamaEvaluator/LlamaGrammarEvaluationState.js +0 -16
- package/dist/llamaEvaluator/LlamaGrammarEvaluationState.js.map +0 -1
- package/dist/llamaEvaluator/LlamaJsonSchemaGrammar.js.map +0 -1
- package/dist/llamaEvaluator/LlamaModel.d.ts +0 -123
- package/dist/llamaEvaluator/LlamaModel.js +0 -74
- package/dist/llamaEvaluator/LlamaModel.js.map +0 -1
- package/dist/utils/binariesGithubRelease.js.map +0 -1
- package/dist/utils/clearLlamaBuild.d.ts +0 -1
- package/dist/utils/clearLlamaBuild.js +0 -12
- package/dist/utils/clearLlamaBuild.js.map +0 -1
- package/dist/utils/cloneLlamaCppRepo.d.ts +0 -2
- package/dist/utils/cloneLlamaCppRepo.js +0 -102
- package/dist/utils/cloneLlamaCppRepo.js.map +0 -1
- package/dist/utils/compileLLamaCpp.d.ts +0 -8
- package/dist/utils/compileLLamaCpp.js +0 -132
- package/dist/utils/compileLLamaCpp.js.map +0 -1
- package/dist/utils/getBin.d.ts +0 -53
- package/dist/utils/getBin.js +0 -78
- package/dist/utils/getBin.js.map +0 -1
- package/dist/utils/getReleaseInfo.d.ts +0 -7
- package/dist/utils/getReleaseInfo.js +0 -30
- package/dist/utils/getReleaseInfo.js.map +0 -1
- package/dist/utils/getTextCompletion.d.ts +0 -3
- package/dist/utils/getTextCompletion.js +0 -12
- package/dist/utils/getTextCompletion.js.map +0 -1
- package/dist/utils/usedBinFlag.d.ts +0 -6
- package/dist/utils/usedBinFlag.js +0 -15
- package/dist/utils/usedBinFlag.js.map +0 -1
- package/dist/utils/withLock.d.ts +0 -1
- package/dist/utils/withLock.js +0 -19
- package/dist/utils/withLock.js.map +0 -1
- package/llama/usedBin.json +0 -3
- package/llamaBins/mac-arm64/llama-addon.node +0 -0
- package/llamaBins/mac-x64/ggml-metal.metal +0 -6119
- /package/dist/{utils → bindings/utils}/binariesGithubRelease.d.ts +0 -0
- /package/llamaBins/{mac-arm64 → mac-arm64-metal}/ggml-metal.metal +0 -0
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
import process from "process";
|
|
2
|
+
import path from "path";
|
|
3
|
+
import { DisposedError, EventRelay } from "lifecycle-utils";
|
|
4
|
+
import { removeNullFields } from "../utils/removeNullFields.js";
|
|
5
|
+
export class LlamaModel {
|
|
6
|
+
/** @internal */ _llama;
|
|
7
|
+
/** @internal */ _model;
|
|
8
|
+
/** @internal */ _tokens;
|
|
9
|
+
/** @internal */ _filename;
|
|
10
|
+
/** @internal */ _disposedState = { disposed: false };
|
|
11
|
+
/** @internal */ _typeDescription;
|
|
12
|
+
/** @internal */ _trainContextSize;
|
|
13
|
+
onDispose = new EventRelay();
|
|
14
|
+
/**
|
|
15
|
+
* > options source:
|
|
16
|
+
* > [github:ggerganov/llama.cpp/llama.h](
|
|
17
|
+
* > https://github.com/ggerganov/llama.cpp/blob/05816027d649f977468fc804cdb54e99eac246d1/llama.h#L161) (`struct llama_model_params`)
|
|
18
|
+
* @param options
|
|
19
|
+
* @param options.modelPath - path to the model on the filesystem
|
|
20
|
+
* @param [options.gpuLayers] - number of layers to store in VRAM
|
|
21
|
+
* @param [options.vocabOnly] - only load the vocabulary, no weights
|
|
22
|
+
* @param [options.useMmap] - use mmap if possible
|
|
23
|
+
* @param [options.useMlock] - force system to keep model in RAM
|
|
24
|
+
*/
|
|
25
|
+
constructor({ llama, modelPath, gpuLayers, vocabOnly, useMmap, useMlock }) {
|
|
26
|
+
this._llama = llama;
|
|
27
|
+
this._model = new this._llama._bindings.AddonModel(path.resolve(process.cwd(), modelPath), removeNullFields({
|
|
28
|
+
gpuLayers,
|
|
29
|
+
vocabOnly,
|
|
30
|
+
useMmap,
|
|
31
|
+
useMlock
|
|
32
|
+
}));
|
|
33
|
+
this._tokens = LlamaModelTokens._create(this._model, this._disposedState);
|
|
34
|
+
this._filename = path.basename(modelPath);
|
|
35
|
+
this.tokenize = this.tokenize.bind(this);
|
|
36
|
+
this.detokenize = this.detokenize.bind(this);
|
|
37
|
+
}
|
|
38
|
+
dispose() {
|
|
39
|
+
if (this._disposedState.disposed)
|
|
40
|
+
return;
|
|
41
|
+
this.onDispose.dispatchEvent();
|
|
42
|
+
this._model.dispose();
|
|
43
|
+
this._disposedState.disposed = true;
|
|
44
|
+
}
|
|
45
|
+
/** @hidden */
|
|
46
|
+
[Symbol.dispose]() {
|
|
47
|
+
this.dispose();
|
|
48
|
+
}
|
|
49
|
+
get disposed() {
|
|
50
|
+
return this._disposedState.disposed;
|
|
51
|
+
}
|
|
52
|
+
get tokens() {
|
|
53
|
+
return this._tokens;
|
|
54
|
+
}
|
|
55
|
+
get filename() {
|
|
56
|
+
return this._filename;
|
|
57
|
+
}
|
|
58
|
+
tokenize(text, specialTokens = false) {
|
|
59
|
+
this._ensureNotDisposed();
|
|
60
|
+
if (text === "")
|
|
61
|
+
return [];
|
|
62
|
+
if (specialTokens === "builtin") {
|
|
63
|
+
const builtinToken = text;
|
|
64
|
+
switch (builtinToken) {
|
|
65
|
+
case "BOS": return this.tokens.bos == null ? [] : [this.tokens.bos];
|
|
66
|
+
case "EOS": return this.tokens.eos == null ? [] : [this.tokens.eos];
|
|
67
|
+
case "NL": return this.tokens.nl == null ? [] : [this.tokens.nl];
|
|
68
|
+
}
|
|
69
|
+
void (builtinToken);
|
|
70
|
+
throw new Error(`Unknown builtin special token: ${builtinToken}`);
|
|
71
|
+
}
|
|
72
|
+
return Array.from(this._model.tokenize(text, specialTokens));
|
|
73
|
+
}
|
|
74
|
+
/** Transform tokens into text */
|
|
75
|
+
detokenize(tokens) {
|
|
76
|
+
this._ensureNotDisposed();
|
|
77
|
+
if (tokens.length === 0)
|
|
78
|
+
return "";
|
|
79
|
+
return this._model.detokenize(Uint32Array.from(tokens));
|
|
80
|
+
}
|
|
81
|
+
/** @hidden `ModelTypeDescription` type alias is too long in the documentation */
|
|
82
|
+
get typeDescription() {
|
|
83
|
+
this._ensureNotDisposed();
|
|
84
|
+
if (this._typeDescription == null)
|
|
85
|
+
this._typeDescription = this._model.getModelDescription();
|
|
86
|
+
return this._typeDescription;
|
|
87
|
+
}
|
|
88
|
+
/** The context size the model was trained on */
|
|
89
|
+
get trainContextSize() {
|
|
90
|
+
this._ensureNotDisposed();
|
|
91
|
+
if (this._trainContextSize == null)
|
|
92
|
+
this._trainContextSize = this._model.getTrainContextSize();
|
|
93
|
+
return this._trainContextSize;
|
|
94
|
+
}
|
|
95
|
+
/** @internal */
|
|
96
|
+
_ensureNotDisposed() {
|
|
97
|
+
if (this._disposedState.disposed)
|
|
98
|
+
throw new DisposedError();
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
export class LlamaModelTokens {
|
|
102
|
+
/** @internal */ _model;
|
|
103
|
+
/** @internal */ _disposedState;
|
|
104
|
+
/** @internal */ _infillTokens;
|
|
105
|
+
/** @internal */ _bosToken;
|
|
106
|
+
/** @internal */ _eosToken;
|
|
107
|
+
/** @internal */ _nlToken;
|
|
108
|
+
/** @internal */ _bosString;
|
|
109
|
+
/** @internal */ _eosString;
|
|
110
|
+
/** @internal */ _nlString;
|
|
111
|
+
constructor(model, disposedState) {
|
|
112
|
+
this._model = model;
|
|
113
|
+
this._disposedState = disposedState;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* @returns infill tokens
|
|
117
|
+
*/
|
|
118
|
+
get infill() {
|
|
119
|
+
this._ensureNotDisposed();
|
|
120
|
+
if (this._infillTokens == null)
|
|
121
|
+
this._infillTokens = LlamaModelInfillTokens._create(this._model, this._disposedState);
|
|
122
|
+
return this._infillTokens;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* @returns The BOS (Beginning Of Sequence) token.
|
|
126
|
+
*/
|
|
127
|
+
get bos() {
|
|
128
|
+
this._ensureNotDisposed();
|
|
129
|
+
if (this._bosToken == null)
|
|
130
|
+
this._bosToken = this._model.tokenBos();
|
|
131
|
+
if (this._bosToken === -1)
|
|
132
|
+
return null;
|
|
133
|
+
return this._bosToken;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @returns The EOS (End Of Sequence) token.
|
|
137
|
+
*/
|
|
138
|
+
get eos() {
|
|
139
|
+
this._ensureNotDisposed();
|
|
140
|
+
if (this._eosToken == null)
|
|
141
|
+
this._eosToken = this._model.tokenEos();
|
|
142
|
+
if (this._eosToken === -1)
|
|
143
|
+
return null;
|
|
144
|
+
return this._eosToken;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* @returns The NL (New Line) token.
|
|
148
|
+
*/
|
|
149
|
+
get nl() {
|
|
150
|
+
this._ensureNotDisposed();
|
|
151
|
+
if (this._nlToken == null)
|
|
152
|
+
this._nlToken = this._model.tokenNl();
|
|
153
|
+
if (this._nlToken === -1)
|
|
154
|
+
return null;
|
|
155
|
+
return this._nlToken;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* @returns The BOS (Beginning Of Sequence) token as a string.
|
|
159
|
+
*/
|
|
160
|
+
get bosString() {
|
|
161
|
+
this._ensureNotDisposed();
|
|
162
|
+
const bosToken = this.bos;
|
|
163
|
+
if (bosToken == null)
|
|
164
|
+
return null;
|
|
165
|
+
if (this._bosString == null)
|
|
166
|
+
this._bosString = this._model.getTokenString(bosToken);
|
|
167
|
+
return this._bosString;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* @returns The EOS (End Of Sequence) token as a string.
|
|
171
|
+
*/
|
|
172
|
+
get eosString() {
|
|
173
|
+
this._ensureNotDisposed();
|
|
174
|
+
const eosToken = this.eos;
|
|
175
|
+
if (eosToken == null)
|
|
176
|
+
return null;
|
|
177
|
+
if (this._eosString == null)
|
|
178
|
+
this._eosString = this._model.getTokenString(eosToken);
|
|
179
|
+
return this._eosString;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* @returns The NL (New Line) token as a string.
|
|
183
|
+
*/
|
|
184
|
+
get nlString() {
|
|
185
|
+
this._ensureNotDisposed();
|
|
186
|
+
const nlToken = this.nl;
|
|
187
|
+
if (nlToken == null)
|
|
188
|
+
return null;
|
|
189
|
+
if (this._nlString == null)
|
|
190
|
+
this._nlString = this._model.getTokenString(nlToken);
|
|
191
|
+
return this._nlString;
|
|
192
|
+
}
|
|
193
|
+
/** @internal */
|
|
194
|
+
_ensureNotDisposed() {
|
|
195
|
+
if (this._disposedState.disposed)
|
|
196
|
+
throw new DisposedError();
|
|
197
|
+
}
|
|
198
|
+
/** @internal */
|
|
199
|
+
static _create(model, disposedState) {
|
|
200
|
+
return new LlamaModelTokens(model, disposedState);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
export class LlamaModelInfillTokens {
|
|
204
|
+
/** @internal */ _model;
|
|
205
|
+
/** @internal */ _disposedState;
|
|
206
|
+
/** @internal */ _prefixToken;
|
|
207
|
+
/** @internal */ _middleToken;
|
|
208
|
+
/** @internal */ _suffixToken;
|
|
209
|
+
/** @internal */ _eotToken;
|
|
210
|
+
/** @internal */ _prefixString;
|
|
211
|
+
/** @internal */ _middleString;
|
|
212
|
+
/** @internal */ _suffixString;
|
|
213
|
+
/** @internal */ _eotString;
|
|
214
|
+
constructor(model, disposedState) {
|
|
215
|
+
this._model = model;
|
|
216
|
+
this._disposedState = disposedState;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* @returns The beginning of infill prefix token.
|
|
220
|
+
*/
|
|
221
|
+
get prefix() {
|
|
222
|
+
this._ensureNotDisposed();
|
|
223
|
+
if (this._prefixToken == null)
|
|
224
|
+
this._prefixToken = this._model.prefixToken();
|
|
225
|
+
if (this._prefixToken === -1)
|
|
226
|
+
return null;
|
|
227
|
+
return this._prefixToken;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* @returns The beginning of infill middle token.
|
|
231
|
+
*/
|
|
232
|
+
get middle() {
|
|
233
|
+
this._ensureNotDisposed();
|
|
234
|
+
if (this._middleToken == null)
|
|
235
|
+
this._middleToken = this._model.middleToken();
|
|
236
|
+
if (this._middleToken === -1)
|
|
237
|
+
return null;
|
|
238
|
+
return this._middleToken;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* @returns The beginning of infill suffix token.
|
|
242
|
+
*/
|
|
243
|
+
get suffix() {
|
|
244
|
+
this._ensureNotDisposed();
|
|
245
|
+
if (this._suffixToken == null)
|
|
246
|
+
this._suffixToken = this._model.suffixToken();
|
|
247
|
+
if (this._suffixToken === -1)
|
|
248
|
+
return null;
|
|
249
|
+
return this._suffixToken;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* @returns End of infill middle token (End Of Text).
|
|
253
|
+
*/
|
|
254
|
+
get eot() {
|
|
255
|
+
this._ensureNotDisposed();
|
|
256
|
+
if (this._eotToken == null)
|
|
257
|
+
this._eotToken = this._model.eotToken();
|
|
258
|
+
if (this._eotToken === -1)
|
|
259
|
+
return null;
|
|
260
|
+
return this._eotToken;
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* @returns The beginning of infill prefix token as a string.
|
|
264
|
+
*/
|
|
265
|
+
get prefixString() {
|
|
266
|
+
this._ensureNotDisposed();
|
|
267
|
+
const prefixToken = this.prefix;
|
|
268
|
+
if (prefixToken == null)
|
|
269
|
+
return null;
|
|
270
|
+
if (this._prefixString == null)
|
|
271
|
+
this._prefixString = this._model.getTokenString(prefixToken);
|
|
272
|
+
return this._prefixString;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* @returns The beginning of infill middle token as a string.
|
|
276
|
+
*/
|
|
277
|
+
get middleString() {
|
|
278
|
+
this._ensureNotDisposed();
|
|
279
|
+
const middleToken = this.middle;
|
|
280
|
+
if (middleToken == null)
|
|
281
|
+
return null;
|
|
282
|
+
if (this._middleString == null)
|
|
283
|
+
this._middleString = this._model.getTokenString(middleToken);
|
|
284
|
+
return this._middleString;
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* @returns The beginning of infill suffix token as a string.
|
|
288
|
+
*/
|
|
289
|
+
get suffixString() {
|
|
290
|
+
this._ensureNotDisposed();
|
|
291
|
+
const suffixToken = this.suffix;
|
|
292
|
+
if (suffixToken == null)
|
|
293
|
+
return null;
|
|
294
|
+
if (this._suffixString == null)
|
|
295
|
+
this._suffixString = this._model.getTokenString(suffixToken);
|
|
296
|
+
return this._suffixString;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* @returns End of infill middle token (End Of Text) as a string.
|
|
300
|
+
*/
|
|
301
|
+
get eotString() {
|
|
302
|
+
this._ensureNotDisposed();
|
|
303
|
+
const eotToken = this.eot;
|
|
304
|
+
if (eotToken == null)
|
|
305
|
+
return null;
|
|
306
|
+
if (this._eotString == null)
|
|
307
|
+
this._eotString = this._model.getTokenString(eotToken);
|
|
308
|
+
return this._eotString;
|
|
309
|
+
}
|
|
310
|
+
/** @internal */
|
|
311
|
+
_ensureNotDisposed() {
|
|
312
|
+
if (this._disposedState.disposed)
|
|
313
|
+
throw new DisposedError();
|
|
314
|
+
}
|
|
315
|
+
/** @internal */
|
|
316
|
+
static _create(model, disposedState) {
|
|
317
|
+
return new LlamaModelInfillTokens(model, disposedState);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
//# sourceMappingURL=LlamaModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LlamaModel.js","sourceRoot":"","sources":["../../src/evaluator/LlamaModel.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,19 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { DisposedError } from "lifecycle-utils";
|
|
2
|
+
import { Llama } from "./bindings/Llama.js";
|
|
3
|
+
import { getLlama, LlamaOptions } from "./bindings/getLlama.js";
|
|
4
|
+
import { NoBinaryFoundError } from "./bindings/utils/NoBinaryFoundError.js";
|
|
5
|
+
import { LlamaLogLevel } from "./bindings/types.js";
|
|
6
|
+
import { LlamaModel, LlamaModelInfillTokens, type LlamaModelOptions, LlamaModelTokens } from "./evaluator/LlamaModel.js";
|
|
7
|
+
import { LlamaGrammar, type LlamaGrammarOptions } from "./evaluator/LlamaGrammar.js";
|
|
8
|
+
import { LlamaJsonSchemaGrammar } from "./evaluator/LlamaJsonSchemaGrammar.js";
|
|
4
9
|
import { LlamaJsonSchemaValidationError } from "./utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js";
|
|
5
|
-
import { LlamaGrammarEvaluationState, LlamaGrammarEvaluationStateOptions } from "./
|
|
6
|
-
import { LlamaContext,
|
|
7
|
-
import {
|
|
10
|
+
import { LlamaGrammarEvaluationState, LlamaGrammarEvaluationStateOptions } from "./evaluator/LlamaGrammarEvaluationState.js";
|
|
11
|
+
import { LlamaContext, LlamaContextSequence } from "./evaluator/LlamaContext/LlamaContext.js";
|
|
12
|
+
import { LlamaEmbeddingContext, type LlamaEmbeddingContextOptions, LlamaEmbedding, type LlamaEmbeddingJSON } from "./evaluator/LlamaEmbeddingContext.js";
|
|
13
|
+
import { type LlamaContextOptions, type BatchingOptions, type LlamaContextSequenceRepeatPenalty, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizeStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority } from "./evaluator/LlamaContext/types.js";
|
|
14
|
+
import { LlamaChatSession, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty } from "./evaluator/LlamaChatSession/LlamaChatSession.js";
|
|
15
|
+
import { defineChatSessionFunction } from "./evaluator/LlamaChatSession/utils/defineChatSessionFunction.js";
|
|
16
|
+
import { LlamaChat, type LlamaChatOptions, type LLamaChatGenerateResponseOptions, type LLamaChatContextShiftOptions, type LLamaChatRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall } from "./evaluator/LlamaChat/LlamaChat.js";
|
|
8
17
|
import { AbortError } from "./AbortError.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
+
import { ChatWrapper, type ChatWrapperSettings } from "./ChatWrapper.js";
|
|
19
|
+
import { EmptyChatWrapper } from "./chatWrappers/EmptyChatWrapper.js";
|
|
20
|
+
import { LlamaChatWrapper } from "./chatWrappers/LlamaChatWrapper.js";
|
|
21
|
+
import { GeneralChatWrapper } from "./chatWrappers/GeneralChatWrapper.js";
|
|
22
|
+
import { ChatMLChatWrapper } from "./chatWrappers/ChatMLChatWrapper.js";
|
|
23
|
+
import { FalconChatWrapper } from "./chatWrappers/FalconChatWrapper.js";
|
|
24
|
+
import { AlpacaChatWrapper } from "./chatWrappers/AlpacaChatWrapper.js";
|
|
25
|
+
import { FunctionaryChatWrapper } from "./chatWrappers/FunctionaryChatWrapper.js";
|
|
26
|
+
import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
|
|
27
|
+
import { LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokenJSON } from "./utils/LlamaText.js";
|
|
28
|
+
import { appendUserMessageToChatHistory } from "./utils/appendUserMessageToChatHistory.js";
|
|
29
|
+
import { getModuleVersion } from "./utils/getModuleVersion.js";
|
|
30
|
+
import { type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, isChatModelResponseFunctionCall } from "./types.js";
|
|
18
31
|
import { type GbnfJsonArraySchema, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonObjectSchema, type GbnfJsonOneOfSchema, type GbnfJsonSchema, type GbnfJsonSchemaImmutableType, type GbnfJsonSchemaToType } from "./utils/gbnfJson/types.js";
|
|
19
|
-
export { LlamaModel, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, type LlamaContextOptions, type
|
|
32
|
+
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 LLamaChatRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall, AbortError, DisposedError, ChatWrapper, type ChatWrapperSettings, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, resolveChatWrapperBasedOnModel, 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
|
@@ -1,18 +1,31 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { DisposedError } from "lifecycle-utils";
|
|
2
|
+
import { Llama } from "./bindings/Llama.js";
|
|
3
|
+
import { getLlama } from "./bindings/getLlama.js";
|
|
4
|
+
import { NoBinaryFoundError } from "./bindings/utils/NoBinaryFoundError.js";
|
|
5
|
+
import { LlamaLogLevel } from "./bindings/types.js";
|
|
6
|
+
import { LlamaModel, LlamaModelInfillTokens, LlamaModelTokens } from "./evaluator/LlamaModel.js";
|
|
7
|
+
import { LlamaGrammar } from "./evaluator/LlamaGrammar.js";
|
|
8
|
+
import { LlamaJsonSchemaGrammar } from "./evaluator/LlamaJsonSchemaGrammar.js";
|
|
4
9
|
import { LlamaJsonSchemaValidationError } from "./utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js";
|
|
5
|
-
import { LlamaGrammarEvaluationState } from "./
|
|
6
|
-
import { LlamaContext } from "./
|
|
7
|
-
import {
|
|
10
|
+
import { LlamaGrammarEvaluationState } from "./evaluator/LlamaGrammarEvaluationState.js";
|
|
11
|
+
import { LlamaContext, LlamaContextSequence } from "./evaluator/LlamaContext/LlamaContext.js";
|
|
12
|
+
import { LlamaEmbeddingContext, LlamaEmbedding } from "./evaluator/LlamaEmbeddingContext.js";
|
|
13
|
+
import { LlamaChatSession } from "./evaluator/LlamaChatSession/LlamaChatSession.js";
|
|
14
|
+
import { defineChatSessionFunction } from "./evaluator/LlamaChatSession/utils/defineChatSessionFunction.js";
|
|
15
|
+
import { LlamaChat } from "./evaluator/LlamaChat/LlamaChat.js";
|
|
8
16
|
import { AbortError } from "./AbortError.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
|
|
17
|
+
import { ChatWrapper } from "./ChatWrapper.js";
|
|
18
|
+
import { EmptyChatWrapper } from "./chatWrappers/EmptyChatWrapper.js";
|
|
19
|
+
import { LlamaChatWrapper } from "./chatWrappers/LlamaChatWrapper.js";
|
|
20
|
+
import { GeneralChatWrapper } from "./chatWrappers/GeneralChatWrapper.js";
|
|
21
|
+
import { ChatMLChatWrapper } from "./chatWrappers/ChatMLChatWrapper.js";
|
|
22
|
+
import { FalconChatWrapper } from "./chatWrappers/FalconChatWrapper.js";
|
|
23
|
+
import { AlpacaChatWrapper } from "./chatWrappers/AlpacaChatWrapper.js";
|
|
24
|
+
import { FunctionaryChatWrapper } from "./chatWrappers/FunctionaryChatWrapper.js";
|
|
25
|
+
import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
|
|
26
|
+
import { LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText } from "./utils/LlamaText.js";
|
|
27
|
+
import { appendUserMessageToChatHistory } from "./utils/appendUserMessageToChatHistory.js";
|
|
28
|
+
import { getModuleVersion } from "./utils/getModuleVersion.js";
|
|
29
|
+
import { isChatModelResponseFunctionCall } from "./types.js";
|
|
30
|
+
export { Llama, getLlama, LlamaLogLevel, NoBinaryFoundError, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, LlamaGrammar, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, LlamaContext, LlamaContextSequence, LlamaEmbeddingContext, LlamaEmbedding, LlamaChatSession, defineChatSessionFunction, LlamaChat, AbortError, DisposedError, ChatWrapper, EmptyChatWrapper, LlamaChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, resolveChatWrapperBasedOnModel, LlamaText, SpecialToken, BuiltinSpecialToken, isLlamaText, tokenizeText, appendUserMessageToChatHistory, getModuleVersion, isChatModelResponseFunctionCall };
|
|
18
31
|
//# 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,UAAU,
|
|
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,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,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,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,UAAU,EACV,aAAa,EACb,WAAW,EAEX,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,YAAY,EAIZ,8BAA8B,EAC9B,gBAAgB,EAUhB,+BAA+B,EAUlC,CAAC"}
|
package/dist/state.d.ts
CHANGED
package/dist/state.js
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
let isInDocumentationMode = false;
|
|
2
|
+
let isInCLI = false;
|
|
2
3
|
export function getIsInDocumentationMode() {
|
|
3
4
|
return isInDocumentationMode;
|
|
4
5
|
}
|
|
5
6
|
export function setIsInDocumentationMode(value) {
|
|
6
7
|
isInDocumentationMode = value;
|
|
7
8
|
}
|
|
9
|
+
export function getIsRunningFromCLI() {
|
|
10
|
+
return isInCLI;
|
|
11
|
+
}
|
|
12
|
+
export function setIsRunningFromCLI(value) {
|
|
13
|
+
isInCLI = value;
|
|
14
|
+
}
|
|
8
15
|
//# 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;
|
|
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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { GbnfJsonSchema, GbnfJsonSchemaToType } from "./utils/gbnfJson/types.js";
|
|
2
|
+
import { BuiltinSpecialTokenValue } from "./utils/LlamaText.js";
|
|
3
|
+
export type Token = number & {
|
|
4
|
+
__token: never;
|
|
5
5
|
};
|
|
6
|
+
export type Tokenizer = {
|
|
7
|
+
tokenize(text: string, specialTokens?: boolean): Token[];
|
|
8
|
+
tokenize(text: BuiltinSpecialTokenValue, specialTokens: "builtin"): Token[];
|
|
9
|
+
}["tokenize"];
|
|
10
|
+
export type ChatHistoryItem = ChatSystemMessage | ChatUserMessage | ChatModelResponse;
|
|
11
|
+
export type ChatSystemMessage = {
|
|
12
|
+
type: "system";
|
|
13
|
+
text: string;
|
|
14
|
+
};
|
|
15
|
+
export type ChatUserMessage = {
|
|
16
|
+
type: "user";
|
|
17
|
+
text: string;
|
|
18
|
+
};
|
|
19
|
+
export type ChatModelResponse = {
|
|
20
|
+
type: "model";
|
|
21
|
+
response: (string | ChatModelFunctionCall)[];
|
|
22
|
+
};
|
|
23
|
+
export type ChatModelFunctionCall = {
|
|
24
|
+
type: "functionCall";
|
|
25
|
+
name: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
params: any;
|
|
28
|
+
result: any;
|
|
29
|
+
raw?: string;
|
|
30
|
+
};
|
|
31
|
+
export type ChatModelFunctions = {
|
|
32
|
+
readonly [name: string]: {
|
|
33
|
+
readonly description?: string;
|
|
34
|
+
readonly params?: GbnfJsonSchema | undefined | null;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export type ChatSessionModelFunctions = {
|
|
38
|
+
readonly [name: string]: ChatSessionModelFunction<any>;
|
|
39
|
+
};
|
|
40
|
+
export type ChatSessionModelFunction<Params extends GbnfJsonSchema | undefined = GbnfJsonSchema | undefined> = {
|
|
41
|
+
readonly description?: string;
|
|
42
|
+
readonly params?: Params;
|
|
43
|
+
readonly handler: (params: GbnfJsonSchemaToType<Params>) => any;
|
|
44
|
+
};
|
|
45
|
+
export declare function isChatModelResponseFunctionCall(item: ChatModelResponse["response"][number]): item is ChatModelFunctionCall;
|
package/dist/types.js
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAqDA,MAAM,UAAU,+BAA+B,CAAC,IAA2C;IACvF,IAAI,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,KAAK,CAAC;IAEjB,OAAO,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Token, Tokenizer } from "../types.js";
|
|
2
|
+
export type LlamaTextClass = {
|
|
3
|
+
<const V extends LlamaTextValue = LlamaTextValue, const V2 extends LlamaTextValue = LlamaTextValue>(strings: TemplateStringsArray | V | LlamaText<V> | readonly (LlamaText<V> | V)[], ...values: readonly (V | LlamaText<V> | V2 | LlamaText<V2> | number | boolean | readonly (LlamaText<V> | V | LlamaText<V2> | V2)[])[]): LlamaText<V | V2>;
|
|
4
|
+
fromJSON(json: LlamaTextJSON): LlamaText;
|
|
5
|
+
};
|
|
6
|
+
export type LlamaText<T extends LlamaTextValue = LlamaTextValue> = {
|
|
7
|
+
<const V extends LlamaTextValue = LlamaTextValue, const V2 extends LlamaTextValue = LlamaTextValue>(strings: TemplateStringsArray | V | LlamaText | readonly (LlamaText | V)[], ...values: readonly (V | V2 | LlamaText | number | boolean | readonly (LlamaText | V | V2)[])[]): LlamaText<T | V>;
|
|
8
|
+
readonly type: "LlamaText";
|
|
9
|
+
readonly values: readonly T[];
|
|
10
|
+
mapValues<V extends LlamaTextValue = LlamaTextValue>(mapper: (value: T) => V): LlamaText<V>;
|
|
11
|
+
joinValues<V extends LlamaTextValue = LlamaTextValue>(separator: LlamaText<V> | V): LlamaText<T | V>;
|
|
12
|
+
toString(): string;
|
|
13
|
+
toJSON(): LlamaTextJSON;
|
|
14
|
+
tokenize(tokenizer: Tokenizer): Token[];
|
|
15
|
+
};
|
|
16
|
+
export type LlamaTextValue = string | SpecialToken;
|
|
17
|
+
export type LlamaTextJSON = Array<LlamaTextJSONValue>;
|
|
18
|
+
export type LlamaTextJSONValue = string | LlamaTextSpecialTokenJSON;
|
|
19
|
+
export type LlamaTextSpecialTokenJSON = {
|
|
20
|
+
type: "specialToken";
|
|
21
|
+
value: string;
|
|
22
|
+
builtin?: true;
|
|
23
|
+
};
|
|
24
|
+
export declare const LlamaText: LlamaTextClass;
|
|
25
|
+
export declare class SpecialToken {
|
|
26
|
+
readonly value: string;
|
|
27
|
+
constructor(value: string);
|
|
28
|
+
toString(): string;
|
|
29
|
+
tokenize(tokenizer: Tokenizer): Token[];
|
|
30
|
+
toJSON(): LlamaTextSpecialTokenJSON;
|
|
31
|
+
static fromJSON(json: LlamaTextSpecialTokenJSON): SpecialToken;
|
|
32
|
+
static isSpecialTokenJSON(value: LlamaTextJSONValue): value is LlamaTextSpecialTokenJSON;
|
|
33
|
+
}
|
|
34
|
+
export type BuiltinSpecialTokenValue = "BOS" | "EOS" | "NL";
|
|
35
|
+
export declare class BuiltinSpecialToken extends SpecialToken {
|
|
36
|
+
readonly value: BuiltinSpecialTokenValue;
|
|
37
|
+
constructor(value: BuiltinSpecialTokenValue);
|
|
38
|
+
tokenize(tokenizer: Tokenizer): Token[];
|
|
39
|
+
toJSON(): LlamaTextSpecialTokenJSON;
|
|
40
|
+
}
|
|
41
|
+
export declare function isLlamaText(value: unknown): value is LlamaText;
|
|
42
|
+
export declare function tokenizeText(text: string | LlamaText, tokenizer: Tokenizer): Token[];
|