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.
Files changed (126) hide show
  1. package/README.md +8 -5
  2. package/dist/ChatWrapper.js +3 -3
  3. package/dist/ChatWrapper.js.map +1 -1
  4. package/dist/apiDocsOverrides.d.ts +1 -0
  5. package/dist/apiDocsOverrides.js +5 -0
  6. package/dist/apiDocsOverrides.js.map +1 -0
  7. package/dist/bindings/AddonTypes.d.ts +1 -0
  8. package/dist/bindings/getLlama.d.ts +5 -1
  9. package/dist/bindings/getLlama.js +11 -4
  10. package/dist/bindings/getLlama.js.map +1 -1
  11. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.d.ts +3 -0
  12. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js +27 -0
  13. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js.map +1 -0
  14. package/dist/chatWrappers/generic/TemplateChatWrapper.d.ts +1 -2
  15. package/dist/chatWrappers/generic/TemplateChatWrapper.js +1 -2
  16. package/dist/chatWrappers/generic/TemplateChatWrapper.js.map +1 -1
  17. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js +2 -2
  18. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js.map +1 -1
  19. package/dist/cli/cli.js +5 -3
  20. package/dist/cli/cli.js.map +1 -1
  21. package/dist/cli/commands/DebugCommand.js +3 -5
  22. package/dist/cli/commands/DebugCommand.js.map +1 -1
  23. package/dist/cli/commands/DownloadCommand.d.ts +1 -1
  24. package/dist/cli/commands/DownloadCommand.js +2 -1
  25. package/dist/cli/commands/DownloadCommand.js.map +1 -1
  26. package/dist/cli/commands/PullCommand.d.ts +12 -0
  27. package/dist/cli/commands/PullCommand.js +109 -0
  28. package/dist/cli/commands/PullCommand.js.map +1 -0
  29. package/dist/cli/commands/inspect/commands/InspectGgufCommand.d.ts +1 -0
  30. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +23 -11
  31. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
  32. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +2 -1
  33. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
  34. package/dist/cli/recommendedModels.js +12 -20
  35. package/dist/cli/recommendedModels.js.map +1 -1
  36. package/dist/cli/utils/resolveCommandGgufPath.d.ts +3 -1
  37. package/dist/cli/utils/resolveCommandGgufPath.js +41 -97
  38. package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
  39. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +2 -2
  40. package/dist/cli/utils/resolveModelRecommendationFileOptions.js +1 -4
  41. package/dist/cli/utils/resolveModelRecommendationFileOptions.js.map +1 -1
  42. package/dist/evaluator/LlamaChat/LlamaChat.d.ts +18 -2
  43. package/dist/evaluator/LlamaChat/LlamaChat.js +255 -205
  44. package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
  45. package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +22 -3
  46. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +18 -7
  47. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
  48. package/dist/evaluator/LlamaCompletion.js +1 -1
  49. package/dist/evaluator/LlamaCompletion.js.map +1 -1
  50. package/dist/evaluator/LlamaContext/LlamaContext.d.ts +2 -7
  51. package/dist/evaluator/LlamaContext/LlamaContext.js +12 -12
  52. package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
  53. package/dist/evaluator/LlamaEmbeddingContext.d.ts +2 -10
  54. package/dist/evaluator/LlamaEmbeddingContext.js +9 -23
  55. package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
  56. package/dist/evaluator/LlamaGrammar.d.ts +1 -1
  57. package/dist/evaluator/LlamaModel.d.ts +9 -0
  58. package/dist/evaluator/LlamaModel.js +2 -1
  59. package/dist/evaluator/LlamaModel.js.map +1 -1
  60. package/dist/gguf/insights/GgufInsights.js +12 -12
  61. package/dist/gguf/insights/GgufInsights.js.map +1 -1
  62. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js +27 -3
  63. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js.map +1 -1
  64. package/dist/gguf/parser/parseGguf.js +5 -0
  65. package/dist/gguf/parser/parseGguf.js.map +1 -1
  66. package/dist/gguf/readGgufFileInfo.d.ts +5 -2
  67. package/dist/gguf/readGgufFileInfo.js +38 -10
  68. package/dist/gguf/readGgufFileInfo.js.map +1 -1
  69. package/dist/gguf/types/GgufFileInfoTypes.d.ts +32 -0
  70. package/dist/gguf/types/GgufFileInfoTypes.js.map +1 -1
  71. package/dist/gguf/utils/getGgufMetadataArchitectureData.js +1 -1
  72. package/dist/gguf/utils/getGgufMetadataArchitectureData.js.map +1 -1
  73. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.d.ts +2 -0
  74. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +39 -0
  75. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -0
  76. package/dist/gguf/utils/resolveSplitGgufParts.d.ts +7 -0
  77. package/dist/gguf/utils/resolveSplitGgufParts.js +55 -0
  78. package/dist/gguf/utils/resolveSplitGgufParts.js.map +1 -0
  79. package/dist/index.d.ts +4 -2
  80. package/dist/index.js +4 -2
  81. package/dist/index.js.map +1 -1
  82. package/dist/utils/LlamaText.d.ts +29 -20
  83. package/dist/utils/LlamaText.js +253 -243
  84. package/dist/utils/LlamaText.js.map +1 -1
  85. package/dist/utils/StopGenerationDetector.d.ts +1 -1
  86. package/dist/utils/StopGenerationDetector.js +2 -0
  87. package/dist/utils/StopGenerationDetector.js.map +1 -1
  88. package/dist/utils/createModelDownloader.d.ts +99 -0
  89. package/dist/utils/createModelDownloader.js +226 -0
  90. package/dist/utils/createModelDownloader.js.map +1 -0
  91. package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js +18 -8
  92. package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js.map +1 -1
  93. package/dist/utils/parseTextTemplate.d.ts +2 -2
  94. package/dist/utils/parseTextTemplate.js +2 -2
  95. package/dist/utils/runtime.d.ts +4 -0
  96. package/dist/utils/runtime.js +8 -0
  97. package/dist/utils/runtime.js.map +1 -0
  98. package/llama/addon.cpp +18 -7
  99. package/llama/binariesGithubRelease.json +1 -1
  100. package/llama/gitRelease.bundle +0 -0
  101. package/llama/grammars/README.md +1 -1
  102. package/llama/llama.cpp.info.json +1 -1
  103. package/llamaBins/linux-arm64/_nlcBuildMetadata.json +1 -1
  104. package/llamaBins/linux-arm64/llama-addon.node +0 -0
  105. package/llamaBins/linux-armv7l/_nlcBuildMetadata.json +1 -1
  106. package/llamaBins/linux-armv7l/llama-addon.node +0 -0
  107. package/llamaBins/linux-x64/_nlcBuildMetadata.json +1 -1
  108. package/llamaBins/linux-x64/llama-addon.node +0 -0
  109. package/llamaBins/linux-x64-cuda/_nlcBuildMetadata.json +1 -1
  110. package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
  111. package/llamaBins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -1
  112. package/llamaBins/linux-x64-vulkan/llama-addon.node +0 -0
  113. package/llamaBins/mac-arm64-metal/_nlcBuildMetadata.json +1 -1
  114. package/llamaBins/mac-arm64-metal/default.metallib +0 -0
  115. package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
  116. package/llamaBins/mac-x64/_nlcBuildMetadata.json +1 -1
  117. package/llamaBins/mac-x64/llama-addon.node +0 -0
  118. package/llamaBins/win-arm64/_nlcBuildMetadata.json +1 -1
  119. package/llamaBins/win-arm64/llama-addon.node +0 -0
  120. package/llamaBins/win-x64/_nlcBuildMetadata.json +1 -1
  121. package/llamaBins/win-x64/llama-addon.node +0 -0
  122. package/llamaBins/win-x64-cuda/_nlcBuildMetadata.json +1 -1
  123. package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
  124. package/llamaBins/win-x64-vulkan/_nlcBuildMetadata.json +1 -1
  125. package/llamaBins/win-x64-vulkan/llama-addon.node +0 -0
  126. package/package.json +8 -5
