node-llama-cpp 3.3.2 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/bindings/AddonTypes.d.ts +12 -4
- package/dist/bindings/Llama.d.ts +9 -0
- package/dist/bindings/Llama.js +52 -28
- package/dist/bindings/Llama.js.map +1 -1
- package/dist/bindings/getLlama.d.ts +2 -1
- package/dist/bindings/getLlama.js +19 -9
- package/dist/bindings/getLlama.js.map +1 -1
- package/dist/bindings/utils/asyncSome.js +2 -0
- package/dist/bindings/utils/asyncSome.js.map +1 -1
- package/dist/bindings/utils/compileLLamaCpp.d.ts +1 -1
- package/dist/bindings/utils/compileLLamaCpp.js +115 -34
- package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
- package/dist/bindings/utils/detectAvailableComputeLayers.d.ts +1 -0
- package/dist/bindings/utils/detectAvailableComputeLayers.js +4 -4
- package/dist/bindings/utils/detectAvailableComputeLayers.js.map +1 -1
- package/dist/bindings/utils/detectBuildTools.d.ts +14 -0
- package/dist/bindings/utils/detectBuildTools.js +149 -0
- package/dist/bindings/utils/detectBuildTools.js.map +1 -0
- package/dist/bindings/utils/resolveActualBindingBinaryPath.d.ts +1 -0
- package/dist/bindings/utils/resolveActualBindingBinaryPath.js +18 -0
- package/dist/bindings/utils/resolveActualBindingBinaryPath.js.map +1 -0
- package/dist/bindings/utils/testBindingBinary.d.ts +1 -1
- package/dist/bindings/utils/testBindingBinary.js +58 -5
- package/dist/bindings/utils/testBindingBinary.js.map +1 -1
- package/dist/chatWrappers/AlpacaChatWrapper.d.ts +4 -0
- package/dist/chatWrappers/AlpacaChatWrapper.js +4 -0
- package/dist/chatWrappers/AlpacaChatWrapper.js.map +1 -1
- package/dist/chatWrappers/FalconChatWrapper.d.ts +4 -0
- package/dist/chatWrappers/FalconChatWrapper.js +4 -0
- package/dist/chatWrappers/FalconChatWrapper.js.map +1 -1
- package/dist/chatWrappers/GeneralChatWrapper.d.ts +4 -0
- package/dist/chatWrappers/GeneralChatWrapper.js +4 -0
- package/dist/chatWrappers/GeneralChatWrapper.js.map +1 -1
- package/dist/chatWrappers/utils/resolveChatWrapper.d.ts +2 -0
- package/dist/chatWrappers/utils/resolveChatWrapper.js +8 -27
- package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
- package/dist/cli/commands/ChatCommand.d.ts +4 -0
- package/dist/cli/commands/ChatCommand.js +158 -13
- package/dist/cli/commands/ChatCommand.js.map +1 -1
- package/dist/cli/commands/CompleteCommand.d.ts +4 -0
- package/dist/cli/commands/CompleteCommand.js +143 -10
- package/dist/cli/commands/CompleteCommand.js.map +1 -1
- package/dist/cli/commands/DebugCommand.js +5 -5
- package/dist/cli/commands/DebugCommand.js.map +1 -1
- package/dist/cli/commands/InfillCommand.d.ts +4 -0
- package/dist/cli/commands/InfillCommand.js +142 -10
- package/dist/cli/commands/InfillCommand.js.map +1 -1
- package/dist/cli/commands/OnPostInstallCommand.js +12 -2
- package/dist/cli/commands/OnPostInstallCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectEstimateCommand.d.ts +1 -0
- package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js +14 -7
- package/dist/cli/commands/inspect/commands/InspectEstimateCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +13 -3
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectGpuCommand.js +20 -10
- package/dist/cli/commands/inspect/commands/InspectGpuCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.d.ts +2 -0
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +234 -77
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
- package/dist/cli/recommendedModels.js +11 -1
- package/dist/cli/recommendedModels.js.map +1 -1
- package/dist/cli/utils/ConsoleTable.d.ts +1 -0
- package/dist/cli/utils/ConsoleTable.js +5 -1
- package/dist/cli/utils/ConsoleTable.js.map +1 -1
- package/dist/cli/utils/interactivelyAskForModel.d.ts +2 -1
- package/dist/cli/utils/interactivelyAskForModel.js +16 -13
- package/dist/cli/utils/interactivelyAskForModel.js.map +1 -1
- package/dist/cli/utils/isRunningUnderRosetta.d.ts +1 -0
- package/dist/cli/utils/isRunningUnderRosetta.js +20 -0
- package/dist/cli/utils/isRunningUnderRosetta.js.map +1 -0
- package/dist/cli/utils/printCommonInfoLines.d.ts +4 -2
- package/dist/cli/utils/printCommonInfoLines.js +67 -5
- package/dist/cli/utils/printCommonInfoLines.js.map +1 -1
- package/dist/cli/utils/resolveCommandGgufPath.d.ts +3 -1
- package/dist/cli/utils/resolveCommandGgufPath.js +6 -5
- package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
- package/dist/cli/utils/toBytes.d.ts +1 -0
- package/dist/cli/utils/toBytes.js +5 -0
- package/dist/cli/utils/toBytes.js.map +1 -0
- package/dist/config.d.ts +3 -0
- package/dist/config.js +3 -0
- package/dist/config.js.map +1 -1
- package/dist/evaluator/LlamaChat/LlamaChat.d.ts +12 -3
- package/dist/evaluator/LlamaChat/LlamaChat.js +21 -7
- package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +6 -2
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +3 -0
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
- package/dist/evaluator/LlamaCompletion.d.ts +3 -0
- package/dist/evaluator/LlamaCompletion.js +5 -0
- package/dist/evaluator/LlamaCompletion.js.map +1 -1
- package/dist/evaluator/LlamaContext/LlamaContext.d.ts +81 -38
- package/dist/evaluator/LlamaContext/LlamaContext.js +678 -132
- package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
- package/dist/evaluator/LlamaContext/TokenPredictor.d.ts +55 -0
- package/dist/evaluator/LlamaContext/TokenPredictor.js +20 -0
- package/dist/evaluator/LlamaContext/TokenPredictor.js.map +1 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.d.ts +56 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.js +266 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.js.map +1 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.d.ts +58 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.js +138 -0
- package/dist/evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.js.map +1 -0
- package/dist/evaluator/LlamaContext/types.d.ts +198 -5
- package/dist/evaluator/LlamaEmbeddingContext.d.ts +3 -0
- package/dist/evaluator/LlamaEmbeddingContext.js +3 -0
- package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
- package/dist/evaluator/LlamaGrammar.d.ts +7 -1
- package/dist/evaluator/LlamaGrammar.js +6 -0
- package/dist/evaluator/LlamaGrammar.js.map +1 -1
- package/dist/evaluator/LlamaGrammarEvaluationState.d.ts +4 -4
- package/dist/evaluator/LlamaGrammarEvaluationState.js +16 -8
- package/dist/evaluator/LlamaGrammarEvaluationState.js.map +1 -1
- package/dist/evaluator/LlamaJsonSchemaGrammar.d.ts +5 -0
- package/dist/evaluator/LlamaJsonSchemaGrammar.js +7 -0
- package/dist/evaluator/LlamaJsonSchemaGrammar.js.map +1 -1
- package/dist/evaluator/LlamaModel/LlamaModel.d.ts +19 -11
- package/dist/evaluator/LlamaModel/LlamaModel.js +23 -29
- package/dist/evaluator/LlamaModel/LlamaModel.js.map +1 -1
- package/dist/evaluator/LlamaRankingContext.d.ts +76 -0
- package/dist/evaluator/LlamaRankingContext.js +158 -0
- package/dist/evaluator/LlamaRankingContext.js.map +1 -0
- package/dist/evaluator/TokenBias.d.ts +3 -0
- package/dist/evaluator/TokenBias.js +3 -0
- package/dist/evaluator/TokenBias.js.map +1 -1
- package/dist/evaluator/utils/chunkDocument.d.ts +86 -0
- package/dist/evaluator/utils/chunkDocument.js +212 -0
- package/dist/evaluator/utils/chunkDocument.js.map +1 -0
- package/dist/gguf/insights/GgufInsights.d.ts +3 -1
- package/dist/gguf/insights/GgufInsights.js +114 -8
- package/dist/gguf/insights/GgufInsights.js.map +1 -1
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.d.ts +6 -3
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.js +11 -7
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.js.map +1 -1
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.d.ts +2 -1
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js +13 -7
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js.map +1 -1
- package/dist/gguf/parser/GgufV2Parser.js +29 -8
- package/dist/gguf/parser/GgufV2Parser.js.map +1 -1
- package/dist/gguf/parser/parseGguf.js +11 -11
- package/dist/gguf/parser/parseGguf.js.map +1 -1
- package/dist/gguf/readGgufFileInfo.js +8 -3
- package/dist/gguf/readGgufFileInfo.js.map +1 -1
- package/dist/gguf/types/GgufFileInfoTypes.d.ts +1 -0
- package/dist/gguf/types/GgufMetadataTypes.d.ts +9 -9
- package/dist/gguf/types/GgufMetadataTypes.js +1 -1
- package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
- package/dist/gguf/types/GgufTensorInfoTypes.d.ts +13 -0
- package/dist/gguf/types/GgufTensorInfoTypes.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/LlamaText.d.ts +4 -1
- package/dist/utils/LlamaText.js +4 -1
- package/dist/utils/LlamaText.js.map +1 -1
- package/dist/utils/cmake.js +23 -0
- package/dist/utils/cmake.js.map +1 -1
- package/dist/utils/pushAll.d.ts +1 -1
- package/dist/utils/pushAll.js.map +1 -1
- package/dist/utils/tokenizerUtils.js +1 -1
- package/dist/utils/utilTypes.d.ts +5 -0
- package/llama/CMakeLists.txt +25 -8
- package/llama/addon/AddonContext.cpp +196 -22
- package/llama/addon/AddonContext.h +1 -0
- package/llama/addon/AddonGrammar.cpp +1 -4
- package/llama/addon/AddonGrammarEvaluationState.cpp +16 -5
- package/llama/addon/AddonModel.cpp +31 -39
- package/llama/addon/AddonModel.h +1 -1
- package/llama/addon/AddonModelLora.cpp +2 -2
- package/llama/addon/AddonModelLora.h +1 -1
- package/llama/addon/AddonSampler.cpp +7 -12
- package/llama/addon/addon.cpp +26 -7
- package/llama/addon/globals/getGpuInfo.cpp +30 -5
- package/llama/addon/globals/getGpuInfo.h +6 -1
- package/llama/addon/globals/getMemoryInfo.cpp +63 -0
- package/llama/addon/globals/getMemoryInfo.h +4 -0
- package/llama/binariesGithubRelease.json +1 -1
- package/llama/cmake/win32.ensureNinjaPath.cmake +68 -0
- package/llama/cmake/win32.ensureNodeLib.cmake +34 -0
- package/llama/cmake/win32.llvmApplyGnuModeAdaptations.cmake +12 -0
- package/llama/cmake/win32.llvmEnsureCmakeAr.cmake +37 -0
- package/llama/cmake/win32.llvmUseGnuModeCompilers.cmake +87 -0
- package/llama/cmake/win32.programFilesPaths.cmake +35 -0
- package/llama/gitRelease.bundle +0 -0
- package/llama/gpuInfo/vulkan-gpu-info.cpp +29 -2
- package/llama/gpuInfo/vulkan-gpu-info.h +1 -0
- package/llama/llama.cpp.info.json +1 -1
- package/llama/profiles/llvm.win32.host-arm64.target-arm64.cmake +14 -0
- package/llama/profiles/llvm.win32.host-x64.target-arm64.cmake +14 -0
- package/llama/profiles/llvm.win32.host-x64.target-x64.cmake +14 -0
- package/llama/toolchains/llvm.win32.host-x64.target-x64.cmake +20 -0
- package/llama/toolchains/win32.host-arm64.target-arm64.cmake +21 -0
- package/llama/toolchains/win32.host-x64.target-arm64.cmake +14 -34
- package/package.json +47 -44
- package/templates/README.md +1 -1
- package/templates/packed/electron-typescript-react.json +1 -1
- package/templates/packed/node-typescript.json +1 -1
|
@@ -24,13 +24,14 @@ export class GgufInsightsConfigurationResolver {
|
|
|
24
24
|
* @param options
|
|
25
25
|
* @param hardwareOverrides
|
|
26
26
|
*/
|
|
27
|
-
async resolveAndScoreConfig({ targetGpuLayers, targetContextSize, embeddingContext = false, flashAttention = false } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => this._ggufInsights._llama._ramOrchestrator.getMemoryState()), getSwapState = (() => this._ggufInsights._llama._swapOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
|
|
27
|
+
async resolveAndScoreConfig({ targetGpuLayers, targetContextSize, embeddingContext = false, flashAttention = false, useMmap = this._ggufInsights._llama.supportsMmap } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => this._ggufInsights._llama._ramOrchestrator.getMemoryState()), getSwapState = (() => this._ggufInsights._llama._swapOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
|
|
28
28
|
const compatibilityScore = await this.scoreModelConfigurationCompatibility({
|
|
29
29
|
flashAttention,
|
|
30
30
|
contextSize: targetContextSize,
|
|
31
31
|
embeddingContext,
|
|
32
32
|
forceGpuLayers: targetGpuLayers,
|
|
33
|
-
forceStrictContextSize: targetContextSize != null
|
|
33
|
+
forceStrictContextSize: targetContextSize != null,
|
|
34
|
+
useMmap
|
|
34
35
|
}, {
|
|
35
36
|
getVramState,
|
|
36
37
|
getRamState,
|
|
@@ -62,7 +63,7 @@ export class GgufInsightsConfigurationResolver {
|
|
|
62
63
|
*
|
|
63
64
|
* `contextSize` defaults to `4096` (if the model train context size is lower than this, the model train context size is used instead).
|
|
64
65
|
*/
|
|
65
|
-
async scoreModelConfigurationCompatibility({ contextSize = Math.min(4096, this._ggufInsights.trainContextSize ?? 4096), embeddingContext = false, flashAttention = false, maximumFittedContextSizeMultiplier = 100, maximumUnfitConfigurationResourceMultiplier = 100, forceStrictContextSize = false, forceGpuLayers } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => this._ggufInsights._llama._ramOrchestrator.getMemoryState()), getSwapState = (() => this._ggufInsights._llama._swapOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
|
|
66
|
+
async scoreModelConfigurationCompatibility({ contextSize = Math.min(4096, this._ggufInsights.trainContextSize ?? 4096), embeddingContext = false, flashAttention = false, maximumFittedContextSizeMultiplier = 100, maximumUnfitConfigurationResourceMultiplier = 100, forceStrictContextSize = false, forceGpuLayers, useMmap = this._ggufInsights._llama.supportsMmap } = {}, { getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), getRamState = (async () => this._ggufInsights._llama._ramOrchestrator.getMemoryState()), getSwapState = (() => this._ggufInsights._llama._swapOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading } = {}) {
|
|
66
67
|
const [vramState, ramState, swapState] = await Promise.all([
|
|
67
68
|
getVramState(),
|
|
68
69
|
getRamState(),
|
|
@@ -92,7 +93,8 @@ export class GgufInsightsConfigurationResolver {
|
|
|
92
93
|
llamaGpu,
|
|
93
94
|
llamaSupportsGpuOffloading,
|
|
94
95
|
defaultContextFlashAttention: flashAttention,
|
|
95
|
-
ignoreMemorySafetyChecks: forceGpuLayers != null
|
|
96
|
+
ignoreMemorySafetyChecks: forceGpuLayers != null,
|
|
97
|
+
useMmap
|
|
96
98
|
});
|
|
97
99
|
gpuLayersFitMemory = true;
|
|
98
100
|
}
|
|
@@ -102,7 +104,8 @@ export class GgufInsightsConfigurationResolver {
|
|
|
102
104
|
}
|
|
103
105
|
const canUseGpu = llamaSupportsGpuOffloading && llamaGpu !== false;
|
|
104
106
|
const estimatedModelResourceUsage = this._ggufInsights.estimateModelResourceRequirements({
|
|
105
|
-
gpuLayers: resolvedGpuLayers
|
|
107
|
+
gpuLayers: resolvedGpuLayers,
|
|
108
|
+
useMmap
|
|
106
109
|
});
|
|
107
110
|
let resolvedContextSize = Math.min(this.ggufInsights.trainContextSize ?? defaultContextSizeForUnfitContextSizeConfiguration, defaultContextSizeForUnfitContextSizeConfiguration);
|
|
108
111
|
let contextFitsMemory = false;
|
|
@@ -197,7 +200,7 @@ export class GgufInsightsConfigurationResolver {
|
|
|
197
200
|
}
|
|
198
201
|
};
|
|
199
202
|
}
|
|
200
|
-
async resolveModelGpuLayers(gpuLayers, { ignoreMemorySafetyChecks = false, getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading, defaultContextFlashAttention = false } = {}) {
|
|
203
|
+
async resolveModelGpuLayers(gpuLayers, { ignoreMemorySafetyChecks = false, getVramState = (() => this._ggufInsights._llama._vramOrchestrator.getMemoryState()), llamaVramPaddingSize = this._ggufInsights._llama.vramPaddingSize, llamaGpu = this._ggufInsights._llama.gpu, llamaSupportsGpuOffloading = this._ggufInsights._llama.supportsGpuOffloading, defaultContextFlashAttention = false, useMmap = this._ggufInsights._llama.supportsMmap } = {}) {
|
|
201
204
|
return resolveModelGpuLayersOption(gpuLayers, {
|
|
202
205
|
ggufInsights: this._ggufInsights,
|
|
203
206
|
ignoreMemorySafetyChecks,
|
|
@@ -205,7 +208,8 @@ export class GgufInsightsConfigurationResolver {
|
|
|
205
208
|
llamaVramPaddingSize,
|
|
206
209
|
llamaGpu,
|
|
207
210
|
llamaSupportsGpuOffloading,
|
|
208
|
-
defaultContextFlashAttention
|
|
211
|
+
defaultContextFlashAttention,
|
|
212
|
+
useMmap
|
|
209
213
|
});
|
|
210
214
|
}
|
|
211
215
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GgufInsightsConfigurationResolver.js","sourceRoot":"","sources":["../../../src/gguf/insights/GgufInsightsConfigurationResolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,0BAA0B,EAAC,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAC,uBAAuB,EAAC,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAC,+BAA+B,EAAC,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,0BAA0B,EAAC,MAAM,uCAAuC,CAAC;AAGjF,MAAM,CAAC,MAAM,4CAA4C,GAAG,IAAI,CAAC;AACjE,MAAM,kDAAkD,GAAG,IAAI,CAAC;AAGhE,MAAM,OAAO,iCAAiC;IAC1C,gBAAgB,CAAkB,aAAa,CAAe;IAE9D,YAAoB,YAA0B;QAC1C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,qBAAqB,CAAC,EAC/B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GAAG,KAAK,EACxB,cAAc,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"GgufInsightsConfigurationResolver.js","sourceRoot":"","sources":["../../../src/gguf/insights/GgufInsightsConfigurationResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LlamaModelOptions } from "../../../evaluator/LlamaModel/LlamaModel.js";
|
|
2
2
|
import { BuildGpu } from "../../../bindings/types.js";
|
|
3
3
|
import type { GgufInsights } from "../GgufInsights.js";
|
|
4
|
-
export declare function resolveModelGpuLayersOption(gpuLayers: LlamaModelOptions["gpuLayers"], { ggufInsights, ignoreMemorySafetyChecks, getVramState, llamaVramPaddingSize, llamaGpu, llamaSupportsGpuOffloading, defaultContextFlashAttention }: {
|
|
4
|
+
export declare function resolveModelGpuLayersOption(gpuLayers: LlamaModelOptions["gpuLayers"], { ggufInsights, ignoreMemorySafetyChecks, getVramState, llamaVramPaddingSize, llamaGpu, llamaSupportsGpuOffloading, defaultContextFlashAttention, useMmap }: {
|
|
5
5
|
ggufInsights: GgufInsights;
|
|
6
6
|
ignoreMemorySafetyChecks?: boolean;
|
|
7
7
|
getVramState(): Promise<{
|
|
@@ -12,4 +12,5 @@ export declare function resolveModelGpuLayersOption(gpuLayers: LlamaModelOptions
|
|
|
12
12
|
llamaGpu: BuildGpu;
|
|
13
13
|
llamaSupportsGpuOffloading: boolean;
|
|
14
14
|
defaultContextFlashAttention: boolean;
|
|
15
|
+
useMmap?: boolean;
|
|
15
16
|
}): Promise<number>;
|
|
@@ -4,7 +4,7 @@ import { getDefaultContextBatchSize, getDefaultModelContextSize } from "../../..
|
|
|
4
4
|
import { minAllowedContextSizeInCalculations } from "../../../config.js";
|
|
5
5
|
import { scoreLevels } from "./scoreLevels.js";
|
|
6
6
|
const fitContextExtraMemoryPaddingPercentage = 0.5;
|
|
7
|
-
export async function resolveModelGpuLayersOption(gpuLayers, { ggufInsights, ignoreMemorySafetyChecks = false, getVramState, llamaVramPaddingSize, llamaGpu, llamaSupportsGpuOffloading, defaultContextFlashAttention }) {
|
|
7
|
+
export async function resolveModelGpuLayersOption(gpuLayers, { ggufInsights, ignoreMemorySafetyChecks = false, getVramState, llamaVramPaddingSize, llamaGpu, llamaSupportsGpuOffloading, defaultContextFlashAttention, useMmap }) {
|
|
8
8
|
if (gpuLayers == null)
|
|
9
9
|
gpuLayers = "auto";
|
|
10
10
|
if (!llamaSupportsGpuOffloading)
|
|
@@ -20,7 +20,8 @@ export async function resolveModelGpuLayersOption(gpuLayers, { ggufInsights, ign
|
|
|
20
20
|
gpuLayers: resolvedGpuLayers,
|
|
21
21
|
ggufInsights,
|
|
22
22
|
currentVram: vramState.free,
|
|
23
|
-
defaultContextFlashAttention
|
|
23
|
+
defaultContextFlashAttention,
|
|
24
|
+
useMmap
|
|
24
25
|
});
|
|
25
26
|
if (maxLayersRequirements == null)
|
|
26
27
|
throw new InsufficientMemoryError("Not enough VRAM to fit the model with the specified settings");
|
|
@@ -50,7 +51,8 @@ export async function resolveModelGpuLayersOption(gpuLayers, { ggufInsights, ign
|
|
|
50
51
|
maxGpuLayers: typeof gpuLayers === "object"
|
|
51
52
|
? gpuLayers.max
|
|
52
53
|
: undefined,
|
|
53
|
-
defaultContextFlashAttention
|
|
54
|
+
defaultContextFlashAttention,
|
|
55
|
+
useMmap
|
|
54
56
|
});
|
|
55
57
|
const hasGpuLayersRequirements = typeof gpuLayers === "object" &&
|
|
56
58
|
(gpuLayers.min != null || gpuLayers.max != null || gpuLayers.fitContext?.contextSize != null);
|
|
@@ -60,7 +62,7 @@ export async function resolveModelGpuLayersOption(gpuLayers, { ggufInsights, ign
|
|
|
60
62
|
}
|
|
61
63
|
throw new Error(`Invalid gpuLayers value: ${gpuLayers}`);
|
|
62
64
|
}
|
|
63
|
-
function getBestGpuLayersForFreeVram({ ggufInsights, freeVram, fitContext, minGpuLayers, maxGpuLayers, defaultContextFlashAttention }) {
|
|
65
|
+
function getBestGpuLayersForFreeVram({ ggufInsights, freeVram, fitContext, minGpuLayers, maxGpuLayers, defaultContextFlashAttention, useMmap }) {
|
|
64
66
|
return findBestOption({
|
|
65
67
|
*generator() {
|
|
66
68
|
const minLayers = Math.floor(Math.max(0, minGpuLayers ?? 0));
|
|
@@ -77,7 +79,8 @@ function getBestGpuLayersForFreeVram({ ggufInsights, freeVram, fitContext, minGp
|
|
|
77
79
|
ggufInsights,
|
|
78
80
|
currentVram: freeVram,
|
|
79
81
|
fitContext,
|
|
80
|
-
defaultContextFlashAttention
|
|
82
|
+
defaultContextFlashAttention,
|
|
83
|
+
useMmap
|
|
81
84
|
});
|
|
82
85
|
if (layersRequirements == null)
|
|
83
86
|
return null;
|
|
@@ -124,8 +127,11 @@ function scoreGpuLayersAndContextCombination({ gpuLayers, contextSize }, { total
|
|
|
124
127
|
}
|
|
125
128
|
return scoreGpuLayers() + scoreContextSize();
|
|
126
129
|
}
|
|
127
|
-
function getVramRequiredForGpuLayers({ gpuLayers, ggufInsights, currentVram, fitContext, defaultContextFlashAttention = false }) {
|
|
128
|
-
const modelVram = ggufInsights.estimateModelResourceRequirements({
|
|
130
|
+
function getVramRequiredForGpuLayers({ gpuLayers, ggufInsights, currentVram, fitContext, defaultContextFlashAttention = false, useMmap }) {
|
|
131
|
+
const modelVram = ggufInsights.estimateModelResourceRequirements({
|
|
132
|
+
gpuLayers,
|
|
133
|
+
useMmap
|
|
134
|
+
}).gpuVram;
|
|
129
135
|
if (modelVram > currentVram)
|
|
130
136
|
return null;
|
|
131
137
|
if (fitContext != null && fitContext.contextSize != null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveModelGpuLayersOption.js","sourceRoot":"","sources":["../../../../src/gguf/insights/utils/resolveModelGpuLayersOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,0BAA0B,EAAE,0BAA0B,EAAC,MAAM,iDAAiD,CAAC;AACvH,OAAO,EAAC,mCAAmC,EAAC,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAG7C,MAAM,sCAAsC,GAAG,GAAG,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,SAAyC,EAAE,EACzF,YAAY,EAAE,wBAAwB,GAAG,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAClF,QAAQ,EAAE,0BAA0B,EAAE,4BAA4B,
|
|
1
|
+
{"version":3,"file":"resolveModelGpuLayersOption.js","sourceRoot":"","sources":["../../../../src/gguf/insights/utils/resolveModelGpuLayersOption.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { GgufValueType } from "../types/GgufFileInfoTypes.js";
|
|
|
5
5
|
import { convertMetadataKeyValueRecordToNestedObject } from "../utils/convertMetadataKeyValueRecordToNestedObject.js";
|
|
6
6
|
import { promisableLoop, transformPromisable, transformPromisables } from "../../utils/transformPromisable.js";
|
|
7
7
|
import { noDirectSubNestingGGufMetadataKeys } from "../consts.js";
|
|
8
|
+
const ggufDefaultAlignment = 32;
|
|
8
9
|
export class GgufV2Parser {
|
|
9
10
|
_fileReader;
|
|
10
11
|
_shouldReadTensorInfo;
|
|
@@ -25,8 +26,14 @@ export class GgufV2Parser {
|
|
|
25
26
|
const headerReadResult = headerReadResultPromisable instanceof Promise
|
|
26
27
|
? await headerReadResultPromisable
|
|
27
28
|
: headerReadResultPromisable;
|
|
29
|
+
const alignmentHeader = headerReadResult.metadata["general.alignment"];
|
|
30
|
+
const ggufAlignment = (alignmentHeader != null &&
|
|
31
|
+
(typeof alignmentHeader === "number" || typeof alignmentHeader === "bigint") &&
|
|
32
|
+
Number.isFinite(Number(alignmentHeader)))
|
|
33
|
+
? Number(alignmentHeader)
|
|
34
|
+
: ggufDefaultAlignment;
|
|
28
35
|
const tensorReadResultPromisable = this._shouldReadTensorInfo
|
|
29
|
-
? await this._readTensorInfo(headerReadResult.tensorCount, readOffset)
|
|
36
|
+
? await this._readTensorInfo(headerReadResult.tensorCount, readOffset, ggufAlignment)
|
|
30
37
|
: null;
|
|
31
38
|
const tensorReadResult = tensorReadResultPromisable instanceof Promise
|
|
32
39
|
? await tensorReadResultPromisable
|
|
@@ -41,7 +48,8 @@ export class GgufV2Parser {
|
|
|
41
48
|
metadata: metadata,
|
|
42
49
|
tensorInfo: tensorReadResult?.tensorInfo,
|
|
43
50
|
metadataSize: headerReadResult.headerSize + initialOffset,
|
|
44
|
-
tensorInfoSize: tensorReadResult?.tensorInfoSize
|
|
51
|
+
tensorInfoSize: tensorReadResult?.tensorInfoSize,
|
|
52
|
+
tensorDataOffset: tensorReadResult?.tensorDataOffset
|
|
45
53
|
};
|
|
46
54
|
}
|
|
47
55
|
_readGgufValue(type, offset) {
|
|
@@ -110,7 +118,7 @@ export class GgufV2Parser {
|
|
|
110
118
|
})
|
|
111
119
|
});
|
|
112
120
|
}
|
|
113
|
-
_readTensorInfo(tensorCount, readOffset) {
|
|
121
|
+
_readTensorInfo(tensorCount, readOffset, ggufAlignment) {
|
|
114
122
|
const initialOffset = readOffset.offset;
|
|
115
123
|
const tensorInfo = [];
|
|
116
124
|
let i = 0n;
|
|
@@ -138,7 +146,9 @@ export class GgufV2Parser {
|
|
|
138
146
|
name,
|
|
139
147
|
dimensions,
|
|
140
148
|
ggmlType: ggmlType,
|
|
141
|
-
offset: GgufFileReader.castNumberIfSafe(offset)
|
|
149
|
+
offset: GgufFileReader.castNumberIfSafe(offset),
|
|
150
|
+
fileOffset: 0, // will be set later
|
|
151
|
+
filePart: 1 // will be updated later if needed
|
|
142
152
|
});
|
|
143
153
|
});
|
|
144
154
|
}
|
|
@@ -146,11 +156,22 @@ export class GgufV2Parser {
|
|
|
146
156
|
});
|
|
147
157
|
},
|
|
148
158
|
afterthought: () => void i++,
|
|
149
|
-
returnValue: () =>
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
159
|
+
returnValue: () => {
|
|
160
|
+
const fileTensorDataOffset = alignOffset(readOffset.offset, ggufAlignment);
|
|
161
|
+
for (const tensor of tensorInfo)
|
|
162
|
+
tensor.fileOffset = typeof tensor.offset === "bigint"
|
|
163
|
+
? BigInt(fileTensorDataOffset) + tensor.offset
|
|
164
|
+
: fileTensorDataOffset + tensor.offset;
|
|
165
|
+
return {
|
|
166
|
+
tensorInfo,
|
|
167
|
+
tensorInfoSize: readOffset.offset - initialOffset,
|
|
168
|
+
tensorDataOffset: fileTensorDataOffset
|
|
169
|
+
};
|
|
170
|
+
}
|
|
153
171
|
});
|
|
154
172
|
}
|
|
155
173
|
}
|
|
174
|
+
function alignOffset(offset, alignment) {
|
|
175
|
+
return offset + (alignment - (offset % alignment)) % alignment;
|
|
176
|
+
}
|
|
156
177
|
//# sourceMappingURL=GgufV2Parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GgufV2Parser.js","sourceRoot":"","sources":["../../../src/gguf/parser/GgufV2Parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAC,6BAA6B,EAAC,MAAM,4CAA4C,CAAC;AACzF,OAAO,EACH,aAAa,EAChB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAC,2CAA2C,EAAC,MAAM,yDAAyD,CAAC;AACpH,OAAO,EAAC,cAAc,EAAc,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AACzH,OAAO,EAAC,kCAAkC,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"GgufV2Parser.js","sourceRoot":"","sources":["../../../src/gguf/parser/GgufV2Parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAC,6BAA6B,EAAC,MAAM,4CAA4C,CAAC;AACzF,OAAO,EACH,aAAa,EAChB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAC,2CAA2C,EAAC,MAAM,yDAAyD,CAAC;AACpH,OAAO,EAAC,cAAc,EAAc,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AACzH,OAAO,EAAC,kCAAkC,EAAC,MAAM,cAAc,CAAC;AAGhE,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAM,OAAO,YAAY;IACJ,WAAW,CAAiB;IAC5B,qBAAqB,CAAU;IAC/B,WAAW,CAAW;IACtB,WAAW,CAAiB;IAC5B,YAAY,CAAU;IAEvC,YAAmB,EAAC,UAAU,EAAE,cAAc,GAAG,IAAI,EAAE,UAAU,GAAG,EAAE,EAAE,UAAU,EAAE,WAAW,EAA2B;QACtH,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,KAAK;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC;QAExC,MAAM,0BAA0B,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACnE,MAAM,gBAAgB,GAAG,0BAA0B,YAAY,OAAO;YAClE,CAAC,CAAC,MAAM,0BAA0B;YAClC,CAAC,CAAC,0BAA0B,CAAC;QACjC,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACvE,MAAM,aAAa,GAAG,CAClB,eAAe,IAAI,IAAI;YACvB,CAAC,OAAO,eAAe,KAAK,QAAQ,IAAI,OAAO,eAAe,KAAK,QAAQ,CAAC;YAC5E,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAC3C;YACG,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;YACzB,CAAC,CAAC,oBAAoB,CAAC;QAC3B,MAAM,0BAA0B,GAAG,IAAI,CAAC,qBAAqB;YACzD,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC;YACrF,CAAC,CAAC,IAAI,CAAC;QACX,MAAM,gBAAgB,GAAG,0BAA0B,YAAY,OAAO;YAClE,CAAC,CAAC,MAAM,0BAA0B;YAClC,CAAC,CAAC,0BAA0B,CAAC;QACjC,MAAM,QAAQ,GAAG,2CAA2C,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YACpF,mBAAmB,EAAE,IAAI,CAAC,YAAY;YACtC,UAAU,EAAE,IAAI,CAAC,WAAW;YAC5B,sBAAsB,EAAE,kCAAkC;SAC7D,CAAC,CAAC;QAEH,OAAO;YACH,WAAW,EAAE,gBAAgB,CAAC,WAAW;YACzC,QAAQ,EAAE,QAA+B;YACzC,UAAU,EAAE,gBAAgB,EAAE,UAAU;YACxC,YAAY,EAAE,gBAAgB,CAAC,UAAU,GAAG,aAAa;YACzD,cAAc,EAAE,gBAAgB,EAAE,cAAc;YAChD,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB;SACvD,CAAC;IACN,CAAC;IAES,cAAc,CAAC,IAAmB,EAAE,MAA+B;QACzE,MAAM,UAAU,GAAG,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAE5D,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACxE,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACtE,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC1E,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACxE,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC1E,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACxE,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC5E,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACtE,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACpE,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC1E,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACxE,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,IAAI,KAAK,aAAa,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACpE,MAAM,qBAAqB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEtE,OAAO,oBAAoB,CAAC,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE;gBACnG,MAAM,WAAW,GAAoB,EAAE,CAAC;gBACxC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEV,OAAO,cAAc,CAAC;oBAClB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,WAAW;oBAChC,QAAQ,EAAE,GAAG,EAAE;wBACX,OAAO,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;4BAC7E,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC5B,CAAC,CAAC,CAAC;oBACP,CAAC;oBACD,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;oBAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW;iBACjC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAES,gBAAgB,CAAC,MAA+B;QACtD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,UAA0B;QACrD,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC;QAExC,MAAM,qBAAqB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QAEvG,MAAM,WAAW,GAAG,qBAAqB,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,CAAC,CAAC,qBAAqB,CAAC;QACnH,MAAM,eAAe,GAAG,yBAAyB,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,yBAAyB,CAAC,CAAC,CAAC,yBAAyB,CAAC;QAEnI,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,cAAc,CAAC;YAClB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,eAAe;YACpC,QAAQ,EAAE,GAAG,EAAE;gBACX,MAAM,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAC9D,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAEpE,OAAO,oBAAoB,CAAC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC/F,OAAO,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;wBAC7E,QAAQ,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;oBAChC,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;YACP,CAAC;YACD,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;YAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;gBAChB,WAAW,EAAE,cAAc,CAAC,gBAAgB,CAAC,WAAW,CAAC;gBACzD,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,UAAU,CAAC,MAAM,GAAG,aAAa;aAChD,CAAC;SACL,CAAC,CAAC;IACP,CAAC;IAEO,eAAe,CAAC,WAA4B,EAAE,UAA0B,EAAE,aAAqB;QACnG,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC;QACxC,MAAM,UAAU,GAAqB,EAAE,CAAC;QAExC,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,cAAc,CAAC;YAClB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;YACxC,QAAQ,EAAE,GAAG,EAAE;gBACX,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBACzD,MAAM,0BAA0B,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC3E,MAAM,UAAU,GAAwB,EAAE,CAAC;gBAE3C,OAAO,oBAAoB,CAAC,CAAC,cAAc,EAAE,0BAA0B,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE,EAAE;oBACnG,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,OAAO,cAAc,CAAC;wBAClB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,gBAAgB;wBACrC,QAAQ,EAAE,GAAG,EAAE;4BACX,OAAO,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE;gCAC9E,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;4BAChE,CAAC,CAAC,CAAC;wBACP,CAAC;wBACD,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;wBAC5B,WAAW,EAAE,GAAG,EAAE;4BACd,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;4BACnE,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;4BAEjE,OAAO,oBAAoB,CAAC,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;gCACvF,UAAU,CAAC,IAAI,CAAC;oCACZ,IAAI;oCACJ,UAAU;oCACV,QAAQ,EAAE,QAAoB;oCAC9B,MAAM,EAAE,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC;oCAC/C,UAAU,EAAE,CAAC,EAAE,oBAAoB;oCACnC,QAAQ,EAAE,CAAC,CAAC,kCAAkC;iCACjD,CAAC,CAAC;4BACP,CAAC,CAAC,CAAC;wBACP,CAAC;qBACJ,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;YACP,CAAC;YACD,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;YAC5B,WAAW,EAAE,GAAG,EAAE;gBACd,MAAM,oBAAoB,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBAE3E,KAAK,MAAM,MAAM,IAAI,UAAU;oBAC1B,MAAmC,CAAC,UAAU,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;wBAC/E,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,MAAM,CAAC,MAAM;wBAC9C,CAAC,CAAC,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;gBAE/C,OAAO;oBACH,UAAU;oBACV,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,aAAa;oBACjD,gBAAgB,EAAE,oBAAoB;iBACzC,CAAC;YACN,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,SAAiB;IAClD,OAAO,MAAM,GAAG,CAAC,SAAS,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC;AACnE,CAAC"}
|
|
@@ -9,7 +9,7 @@ const ggufMagic = "GGUF";
|
|
|
9
9
|
export async function parseGguf({ fileReader, readTensorInfo = true, ignoreKeys = [], logWarnings = true }) {
|
|
10
10
|
const readOffset = new GgufReadOffset(0);
|
|
11
11
|
const magicAndVersion = await parseMagicAndVersion(fileReader, readOffset);
|
|
12
|
-
const
|
|
12
|
+
const ggufInfo = await parseGgufUsingASpecificVersionParser({
|
|
13
13
|
fileReader,
|
|
14
14
|
readTensorInfo,
|
|
15
15
|
ignoreKeys,
|
|
@@ -17,20 +17,20 @@ export async function parseGguf({ fileReader, readTensorInfo = true, ignoreKeys
|
|
|
17
17
|
readOffset,
|
|
18
18
|
logWarnings
|
|
19
19
|
});
|
|
20
|
-
const architectureMetadata = getGgufMetadataArchitectureData(
|
|
20
|
+
const architectureMetadata = getGgufMetadataArchitectureData(ggufInfo.metadata);
|
|
21
21
|
return {
|
|
22
22
|
version: magicAndVersion.version,
|
|
23
|
-
tensorCount:
|
|
24
|
-
metadata:
|
|
23
|
+
tensorCount: ggufInfo.tensorCount,
|
|
24
|
+
metadata: ggufInfo.metadata,
|
|
25
25
|
architectureMetadata: architectureMetadata,
|
|
26
|
-
tensorInfo:
|
|
27
|
-
metadataSize:
|
|
26
|
+
tensorInfo: ggufInfo.tensorInfo,
|
|
27
|
+
metadataSize: ggufInfo.metadataSize,
|
|
28
28
|
splicedParts: 1,
|
|
29
|
-
totalTensorInfoSize:
|
|
30
|
-
totalTensorCount:
|
|
31
|
-
totalMetadataSize:
|
|
32
|
-
fullTensorInfo:
|
|
33
|
-
tensorInfoSize:
|
|
29
|
+
totalTensorInfoSize: ggufInfo.tensorInfoSize,
|
|
30
|
+
totalTensorCount: ggufInfo.tensorCount,
|
|
31
|
+
totalMetadataSize: ggufInfo.metadataSize,
|
|
32
|
+
fullTensorInfo: ggufInfo.tensorInfo,
|
|
33
|
+
tensorInfoSize: ggufInfo.tensorInfoSize
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
async function parseMagicAndVersion(fileReader, readOffset) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseGguf.js","sourceRoot":"","sources":["../../../src/gguf/parser/parseGguf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAC,+BAA+B,EAAC,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAE/C,MAAM,SAAS,GAAG,MAAM,CAAC;AAEzB,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,EAC5B,UAAU,EACV,cAAc,GAAG,IAAI,EACrB,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,IAAI,EAMrB;IACG,MAAM,UAAU,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC3E,MAAM,
|
|
1
|
+
{"version":3,"file":"parseGguf.js","sourceRoot":"","sources":["../../../src/gguf/parser/parseGguf.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,21 +34,26 @@ export async function readGgufFileInfo(pathOrUri, { readTensorInfo = true, sourc
|
|
|
34
34
|
void sourceType;
|
|
35
35
|
throw new Error(`Unsupported sourceType: ${sourceType}`);
|
|
36
36
|
}
|
|
37
|
-
async function readSingleFile(pathOrUri) {
|
|
37
|
+
async function readSingleFile(pathOrUri, splitPartNumber = 1) {
|
|
38
38
|
const fileReader = createFileReader(pathOrUri);
|
|
39
|
-
|
|
39
|
+
const res = await parseGguf({
|
|
40
40
|
fileReader,
|
|
41
41
|
ignoreKeys,
|
|
42
42
|
readTensorInfo,
|
|
43
43
|
logWarnings
|
|
44
44
|
});
|
|
45
|
+
if (splitPartNumber > 1) {
|
|
46
|
+
for (const tensor of res.tensorInfo ?? [])
|
|
47
|
+
tensor.filePart = splitPartNumber;
|
|
48
|
+
}
|
|
49
|
+
return res;
|
|
45
50
|
}
|
|
46
51
|
if (!spliceSplitFiles)
|
|
47
52
|
return await readSingleFile(pathOrUri);
|
|
48
53
|
const allSplitPartPaths = resolveSplitGgufParts(pathOrUri);
|
|
49
54
|
if (allSplitPartPaths.length === 1)
|
|
50
55
|
return await readSingleFile(allSplitPartPaths[0]);
|
|
51
|
-
const [first, ...rest] = await Promise.all(allSplitPartPaths.map((partPath) => readSingleFile(partPath)));
|
|
56
|
+
const [first, ...rest] = await Promise.all(allSplitPartPaths.map((partPath, index) => readSingleFile(partPath, index + 1)));
|
|
52
57
|
if (first == null)
|
|
53
58
|
throw new Error("First part of the split GGUF file is missing");
|
|
54
59
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readGgufFileInfo.js","sourceRoot":"","sources":["../../src/gguf/readGgufFileInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"readGgufFileInfo.js","sourceRoot":"","sources":["../../src/gguf/readGgufFileInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,0BAA0B,EAAC,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAC,4BAA4B,EAAC,MAAM,aAAa,CAAC;AACzD,OAAO,EAAC,wBAAwB,EAAC,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAKvE;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,SAAiB,EAAE,EACtD,cAAc,GAAG,IAAI,EACrB,UAAU,EACV,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,IAAI,EAClB,iBAAiB,GAAG,4BAA4B,EAChD,YAAY,GAAG,EAAE,EACjB,gBAAgB,GAAG,IAAI,EACvB,MAAM,EACN,MAAM,KA4CN,EAAE;IACF,MAAM,gBAAgB,GAAG,UAAU,KAAK,SAAS,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEzH,SAAS,gBAAgB,CAAC,SAAiB;QACvC,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;YAChD,OAAO,IAAI,0BAA0B,CAAC;gBAClC,GAAG,EAAE,cAAc,EAAE,WAAW,IAAI,wBAAwB,CAAC,SAAS,CAAC;gBACvE,YAAY,EAAE,iBAAiB;gBAC/B,OAAO,EAAE,YAAY;gBACrB,MAAM;gBACN,MAAM;aACT,CAAC,CAAC;QACP,CAAC;aAAM,IAAI,UAAU,KAAK,YAAY,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YAC3D,OAAO,IAAI,gBAAgB,CAAC;gBACxB,QAAQ,EAAE,SAAS;gBACnB,MAAM;aACT,CAAC,CAAC;QACP,CAAC;QAED,KAAM,UAA2B,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,kBAA0B,CAAC;QACxE,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC;YACxB,UAAU;YACV,UAAU;YACV,cAAc;YACd,WAAW;SACd,CAAC,CAAC;QAEH,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE;gBACpC,MAAmC,CAAC,QAAQ,GAAG,eAAe,CAAC;QACxE,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,CAAC,gBAAgB;QACjB,OAAO,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;IAE3C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAE3D,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC;QAC9B,OAAO,MAAM,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAE,CAAC,CAAC;IAEvD,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAClF,CAAC;IAEF,IAAI,KAAK,IAAI,IAAI;QACb,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAEpE,OAAO;QACH,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,YAAY,EAAE,iBAAiB,CAAC,MAAM;QACtC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,IAAI,IAAI;YAClD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1G,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrH,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACxG,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,IAAI;YACxC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QACrE,cAAc,EAAE,KAAK,CAAC,cAAc;KAChB,CAAC;AAC7B,CAAC"}
|
|
@@ -74,9 +74,9 @@ export declare enum GgufFileType {
|
|
|
74
74
|
MOSTLY_F16 = 1,
|
|
75
75
|
MOSTLY_Q4_0 = 2,
|
|
76
76
|
MOSTLY_Q4_1 = 3,
|
|
77
|
-
MOSTLY_Q4_1_SOME_F16 = 4
|
|
78
|
-
MOSTLY_Q4_2 = 5
|
|
79
|
-
MOSTLY_Q4_3 = 6
|
|
77
|
+
MOSTLY_Q4_1_SOME_F16 = 4,// deprecated
|
|
78
|
+
MOSTLY_Q4_2 = 5,// deprecated
|
|
79
|
+
MOSTLY_Q4_3 = 6,// deprecated
|
|
80
80
|
MOSTLY_Q8_0 = 7,
|
|
81
81
|
MOSTLY_Q5_0 = 8,
|
|
82
82
|
MOSTLY_Q5_1 = 9,
|
|
@@ -103,10 +103,10 @@ export declare enum GgufFileType {
|
|
|
103
103
|
MOSTLY_IQ4_XS = 30,
|
|
104
104
|
MOSTLY_IQ1_M = 31,
|
|
105
105
|
MOSTLY_BF16 = 32,
|
|
106
|
-
MOSTLY_Q4_0_4_4 = 33
|
|
107
|
-
MOSTLY_Q4_0_4_8 = 34
|
|
108
|
-
MOSTLY_Q4_0_8_8 = 35
|
|
109
|
-
LLAMA_FTYPE_MOSTLY_TQ1_0 = 36
|
|
106
|
+
MOSTLY_Q4_0_4_4 = 33,// deprecated
|
|
107
|
+
MOSTLY_Q4_0_4_8 = 34,// deprecated
|
|
108
|
+
MOSTLY_Q4_0_8_8 = 35,// deprecated
|
|
109
|
+
LLAMA_FTYPE_MOSTLY_TQ1_0 = 36,// deprecated
|
|
110
110
|
LLAMA_FTYPE_MOSTLY_TQ2_0 = 37
|
|
111
111
|
}
|
|
112
112
|
export type GgufMetadataGeneral<A extends GgufArchitectureType = GgufArchitectureType> = {
|
|
@@ -126,7 +126,7 @@ export type GgufMetadataGeneral<A extends GgufArchitectureType = GgufArchitectur
|
|
|
126
126
|
* writers may not write the alignment. If the alignment is not specified,
|
|
127
127
|
* assume it is `32`.
|
|
128
128
|
*/
|
|
129
|
-
readonly alignment?:
|
|
129
|
+
readonly alignment?: number;
|
|
130
130
|
/**
|
|
131
131
|
* The name of the model. This should be a human-readable name that can be
|
|
132
132
|
* used to identify the model. It should be unique within the community
|
|
@@ -199,7 +199,7 @@ export declare const enum GgufMetadataTokenizerTokenType {
|
|
|
199
199
|
export type GgufMetadataTokenizer = {
|
|
200
200
|
readonly ggml: {
|
|
201
201
|
readonly model: "no_vocab" | "llama" | "gpt2" | "bert" | string;
|
|
202
|
-
readonly pre?: "default" | "llama3" | "llama-v3" | "llama-bpe" | "deepseek-llm" | "deepseek-coder" | "falcon" | "mpt" | "starcoder" | "gpt-2" | "jina-es" | "jina-de" | "jina-v2-es" | "jina-v2-de" | "refact" | "command-r" | "qwen2" | "stablelm2" | "olmo" | "dbrx" | "smaug-bpe" | string;
|
|
202
|
+
readonly pre?: "default" | "llama3" | "llama-v3" | "llama-bpe" | "deepseek-llm" | "deepseek-coder" | "falcon" | "falcon3" | "mpt" | "starcoder" | "gpt-2" | "phi-2" | "jina-es" | "jina-de" | "jina-v1-en" | "jina-v2-es" | "jina-v2-de" | "jina-v2-code" | "refact" | "command-r" | "qwen2" | "stablelm2" | "olmo" | "dbrx" | "smaug-bpe" | "poro-chat" | "chatglm-bpe" | "viking" | "jais" | "tekken" | "smollm" | "codeshell" | "bloom" | "gpt3-finnish" | "exaone" | "chameleon" | "minerva-7b" | string;
|
|
203
203
|
readonly tokens: readonly string[];
|
|
204
204
|
readonly token_type: GgufMetadataTokenizerTokenType[];
|
|
205
205
|
readonly token_type_count?: number;
|
|
@@ -92,7 +92,7 @@ export var GgufFileType;
|
|
|
92
92
|
GgufFileType[GgufFileType["MOSTLY_Q4_0_4_8"] = 34] = "MOSTLY_Q4_0_4_8";
|
|
93
93
|
GgufFileType[GgufFileType["MOSTLY_Q4_0_8_8"] = 35] = "MOSTLY_Q4_0_8_8";
|
|
94
94
|
GgufFileType[GgufFileType["LLAMA_FTYPE_MOSTLY_TQ1_0"] = 36] = "LLAMA_FTYPE_MOSTLY_TQ1_0";
|
|
95
|
-
GgufFileType[GgufFileType["LLAMA_FTYPE_MOSTLY_TQ2_0"] = 37] = "LLAMA_FTYPE_MOSTLY_TQ2_0";
|
|
95
|
+
GgufFileType[GgufFileType["LLAMA_FTYPE_MOSTLY_TQ2_0"] = 37] = "LLAMA_FTYPE_MOSTLY_TQ2_0"; // deprecated
|
|
96
96
|
})(GgufFileType || (GgufFileType = {}));
|
|
97
97
|
export var GgufMetadataTokenizerTokenType;
|
|
98
98
|
(function (GgufMetadataTokenizerTokenType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GgufMetadataTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufMetadataTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAkB,oBAoDjB;AApDD,WAAkB,oBAAoB;IAClC,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,qCAAa,CAAA;IACb,qCAAa,CAAA;IACb,qCAAa,CAAA;IACb,2CAAmB,CAAA;IACnB,mCAAW,CAAA;IACX,6CAAqB,CAAA;IACrB,+CAAuB,CAAA;IACvB,yCAAiB,CAAA;IACjB,qCAAa,CAAA;IACb,gDAAwB,CAAA;IACxB,mDAA2B,CAAA;IAC3B,uCAAe,CAAA;IACf,6CAAqB,CAAA;IACrB,qCAAa,CAAA;IACb,uCAAe,CAAA;IACf,6CAAqB,CAAA;IACrB,qCAAa,CAAA;IACb,qCAAa,CAAA;IACb,uCAAe,CAAA;IACf,+CAAuB,CAAA;IACvB,uCAAe,CAAA;IACf,+CAAuB,CAAA;IACvB,2CAAmB,CAAA;IACnB,6CAAqB,CAAA;IACrB,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,iDAAyB,CAAA;IACzB,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,8CAAsB,CAAA;IACtB,qCAAa,CAAA;IACb,qCAAa,CAAA;IACb,uCAAe,CAAA;IACf,uCAAe,CAAA;IACf,2CAAmB,CAAA;IACnB,yCAAiB,CAAA;IACjB,+CAAuB,CAAA;IACvB,2CAAmB,CAAA;IACnB,yCAAiB,CAAA;IACjB,iCAAS,CAAA;IACT,+CAAuB,CAAA;IACvB,qCAAa,CAAA;IACb,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,uCAAe,CAAA;IACf,2CAAmB,CAAA;IACnB,iDAAyB,CAAA;IACzB,+CAAuB,CAAA;IACvB,6CAAqB,CAAA;AACzB,CAAC,EApDiB,oBAAoB,KAApB,oBAAoB,QAoDrC;AA8BD,yEAAyE;AACzE,MAAM,CAAN,IAAY,YAuCX;AAvCD,WAAY,YAAY;IACpB,qDAAW,CAAA;IACX,2DAAc,CAAA;IACd,6DAAe,CAAA;IACf,6DAAe,CAAA;IACf,+EAAwB,CAAA;IACxB,6DAAe,CAAA;IACf,6DAAe,CAAA;IACf,6DAAe,CAAA;IACf,6DAAe,CAAA;IACf,6DAAe,CAAA;IACf,8DAAgB,CAAA;IAChB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,8DAAgB,CAAA;IAChB,oEAAmB,CAAA;IACnB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,kEAAkB,CAAA;IAClB,oEAAmB,CAAA;IACnB,gEAAiB,CAAA;IACjB,kEAAkB,CAAA;IAClB,gEAAiB,CAAA;IACjB,gEAAiB,CAAA;IACjB,gEAAiB,CAAA;IACjB,gEAAiB,CAAA;IACjB,kEAAkB,CAAA;IAClB,gEAAiB,CAAA;IACjB,8DAAgB,CAAA;IAChB,sEAAoB,CAAA;IACpB,sEAAoB,CAAA;IACpB,sEAAoB,CAAA;IACpB,wFAA6B,CAAA;IAC7B,wFAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"GgufMetadataTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufMetadataTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,19 @@ export type GgufTensorInfo = {
|
|
|
3
3
|
readonly dimensions: readonly (number | bigint)[];
|
|
4
4
|
readonly ggmlType: GgmlType;
|
|
5
5
|
readonly offset: number | bigint;
|
|
6
|
+
/**
|
|
7
|
+
* Adjusted offset relative to the file.
|
|
8
|
+
*
|
|
9
|
+
* Added by the GGUF parser - not part of the file's metadata.
|
|
10
|
+
*/
|
|
11
|
+
readonly fileOffset: number | bigint;
|
|
12
|
+
/**
|
|
13
|
+
* For spliced metadata of multiple file parts, this will be the file part number.
|
|
14
|
+
* Starts from `1`.
|
|
15
|
+
*
|
|
16
|
+
* Added by the GGUF parser - not part of the file's metadata.
|
|
17
|
+
*/
|
|
18
|
+
readonly filePart: number;
|
|
6
19
|
};
|
|
7
20
|
export declare const enum GgmlType {
|
|
8
21
|
F32 = 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GgufTensorInfoTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufTensorInfoTypes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GgufTensorInfoTypes.js","sourceRoot":"","sources":["../../../src/gguf/types/GgufTensorInfoTypes.ts"],"names":[],"mappings":"AAsBA,MAAM,CAAN,IAAkB,QA8BjB;AA9BD,WAAkB,QAAQ;IACtB,qCAAO,CAAA;IACP,qCAAO,CAAA;IACP,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,wCAAS,CAAA;IACT,wCAAS,CAAA;IACT,wCAAS,CAAA;IACT,wCAAS,CAAA;IACT,wCAAS,CAAA;IACT,wCAAS,CAAA;IACT,8CAAY,CAAA;IACZ,4CAAW,CAAA;IACX,8CAAY,CAAA;IACZ,0CAAU,CAAA;IACV,4CAAW,CAAA;IACX,0CAAU,CAAA;IACV,0CAAU,CAAA;IACV,4CAAW,CAAA;IACX,oCAAO,CAAA;IACP,sCAAQ,CAAA;IACR,sCAAQ,CAAA;IACR,sCAAQ,CAAA;IACR,sCAAQ,CAAA;AACZ,CAAC,EA9BiB,QAAQ,KAAR,QAAQ,QA8BzB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,7 +13,8 @@ import { LlamaGrammarEvaluationState, LlamaGrammarEvaluationStateOptions } from
|
|
|
13
13
|
import { LlamaContext, LlamaContextSequence } from "./evaluator/LlamaContext/LlamaContext.js";
|
|
14
14
|
import { LlamaEmbeddingContext, type LlamaEmbeddingContextOptions } from "./evaluator/LlamaEmbeddingContext.js";
|
|
15
15
|
import { LlamaEmbedding, type LlamaEmbeddingOptions, type LlamaEmbeddingJSON } from "./evaluator/LlamaEmbedding.js";
|
|
16
|
-
import {
|
|
16
|
+
import { LlamaRankingContext, type LlamaRankingContextOptions } from "./evaluator/LlamaRankingContext.js";
|
|
17
|
+
import { type LlamaContextOptions, type SequenceEvaluateOptions, type BatchingOptions, type LlamaContextSequenceRepeatPenalty, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizationStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type SequenceEvaluateMetadataOptions, type SequenceEvaluateOutput, type ControlledEvaluateInputItem, type ControlledEvaluateIndexOutput } from "./evaluator/LlamaContext/types.js";
|
|
17
18
|
import { TokenBias } from "./evaluator/TokenBias.js";
|
|
18
19
|
import { LlamaChatSession, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LLamaChatCompletePromptOptions, type LlamaChatSessionRepeatPenalty, type LLamaChatPreloadPromptOptions } from "./evaluator/LlamaChatSession/LlamaChatSession.js";
|
|
19
20
|
import { defineChatSessionFunction } from "./evaluator/LlamaChatSession/utils/defineChatSessionFunction.js";
|
|
@@ -43,12 +44,16 @@ import { resolvableChatWrapperTypeNames, type ResolvableChatWrapperTypeName, spe
|
|
|
43
44
|
import { ChatModelFunctionsDocumentationGenerator } from "./chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.js";
|
|
44
45
|
import { LlamaText, SpecialTokensText, SpecialToken, isLlamaText, tokenizeText, type LlamaTextValue, type LlamaTextInputValue, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokensTextJSON, type LlamaTextSpecialTokenJSON, type BuiltinSpecialTokenValue } from "./utils/LlamaText.js";
|
|
45
46
|
import { appendUserMessageToChatHistory } from "./utils/appendUserMessageToChatHistory.js";
|
|
47
|
+
import { TokenPredictor } from "./evaluator/LlamaContext/TokenPredictor.js";
|
|
48
|
+
import { DraftSequenceTokenPredictor } from "./evaluator/LlamaContext/tokenPredictors/DraftSequenceTokenPredictor.js";
|
|
49
|
+
import { InputLookupTokenPredictor } from "./evaluator/LlamaContext/tokenPredictors/InputLookupTokenPredictor.js";
|
|
46
50
|
import { getModuleVersion } from "./utils/getModuleVersion.js";
|
|
47
51
|
import { readGgufFileInfo } from "./gguf/readGgufFileInfo.js";
|
|
48
52
|
import { GgufInsights, type GgufInsightsResourceRequirements } from "./gguf/insights/GgufInsights.js";
|
|
49
53
|
import { GgufInsightsConfigurationResolver } from "./gguf/insights/GgufInsightsConfigurationResolver.js";
|
|
50
54
|
import { createModelDownloader, ModelDownloader, type ModelDownloaderOptions, combineModelDownloaders, CombinedModelDownloader, type CombinedModelDownloaderOptions } from "./utils/createModelDownloader.js";
|
|
51
55
|
import { jsonDumps } from "./chatWrappers/utils/jsonDumps.js";
|
|
56
|
+
import { experimentalChunkDocument } from "./evaluator/utils/chunkDocument.js";
|
|
52
57
|
import { type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, type Tokenizer, type Detokenizer, isChatModelResponseFunctionCall, type LLamaContextualRepeatPenalty, type ChatWrapperSettings, type ChatWrapperGenerateContextStateOptions, type ChatWrapperGeneratedContextState, type ChatWrapperGenerateInitialHistoryOptions } from "./types.js";
|
|
53
58
|
import { type GbnfJsonArraySchema, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonStringSchema, type GbnfJsonBasicStringSchema, type GbnfJsonFormatStringSchema, type GbnfJsonObjectSchema, type GbnfJsonOneOfSchema, type GbnfJsonSchema, type GbnfJsonSchemaImmutableType, type GbnfJsonSchemaToType } from "./utils/gbnfJson/types.js";
|
|
54
59
|
import { type GgufFileInfo } from "./gguf/types/GgufFileInfoTypes.js";
|
|
@@ -57,4 +62,4 @@ import { GgmlType, type GgufTensorInfo } from "./gguf/types/GgufTensorInfoTypes.
|
|
|
57
62
|
import { type ModelFileAccessTokens } from "./utils/modelFileAccesTokens.js";
|
|
58
63
|
import { type OverridesObject } from "./utils/OverridesObject.js";
|
|
59
64
|
import type { LlamaClasses } from "./utils/getLlamaClasses.js";
|
|
60
|
-
export { Llama, getLlama, type LlamaOptions, type LastBuildOptions, type LlamaGpuType, type LlamaClasses, LlamaLogLevel, NoBinaryFoundError, resolveModelFile, type ResolveModelFileOptions, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, TokenAttributes, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, LlamaContextSequence, type LlamaContextOptions, type BatchingOptions, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizationStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type LlamaContextSequenceRepeatPenalty, TokenBias, LlamaEmbeddingContext, type LlamaEmbeddingContextOptions, LlamaEmbedding, type LlamaEmbeddingOptions, type LlamaEmbeddingJSON, LlamaChatSession, defineChatSessionFunction, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LLamaChatCompletePromptOptions, type LlamaChatSessionRepeatPenalty, type LLamaChatPreloadPromptOptions, LlamaChat, type LlamaChatOptions, type LLamaChatGenerateResponseOptions, type LLamaChatLoadAndCompleteUserMessageOptions, type LLamaChatContextShiftOptions, type LLamaContextualRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall, type LlamaChatLoadAndCompleteUserResponse, LlamaChatSessionPromptCompletionEngine, type LLamaChatPromptCompletionEngineOptions, LlamaCompletion, type LlamaCompletionOptions, type LlamaCompletionGenerationOptions, type LlamaInfillGenerationOptions, type LlamaCompletionResponse, TokenMeter, type TokenMeterState, UnsupportedError, InsufficientMemoryError, DisposedError, ChatWrapper, type ChatWrapperSettings, type ChatWrapperGenerateContextStateOptions, type ChatWrapperGeneratedContextState, type ChatWrapperGenerateInitialHistoryOptions, EmptyChatWrapper, Llama3_2LightweightChatWrapper, Llama3_1ChatWrapper, Llama3ChatWrapper, Llama2ChatWrapper, MistralChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, GemmaChatWrapper, TemplateChatWrapper, type TemplateChatWrapperOptions, JinjaTemplateChatWrapper, type JinjaTemplateChatWrapperOptions, type JinjaTemplateChatWrapperOptionsConvertMessageFormat, type ChatHistoryFunctionCallMessageTemplate, resolveChatWrapper, type BuiltInChatWrapperType, type ResolveChatWrapperOptions, resolvableChatWrapperTypeNames, type ResolvableChatWrapperTypeName, specializedChatWrapperTypeNames, type SpecializedChatWrapperTypeName, templateChatWrapperTypeNames, type TemplateChatWrapperTypeName, chatWrappers, ChatModelFunctionsDocumentationGenerator, LlamaText, SpecialTokensText, SpecialToken, isLlamaText, tokenizeText, type LlamaTextValue, type LlamaTextInputValue, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokensTextJSON, type LlamaTextSpecialTokenJSON, type BuiltinSpecialTokenValue, appendUserMessageToChatHistory, getModuleVersion, type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, type Tokenizer, type Detokenizer, isChatModelResponseFunctionCall, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonBasicStringSchema, type GbnfJsonFormatStringSchema, type GbnfJsonStringSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema, LlamaVocabularyType, LlamaLogLevelGreaterThan, LlamaLogLevelGreaterThanOrEqual, readGgufFileInfo, type GgufFileInfo, type GgufMetadata, type GgufTensorInfo, type GgufMetadataLlmToType, GgufArchitectureType, GgufFileType, GgufMetadataTokenizerTokenType, GgufMetadataArchitecturePoolingType, type GgufMetadataGeneral, type GgufMetadataTokenizer, type GgufMetadataDefaultArchitectureType, type GgufMetadataLlmLLaMA, type GgufMetadataMPT, type GgufMetadataGPTNeoX, type GgufMetadataGPTJ, type GgufMetadataGPT2, type GgufMetadataBloom, type GgufMetadataFalcon, type GgufMetadataMamba, GgmlType, isGgufMetadataOfArchitectureType, GgufInsights, type GgufInsightsResourceRequirements, GgufInsightsConfigurationResolver, createModelDownloader, ModelDownloader, type ModelDownloaderOptions, type ModelFileAccessTokens, combineModelDownloaders, CombinedModelDownloader, type CombinedModelDownloaderOptions, jsonDumps, type OverridesObject };
|
|
65
|
+
export { Llama, getLlama, type LlamaOptions, type LastBuildOptions, type LlamaGpuType, type LlamaClasses, LlamaLogLevel, NoBinaryFoundError, resolveModelFile, type ResolveModelFileOptions, LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, TokenAttributes, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, LlamaContextSequence, type LlamaContextOptions, type SequenceEvaluateOptions, type BatchingOptions, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizationStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type SequenceEvaluateMetadataOptions, type SequenceEvaluateOutput, type LlamaContextSequenceRepeatPenalty, type ControlledEvaluateInputItem, type ControlledEvaluateIndexOutput, TokenBias, LlamaEmbeddingContext, type LlamaEmbeddingContextOptions, LlamaEmbedding, type LlamaEmbeddingOptions, type LlamaEmbeddingJSON, LlamaRankingContext, type LlamaRankingContextOptions, LlamaChatSession, defineChatSessionFunction, type LlamaChatSessionOptions, type LlamaChatSessionContextShiftOptions, type LLamaChatPromptOptions, type LLamaChatCompletePromptOptions, type LlamaChatSessionRepeatPenalty, type LLamaChatPreloadPromptOptions, LlamaChat, type LlamaChatOptions, type LLamaChatGenerateResponseOptions, type LLamaChatLoadAndCompleteUserMessageOptions, type LLamaChatContextShiftOptions, type LLamaContextualRepeatPenalty, type LlamaChatResponse, type LlamaChatResponseFunctionCall, type LlamaChatLoadAndCompleteUserResponse, LlamaChatSessionPromptCompletionEngine, type LLamaChatPromptCompletionEngineOptions, LlamaCompletion, type LlamaCompletionOptions, type LlamaCompletionGenerationOptions, type LlamaInfillGenerationOptions, type LlamaCompletionResponse, TokenMeter, type TokenMeterState, UnsupportedError, InsufficientMemoryError, DisposedError, ChatWrapper, type ChatWrapperSettings, type ChatWrapperGenerateContextStateOptions, type ChatWrapperGeneratedContextState, type ChatWrapperGenerateInitialHistoryOptions, EmptyChatWrapper, Llama3_2LightweightChatWrapper, Llama3_1ChatWrapper, Llama3ChatWrapper, Llama2ChatWrapper, MistralChatWrapper, GeneralChatWrapper, ChatMLChatWrapper, FalconChatWrapper, AlpacaChatWrapper, FunctionaryChatWrapper, GemmaChatWrapper, TemplateChatWrapper, type TemplateChatWrapperOptions, JinjaTemplateChatWrapper, type JinjaTemplateChatWrapperOptions, type JinjaTemplateChatWrapperOptionsConvertMessageFormat, type ChatHistoryFunctionCallMessageTemplate, resolveChatWrapper, type BuiltInChatWrapperType, type ResolveChatWrapperOptions, resolvableChatWrapperTypeNames, type ResolvableChatWrapperTypeName, specializedChatWrapperTypeNames, type SpecializedChatWrapperTypeName, templateChatWrapperTypeNames, type TemplateChatWrapperTypeName, chatWrappers, ChatModelFunctionsDocumentationGenerator, LlamaText, SpecialTokensText, SpecialToken, isLlamaText, tokenizeText, type LlamaTextValue, type LlamaTextInputValue, type LlamaTextJSON, type LlamaTextJSONValue, type LlamaTextSpecialTokensTextJSON, type LlamaTextSpecialTokenJSON, type BuiltinSpecialTokenValue, TokenPredictor, DraftSequenceTokenPredictor, InputLookupTokenPredictor, appendUserMessageToChatHistory, getModuleVersion, type ChatHistoryItem, type ChatModelFunctionCall, type ChatModelFunctions, type ChatModelResponse, type ChatSessionModelFunction, type ChatSessionModelFunctions, type ChatSystemMessage, type ChatUserMessage, type Token, type Tokenizer, type Detokenizer, isChatModelResponseFunctionCall, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonBasicStringSchema, type GbnfJsonFormatStringSchema, type GbnfJsonStringSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema, LlamaVocabularyType, LlamaLogLevelGreaterThan, LlamaLogLevelGreaterThanOrEqual, readGgufFileInfo, type GgufFileInfo, type GgufMetadata, type GgufTensorInfo, type GgufMetadataLlmToType, GgufArchitectureType, GgufFileType, GgufMetadataTokenizerTokenType, GgufMetadataArchitecturePoolingType, type GgufMetadataGeneral, type GgufMetadataTokenizer, type GgufMetadataDefaultArchitectureType, type GgufMetadataLlmLLaMA, type GgufMetadataMPT, type GgufMetadataGPTNeoX, type GgufMetadataGPTJ, type GgufMetadataGPT2, type GgufMetadataBloom, type GgufMetadataFalcon, type GgufMetadataMamba, GgmlType, isGgufMetadataOfArchitectureType, GgufInsights, type GgufInsightsResourceRequirements, GgufInsightsConfigurationResolver, createModelDownloader, ModelDownloader, type ModelDownloaderOptions, type ModelFileAccessTokens, combineModelDownloaders, CombinedModelDownloader, type CombinedModelDownloaderOptions, jsonDumps, type OverridesObject, experimentalChunkDocument };
|