node-llama-cpp 3.0.0-beta.17 → 3.0.0-beta.18
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 +8 -5
- package/dist/ChatWrapper.js +3 -3
- package/dist/ChatWrapper.js.map +1 -1
- package/dist/apiDocsOverrides.d.ts +1 -0
- package/dist/apiDocsOverrides.js +5 -0
- package/dist/apiDocsOverrides.js.map +1 -0
- package/dist/bindings/AddonTypes.d.ts +1 -0
- package/dist/bindings/getLlama.d.ts +5 -1
- package/dist/bindings/getLlama.js +11 -4
- package/dist/bindings/getLlama.js.map +1 -1
- package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.d.ts +3 -0
- package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js +27 -0
- package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js.map +1 -0
- package/dist/chatWrappers/generic/TemplateChatWrapper.d.ts +1 -2
- package/dist/chatWrappers/generic/TemplateChatWrapper.js +1 -2
- package/dist/chatWrappers/generic/TemplateChatWrapper.js.map +1 -1
- package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js +2 -2
- package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js.map +1 -1
- package/dist/cli/cli.js +5 -3
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/commands/DebugCommand.js +3 -5
- package/dist/cli/commands/DebugCommand.js.map +1 -1
- package/dist/cli/commands/DownloadCommand.d.ts +1 -1
- package/dist/cli/commands/DownloadCommand.js +2 -1
- package/dist/cli/commands/DownloadCommand.js.map +1 -1
- package/dist/cli/commands/PullCommand.d.ts +12 -0
- package/dist/cli/commands/PullCommand.js +109 -0
- package/dist/cli/commands/PullCommand.js.map +1 -0
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.d.ts +1 -0
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +23 -11
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +2 -1
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
- package/dist/cli/recommendedModels.js +12 -20
- package/dist/cli/recommendedModels.js.map +1 -1
- package/dist/cli/utils/resolveCommandGgufPath.d.ts +3 -1
- package/dist/cli/utils/resolveCommandGgufPath.js +41 -97
- package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
- package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +2 -2
- package/dist/cli/utils/resolveModelRecommendationFileOptions.js +1 -4
- package/dist/cli/utils/resolveModelRecommendationFileOptions.js.map +1 -1
- package/dist/evaluator/LlamaChat/LlamaChat.d.ts +18 -2
- package/dist/evaluator/LlamaChat/LlamaChat.js +255 -205
- package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +22 -3
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +18 -7
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
- package/dist/evaluator/LlamaCompletion.js +1 -1
- package/dist/evaluator/LlamaCompletion.js.map +1 -1
- package/dist/evaluator/LlamaContext/LlamaContext.d.ts +2 -7
- package/dist/evaluator/LlamaContext/LlamaContext.js +12 -12
- package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
- package/dist/evaluator/LlamaEmbeddingContext.d.ts +2 -10
- package/dist/evaluator/LlamaEmbeddingContext.js +9 -23
- package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
- package/dist/evaluator/LlamaGrammar.d.ts +1 -1
- package/dist/evaluator/LlamaModel.d.ts +9 -0
- package/dist/evaluator/LlamaModel.js +2 -1
- package/dist/evaluator/LlamaModel.js.map +1 -1
- package/dist/gguf/insights/GgufInsights.js +12 -12
- package/dist/gguf/insights/GgufInsights.js.map +1 -1
- package/dist/gguf/insights/utils/resolveContextContextSizeOption.js +27 -3
- package/dist/gguf/insights/utils/resolveContextContextSizeOption.js.map +1 -1
- package/dist/gguf/parser/parseGguf.js +5 -0
- package/dist/gguf/parser/parseGguf.js.map +1 -1
- package/dist/gguf/readGgufFileInfo.d.ts +5 -2
- package/dist/gguf/readGgufFileInfo.js +38 -10
- package/dist/gguf/readGgufFileInfo.js.map +1 -1
- package/dist/gguf/types/GgufFileInfoTypes.d.ts +32 -0
- package/dist/gguf/types/GgufFileInfoTypes.js.map +1 -1
- package/dist/gguf/utils/getGgufMetadataArchitectureData.js +1 -1
- package/dist/gguf/utils/getGgufMetadataArchitectureData.js.map +1 -1
- package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.d.ts +2 -0
- package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +39 -0
- package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -0
- package/dist/gguf/utils/resolveSplitGgufParts.d.ts +7 -0
- package/dist/gguf/utils/resolveSplitGgufParts.js +55 -0
- package/dist/gguf/utils/resolveSplitGgufParts.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/LlamaText.d.ts +29 -20
- package/dist/utils/LlamaText.js +253 -243
- package/dist/utils/LlamaText.js.map +1 -1
- package/dist/utils/StopGenerationDetector.d.ts +1 -1
- package/dist/utils/StopGenerationDetector.js +2 -0
- package/dist/utils/StopGenerationDetector.js.map +1 -1
- package/dist/utils/createModelDownloader.d.ts +99 -0
- package/dist/utils/createModelDownloader.js +226 -0
- package/dist/utils/createModelDownloader.js.map +1 -0
- package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js +18 -8
- package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js.map +1 -1
- package/dist/utils/parseTextTemplate.d.ts +2 -2
- package/dist/utils/parseTextTemplate.js +2 -2
- package/dist/utils/runtime.d.ts +4 -0
- package/dist/utils/runtime.js +8 -0
- package/dist/utils/runtime.js.map +1 -0
- package/llama/addon.cpp +18 -7
- package/llama/binariesGithubRelease.json +1 -1
- package/llama/gitRelease.bundle +0 -0
- package/llama/grammars/README.md +1 -1
- package/llama/llama.cpp.info.json +1 -1
- package/llamaBins/linux-arm64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-arm64/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-armv7l/llama-addon.node +0 -0
- package/llamaBins/linux-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64/llama-addon.node +0 -0
- package/llamaBins/linux-x64-cuda/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
- package/llamaBins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64-vulkan/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-metal/_nlcBuildMetadata.json +1 -1
- package/llamaBins/mac-arm64-metal/default.metallib +0 -0
- package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
- package/llamaBins/mac-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/mac-x64/llama-addon.node +0 -0
- package/llamaBins/win-arm64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-arm64/llama-addon.node +0 -0
- package/llamaBins/win-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64/llama-addon.node +0 -0
- package/llamaBins/win-x64-cuda/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
- package/llamaBins/win-x64-vulkan/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64-vulkan/llama-addon.node +0 -0
- package/package.json +8 -5
package/dist/utils/LlamaText.js
CHANGED
|
@@ -1,125 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
};
|
|
4
|
-
LlamaText.fromJSON = function fromJSON(json) {
|
|
5
|
-
return createLlamaText(json.map((value) => {
|
|
6
|
-
if (typeof value === "string")
|
|
7
|
-
return value;
|
|
8
|
-
else if (SpecialToken.isSpecialTokenJSON(value))
|
|
9
|
-
return SpecialToken.fromJSON(value);
|
|
10
|
-
else if (SpecialTokensText.isSpecialTokensTextJSON(value))
|
|
11
|
-
return SpecialTokensText.fromJSON(value);
|
|
12
|
-
else {
|
|
13
|
-
void (value);
|
|
14
|
-
throw new Error(`Unknown value type: ${value}`);
|
|
15
|
-
}
|
|
16
|
-
}));
|
|
17
|
-
};
|
|
18
|
-
LlamaText.compare = function compare(a, b) {
|
|
19
|
-
if (!isLlamaText(a) || !isLlamaText(b))
|
|
20
|
-
return false;
|
|
21
|
-
if (a.values.length !== b.values.length)
|
|
22
|
-
return false;
|
|
23
|
-
for (let i = 0; i < a.values.length; i++) {
|
|
24
|
-
if (!compareLlamaTextValues(a.values[i], b.values[i]))
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
};
|
|
29
|
-
export class SpecialTokensText {
|
|
30
|
-
value;
|
|
31
|
-
constructor(value) {
|
|
32
|
-
this.value = value;
|
|
33
|
-
}
|
|
34
|
-
toString() {
|
|
35
|
-
return this.value;
|
|
36
|
-
}
|
|
37
|
-
tokenize(tokenizer, trimLeadingSpace = false) {
|
|
38
|
-
return tokenizer(this.value, true, trimLeadingSpace ? "trimLeadingSpace" : undefined);
|
|
39
|
-
}
|
|
40
|
-
tokenizeSpecialTokensOnly(tokenizer) {
|
|
41
|
-
const tokens = this.tokenize(tokenizer, true);
|
|
42
|
-
const res = [];
|
|
43
|
-
let currentText = "";
|
|
44
|
-
for (const token of tokens) {
|
|
45
|
-
if (tokenizer.isSpecialToken(token)) {
|
|
46
|
-
if (currentText !== "") {
|
|
47
|
-
res.push(currentText);
|
|
48
|
-
currentText = "";
|
|
49
|
-
}
|
|
50
|
-
res.push(token);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
currentText += tokenizer.detokenize([token], false);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
if (currentText !== "")
|
|
57
|
-
res.push(currentText);
|
|
58
|
-
return res;
|
|
59
|
-
}
|
|
60
|
-
toJSON() {
|
|
61
|
-
return {
|
|
62
|
-
type: "specialTokensText",
|
|
63
|
-
value: this.value
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
static fromJSON(json) {
|
|
67
|
-
if (SpecialTokensText.isSpecialTokensTextJSON(json))
|
|
68
|
-
return new SpecialTokensText(json.value);
|
|
69
|
-
throw new Error(`Invalid JSON for SpecialTokensText: ${JSON.stringify(json)}`);
|
|
70
|
-
}
|
|
71
|
-
static isSpecialTokensTextJSON(value) {
|
|
72
|
-
return value != null && typeof value === "object" && value.type === "specialTokensText";
|
|
73
|
-
}
|
|
1
|
+
class LlamaText {
|
|
2
|
+
values;
|
|
74
3
|
/**
|
|
75
|
-
*
|
|
4
|
+
* Can also be called without `new`
|
|
76
5
|
*/
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
else
|
|
81
|
-
return value;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
export class SpecialToken {
|
|
85
|
-
value;
|
|
86
|
-
constructor(value) {
|
|
87
|
-
this.value = value;
|
|
88
|
-
}
|
|
89
|
-
toString() {
|
|
90
|
-
return this.value;
|
|
91
|
-
}
|
|
92
|
-
tokenize(tokenizer) {
|
|
93
|
-
return tokenizer(this.value, "builtin");
|
|
94
|
-
}
|
|
95
|
-
toJSON() {
|
|
96
|
-
return {
|
|
97
|
-
type: "specialToken",
|
|
98
|
-
value: this.value
|
|
99
|
-
};
|
|
6
|
+
constructor(...values) {
|
|
7
|
+
// the constructor logic is copied to `LlamaTextConstructor` to make the constructor callable as a normal function
|
|
8
|
+
this.values = createHistoryFromStringsAndValues(values);
|
|
100
9
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
return new SpecialToken(json.value);
|
|
104
|
-
throw new Error(`Invalid JSON for SpecialToken: ${JSON.stringify(json)}`);
|
|
10
|
+
concat(value) {
|
|
11
|
+
return new LlamaTextConstructor([...this.values, value]);
|
|
105
12
|
}
|
|
106
|
-
|
|
107
|
-
return
|
|
13
|
+
mapValues(mapper) {
|
|
14
|
+
return new LlamaTextConstructor(this.values.map(mapper));
|
|
108
15
|
}
|
|
109
|
-
}
|
|
110
|
-
export function isLlamaText(value) {
|
|
111
|
-
return typeof value === "function" && "type" in value && value.type === "LlamaText";
|
|
112
|
-
}
|
|
113
|
-
export function tokenizeText(text, tokenizer) {
|
|
114
|
-
if (typeof text === "string")
|
|
115
|
-
return tokenizer(text, false);
|
|
116
|
-
else
|
|
117
|
-
return text.tokenize(tokenizer);
|
|
118
|
-
}
|
|
119
|
-
const LlamaTextPrototypeFunctions = {
|
|
120
|
-
mapValues: function mapValues(mapper) {
|
|
121
|
-
return createLlamaText(this.values.map(mapper));
|
|
122
|
-
},
|
|
123
16
|
joinValues(separator) {
|
|
124
17
|
const newValues = [];
|
|
125
18
|
for (let i = 0; i < this.values.length; i++) {
|
|
@@ -131,8 +24,8 @@ const LlamaTextPrototypeFunctions = {
|
|
|
131
24
|
newValues.push(separator);
|
|
132
25
|
}
|
|
133
26
|
}
|
|
134
|
-
return
|
|
135
|
-
}
|
|
27
|
+
return new LlamaTextConstructor(newValues);
|
|
28
|
+
}
|
|
136
29
|
toString() {
|
|
137
30
|
return this.values
|
|
138
31
|
.map((value) => {
|
|
@@ -144,7 +37,17 @@ const LlamaTextPrototypeFunctions = {
|
|
|
144
37
|
return value;
|
|
145
38
|
})
|
|
146
39
|
.join("");
|
|
147
|
-
}
|
|
40
|
+
}
|
|
41
|
+
toJSON() {
|
|
42
|
+
return this.values.map((value) => {
|
|
43
|
+
if (value instanceof SpecialToken)
|
|
44
|
+
return value.toJSON();
|
|
45
|
+
else if (value instanceof SpecialTokensText)
|
|
46
|
+
return value.toJSON();
|
|
47
|
+
else
|
|
48
|
+
return value;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
148
51
|
tokenize(tokenizer, options) {
|
|
149
52
|
let textToTokenize = "";
|
|
150
53
|
const res = [];
|
|
@@ -164,20 +67,10 @@ const LlamaTextPrototypeFunctions = {
|
|
|
164
67
|
}
|
|
165
68
|
res.push(...tokenizer(textToTokenize, false, resolveTokenizerOptions()));
|
|
166
69
|
return res;
|
|
167
|
-
}
|
|
168
|
-
toJSON() {
|
|
169
|
-
return this.values.map((value) => {
|
|
170
|
-
if (value instanceof SpecialToken)
|
|
171
|
-
return value.toJSON();
|
|
172
|
-
else if (value instanceof SpecialTokensText)
|
|
173
|
-
return value.toJSON();
|
|
174
|
-
else
|
|
175
|
-
return value;
|
|
176
|
-
});
|
|
177
|
-
},
|
|
70
|
+
}
|
|
178
71
|
compare(other) {
|
|
179
|
-
return
|
|
180
|
-
}
|
|
72
|
+
return LlamaTextConstructor.compare(this, other);
|
|
73
|
+
}
|
|
181
74
|
trimStart() {
|
|
182
75
|
const newValues = this.values.slice();
|
|
183
76
|
while (newValues.length > 0) {
|
|
@@ -211,8 +104,8 @@ const LlamaTextPrototypeFunctions = {
|
|
|
211
104
|
else
|
|
212
105
|
void (firstValue);
|
|
213
106
|
}
|
|
214
|
-
return
|
|
215
|
-
}
|
|
107
|
+
return new LlamaTextConstructor(newValues);
|
|
108
|
+
}
|
|
216
109
|
trimEnd() {
|
|
217
110
|
const newValues = this.values.slice();
|
|
218
111
|
while (newValues.length > 0) {
|
|
@@ -246,14 +139,39 @@ const LlamaTextPrototypeFunctions = {
|
|
|
246
139
|
else
|
|
247
140
|
void (lastValue);
|
|
248
141
|
}
|
|
249
|
-
return
|
|
250
|
-
}
|
|
142
|
+
return new LlamaTextConstructor(newValues);
|
|
143
|
+
}
|
|
251
144
|
includes(value) {
|
|
252
|
-
for (let i = 0; i
|
|
253
|
-
|
|
145
|
+
for (let i = 0; i <= this.values.length - value.values.length; i++) {
|
|
146
|
+
const thisValue = this.values[i];
|
|
147
|
+
let startMatch = compareLlamaTextValues(thisValue, value.values[0]);
|
|
148
|
+
if (!startMatch && thisValue instanceof SpecialTokensText && value.values[0] instanceof SpecialTokensText) {
|
|
149
|
+
startMatch = value.values.length > 1
|
|
150
|
+
? thisValue.value.endsWith(value.values[0].value)
|
|
151
|
+
: thisValue.value.includes(value.values[0].value);
|
|
152
|
+
}
|
|
153
|
+
if (!startMatch && typeof thisValue === "string" && typeof value.values[0] === "string") {
|
|
154
|
+
startMatch = value.values.length > 1
|
|
155
|
+
? thisValue.endsWith(value.values[0])
|
|
156
|
+
: thisValue.includes(value.values[0]);
|
|
157
|
+
}
|
|
158
|
+
if (startMatch) {
|
|
254
159
|
let j = 1;
|
|
255
160
|
for (; j < value.values.length; j++) {
|
|
256
|
-
|
|
161
|
+
const thisValue = this.values[i + j];
|
|
162
|
+
const valueValue = value.values[j];
|
|
163
|
+
let endMatch = compareLlamaTextValues(thisValue, valueValue);
|
|
164
|
+
if (!endMatch && thisValue instanceof SpecialTokensText && valueValue instanceof SpecialTokensText) {
|
|
165
|
+
endMatch = value.values.length - 1 === j
|
|
166
|
+
? thisValue.value.startsWith(valueValue.value)
|
|
167
|
+
: thisValue.value === valueValue.value;
|
|
168
|
+
}
|
|
169
|
+
if (!endMatch && typeof thisValue === "string" && typeof valueValue === "string") {
|
|
170
|
+
endMatch = value.values.length - 1 === j
|
|
171
|
+
? thisValue.startsWith(valueValue)
|
|
172
|
+
: thisValue === valueValue;
|
|
173
|
+
}
|
|
174
|
+
if (!endMatch)
|
|
257
175
|
break;
|
|
258
176
|
}
|
|
259
177
|
if (j === value.values.length)
|
|
@@ -262,100 +180,206 @@ const LlamaTextPrototypeFunctions = {
|
|
|
262
180
|
}
|
|
263
181
|
return false;
|
|
264
182
|
}
|
|
183
|
+
/** @internal */
|
|
184
|
+
[Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
|
|
185
|
+
return "LlamaText(" + inspect(this.values, {
|
|
186
|
+
...(inspectOptions ?? {}),
|
|
187
|
+
depth: depth == null
|
|
188
|
+
? undefined
|
|
189
|
+
: Math.max(0, depth - 1)
|
|
190
|
+
}) + ")";
|
|
191
|
+
}
|
|
192
|
+
static fromJSON(json) {
|
|
193
|
+
// assigned to `LlamaTextConstructor` manually to expose this static method
|
|
194
|
+
return new LlamaTextConstructor(json.map((value) => {
|
|
195
|
+
if (typeof value === "string")
|
|
196
|
+
return value;
|
|
197
|
+
else if (SpecialToken.isSpecialTokenJSON(value))
|
|
198
|
+
return SpecialToken.fromJSON(value);
|
|
199
|
+
else if (SpecialTokensText.isSpecialTokensTextJSON(value))
|
|
200
|
+
return SpecialTokensText.fromJSON(value);
|
|
201
|
+
else {
|
|
202
|
+
void (value);
|
|
203
|
+
throw new Error(`Unknown value type: ${value}`);
|
|
204
|
+
}
|
|
205
|
+
}));
|
|
206
|
+
}
|
|
207
|
+
static compare(a, b) {
|
|
208
|
+
// assigned to `LlamaTextConstructor` manually to expose this static method
|
|
209
|
+
if (!isLlamaText(a) || !isLlamaText(b))
|
|
210
|
+
return false;
|
|
211
|
+
if (a.values.length !== b.values.length)
|
|
212
|
+
return false;
|
|
213
|
+
for (let i = 0; i < a.values.length; i++) {
|
|
214
|
+
if (!compareLlamaTextValues(a.values[i], b.values[i]))
|
|
215
|
+
return false;
|
|
216
|
+
}
|
|
217
|
+
return true;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
Object.defineProperty(LlamaText.prototype, "_type", {
|
|
221
|
+
enumerable: false,
|
|
222
|
+
configurable: false,
|
|
223
|
+
value: "LlamaText"
|
|
224
|
+
});
|
|
225
|
+
const LlamaTextConstructor = function LlamaText(...values) {
|
|
226
|
+
// this makes the constructor callable also as a normal function
|
|
227
|
+
if (new.target == null)
|
|
228
|
+
return new LlamaTextConstructor(...values);
|
|
229
|
+
this.values = createHistoryFromStringsAndValues(values);
|
|
230
|
+
return this;
|
|
265
231
|
};
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
configurable: false,
|
|
299
|
-
enumerable: false
|
|
300
|
-
},
|
|
301
|
-
["tokenize"]: {
|
|
302
|
-
value: LlamaTextPrototypeFunctions.tokenize,
|
|
303
|
-
writable: false,
|
|
304
|
-
configurable: false,
|
|
305
|
-
enumerable: false
|
|
306
|
-
},
|
|
307
|
-
["toJSON"]: {
|
|
308
|
-
value: LlamaTextPrototypeFunctions.toJSON,
|
|
309
|
-
writable: false,
|
|
310
|
-
configurable: false,
|
|
311
|
-
enumerable: false
|
|
312
|
-
},
|
|
313
|
-
["compare"]: {
|
|
314
|
-
value: LlamaTextPrototypeFunctions.compare,
|
|
315
|
-
writable: false,
|
|
316
|
-
configurable: false,
|
|
317
|
-
enumerable: false
|
|
318
|
-
},
|
|
319
|
-
["trimStart"]: {
|
|
320
|
-
value: LlamaTextPrototypeFunctions.trimStart,
|
|
321
|
-
writable: false,
|
|
322
|
-
configurable: false,
|
|
323
|
-
enumerable: false
|
|
324
|
-
},
|
|
325
|
-
["trimEnd"]: {
|
|
326
|
-
value: LlamaTextPrototypeFunctions.trimEnd,
|
|
327
|
-
writable: false,
|
|
328
|
-
configurable: false,
|
|
329
|
-
enumerable: false
|
|
330
|
-
},
|
|
331
|
-
["includes"]: {
|
|
332
|
-
value: LlamaTextPrototypeFunctions.includes,
|
|
333
|
-
writable: false,
|
|
334
|
-
configurable: false,
|
|
335
|
-
enumerable: false
|
|
232
|
+
LlamaTextConstructor.prototype = Object.create(LlamaText.prototype);
|
|
233
|
+
LlamaTextConstructor.prototype.constructor = LlamaTextConstructor;
|
|
234
|
+
LlamaTextConstructor.fromJSON = LlamaText.fromJSON;
|
|
235
|
+
LlamaTextConstructor.compare = LlamaText.compare;
|
|
236
|
+
const _LlamaText = LlamaTextConstructor;
|
|
237
|
+
export { _LlamaText as LlamaText, LlamaText as _LlamaText };
|
|
238
|
+
export class SpecialTokensText {
|
|
239
|
+
value;
|
|
240
|
+
constructor(value) {
|
|
241
|
+
this.value = value;
|
|
242
|
+
}
|
|
243
|
+
toString() {
|
|
244
|
+
return this.value;
|
|
245
|
+
}
|
|
246
|
+
tokenize(tokenizer, trimLeadingSpace = false) {
|
|
247
|
+
return tokenizer(this.value, true, trimLeadingSpace ? "trimLeadingSpace" : undefined);
|
|
248
|
+
}
|
|
249
|
+
tokenizeSpecialTokensOnly(tokenizer) {
|
|
250
|
+
const tokens = this.tokenize(tokenizer, true);
|
|
251
|
+
const res = [];
|
|
252
|
+
let currentText = "";
|
|
253
|
+
for (const token of tokens) {
|
|
254
|
+
if (tokenizer.isSpecialToken(token)) {
|
|
255
|
+
if (currentText !== "") {
|
|
256
|
+
res.push(currentText);
|
|
257
|
+
currentText = "";
|
|
258
|
+
}
|
|
259
|
+
res.push(token);
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
currentText += tokenizer.detokenize([token], false);
|
|
263
|
+
}
|
|
336
264
|
}
|
|
337
|
-
|
|
338
|
-
|
|
265
|
+
if (currentText !== "")
|
|
266
|
+
res.push(currentText);
|
|
267
|
+
return res;
|
|
268
|
+
}
|
|
269
|
+
toJSON() {
|
|
270
|
+
return {
|
|
271
|
+
type: "specialTokensText",
|
|
272
|
+
value: this.value
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
/** @internal */
|
|
276
|
+
[Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
|
|
277
|
+
return "new SpecialTokensText(" + inspect(this.value, {
|
|
278
|
+
...(inspectOptions ?? {}),
|
|
279
|
+
depth: depth == null
|
|
280
|
+
? undefined
|
|
281
|
+
: Math.max(0, depth - 1)
|
|
282
|
+
}) + ")";
|
|
283
|
+
}
|
|
284
|
+
static fromJSON(json) {
|
|
285
|
+
if (SpecialTokensText.isSpecialTokensTextJSON(json))
|
|
286
|
+
return new SpecialTokensText(json.value);
|
|
287
|
+
throw new Error(`Invalid JSON for SpecialTokensText: ${JSON.stringify(json)}`);
|
|
288
|
+
}
|
|
289
|
+
static isSpecialTokensTextJSON(value) {
|
|
290
|
+
return value != null && typeof value === "object" && value.type === "specialTokensText";
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Wraps the value with a `SpecialTokensText` only if `shouldWrap` is true
|
|
294
|
+
*/
|
|
295
|
+
static wrapIf(shouldWrap, value) {
|
|
296
|
+
if (shouldWrap)
|
|
297
|
+
return new SpecialTokensText(value);
|
|
298
|
+
else
|
|
299
|
+
return value;
|
|
300
|
+
}
|
|
339
301
|
}
|
|
340
|
-
|
|
302
|
+
export class SpecialToken {
|
|
303
|
+
value;
|
|
304
|
+
constructor(value) {
|
|
305
|
+
this.value = value;
|
|
306
|
+
}
|
|
307
|
+
toString() {
|
|
308
|
+
return this.value;
|
|
309
|
+
}
|
|
310
|
+
tokenize(tokenizer) {
|
|
311
|
+
return tokenizer(this.value, "builtin");
|
|
312
|
+
}
|
|
313
|
+
toJSON() {
|
|
314
|
+
return {
|
|
315
|
+
type: "specialToken",
|
|
316
|
+
value: this.value
|
|
317
|
+
};
|
|
318
|
+
}
|
|
319
|
+
/** @internal */
|
|
320
|
+
[Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
|
|
321
|
+
return "new SpecialToken(" + inspect(this.value, {
|
|
322
|
+
...(inspectOptions ?? {}),
|
|
323
|
+
depth: depth == null
|
|
324
|
+
? undefined
|
|
325
|
+
: Math.max(0, depth - 1)
|
|
326
|
+
}) + ")";
|
|
327
|
+
}
|
|
328
|
+
static fromJSON(json) {
|
|
329
|
+
if (SpecialToken.isSpecialTokenJSON(json))
|
|
330
|
+
return new SpecialToken(json.value);
|
|
331
|
+
throw new Error(`Invalid JSON for SpecialToken: ${JSON.stringify(json)}`);
|
|
332
|
+
}
|
|
333
|
+
static isSpecialTokenJSON(value) {
|
|
334
|
+
return value != null && typeof value === "object" && value.type === "specialToken";
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
export function isLlamaText(value) {
|
|
338
|
+
if (value instanceof LlamaTextConstructor || value instanceof LlamaText)
|
|
339
|
+
return true;
|
|
340
|
+
// detect a `LlamaText` created from a different module import
|
|
341
|
+
return value != null && Object.getPrototypeOf(value)?._type === "LlamaText";
|
|
342
|
+
}
|
|
343
|
+
export function tokenizeText(text, tokenizer) {
|
|
344
|
+
if (typeof text === "string")
|
|
345
|
+
return tokenizer(text, false);
|
|
346
|
+
else
|
|
347
|
+
return text.tokenize(tokenizer);
|
|
348
|
+
}
|
|
349
|
+
function createHistoryFromStringsAndValues(values) {
|
|
341
350
|
function addItemToRes(res, item) {
|
|
342
351
|
if (item === undefined || item === "" || (item instanceof SpecialTokensText && item.value === ""))
|
|
343
352
|
return res;
|
|
344
|
-
else if (typeof item === "string" || item instanceof SpecialTokensText || item instanceof SpecialToken)
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
353
|
+
else if (typeof item === "string" || item instanceof SpecialTokensText || item instanceof SpecialToken) {
|
|
354
|
+
res.push(item);
|
|
355
|
+
return res;
|
|
356
|
+
}
|
|
357
|
+
else if (isLlamaText(item)) {
|
|
358
|
+
for (const value of item.values)
|
|
359
|
+
res.push(value);
|
|
360
|
+
return res;
|
|
361
|
+
}
|
|
348
362
|
else if (item instanceof Array) {
|
|
349
|
-
|
|
350
|
-
if (isLlamaText(value))
|
|
351
|
-
|
|
363
|
+
for (const value of item) {
|
|
364
|
+
if (isLlamaText(value)) {
|
|
365
|
+
for (const innerValue of value.values)
|
|
366
|
+
res.push(innerValue);
|
|
367
|
+
}
|
|
352
368
|
else if (value === "" || (value instanceof SpecialTokensText && value.value === ""))
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
369
|
+
continue;
|
|
370
|
+
else if (value instanceof Array)
|
|
371
|
+
addItemToRes(res, value);
|
|
372
|
+
else if (typeof value === "number" || typeof value === "boolean")
|
|
373
|
+
res.push(String(value));
|
|
374
|
+
else
|
|
375
|
+
res.push(value);
|
|
376
|
+
}
|
|
377
|
+
return res;
|
|
378
|
+
}
|
|
379
|
+
else if (typeof item === "number" || typeof item === "boolean") {
|
|
380
|
+
res.push(String(item));
|
|
381
|
+
return res;
|
|
356
382
|
}
|
|
357
|
-
else if (typeof item === "number" || typeof item === "boolean")
|
|
358
|
-
return res.concat([String(item)]);
|
|
359
383
|
return item;
|
|
360
384
|
}
|
|
361
385
|
function squashAdjacentItems(res, item) {
|
|
@@ -379,30 +403,16 @@ function createHistoryFromStringsAndValues(strings, values) {
|
|
|
379
403
|
res.push(item);
|
|
380
404
|
return res;
|
|
381
405
|
}
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
.reduce(addItemToRes, [])
|
|
386
|
-
.reduce(squashAdjacentItems, []);
|
|
387
|
-
}
|
|
388
|
-
let res = [];
|
|
389
|
-
for (let i = 0; i < strings.length; i++) {
|
|
390
|
-
res.push(strings[i]);
|
|
391
|
-
if (i < values.length)
|
|
392
|
-
res = addItemToRes(res, values[i]);
|
|
393
|
-
}
|
|
394
|
-
return res.reduce(squashAdjacentItems, []);
|
|
395
|
-
}
|
|
396
|
-
function isTemplateStringsArray(value) {
|
|
397
|
-
return value instanceof Array && value.raw instanceof Array &&
|
|
398
|
-
value.length === value.raw.length;
|
|
406
|
+
return values
|
|
407
|
+
.reduce(addItemToRes, [])
|
|
408
|
+
.reduce(squashAdjacentItems, []);
|
|
399
409
|
}
|
|
400
410
|
function compareLlamaTextValues(a, b) {
|
|
401
411
|
if (a instanceof SpecialTokensText && b instanceof SpecialTokensText)
|
|
402
412
|
return a.value === b.value;
|
|
403
413
|
else if (a instanceof SpecialToken && b instanceof SpecialToken)
|
|
404
414
|
return a.value === b.value;
|
|
405
|
-
else if (a !==
|
|
415
|
+
else if (a !== b)
|
|
406
416
|
return false;
|
|
407
417
|
return true;
|
|
408
418
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LlamaText.js","sourceRoot":"","sources":["../../src/utils/LlamaText.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LlamaText.js","sourceRoot":"","sources":["../../src/utils/LlamaText.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,6 @@ export declare class StopGenerationDetector<T extends string = string> {
|
|
|
23
23
|
}[];
|
|
24
24
|
clearTriggeredStops(): void;
|
|
25
25
|
clearInProgressStops(): void;
|
|
26
|
-
static resolveStopTriggers(stopTriggers: readonly (StopGenerationTrigger | LlamaText)[], tokenizer: Tokenizer): StopGenerationTrigger[];
|
|
26
|
+
static resolveStopTriggers(stopTriggers: readonly (string | StopGenerationTrigger | LlamaText)[], tokenizer: Tokenizer): StopGenerationTrigger[];
|
|
27
27
|
static resolveLlamaTextTrigger(llamaText: LlamaText, tokenizer: Tokenizer): StopGenerationTrigger;
|
|
28
28
|
}
|
|
@@ -167,6 +167,8 @@ export class StopGenerationDetector {
|
|
|
167
167
|
.map((stopTrigger) => {
|
|
168
168
|
if (isLlamaText(stopTrigger))
|
|
169
169
|
return StopGenerationDetector.resolveLlamaTextTrigger(stopTrigger, tokenizer);
|
|
170
|
+
else if (typeof stopTrigger === "string")
|
|
171
|
+
return simplifyStopTrigger([stopTrigger]);
|
|
170
172
|
else
|
|
171
173
|
return simplifyStopTrigger(stopTrigger);
|
|
172
174
|
})
|