node-llama-cpp 3.3.1 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- 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 +108 -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 +155 -11
- 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/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 +24 -38
- package/dist/evaluator/LlamaModel/LlamaModel.js.map +1 -1
- package/dist/evaluator/LlamaRankingContext.d.ts +76 -0
- package/dist/evaluator/LlamaRankingContext.js +159 -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 +188 -16
- 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 +11 -15
- package/llama/addon/AddonModel.h +0 -1
- package/llama/addon/AddonSampler.cpp +1 -6
- 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 +31 -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 +43 -43
- package/templates/packed/electron-typescript-react.json +1 -1
- package/templates/packed/node-typescript.json +1 -1
|
@@ -9,6 +9,7 @@ import { LlamaContext } from "../LlamaContext/LlamaContext.js";
|
|
|
9
9
|
import { LlamaEmbeddingContext, LlamaEmbeddingContextOptions } from "../LlamaEmbeddingContext.js";
|
|
10
10
|
import { GgufMetadata } from "../../gguf/types/GgufMetadataTypes.js";
|
|
11
11
|
import { OverridesObject } from "../../utils/OverridesObject.js";
|
|
12
|
+
import { LlamaRankingContext, LlamaRankingContextOptions } from "../LlamaRankingContext.js";
|
|
12
13
|
import { TokenAttributes } from "./utils/TokenAttributes.js";
|
|
13
14
|
import type { BuiltinSpecialTokenValue } from "../../utils/LlamaText.js";
|
|
14
15
|
export type LlamaModelOptions = {
|
|
@@ -48,9 +49,15 @@ export type LlamaModelOptions = {
|
|
|
48
49
|
*/
|
|
49
50
|
vocabOnly?: boolean;
|
|
50
51
|
/**
|
|
51
|
-
* Use mmap
|
|
52
|
+
* Use mmap (memory-mapped file) to load the model.
|
|
52
53
|
*
|
|
53
|
-
*
|
|
54
|
+
* Using mmap allows the OS to load the model tensors directly from the file on the filesystem,
|
|
55
|
+
* and makes it easier for the system to manage memory.
|
|
56
|
+
*
|
|
57
|
+
* When using mmap, you might notice a delay the first time you actually use the model,
|
|
58
|
+
* which is caused by the OS itself loading the model into memory.
|
|
59
|
+
*
|
|
60
|
+
* Defaults to `true` if the current system supports it.
|
|
54
61
|
*/
|
|
55
62
|
useMmap?: boolean;
|
|
56
63
|
/**
|
|
@@ -126,7 +133,9 @@ export declare class LlamaModel {
|
|
|
126
133
|
*/
|
|
127
134
|
get gpuLayers(): number;
|
|
128
135
|
/**
|
|
129
|
-
* Total model size in memory in bytes
|
|
136
|
+
* Total model size in memory in bytes.
|
|
137
|
+
*
|
|
138
|
+
* When using mmap, actual memory usage may be higher than this value due to `llama.cpp`'s performance optimizations.
|
|
130
139
|
*/
|
|
131
140
|
get size(): number;
|
|
132
141
|
get flashAttentionSupported(): boolean;
|
|
@@ -168,7 +177,14 @@ export declare class LlamaModel {
|
|
|
168
177
|
/** Check whether the given token is an EOG (End Of Generation) token, like EOS or EOT. */
|
|
169
178
|
isEogToken(token: Token | undefined): boolean;
|
|
170
179
|
createContext(options?: LlamaContextOptions): Promise<LlamaContext>;
|
|
180
|
+
/**
|
|
181
|
+
* @see [Using Embedding](https://node-llama-cpp.withcat.ai/guide/embedding) tutorial
|
|
182
|
+
*/
|
|
171
183
|
createEmbeddingContext(options?: LlamaEmbeddingContextOptions): Promise<LlamaEmbeddingContext>;
|
|
184
|
+
/**
|
|
185
|
+
* @see [Reranking Documents](https://node-llama-cpp.withcat.ai/guide/embedding#reranking) tutorial
|
|
186
|
+
*/
|
|
187
|
+
createRankingContext(options?: LlamaRankingContextOptions): Promise<LlamaRankingContext>;
|
|
172
188
|
/**
|
|
173
189
|
* Get warnings about the model file that would affect its usage.
|
|
174
190
|
*
|
|
@@ -201,10 +217,6 @@ export declare class LlamaModelTokens {
|
|
|
201
217
|
* @returns The EOT (End Of Turn) token.
|
|
202
218
|
*/
|
|
203
219
|
get eot(): Token | null;
|
|
204
|
-
/**
|
|
205
|
-
* @returns The CLS (Classification) token.
|
|
206
|
-
*/
|
|
207
|
-
get cls(): Token | null;
|
|
208
220
|
/**
|
|
209
221
|
* @returns The SEP (Sentence Separator) token.
|
|
210
222
|
*/
|
|
@@ -225,10 +237,6 @@ export declare class LlamaModelTokens {
|
|
|
225
237
|
* @returns The EOT (End Of Turn) token text representation.
|
|
226
238
|
*/
|
|
227
239
|
get eotString(): string | null;
|
|
228
|
-
/**
|
|
229
|
-
* @returns The CLS (Classification) token text representation.
|
|
230
|
-
*/
|
|
231
|
-
get clsString(): string | null;
|
|
232
240
|
/**
|
|
233
241
|
* @returns The SEP (Sentence Separator) token text representation.
|
|
234
242
|
*/
|
|
@@ -12,6 +12,7 @@ import { LlamaContext } from "../LlamaContext/LlamaContext.js";
|
|
|
12
12
|
import { LlamaEmbeddingContext } from "../LlamaEmbeddingContext.js";
|
|
13
13
|
import { GgufArchitectureType } from "../../gguf/types/GgufMetadataTypes.js";
|
|
14
14
|
import { maxRecentDetokenizerTokens } from "../../consts.js";
|
|
15
|
+
import { LlamaRankingContext } from "../LlamaRankingContext.js";
|
|
15
16
|
import { TokenAttribute, TokenAttributes } from "./utils/TokenAttributes.js";
|
|
16
17
|
const defaultUseMmap = true;
|
|
17
18
|
const defaultContextFlashAttentionEnabled = false;
|
|
@@ -133,7 +134,9 @@ export class LlamaModel {
|
|
|
133
134
|
return this._gpuLayers;
|
|
134
135
|
}
|
|
135
136
|
/**
|
|
136
|
-
* Total model size in memory in bytes
|
|
137
|
+
* Total model size in memory in bytes.
|
|
138
|
+
*
|
|
139
|
+
* When using mmap, actual memory usage may be higher than this value due to `llama.cpp`'s performance optimizations.
|
|
137
140
|
*/
|
|
138
141
|
get size() {
|
|
139
142
|
this._ensureNotDisposed();
|
|
@@ -156,6 +159,7 @@ export class LlamaModel {
|
|
|
156
159
|
case "EOS": return this.tokens.eos == null ? [] : [this.tokens.eos];
|
|
157
160
|
case "NL": return this.tokens.nl == null ? [] : [this.tokens.nl];
|
|
158
161
|
case "EOT": return this.tokens.eot == null ? [] : [this.tokens.eot];
|
|
162
|
+
case "SEP": return this.tokens.sep == null ? [] : [this.tokens.sep];
|
|
159
163
|
}
|
|
160
164
|
void builtinToken;
|
|
161
165
|
throw new Error(`Unknown builtin special token: ${builtinToken}`);
|
|
@@ -301,18 +305,21 @@ export class LlamaModel {
|
|
|
301
305
|
}
|
|
302
306
|
});
|
|
303
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* @see [Using Embedding](https://node-llama-cpp.withcat.ai/guide/embedding) tutorial
|
|
310
|
+
*/
|
|
304
311
|
async createEmbeddingContext(options = {}) {
|
|
305
312
|
if (this._vocabOnly)
|
|
306
313
|
throw new Error("Model is loaded in vocabOnly mode, so no context can be created");
|
|
307
|
-
return await
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
});
|
|
314
|
+
return await LlamaEmbeddingContext._create({ _model: this }, options);
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* @see [Reranking Documents](https://node-llama-cpp.withcat.ai/guide/embedding#reranking) tutorial
|
|
318
|
+
*/
|
|
319
|
+
async createRankingContext(options = {}) {
|
|
320
|
+
if (this._vocabOnly)
|
|
321
|
+
throw new Error("Model is loaded in vocabOnly mode, so no context can be created");
|
|
322
|
+
return await LlamaRankingContext._create({ _model: this }, options);
|
|
316
323
|
}
|
|
317
324
|
/**
|
|
318
325
|
* Get warnings about the model file that would affect its usage.
|
|
@@ -422,7 +429,7 @@ export class LlamaModel {
|
|
|
422
429
|
/** @internal */
|
|
423
430
|
static async _create(modelOptions, { _llama }) {
|
|
424
431
|
const { loadSignal, defaultContextFlashAttention } = modelOptions;
|
|
425
|
-
const useMmap = modelOptions.useMmap ?? defaultUseMmap;
|
|
432
|
+
const useMmap = _llama.supportsMmap && (modelOptions.useMmap ?? defaultUseMmap);
|
|
426
433
|
const fileInfo = await readGgufFileInfo(modelOptions.modelPath, {
|
|
427
434
|
sourceType: "filesystem",
|
|
428
435
|
signal: loadSignal
|
|
@@ -435,9 +442,13 @@ export class LlamaModel {
|
|
|
435
442
|
: false;
|
|
436
443
|
const gpuLayers = await ggufInsights.configurationResolver.resolveModelGpuLayers(modelOptions.gpuLayers, {
|
|
437
444
|
ignoreMemorySafetyChecks: modelOptions.ignoreMemorySafetyChecks,
|
|
438
|
-
defaultContextFlashAttention: resolvedDefaultContextFlashAttention
|
|
445
|
+
defaultContextFlashAttention: resolvedDefaultContextFlashAttention,
|
|
446
|
+
useMmap
|
|
447
|
+
});
|
|
448
|
+
const resourceRequirementsEstimation = ggufInsights.estimateModelResourceRequirements({
|
|
449
|
+
gpuLayers: gpuLayers,
|
|
450
|
+
useMmap
|
|
439
451
|
});
|
|
440
|
-
const resourceRequirementsEstimation = ggufInsights.estimateModelResourceRequirements({ gpuLayers: gpuLayers });
|
|
441
452
|
const model = new LlamaModel({ ...modelOptions, gpuLayers, useMmap }, {
|
|
442
453
|
_fileInfo: fileInfo,
|
|
443
454
|
_fileInsights: ggufInsights,
|
|
@@ -498,13 +509,11 @@ export class LlamaModelTokens {
|
|
|
498
509
|
/** @internal */ _bosToken;
|
|
499
510
|
/** @internal */ _eosToken;
|
|
500
511
|
/** @internal */ _eotToken;
|
|
501
|
-
/** @internal */ _clsToken;
|
|
502
512
|
/** @internal */ _sepToken;
|
|
503
513
|
/** @internal */ _nlToken;
|
|
504
514
|
/** @internal */ _bosString;
|
|
505
515
|
/** @internal */ _eosString;
|
|
506
516
|
/** @internal */ _eotString;
|
|
507
|
-
/** @internal */ _clsString;
|
|
508
517
|
/** @internal */ _sepString;
|
|
509
518
|
/** @internal */ _nlString;
|
|
510
519
|
/** @internal */ _shouldPrependBosToken;
|
|
@@ -555,17 +564,6 @@ export class LlamaModelTokens {
|
|
|
555
564
|
return null;
|
|
556
565
|
return this._eotToken;
|
|
557
566
|
}
|
|
558
|
-
/**
|
|
559
|
-
* @returns The CLS (Classification) token.
|
|
560
|
-
*/
|
|
561
|
-
get cls() {
|
|
562
|
-
this._ensureNotDisposed();
|
|
563
|
-
if (this._clsToken == null)
|
|
564
|
-
this._clsToken = this._model.clsToken();
|
|
565
|
-
if (this._clsToken === -1)
|
|
566
|
-
return null;
|
|
567
|
-
return this._clsToken;
|
|
568
|
-
}
|
|
569
567
|
/**
|
|
570
568
|
* @returns The SEP (Sentence Separator) token.
|
|
571
569
|
*/
|
|
@@ -624,18 +622,6 @@ export class LlamaModelTokens {
|
|
|
624
622
|
this._eotString = this._model.getTokenString(eotToken);
|
|
625
623
|
return this._eotString;
|
|
626
624
|
}
|
|
627
|
-
/**
|
|
628
|
-
* @returns The CLS (Classification) token text representation.
|
|
629
|
-
*/
|
|
630
|
-
get clsString() {
|
|
631
|
-
this._ensureNotDisposed();
|
|
632
|
-
const clsToken = this.cls;
|
|
633
|
-
if (clsToken == null)
|
|
634
|
-
return null;
|
|
635
|
-
if (this._clsString == null)
|
|
636
|
-
this._clsString = this._model.getTokenString(clsToken);
|
|
637
|
-
return this._clsString;
|
|
638
|
-
}
|
|
639
625
|
/**
|
|
640
626
|
* @returns The SEP (Sentence Separator) token text representation.
|
|
641
627
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlamaModel.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaModel/LlamaModel.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,sBAAsB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAA2B,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAC,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,yBAAyB,EAAC,MAAM,yBAAyB,CAAC;AAElH,OAAO,EAAC,gBAAgB,EAAC,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAC,YAAY,EAAC,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAA+B,MAAM,6BAA6B,CAAC;AAChG,OAAO,EAAC,oBAAoB,EAAe,MAAM,uCAAuC,CAAC;AAEzF,OAAO,EAAC,0BAA0B,EAAC,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAC,cAAc,EAAE,eAAe,EAAC,MAAM,4BAA4B,CAAC;AAiH3E,MAAM,cAAc,GAAG,IAAI,CAAC;AAC5B,MAAM,mCAAmC,GAAG,KAAK,CAAC;AAElD,MAAM,OAAO,UAAU;IACnB,gBAAgB,CAAiB,MAAM,CAAQ;IAC/C,gBAAgB,CAAiB,MAAM,CAAa;IACpD,gBAAgB,CAAiB,yBAAyB,CAAe;IACzE,gBAAgB,CAAkB,OAAO,CAAmB;IAC5D,gBAAgB,CAAkB,UAAU,CAAS;IACrD,gBAAgB,CAAkB,SAAS,CAAe;IAC1D,gBAAgB,CAAkB,aAAa,CAAe;IAC9D,gBAAgB,CAAkB,UAAU,CAAS;IACrD,gBAAgB,CAAkB,UAAU,CAAU;IACtD,gBAAgB,CAAkB,SAAS,CAAU;IACrD,gBAAgB,CAAkB,cAAc,GAAkB,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC;IACpF,gBAAgB,CAAkB,kBAAkB,GAAG,IAAI,sBAAsB,EAAE,CAAC;IACpF,gBAAgB,CAAkB,2BAA2B,CAA2B;IACxF,gBAAgB,CAAkB,0CAA0C,CAAU;IACtF,gBAAgB,CAAkB,6BAA6B,CAAU;IACzE,gBAAgB,CAAkB,wBAAwB,CAAU;IACpE,gBAAgB,CAAkB,aAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpF,gBAAgB,CAAS,gBAAgB,CAAwB;IACjE,gBAAgB,CAAS,iBAAiB,CAAU;IACpD,gBAAgB,CAAS,oBAAoB,CAAU;IACvD,gBAAgB,CAAS,eAAe,CAAuB;IAE/C,SAAS,CAAY;IACrB,SAAS,GAAG,IAAI,UAAU,EAAQ,CAAC;IAEnD,YAAoB,EAChB,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAG1H,EAAE,EACC,MAAM,EACN,SAAS,EACT,aAAa,EACb,0CAA0C,EAC1C,6BAA6B,EAC7B,wBAAwB,EAQ3B;QACG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,yBAAyB,GAAG,IAAI,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,2BAA2B,EAAE,CAAC;QAClG,IAAI,CAAC,0CAA0C,GAAG,0CAA0C,CAAC;QAC7F,IAAI,CAAC,6BAA6B,GAAG,6BAA6B,CAAC;QACnE,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,MAAM,aAAa,GAAG,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC;YACjF,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YACnC,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,OAAO;YACP,QAAQ,EAAE,MAAM,CAAC,aAAa;gBAC1B,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,SAAS;YACf,YAAY,EAAE,YAAY,IAAI,KAAK;YACnC,cAAc,EAAE,cAAc,IAAI,IAAI;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,cAAsB,EAAE,EAAE;oBACzB,IAAI,CAAC;wBACD,cAAc,CAAC,cAAc,CAAC,CAAC;oBACnC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,sFAAsF;wBACtF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvB,CAAC;gBACL,CAAC;YACL,kBAAkB,EAAE,UAAU,IAAI,IAAI;YACtC,aAAa,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC;gBACnC,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS;SAClB,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE1C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACvB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAChC,wBAAwB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CACzD,CACJ,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YACnC,MAAM,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,EAAE,CAAC;YAC1D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,2BAA2B,CAAC,OAAO,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,QAA6C,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAChF,IAAI,CAAC,QAAsB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjE,IAAI,CAAC,QAAsB,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAE1D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAqB,CAAC;IAChD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ;YAC5B,OAAO;QAEX,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAEpC,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;IAC5C,CAAC;IAED,cAAc;IACP,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,IAAI;QACX,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAED,IAAW,uBAAuB;QAC9B,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACzC,CAAC;IAED,IAAW,4BAA4B;QACnC,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC9C,CAAC;IAcM,QAAQ,CAAC,IAAY,EAAE,gBAAqC,KAAK,EAAE,OAA4B;QAClG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,KAAK,EAAE;YACX,OAAO,EAAE,CAAC;QAEd,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,IAAgC,CAAC;YAEtD,QAAQ,YAAY,EAAE,CAAC;gBACnB,KAAK,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpE,KAAK,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpE,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACjE,KAAK,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxE,CAAC;YAED,KAAM,YAA6B,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACjC,IAAI,aAAa,EAAE,CAAC;gBAChB,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE;oBACxC,IAAI,KAAK,GAAG,CAAC,CAAC;oBACd,OAAO,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;wBAClC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG;4BACnB,MAAM;oBACd,CAAC;oBACD,OAAO,KAAK,CAAC;gBACjB,CAAC,CAAC;gBACF,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACnD,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;oBACvG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;oBAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;wBACxD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;4BACtD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;4BACxC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;gCACxD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gCAC1C,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAE/B,IAAI,eAAe,IAAI,IAAI,IAAI,qBAAqB,IAAI,IAAI,EAAE,CAAC;oBAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,GAAG,IAAI,EAAE,IAAI,CAAC,CAAY,CAAC;oBAC/F,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;oBAE7D,uGAAuG;oBACvG,IAAI,oBAAoB,IAAI,CAAC,IAAI,oBAAoB,IAAI,CAAC,EAAE,CAAC;wBACzD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,oBAAoB,GAAG,CAAC,CAAC,CAAC;wBAE3C,IAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,iBAAiB;4BACvE,OAAO,MAAM,CAAC;oBACtB,CAAC;gBACL,CAAC;gBAED,MAAM,sBAAsB,GAAG,IAAI,CAAC;gBACpC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAY,CAAC;gBAEnG,IAAI,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;oBAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAY,CAAC;oBACvE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC;wBAChE,OAAO,MAAM,CAAC;gBACtB,CAAC;gBAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,GAAG,IAAI,EAAE,IAAI,CAAC,CAAY,CAAC;gBAEhG,uGAAuG;gBACvG,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;oBACnG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBAE1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,iBAAiB;wBACvE,OAAO,MAAM,CAAC;gBACtB,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,sBAAsB,GAAG,IAAI,CAAC;gBACpC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAY,CAAC;gBAEpG,IAAI,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;oBAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAY,CAAC;oBACxE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC;wBACjE,OAAO,MAAM,CAAC;gBACtB,CAAC;gBAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,GAAG,IAAI,EAAE,KAAK,CAAC,CAAY,CAAC;gBAEjG,uGAAuG;gBACvG,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;oBACnG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBAC1C,OAAO,MAAM,CAAC;gBAClB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAY,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACI,UAAU,CAAC,MAAwB,EAAE,gBAAyB,KAAK,EAAE,UAA6B;QACrG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YACnB,OAAO,EAAE,CAAC;QAEd,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QAEpF,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAClE,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QACtG,IAAI,eAAe,KAAK,EAAE;YACtB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QAEpF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QAC3G,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;YAChC,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;IACpF,CAAC;IAEM,kBAAkB,CAAC,KAAY;QAClC,IAAI,KAAK,IAAI,IAAI;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAE5C,IAAI,IAAI,CAAC,cAAc,KAAK,mBAAmB,CAAC,IAAI;YAChD,OAAO,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;QAEpE,OAAO,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,4HAA4H;IACrH,cAAc,CAAC,KAAwB;QAC1C,IAAI,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,CAAC;QAEjB,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,OAAO;YACtC,OAAO,IAAI,CAAC;QAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QAEnD,IAAI,UAAU,KAAK,EAAE;YACjB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAEjD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,CAAC,gBAAgB;QACpB,IAAI,IAAI,CAAC,cAAc,KAAK,mBAAmB,CAAC,IAAI;YAChD,OAAO;QAEX,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;QAC5E,IAAI,OAAO,WAAW,KAAK,QAAQ;YAC/B,OAAO;QAEX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE;YAChC,MAAM,CAAU,CAAC;IACzB,CAAC;IAED,0FAA0F;IACnF,UAAU,CAAC,KAAwB;QACtC,IAAI,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,CAAC;QAEjB,OAAO,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACnG,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,UAA+B,EAAE;QACxD,IAAI,IAAI,CAAC,UAAU;YACf,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QAEvF,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YACrG,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAAC,2BAA2B,EAAE,CAAC;YAC3F,IAAI,CAAC;gBACD,OAAO,MAAM,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;YAC/D,CAAC;oBAAS,CAAC;gBACP,qBAAqB,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,UAAwC,EAAE;QAC1E,IAAI,IAAI,CAAC,UAAU;YACf,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QAEvF,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YACrG,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAAC,2BAA2B,EAAE,CAAC;YAC3F,IAAI,CAAC;gBACD,OAAO,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,EAAE,OAAO,CAAC,CAAC;YACxE,CAAC;oBAAS,CAAC;gBACP,qBAAqB,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACI,WAAW;QACd,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,iBAAiB,GAAG,KAAK,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAEpE,IAAI,CAAC;YACD,MAAM,yBAAyB,GAAG,qBAAqB,CAAC;YACxD,MAAM,wBAAwB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,KAAK,EAAE,kBAAkB,CAAC,EAAE,KAAK,CAAC,CAAC;YAE7H,IAAI,yBAAyB,KAAK,wBAAwB;gBACtD,QAAQ,CAAC,IAAI,CACT,oBAAoB,iBAAiB,yEAAyE;oBAC9G,0EAA0E;oBAC1E,2CAA2C,CAC9C,CAAC;QACV,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,aAAa;QACjB,CAAC;QAED,IAAI,CAAC;YACD,IAAI,IAAI,CAAC,0CAA0C,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACpF,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,KAAK,oBAAoB,CAAC,IAAI;oBAC3E,QAAQ,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;qBAClF,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,KAAK,oBAAoB,CAAC,MAAM;oBAClF,QAAQ,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;qBACpF,CAAC;oBACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,EAAE,UAAU,IAAI,CAAC,CAAC;oBAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,gBAAgB,IAAI,CAAC,CAAC;oBACxE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,EAAE,UAAU,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;oBACrH,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,EAAE,YAAY,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;oBAErH,IAAI,UAAU,KAAK,UAAU;wBACzB,QAAQ,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;gBACjG,CAAC;YACL,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,aAAa;QACjB,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,iFAAiF;IACjF,IAAW,eAAe;QACtB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI;YAC7B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAE9D,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,gDAAgD;IAChD,IAAW,gBAAgB;QACvB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI;YAC9B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAE/D,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,4DAA4D;IAC5D,IAAW,mBAAmB;QAC1B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI;YACjC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAErE,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED,IAAW,cAAc;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;YAE5D,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,0BAA0B,EAAE,SAAS,CAAC,CAAC;gBAC5E,IAAI,CAAC,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC;YACpD,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,gBAAgB;IACR,kBAAkB;QACtB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ;YAC5B,MAAM,IAAI,aAAa,EAAE,CAAC;IAClC,CAAC;IAED,gBAAgB;IACT,KAAK,CAAC,cAAc,CAAC,QAAgB;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;YACpC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;QAEjD,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC3D,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;gBACpC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAEjD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACjF,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAE3C,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB;IACT,KAAK,CAAC,gBAAgB,CAAC,YAAiC;QAC3D,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,OAAO,CAAC,GAAG,CACb,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;oBACrE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACzC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzB,CAAC;YACL,CAAC,CAAC,CACL,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,YAA+B,EAAE,EACzD,MAAM,EAGT;QACG,MAAM,EAAC,UAAU,EAAE,4BAA4B,EAAC,GAAG,YAAY,CAAC;QAChE,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,cAAc,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,SAAS,EAAE;YAC5D,UAAU,EAAE,YAAY;YACxB,MAAM,EAAE,UAAU;SACrB,CAAC,CAAC;QACH,0BAA0B,CAAC,QAAQ,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC;QACrE,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/D,MAAM,uBAAuB,GAAG,YAAY,CAAC,uBAAuB,CAAC;QACrE,MAAM,oCAAoC,GAAG,uBAAuB;YAChE,CAAC,CAAC,CAAC,4BAA4B,IAAI,mCAAmC,CAAC;YACvE,CAAC,CAAC,KAAK,CAAC;QACZ,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,YAAY,CAAC,SAAS,EAAE;YACrG,wBAAwB,EAAE,YAAY,CAAC,wBAAwB;YAC/D,4BAA4B,EAAE,oCAAoC;SACrE,CAAC,CAAC;QACH,MAAM,8BAA8B,GAAG,YAAY,CAAC,iCAAiC,CAAC,EAAC,SAAS,EAAE,SAAS,EAAC,CAAC,CAAC;QAE9G,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAC,GAAG,YAAY,EAAE,SAAS,EAAE,OAAO,EAAC,EAAE;YAChE,SAAS,EAAE,QAAQ;YACnB,aAAa,EAAE,YAAY;YAC3B,MAAM;YACN,0CAA0C,EAAE,4BAA4B,IAAI,KAAK;YACjF,wBAAwB,EAAE,uBAAuB;YACjD,6BAA6B,EAAE,oCAAoC;SACtE,CAAC,CAAC;QACH,MAAM,4BAA4B,GAAG,YAAY,CAAC,wBAAwB;YACtE,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;QACrF,MAAM,2BAA2B,GAAG,YAAY,CAAC,wBAAwB;YACrE,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC;QACnF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,SAAS,OAAO;YACZ,KAAK,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;YACpC,UAAU,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,SAAS,WAAW,CAAC,QAAkB;YACnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;oBAC3B,SAAS;gBAEb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACzC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACL,CAAC;QAED,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,UAAU,CAAC,OAAO;gBAClB,MAAM,UAAU,CAAC,MAAM,CAAC;YAE5B,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QAED,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAE9D,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAE9C,IAAI,UAAU,EAAE,OAAO,EAAE,CAAC;gBACtB,IAAI,WAAW;oBACX,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAEjC,MAAM,UAAW,CAAC,MAAM,CAAC;YAC7B,CAAC;iBAAM,IAAI,CAAC,WAAW;gBACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAE5C,UAAU,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAElD,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAEjC,OAAO,KAAK,CAAC;QACjB,CAAC;gBAAS,CAAC;YACP,UAAU,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAClD,4BAA4B,EAAE,OAAO,EAAE,EAAE,CAAC;YAC1C,2BAA2B,EAAE,OAAO,EAAE,EAAE,CAAC;QAC7C,CAAC;IACL,CAAC;CACJ;AAED,MAAM,OAAO,gBAAgB;IACzB,gBAAgB,CAAkB,MAAM,CAAa;IACrD,gBAAgB,CAAkB,cAAc,CAAgB;IAChE,gBAAgB,CAAS,aAAa,CAA0B;IAChE,gBAAgB,CAAS,SAAS,CAAS;IAC3C,gBAAgB,CAAS,SAAS,CAAS;IAC3C,gBAAgB,CAAS,SAAS,CAAS;IAC3C,gBAAgB,CAAS,SAAS,CAAS;IAC3C,gBAAgB,CAAS,SAAS,CAAS;IAC3C,gBAAgB,CAAS,QAAQ,CAAS;IAC1C,gBAAgB,CAAS,UAAU,CAAU;IAC7C,gBAAgB,CAAS,UAAU,CAAU;IAC7C,gBAAgB,CAAS,UAAU,CAAU;IAC7C,gBAAgB,CAAS,UAAU,CAAU;IAC7C,gBAAgB,CAAS,UAAU,CAAU;IAC7C,gBAAgB,CAAS,SAAS,CAAU;IAC5C,gBAAgB,CAAS,sBAAsB,CAAW;IAC1D,gBAAgB,CAAS,qBAAqB,CAAW;IAEzD,YAAoB,KAAiB,EAAE,aAA4B;QAC/D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI;YAC1B,IAAI,CAAC,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAE1F,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,EAAE;QACT,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI;YACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAE1C,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,IAAI,QAAQ,IAAI,IAAI;YAChB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,IAAI,QAAQ,IAAI,IAAI;YAChB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,IAAI,QAAQ,IAAI,IAAI;YAChB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,IAAI,QAAQ,IAAI,IAAI;YAChB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,IAAI,QAAQ,IAAI,IAAI;YAChB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;QAExB,IAAI,OAAO,IAAI,IAAI;YACf,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,qBAAqB;QAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI;YACnC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAE1F,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAW,oBAAoB;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI;YAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAExF,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAED,gBAAgB;IACR,kBAAkB;QACtB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ;YAC5B,MAAM,IAAI,aAAa,EAAE,CAAC;IAClC,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,OAAO,CAAC,KAAiB,EAAE,aAA4B;QACjE,OAAO,IAAI,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;CACJ;AAED,MAAM,OAAO,sBAAsB;IAC/B,gBAAgB,CAAkB,MAAM,CAAa;IACrD,gBAAgB,CAAkB,cAAc,CAAgB;IAChE,gBAAgB,CAAS,YAAY,CAAS;IAC9C,gBAAgB,CAAS,YAAY,CAAS;IAC9C,gBAAgB,CAAS,YAAY,CAAS;IAC9C,gBAAgB,CAAS,aAAa,CAAU;IAChD,gBAAgB,CAAS,aAAa,CAAU;IAChD,gBAAgB,CAAS,aAAa,CAAU;IAEhD,YAAoB,KAAiB,EAAE,aAA4B;QAC/D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;QAE/F,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;QAE/F,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;QAE/F,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QAEhB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAW,YAAY;QACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhC,IAAI,WAAW,IAAI,IAAI;YACnB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,YAAY;QACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhC,IAAI,WAAW,IAAI,IAAI;YACnB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,YAAY;QACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhC,IAAI,WAAW,IAAI,IAAI;YACnB,OAAO,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,gBAAgB;IACR,kBAAkB;QACtB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ;YAC5B,MAAM,IAAI,aAAa,EAAE,CAAC;IAClC,CAAC;IAED,gBAAgB;IACR,oBAAoB,CAAC,KAAY,EAAE,aAAuB;QAC9D,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;QAEjB,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBACnB,SAAS;YAEb,OAAO,MAAM,CAAC,CAAC,CAAU,CAAC;QAC9B,CAAC;QAED,OAAO,CAAC,CAAU,CAAC;IACvB,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,OAAO,CAAC,KAAiB,EAAE,aAA4B;QACjE,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;CACJ;AAED,SAAS,0BAA0B,CAC/B,YAA0B,EAC1B,SAA6E;IAE7E,SAAS,aAAa,CAAC,MAAc,EAAE,QAAiB;QACpD,IAAI,QAAQ,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI;YAClC,OAAO;QAEX,IAAI,MAAM,YAAY,KAAK,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;YACrF,OAAO;QAEX,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,IAAI,KAAK,YAAY,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CACvD,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAQ,MAAc,CAAC,GAAG,CAAC,KAAK,QAAQ,CACxE;gBACI,MAAc,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;;gBAE7B,aAAa,CAAE,MAAc,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;IACL,CAAC;IAED,aAAa,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,2BAA2B,CAAC,SAA6E;IAC9G,MAAM,eAAe,GAAG,GAAG,CAAC;IAC5B,MAAM,YAAY,GAAG,GAAG,CAAC;IAEzB,MAAM,GAAG,GAIJ,EAAE,CAAC;IAER,SAAS,OAAO,CAAC,MAAmD,EAAE,IAAc;QAChF,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,YAAY,KAAK;YACzC,OAAO;QAEX,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,eAAe;gBAC7D,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,eAAe,aAAa,CAAC,CAAC;YAEvJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,GAAG,CAAC,MAAM,GAAG,YAAY;gBACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,kCAAkC,YAAY,aAAa,CAAC,CAAC;YAErG,IAAI,IAAI,GAAsB,SAAS,CAAC;YACxC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBACtD,IAAI,GAAG,CAAC,CAAC;;oBAET,IAAI,GAAG,CAAC,CAAC;YACjB,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;YAC9B,OAAO;QACX,CAAC;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAE7B,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,QAA6B;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;IAE/B,IAAI,KAAK,IAAI,IAAI;QACb,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;AAC7B,CAAC"}
|
|
1
|
+
{"version":3,"file":"LlamaModel.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaModel/LlamaModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { EventRelay } from "lifecycle-utils";
|
|
2
|
+
import { Token } from "../types.js";
|
|
3
|
+
import { LlamaText } from "../utils/LlamaText.js";
|
|
4
|
+
import type { LlamaModel } from "./LlamaModel/LlamaModel.js";
|
|
5
|
+
export type LlamaRankingContextOptions = {
|
|
6
|
+
/**
|
|
7
|
+
* The number of tokens the model can see at once.
|
|
8
|
+
* - **`"auto"`** - adapt to the current VRAM state and attemp to set the context size as high as possible up to the size
|
|
9
|
+
* the model was trained on.
|
|
10
|
+
* - **`number`** - set the context size to a specific number of tokens.
|
|
11
|
+
* If there's not enough VRAM, an error will be thrown.
|
|
12
|
+
* Use with caution.
|
|
13
|
+
* - **`{min?: number, max?: number}`** - adapt to the current VRAM state and attemp to set the context size as high as possible
|
|
14
|
+
* up to the size the model was trained on, but at least `min` and at most `max`.
|
|
15
|
+
*
|
|
16
|
+
* Defaults to `"auto"`.
|
|
17
|
+
*/
|
|
18
|
+
contextSize?: "auto" | number | {
|
|
19
|
+
min?: number;
|
|
20
|
+
max?: number;
|
|
21
|
+
};
|
|
22
|
+
/** prompt processing batch size */
|
|
23
|
+
batchSize?: number;
|
|
24
|
+
/**
|
|
25
|
+
* number of threads to use to evaluate tokens.
|
|
26
|
+
* set to 0 to use the maximum threads supported by the current machine hardware
|
|
27
|
+
*/
|
|
28
|
+
threads?: number;
|
|
29
|
+
/** An abort signal to abort the context creation */
|
|
30
|
+
createSignal?: AbortSignal;
|
|
31
|
+
/**
|
|
32
|
+
* Ignore insufficient memory errors and continue with the context creation.
|
|
33
|
+
* Can cause the process to crash if there's not enough VRAM for the new context.
|
|
34
|
+
*
|
|
35
|
+
* Defaults to `false`.
|
|
36
|
+
*/
|
|
37
|
+
ignoreMemorySafetyChecks?: boolean;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* @see [Reranking Documents](https://node-llama-cpp.withcat.ai/guide/embedding#reranking) tutorial
|
|
41
|
+
*/
|
|
42
|
+
export declare class LlamaRankingContext {
|
|
43
|
+
readonly onDispose: EventRelay<void>;
|
|
44
|
+
private constructor();
|
|
45
|
+
/**
|
|
46
|
+
* Get the ranking score for a document for a query.
|
|
47
|
+
*
|
|
48
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
49
|
+
* @returns a ranking score between 0 and 1 representing the probability that the document is relevant to the query.
|
|
50
|
+
*/
|
|
51
|
+
rank(query: Token[] | string | LlamaText, document: Token[] | string | LlamaText): Promise<number>;
|
|
52
|
+
/**
|
|
53
|
+
* Get the ranking scores for all the given documents for a query.
|
|
54
|
+
*
|
|
55
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
56
|
+
* @returns an array of ranking scores between 0 and 1 representing the probability that the document is relevant to the query.
|
|
57
|
+
*/
|
|
58
|
+
rankAll(query: Token[] | string | LlamaText, documents: Array<Token[] | string | LlamaText>): Promise<number[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Get the ranking scores for all the given documents for a query and sort them by score from highest to lowest.
|
|
61
|
+
*
|
|
62
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
63
|
+
*/
|
|
64
|
+
rankAndSort<const T extends string>(query: Token[] | string | LlamaText, documents: T[]): Promise<Array<{
|
|
65
|
+
document: T;
|
|
66
|
+
/**
|
|
67
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
68
|
+
*/
|
|
69
|
+
score: number;
|
|
70
|
+
}>>;
|
|
71
|
+
dispose(): Promise<void>;
|
|
72
|
+
/** @hidden */
|
|
73
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
74
|
+
get disposed(): boolean;
|
|
75
|
+
get model(): LlamaModel;
|
|
76
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { AsyncDisposeAggregator, EventRelay, withLock } from "lifecycle-utils";
|
|
2
|
+
import { tokenizeInput } from "../utils/tokenizeInput.js";
|
|
3
|
+
/**
|
|
4
|
+
* @see [Reranking Documents](https://node-llama-cpp.withcat.ai/guide/embedding#reranking) tutorial
|
|
5
|
+
*/
|
|
6
|
+
export class LlamaRankingContext {
|
|
7
|
+
/** @internal */ _llamaContext;
|
|
8
|
+
/** @internal */ _sequence;
|
|
9
|
+
/** @internal */ _disposeAggregator = new AsyncDisposeAggregator();
|
|
10
|
+
onDispose = new EventRelay();
|
|
11
|
+
constructor({ _llamaContext }) {
|
|
12
|
+
this._llamaContext = _llamaContext;
|
|
13
|
+
this._sequence = this._llamaContext.getSequence();
|
|
14
|
+
this._disposeAggregator.add(this._llamaContext.onDispose.createListener(() => {
|
|
15
|
+
void this._disposeAggregator.dispose();
|
|
16
|
+
}));
|
|
17
|
+
this._disposeAggregator.add(this.onDispose.dispatchEvent);
|
|
18
|
+
this._disposeAggregator.add(async () => {
|
|
19
|
+
await this._llamaContext.dispose();
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Get the ranking score for a document for a query.
|
|
24
|
+
*
|
|
25
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
26
|
+
* @returns a ranking score between 0 and 1 representing the probability that the document is relevant to the query.
|
|
27
|
+
*/
|
|
28
|
+
async rank(query, document) {
|
|
29
|
+
if (this.model.tokens.bos == null || this.model.tokens.eos == null || this.model.tokens.sep == null)
|
|
30
|
+
throw new Error("Computing rankings is not supported for this model.");
|
|
31
|
+
const resolvedInput = this._getEvaluationInput(query, document);
|
|
32
|
+
if (resolvedInput.length > this._llamaContext.contextSize)
|
|
33
|
+
throw new Error("Input is longer than the context size. " +
|
|
34
|
+
"Try to increase the context size or use another model that supports longer contexts.");
|
|
35
|
+
else if (resolvedInput.length === 0)
|
|
36
|
+
return -Infinity;
|
|
37
|
+
return this._evaluateRankingForInput(resolvedInput);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Get the ranking scores for all the given documents for a query.
|
|
41
|
+
*
|
|
42
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
43
|
+
* @returns an array of ranking scores between 0 and 1 representing the probability that the document is relevant to the query.
|
|
44
|
+
*/
|
|
45
|
+
async rankAll(query, documents) {
|
|
46
|
+
const resolvedTokens = documents.map((document) => this._getEvaluationInput(query, document));
|
|
47
|
+
if (resolvedTokens.some((tokens) => tokens.length > this._llamaContext.contextSize))
|
|
48
|
+
throw new Error("The input of one of the document is longer than the context size. " +
|
|
49
|
+
"Try to increase the context size or use another model that supports longer contexts.");
|
|
50
|
+
else if (resolvedTokens.length === 0)
|
|
51
|
+
return [];
|
|
52
|
+
return await Promise.all(resolvedTokens.map((tokens) => {
|
|
53
|
+
if (tokens.length === 0)
|
|
54
|
+
return -Infinity;
|
|
55
|
+
return this._evaluateRankingForInput(tokens);
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get the ranking scores for all the given documents for a query and sort them by score from highest to lowest.
|
|
60
|
+
*
|
|
61
|
+
* A ranking score is a number between 0 and 1 representing the probability that the document is relevant to the query.
|
|
62
|
+
*/
|
|
63
|
+
async rankAndSort(query, documents) {
|
|
64
|
+
const scores = await this.rankAll(query, documents);
|
|
65
|
+
return documents
|
|
66
|
+
.map((document, index) => ({ document: document, score: scores[index] }))
|
|
67
|
+
.sort((a, b) => b.score - a.score);
|
|
68
|
+
}
|
|
69
|
+
async dispose() {
|
|
70
|
+
await this._disposeAggregator.dispose();
|
|
71
|
+
}
|
|
72
|
+
/** @hidden */
|
|
73
|
+
[Symbol.asyncDispose]() {
|
|
74
|
+
return this.dispose();
|
|
75
|
+
}
|
|
76
|
+
get disposed() {
|
|
77
|
+
return this._llamaContext.disposed;
|
|
78
|
+
}
|
|
79
|
+
get model() {
|
|
80
|
+
return this._llamaContext.model;
|
|
81
|
+
}
|
|
82
|
+
/** @internal */
|
|
83
|
+
_getEvaluationInput(query, document) {
|
|
84
|
+
if (this.model.tokens.bos == null || this.model.tokens.eos == null || this.model.tokens.sep == null)
|
|
85
|
+
throw new Error("Computing rankings is not supported for this model.");
|
|
86
|
+
const resolvedQuery = tokenizeInput(query, this._llamaContext.model.tokenizer, "trimLeadingSpace", false);
|
|
87
|
+
const resolvedDocument = tokenizeInput(document, this._llamaContext.model.tokenizer, "trimLeadingSpace", false);
|
|
88
|
+
if (resolvedQuery.length === 0 && resolvedDocument.length === 0)
|
|
89
|
+
return [];
|
|
90
|
+
const resolvedInput = [
|
|
91
|
+
this.model.tokens.bos,
|
|
92
|
+
...resolvedQuery,
|
|
93
|
+
this.model.tokens.eos,
|
|
94
|
+
this.model.tokens.sep,
|
|
95
|
+
...resolvedDocument,
|
|
96
|
+
this.model.tokens.eos
|
|
97
|
+
];
|
|
98
|
+
return resolvedInput;
|
|
99
|
+
}
|
|
100
|
+
/** @internal */
|
|
101
|
+
_evaluateRankingForInput(input) {
|
|
102
|
+
return withLock(this, "evaluate", async () => {
|
|
103
|
+
await this._sequence.eraseContextTokenRanges([{
|
|
104
|
+
start: 0,
|
|
105
|
+
end: this._sequence.nextTokenIndex
|
|
106
|
+
}]);
|
|
107
|
+
const iterator = this._sequence.evaluate(input, { _noSampling: true });
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
109
|
+
for await (const token of iterator) {
|
|
110
|
+
break; // only generate one token to get embeddings
|
|
111
|
+
}
|
|
112
|
+
const embedding = this._llamaContext._ctx.getEmbedding(input.length);
|
|
113
|
+
if (embedding.length === 0)
|
|
114
|
+
return 0;
|
|
115
|
+
const logit = embedding[0];
|
|
116
|
+
const probability = logitToSigmoid(logit);
|
|
117
|
+
return probability;
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
/** @internal */
|
|
121
|
+
static async _create({ _model }, { contextSize, batchSize, threads = 6, createSignal, ignoreMemorySafetyChecks }) {
|
|
122
|
+
const tensorInfo = _model.fileInfo.tensorInfo;
|
|
123
|
+
if (_model.tokens.bos == null || _model.tokens.eos == null || _model.tokens.sep == null)
|
|
124
|
+
throw new Error("Computing rankings is not supported for this model.");
|
|
125
|
+
// source: `append_pooling` in `llama.cpp`
|
|
126
|
+
if (findLayer(tensorInfo, "cls", "weight") == null || findLayer(tensorInfo, "cls", "bias") == null)
|
|
127
|
+
throw new Error("Computing rankings is not supported for this model.");
|
|
128
|
+
// source: `append_pooling` in `llama.cpp`
|
|
129
|
+
if (findLayer(tensorInfo, "cls.output", "weight") != null && findLayer(tensorInfo, "cls.output", "bias") == null)
|
|
130
|
+
throw new Error("Computing rankings is not supported for this model.");
|
|
131
|
+
if (_model.fileInsights.hasEncoder && _model.fileInsights.hasDecoder)
|
|
132
|
+
throw new Error("Computing rankings is not supported for encoder-decoder models.");
|
|
133
|
+
const llamaContext = await _model.createContext({
|
|
134
|
+
contextSize,
|
|
135
|
+
batchSize,
|
|
136
|
+
threads,
|
|
137
|
+
createSignal,
|
|
138
|
+
ignoreMemorySafetyChecks,
|
|
139
|
+
_embeddings: true,
|
|
140
|
+
_ranking: true
|
|
141
|
+
});
|
|
142
|
+
return new LlamaRankingContext({
|
|
143
|
+
_llamaContext: llamaContext
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
function findLayer(tensorInfo, name, suffix) {
|
|
148
|
+
if (tensorInfo == null)
|
|
149
|
+
return undefined;
|
|
150
|
+
for (const tensor of tensorInfo) {
|
|
151
|
+
if (tensor.name === name + "." + suffix)
|
|
152
|
+
return tensor;
|
|
153
|
+
}
|
|
154
|
+
return undefined;
|
|
155
|
+
}
|
|
156
|
+
function logitToSigmoid(logit) {
|
|
157
|
+
return 1 / (1 + Math.exp(-logit));
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=LlamaRankingContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LlamaRankingContext.js","sourceRoot":"","sources":["../../src/evaluator/LlamaRankingContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAG7E,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AA4CxD;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAC5B,gBAAgB,CAAkB,aAAa,CAAe;IAC9D,gBAAgB,CAAkB,SAAS,CAAuB;IAClE,gBAAgB,CAAkB,kBAAkB,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAEpE,SAAS,GAAG,IAAI,UAAU,EAAQ,CAAC;IAEnD,YAAoB,EAChB,aAAa,EAGhB;QACG,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QAElD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACvB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE;YAC7C,KAAK,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAC3C,CAAC,CAAC,CACL,CAAC;QACF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YACnC,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CAAC,KAAmC,EAAE,QAAsC;QACzF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI;YAC/F,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAE3E,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEhE,IAAI,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW;YACrD,MAAM,IAAI,KAAK,CACX,yCAAyC;gBACzC,sFAAsF,CACzF,CAAC;aACD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAC/B,OAAO,CAAC,QAAQ,CAAC;QAErB,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,KAAmC,EAAE,SAA8C;QACpG,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QAE9F,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;YAC/E,MAAM,IAAI,KAAK,CACX,oEAAoE;gBACpE,sFAAsF,CACzF,CAAC;aACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;YAChC,OAAO,EAAE,CAAC;QAEd,OAAO,MAAM,OAAO,CAAC,GAAG,CACpB,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBACnB,OAAO,CAAC,QAAQ,CAAC;YAErB,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CAAyB,KAAmC,EAAE,SAAc;QAQhG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAEpD,OAAO,SAAS;aACX,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAC,QAAQ,EAAE,QAAa,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAE,EAAC,CAAC,CAAC;aAC5E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;IAC5C,CAAC;IAED,cAAc;IACP,CAAC,MAAM,CAAC,YAAY,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IACpC,CAAC;IAED,gBAAgB;IACR,mBAAmB,CAAC,KAAmC,EAAE,QAAsC;QACnG,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI;YAC/F,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAE3E,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAC1G,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAEhH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAC3D,OAAO,EAAE,CAAC;QAEd,MAAM,aAAa,GAAG;YAClB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;YACrB,GAAG,aAAa;YAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;YACrB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;YACrB,GAAG,gBAAgB;YACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;SACxB,CAAC;QAEF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,gBAAgB;IACR,wBAAwB,CAAC,KAAc;QAC3C,OAAO,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;oBAC1C,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc;iBACrC,CAAC,CAAC,CAAC;YAEJ,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC,CAAC;YACrE,6DAA6D;YAC7D,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBACjC,MAAM,CAAC,4CAA4C;YACvD,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBACtB,OAAO,CAAC,CAAC;YAEb,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE1C,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,MAAM,EAGT,EAAE,EACC,WAAW,EACX,SAAS,EACT,OAAO,GAAG,CAAC,EACX,YAAY,EACZ,wBAAwB,EACC;QACzB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;QAE9C,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI;YACnF,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAE3E,0CAA0C;QAC1C,IAAI,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI;YAC9F,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAE3E,0CAA0C;QAC1C,IAAI,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,IAAI;YAC5G,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAE3E,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU;YAChE,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QAEvF,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC;YAC5C,WAAW;YACX,SAAS;YACT,OAAO;YACP,YAAY;YACZ,wBAAwB;YACxB,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,OAAO,IAAI,mBAAmB,CAAC;YAC3B,aAAa,EAAE,YAAY;SAC9B,CAAC,CAAC;IACP,CAAC;CACJ;AAED,SAAS,SAAS,CAAC,UAAwC,EAAE,IAAY,EAAE,MAAc;IACrF,IAAI,UAAU,IAAI,IAAI;QAClB,OAAO,SAAS,CAAC;IAErB,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,GAAG,GAAG,GAAG,MAAM;YACnC,OAAO,MAAM,CAAC;IACtB,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACjC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Token, Tokenizer } from "../types.js";
|
|
2
2
|
import { LlamaText } from "../utils/LlamaText.js";
|
|
3
3
|
import type { LlamaModel } from "./LlamaModel/LlamaModel.js";
|
|
4
|
+
/**
|
|
5
|
+
* @see [Using Token Bias](https://node-llama-cpp.withcat.ai/guide/token-bias) tutorial
|
|
6
|
+
*/
|
|
4
7
|
export declare class TokenBias {
|
|
5
8
|
constructor(tokenizer: Tokenizer);
|
|
6
9
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenBias.js","sourceRoot":"","sources":["../../src/evaluator/TokenBias.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAGxD,MAAM,OAAO,SAAS;IAClB,gBAAgB,CAAiB,UAAU,CAAY;IACvD,gBAAgB,CAAiB,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;IAEpE,YAAmB,SAAoB;QACnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACI,GAAG,CAAC,KAA2C,EAAE,IAAwC;QAC5F,MAAM,aAAa,GAAG,IAAI,KAAK,OAAO;YAClC,CAAC,CAAC,CAAC,QAAQ;YACX,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ;gBACtB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAErB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACxD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;gBACjC,SAAS;YAEb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC3C,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,EAAE,CAAC;YAC5E,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;gBACjC,SAAS;YAEb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,gBAAwC;QACtD,IAAK,gBAA+B,CAAC,SAAS,IAAI,IAAI;YAClD,OAAO,IAAI,SAAS,CAAE,gBAA+B,CAAC,SAAS,CAAC,CAAC;QAErE,OAAO,IAAI,SAAS,CAAC,gBAA6B,CAAC,CAAC;IACxD,CAAC;CACJ;AAED,SAAS,kBAAkB,CAAC,WAAmB;IAC3C,IAAI,WAAW,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,QAAQ,CAAC;SAChB,IAAI,WAAW,IAAI,CAAC;QACrB,OAAO,QAAQ,CAAC;SACf,IAAI,WAAW,KAAK,CAAC;QACtB,OAAO,CAAC,CAAC;IAEb,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;AACrD,CAAC"}
|
|
1
|
+
{"version":3,"file":"TokenBias.js","sourceRoot":"","sources":["../../src/evaluator/TokenBias.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAGxD;;GAEG;AACH,MAAM,OAAO,SAAS;IAClB,gBAAgB,CAAiB,UAAU,CAAY;IACvD,gBAAgB,CAAiB,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;IAEpE,YAAmB,SAAoB;QACnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACI,GAAG,CAAC,KAA2C,EAAE,IAAwC;QAC5F,MAAM,aAAa,GAAG,IAAI,KAAK,OAAO;YAClC,CAAC,CAAC,CAAC,QAAQ;YACX,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ;gBACtB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAErB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACxD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;gBACjC,SAAS;YAEb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC3C,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,EAAE,CAAC;YAC5E,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;gBACjC,SAAS;YAEb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,gBAAwC;QACtD,IAAK,gBAA+B,CAAC,SAAS,IAAI,IAAI;YAClD,OAAO,IAAI,SAAS,CAAE,gBAA+B,CAAC,SAAS,CAAC,CAAC;QAErE,OAAO,IAAI,SAAS,CAAC,gBAA6B,CAAC,CAAC;IACxD,CAAC;CACJ;AAED,SAAS,kBAAkB,CAAC,WAAmB;IAC3C,IAAI,WAAW,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,QAAQ,CAAC;SAChB,IAAI,WAAW,IAAI,CAAC;QACrB,OAAO,QAAQ,CAAC;SACf,IAAI,WAAW,KAAK,CAAC;QACtB,OAAO,CAAC,CAAC;IAEb,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;AACrD,CAAC"}
|