@@ -1,125 +1,18 @@
1
- export const LlamaText = function LlamaText(strings, ...values) {
2
- return createLlamaText(createHistoryFromStringsAndValues(strings, values));
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
- * Wraps the value with a `SpecialTokensText` only if `shouldWrap` is true
4
+ * Can also be called without `new`
76
5
  */
77
- static wrapIf(shouldWrap, value) {
78
- if (shouldWrap)
79
- return new SpecialTokensText(value);
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
- static fromJSON(json) {
102
- if (SpecialToken.isSpecialTokenJSON(json))
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
- static isSpecialTokenJSON(value) {
107
- return value != null && typeof value === "object" && value.type === "specialToken";
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 createLlamaText(newValues);
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 LlamaText.compare(this, other);
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 createLlamaText(newValues);
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 createLlamaText(newValues);
250
- },
142
+ return new LlamaTextConstructor(newValues);
143
+ }
251
144
  includes(value) {
252
- for (let i = 0; i < this.values.length; i++) {
253
- if (compareLlamaTextValues(this.values[i], value.values[0])) {
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
- if (!compareLlamaTextValues(this.values[i + j], value.values[j]))
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
- function createLlamaText(history) {
267
- const llamaText = function LlamaText(strings, ...values) {
268
- return createLlamaText(llamaText.values.concat(createHistoryFromStringsAndValues(strings, values)));
269
- };
270
- Object.defineProperties(llamaText, {
271
- ["type"]: {
272
- value: "LlamaText",
273
- writable: false,
274
- configurable: false,
275
- enumerable: true
276
- },
277
- ["values"]: {
278
- value: Object.freeze(history.slice()),
279
- writable: false,
280
- configurable: false,
281
- enumerable: true
282
- },
283
- ["mapValues"]: {
284
- value: LlamaTextPrototypeFunctions.mapValues,
285
- writable: false,
286
- configurable: false,
287
- enumerable: false
288
- },
289
- ["joinValues"]: {
290
- value: LlamaTextPrototypeFunctions.joinValues,
291
- writable: false,
292
- configurable: false,
293
- enumerable: false
294
- },
295
- ["toString"]: {
296
- value: LlamaTextPrototypeFunctions.toString,
297
- writable: false,
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
- return llamaText;
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
- function createHistoryFromStringsAndValues(strings, values) {
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
- return res.concat([item]);
346
- else if (isLlamaText(item))
347
- return res.concat(item.values);
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
- return res.concat(item.reduce((res, value) => {
350
- if (isLlamaText(value))
351
- return res.concat(value.values);
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
- return res;
354
- return res.concat([value]);
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
- if (!isTemplateStringsArray(strings)) {
383
- return [strings]
384
- .concat(values)
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 !== 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
  })