node-llama-cpp 3.2.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/dist/bindings/AddonTypes.d.ts +7 -3
  2. package/dist/bindings/Llama.d.ts +1 -1
  3. package/dist/bindings/Llama.js +17 -2
  4. package/dist/bindings/Llama.js.map +1 -1
  5. package/dist/bindings/getLlama.d.ts +4 -1
  6. package/dist/bindings/getLlama.js +42 -2
  7. package/dist/bindings/getLlama.js.map +1 -1
  8. package/dist/bindings/types.d.ts +3 -1
  9. package/dist/bindings/types.js +2 -0
  10. package/dist/bindings/types.js.map +1 -1
  11. package/dist/bindings/utils/compileLLamaCpp.d.ts +1 -1
  12. package/dist/bindings/utils/compileLLamaCpp.js +41 -2
  13. package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
  14. package/dist/bindings/utils/testBindingBinary.d.ts +2 -1
  15. package/dist/bindings/utils/testBindingBinary.js +122 -37
  16. package/dist/bindings/utils/testBindingBinary.js.map +1 -1
  17. package/dist/chatWrappers/Llama3_1ChatWrapper.js +3 -2
  18. package/dist/chatWrappers/Llama3_1ChatWrapper.js.map +1 -1
  19. package/dist/chatWrappers/Llama3_2LightweightChatWrapper.d.ts +35 -0
  20. package/dist/chatWrappers/Llama3_2LightweightChatWrapper.js +253 -0
  21. package/dist/chatWrappers/Llama3_2LightweightChatWrapper.js.map +1 -0
  22. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.d.ts +13 -0
  23. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.js +30 -0
  24. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.js.map +1 -1
  25. package/dist/chatWrappers/utils/getModelLinageNames.d.ts +2 -0
  26. package/dist/chatWrappers/utils/getModelLinageNames.js +18 -0
  27. package/dist/chatWrappers/utils/getModelLinageNames.js.map +1 -0
  28. package/dist/chatWrappers/utils/isLlama3_2LightweightModel.d.ts +2 -0
  29. package/dist/chatWrappers/utils/isLlama3_2LightweightModel.js +9 -0
  30. package/dist/chatWrappers/utils/isLlama3_2LightweightModel.js.map +1 -0
  31. package/dist/chatWrappers/utils/resolveChatWrapper.d.ts +4 -2
  32. package/dist/chatWrappers/utils/resolveChatWrapper.js +9 -31
  33. package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
  34. package/dist/cli/commands/ChatCommand.js +1 -1
  35. package/dist/cli/commands/ChatCommand.js.map +1 -1
  36. package/dist/cli/commands/InitCommand.d.ts +2 -1
  37. package/dist/cli/commands/InitCommand.js +32 -13
  38. package/dist/cli/commands/InitCommand.js.map +1 -1
  39. package/dist/cli/recommendedModels.js +11 -0
  40. package/dist/cli/recommendedModels.js.map +1 -1
  41. package/dist/evaluator/LlamaChat/LlamaChat.js +25 -12
  42. package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
  43. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +140 -132
  44. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
  45. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.d.ts +1 -1
  46. package/dist/evaluator/LlamaCompletion.js +9 -10
  47. package/dist/evaluator/LlamaCompletion.js.map +1 -1
  48. package/dist/evaluator/LlamaEmbeddingContext.d.ts +2 -0
  49. package/dist/evaluator/LlamaEmbeddingContext.js +13 -1
  50. package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
  51. package/dist/evaluator/LlamaGrammar.js +7 -0
  52. package/dist/evaluator/LlamaGrammar.js.map +1 -1
  53. package/dist/evaluator/LlamaJsonSchemaGrammar.d.ts +3 -2
  54. package/dist/evaluator/LlamaJsonSchemaGrammar.js +3 -0
  55. package/dist/evaluator/LlamaJsonSchemaGrammar.js.map +1 -1
  56. package/dist/evaluator/LlamaModel/LlamaModel.d.ts +20 -0
  57. package/dist/evaluator/LlamaModel/LlamaModel.js +60 -0
  58. package/dist/evaluator/LlamaModel/LlamaModel.js.map +1 -1
  59. package/dist/gguf/fileReaders/GgufFileReader.d.ts +1 -1
  60. package/dist/gguf/fileReaders/GgufFsFileReader.d.ts +1 -1
  61. package/dist/gguf/fileReaders/GgufNetworkFetchFileReader.d.ts +1 -1
  62. package/dist/gguf/insights/GgufInsights.d.ts +2 -0
  63. package/dist/gguf/insights/GgufInsights.js +15 -0
  64. package/dist/gguf/insights/GgufInsights.js.map +1 -1
  65. package/dist/gguf/types/GgufMetadataTypes.d.ts +19 -2
  66. package/dist/gguf/types/GgufMetadataTypes.js +5 -0
  67. package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
  68. package/dist/index.d.ts +3 -2
  69. package/dist/index.js +2 -1
  70. package/dist/index.js.map +1 -1
  71. package/dist/tsconfig.tsbuildinfo +1 -1
  72. package/dist/types.d.ts +2 -2
  73. package/dist/utils/gbnfJson/GbnfGrammarGenerator.d.ts +5 -0
  74. package/dist/utils/gbnfJson/GbnfGrammarGenerator.js +15 -0
  75. package/dist/utils/gbnfJson/GbnfGrammarGenerator.js.map +1 -1
  76. package/dist/utils/gbnfJson/GbnfTerminal.d.ts +3 -0
  77. package/dist/utils/gbnfJson/GbnfTerminal.js +25 -3
  78. package/dist/utils/gbnfJson/GbnfTerminal.js.map +1 -1
  79. package/dist/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.d.ts +1 -1
  80. package/dist/utils/gbnfJson/getGbnfGrammarForGbnfJsonSchema.js.map +1 -1
  81. package/dist/utils/gbnfJson/terminals/GbnfAnyJson.d.ts +9 -0
  82. package/dist/utils/gbnfJson/terminals/GbnfAnyJson.js +53 -0
  83. package/dist/utils/gbnfJson/terminals/GbnfAnyJson.js.map +1 -0
  84. package/dist/utils/gbnfJson/terminals/GbnfArray.d.ts +11 -2
  85. package/dist/utils/gbnfJson/terminals/GbnfArray.js +64 -15
  86. package/dist/utils/gbnfJson/terminals/GbnfArray.js.map +1 -1
  87. package/dist/utils/gbnfJson/terminals/GbnfBoolean.d.ts +3 -2
  88. package/dist/utils/gbnfJson/terminals/GbnfBoolean.js +13 -7
  89. package/dist/utils/gbnfJson/terminals/GbnfBoolean.js.map +1 -1
  90. package/dist/utils/gbnfJson/terminals/GbnfCommaWhitespace.d.ts +11 -0
  91. package/dist/utils/gbnfJson/terminals/GbnfCommaWhitespace.js +28 -0
  92. package/dist/utils/gbnfJson/terminals/GbnfCommaWhitespace.js.map +1 -0
  93. package/dist/utils/gbnfJson/terminals/GbnfFormatString.d.ts +11 -0
  94. package/dist/utils/gbnfJson/terminals/GbnfFormatString.js +90 -0
  95. package/dist/utils/gbnfJson/terminals/GbnfFormatString.js.map +1 -0
  96. package/dist/utils/gbnfJson/terminals/GbnfGrammar.d.ts +4 -1
  97. package/dist/utils/gbnfJson/terminals/GbnfGrammar.js +8 -1
  98. package/dist/utils/gbnfJson/terminals/GbnfGrammar.js.map +1 -1
  99. package/dist/utils/gbnfJson/terminals/GbnfInsideStringChar.d.ts +5 -0
  100. package/dist/utils/gbnfJson/terminals/GbnfInsideStringChar.js +24 -0
  101. package/dist/utils/gbnfJson/terminals/GbnfInsideStringChar.js.map +1 -0
  102. package/dist/utils/gbnfJson/terminals/GbnfNumber.js +4 -3
  103. package/dist/utils/gbnfJson/terminals/GbnfNumber.js.map +1 -1
  104. package/dist/utils/gbnfJson/terminals/GbnfNumberValue.d.ts +3 -1
  105. package/dist/utils/gbnfJson/terminals/GbnfNumberValue.js +8 -2
  106. package/dist/utils/gbnfJson/terminals/GbnfNumberValue.js.map +1 -1
  107. package/dist/utils/gbnfJson/terminals/GbnfObjectMap.d.ts +14 -5
  108. package/dist/utils/gbnfJson/terminals/GbnfObjectMap.js +67 -9
  109. package/dist/utils/gbnfJson/terminals/GbnfObjectMap.js.map +1 -1
  110. package/dist/utils/gbnfJson/terminals/GbnfOr.d.ts +2 -1
  111. package/dist/utils/gbnfJson/terminals/GbnfOr.js +6 -2
  112. package/dist/utils/gbnfJson/terminals/GbnfOr.js.map +1 -1
  113. package/dist/utils/gbnfJson/terminals/GbnfRepetition.d.ts +7 -1
  114. package/dist/utils/gbnfJson/terminals/GbnfRepetition.js +69 -20
  115. package/dist/utils/gbnfJson/terminals/GbnfRepetition.js.map +1 -1
  116. package/dist/utils/gbnfJson/terminals/GbnfString.d.ts +8 -1
  117. package/dist/utils/gbnfJson/terminals/GbnfString.js +31 -21
  118. package/dist/utils/gbnfJson/terminals/GbnfString.js.map +1 -1
  119. package/dist/utils/gbnfJson/terminals/GbnfStringValue.d.ts +2 -0
  120. package/dist/utils/gbnfJson/terminals/GbnfStringValue.js +7 -4
  121. package/dist/utils/gbnfJson/terminals/GbnfStringValue.js.map +1 -1
  122. package/dist/utils/gbnfJson/terminals/GbnfWhitespace.d.ts +2 -1
  123. package/dist/utils/gbnfJson/terminals/GbnfWhitespace.js +24 -5
  124. package/dist/utils/gbnfJson/terminals/GbnfWhitespace.js.map +1 -1
  125. package/dist/utils/gbnfJson/terminals/gbnfConsts.d.ts +16 -1
  126. package/dist/utils/gbnfJson/terminals/gbnfConsts.js +47 -1
  127. package/dist/utils/gbnfJson/terminals/gbnfConsts.js.map +1 -1
  128. package/dist/utils/gbnfJson/types.d.ts +164 -17
  129. package/dist/utils/gbnfJson/types.js +6 -0
  130. package/dist/utils/gbnfJson/types.js.map +1 -1
  131. package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.js +61 -9
  132. package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.js.map +1 -1
  133. package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js +99 -8
  134. package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js.map +1 -1
  135. package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js +125 -16
  136. package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js.map +1 -1
  137. package/dist/utils/includesText.d.ts +1 -0
  138. package/dist/utils/includesText.js +12 -0
  139. package/dist/utils/includesText.js.map +1 -0
  140. package/dist/utils/tokenizeInput.d.ts +1 -1
  141. package/dist/utils/tokenizeInput.js +3 -1
  142. package/dist/utils/tokenizeInput.js.map +1 -1
  143. package/dist/utils/tokenizerUtils.d.ts +12 -0
  144. package/dist/utils/tokenizerUtils.js +28 -0
  145. package/dist/utils/tokenizerUtils.js.map +1 -0
  146. package/dist/utils/wrapAbortSignal.d.ts +1 -1
  147. package/dist/utils/wrapAbortSignal.js +9 -4
  148. package/dist/utils/wrapAbortSignal.js.map +1 -1
  149. package/llama/CMakeLists.txt +10 -90
  150. package/llama/addon/AddonContext.cpp +2 -1
  151. package/llama/addon/AddonGrammar.cpp +49 -1
  152. package/llama/addon/AddonGrammar.h +3 -0
  153. package/llama/addon/AddonModel.cpp +26 -4
  154. package/llama/addon/AddonModel.h +3 -0
  155. package/llama/addon/addon.cpp +17 -0
  156. package/llama/addon/globals/getGpuInfo.cpp +54 -52
  157. package/llama/binariesGithubRelease.json +1 -1
  158. package/llama/gitRelease.bundle +0 -0
  159. package/llama/gpuInfo/vulkan-gpu-info.cpp +0 -8
  160. package/llama/gpuInfo/vulkan-gpu-info.h +0 -1
  161. package/llama/grammars/README.md +2 -2
  162. package/llama/grammars/english.gbnf +6 -0
  163. package/llama/llama.cpp.info.json +1 -1
  164. package/package.json +49 -45
  165. package/templates/README.md +6 -0
  166. package/templates/packed/electron-typescript-react.json +1 -1
  167. package/templates/packed/node-typescript.json +1 -1
  168. package/llama/gpuInfo/cuda-gpu-info.cu +0 -120
  169. package/llama/gpuInfo/cuda-gpu-info.h +0 -10
  170. package/llama/gpuInfo/metal-gpu-info.h +0 -8
  171. package/llama/gpuInfo/metal-gpu-info.mm +0 -37
@@ -99,7 +99,7 @@ export class LlamaChatSession {
99
99
  if (this._chat == null)
100
100
  throw new DisposedError();
101
101
  const supportsParallelFunctionCalling = this._chat.chatWrapper.settings.functions.parallelism != null;
102
- const abortController = wrapAbortSignal(signal);
102
+ const [abortController, disposeAbortController] = wrapAbortSignal(signal);
103
103
  let lastEvaluation = this._lastEvaluation;
104
104
  let newChatHistory = appendUserMessageToChatHistory(this._chatHistory, prompt);
105
105
  let newContextWindowChatHistory = lastEvaluation?.contextWindow == null
@@ -125,147 +125,154 @@ export class LlamaChatSession {
125
125
  safeEventCallback(onToken)?.(this.model.tokenize(resolvedResponsePrefix));
126
126
  safeEventCallback(onTextChunk)?.(resolvedResponsePrefix);
127
127
  }
128
- while (true) {
129
- const functionCallsAndResults = [];
130
- let canThrowFunctionCallingErrors = false;
131
- let abortedOnFunctionCallError = false;
132
- const initialOutputTokens = this._chat.sequence.tokenMeter.usedOutputTokens;
133
- const { lastEvaluation: currentLastEvaluation, metadata } = await this._chat.generateResponse(newChatHistory, {
134
- functions,
135
- documentFunctionParams,
136
- maxParallelFunctionCalls,
137
- grammar: grammar, // this is a workaround to allow passing both `functions` and `grammar`
138
- onTextChunk: safeEventCallback(onTextChunk),
139
- onToken: safeEventCallback(onToken),
140
- signal: abortController.signal,
141
- stopOnAbortSignal,
142
- repeatPenalty,
143
- minP,
144
- topK,
145
- topP,
146
- seed,
147
- tokenBias,
148
- customStopTriggers,
149
- maxTokens,
150
- temperature,
151
- trimWhitespaceSuffix,
152
- contextShift: {
153
- ...this._contextShift,
154
- lastEvaluationMetadata: lastEvaluation?.contextShiftMetadata
155
- },
156
- evaluationPriority,
157
- lastEvaluationContextWindow: {
158
- history: newContextWindowChatHistory,
159
- minimumOverlapPercentageToPreventContextShift: 0.5
160
- },
161
- onFunctionCall: async (functionCall) => {
162
- functionCallsAndResults.push((async () => {
163
- try {
164
- const functionDefinition = functions?.[functionCall.functionName];
165
- if (functionDefinition == null)
166
- throw new Error(`The model tried to call function "${functionCall.functionName}" which is not defined`);
167
- const functionCallResult = await functionDefinition.handler(functionCall.params);
168
- return {
169
- functionCall,
170
- functionDefinition,
171
- functionCallResult
172
- };
173
- }
174
- catch (err) {
175
- if (!abortController.signal.aborted) {
176
- abortedOnFunctionCallError = true;
177
- abortController.abort(err);
128
+ try {
129
+ while (true) {
130
+ const functionCallsAndResults = [];
131
+ let canThrowFunctionCallingErrors = false;
132
+ let abortedOnFunctionCallError = false;
133
+ const initialOutputTokens = this._chat.sequence.tokenMeter.usedOutputTokens;
134
+ const { lastEvaluation: currentLastEvaluation, metadata } = await this._chat.generateResponse(newChatHistory, {
135
+ functions,
136
+ documentFunctionParams,
137
+ maxParallelFunctionCalls,
138
+ grammar: grammar, // this is a workaround to allow passing both `functions` and `grammar`
139
+ onTextChunk: safeEventCallback(onTextChunk),
140
+ onToken: safeEventCallback(onToken),
141
+ signal: abortController.signal,
142
+ stopOnAbortSignal,
143
+ repeatPenalty,
144
+ minP,
145
+ topK,
146
+ topP,
147
+ seed,
148
+ tokenBias,
149
+ customStopTriggers,
150
+ maxTokens,
151
+ temperature,
152
+ trimWhitespaceSuffix,
153
+ contextShift: {
154
+ ...this._contextShift,
155
+ lastEvaluationMetadata: lastEvaluation?.contextShiftMetadata
156
+ },
157
+ evaluationPriority,
158
+ lastEvaluationContextWindow: {
159
+ history: newContextWindowChatHistory,
160
+ minimumOverlapPercentageToPreventContextShift: 0.5
161
+ },
162
+ onFunctionCall: async (functionCall) => {
163
+ functionCallsAndResults.push((async () => {
164
+ try {
165
+ const functionDefinition = functions?.[functionCall.functionName];
166
+ if (functionDefinition == null)
167
+ throw new Error(`The model tried to call function "${functionCall.functionName}" which is not defined`);
168
+ const functionCallResult = await functionDefinition.handler(functionCall.params);
169
+ return {
170
+ functionCall,
171
+ functionDefinition,
172
+ functionCallResult
173
+ };
178
174
  }
179
- if (canThrowFunctionCallingErrors)
180
- throw err;
181
- return null;
182
- }
183
- })());
184
- }
185
- });
186
- this._ensureNotDisposed();
187
- if (abortController.signal.aborted && (abortedOnFunctionCallError || !stopOnAbortSignal))
188
- throw abortController.signal.reason;
189
- if (maxTokens != null)
190
- maxTokens = Math.max(0, maxTokens - (this._chat.sequence.tokenMeter.usedOutputTokens - initialOutputTokens));
191
- lastEvaluation = currentLastEvaluation;
192
- newChatHistory = lastEvaluation.cleanHistory;
193
- if (functionCallsAndResults.length > 0) {
194
- canThrowFunctionCallingErrors = true;
195
- const functionCallResultsPromise = Promise.all(functionCallsAndResults);
196
- await Promise.race([
197
- functionCallResultsPromise,
198
- new Promise((accept, reject) => {
199
- abortController.signal.addEventListener("abort", () => {
200
- if (abortedOnFunctionCallError || !stopOnAbortSignal)
201
- reject(abortController.signal.reason);
202
- else
203
- accept();
204
- });
205
- if (abortController.signal.aborted) {
206
- if (abortedOnFunctionCallError || !stopOnAbortSignal)
207
- reject(abortController.signal.reason);
208
- else
209
- accept();
210
- }
211
- })
212
- ]);
175
+ catch (err) {
176
+ if (!abortController.signal.aborted) {
177
+ abortedOnFunctionCallError = true;
178
+ abortController.abort(err);
179
+ }
180
+ if (canThrowFunctionCallingErrors)
181
+ throw err;
182
+ return null;
183
+ }
184
+ })());
185
+ }
186
+ });
213
187
  this._ensureNotDisposed();
214
- if (!abortController.signal.aborted) {
215
- const functionCallResults = (await functionCallResultsPromise)
216
- .filter((result) => result != null);
188
+ if (abortController.signal.aborted && (abortedOnFunctionCallError || !stopOnAbortSignal))
189
+ throw abortController.signal.reason;
190
+ if (maxTokens != null)
191
+ maxTokens = Math.max(0, maxTokens - (this._chat.sequence.tokenMeter.usedOutputTokens - initialOutputTokens));
192
+ lastEvaluation = currentLastEvaluation;
193
+ newChatHistory = lastEvaluation.cleanHistory;
194
+ if (functionCallsAndResults.length > 0) {
195
+ canThrowFunctionCallingErrors = true;
196
+ const functionCallResultsPromise = Promise.all(functionCallsAndResults);
197
+ const raceEventAbortController = new AbortController();
198
+ await Promise.race([
199
+ functionCallResultsPromise,
200
+ new Promise((accept, reject) => {
201
+ abortController.signal.addEventListener("abort", () => {
202
+ if (abortedOnFunctionCallError || !stopOnAbortSignal)
203
+ reject(abortController.signal.reason);
204
+ else
205
+ accept();
206
+ }, { signal: raceEventAbortController.signal });
207
+ if (abortController.signal.aborted) {
208
+ if (abortedOnFunctionCallError || !stopOnAbortSignal)
209
+ reject(abortController.signal.reason);
210
+ else
211
+ accept();
212
+ }
213
+ })
214
+ ]);
215
+ raceEventAbortController.abort();
217
216
  this._ensureNotDisposed();
218
- if (abortController.signal.aborted)
219
- throw abortController.signal.reason;
220
- newContextWindowChatHistory = lastEvaluation.contextWindow;
221
- let startNewChunk = supportsParallelFunctionCalling;
222
- for (const { functionCall, functionDefinition, functionCallResult } of functionCallResults) {
223
- newChatHistory = addFunctionCallToChatHistory({
224
- chatHistory: newChatHistory,
225
- functionName: functionCall.functionName,
226
- functionDescription: functionDefinition.description,
227
- callParams: functionCall.params,
228
- callResult: functionCallResult,
229
- rawCall: functionCall.raw,
230
- startsNewChunk: startNewChunk
231
- });
232
- newContextWindowChatHistory = addFunctionCallToChatHistory({
233
- chatHistory: newContextWindowChatHistory,
234
- functionName: functionCall.functionName,
235
- functionDescription: functionDefinition.description,
236
- callParams: functionCall.params,
237
- callResult: functionCallResult,
238
- rawCall: functionCall.raw,
239
- startsNewChunk: startNewChunk
240
- });
241
- startNewChunk = false;
217
+ if (!abortController.signal.aborted) {
218
+ const functionCallResults = (await functionCallResultsPromise)
219
+ .filter((result) => result != null);
220
+ this._ensureNotDisposed();
221
+ if (abortController.signal.aborted)
222
+ throw abortController.signal.reason;
223
+ newContextWindowChatHistory = lastEvaluation.contextWindow;
224
+ let startNewChunk = supportsParallelFunctionCalling;
225
+ for (const { functionCall, functionDefinition, functionCallResult } of functionCallResults) {
226
+ newChatHistory = addFunctionCallToChatHistory({
227
+ chatHistory: newChatHistory,
228
+ functionName: functionCall.functionName,
229
+ functionDescription: functionDefinition.description,
230
+ callParams: functionCall.params,
231
+ callResult: functionCallResult,
232
+ rawCall: functionCall.raw,
233
+ startsNewChunk: startNewChunk
234
+ });
235
+ newContextWindowChatHistory = addFunctionCallToChatHistory({
236
+ chatHistory: newContextWindowChatHistory,
237
+ functionName: functionCall.functionName,
238
+ functionDescription: functionDefinition.description,
239
+ callParams: functionCall.params,
240
+ callResult: functionCallResult,
241
+ rawCall: functionCall.raw,
242
+ startsNewChunk: startNewChunk
243
+ });
244
+ startNewChunk = false;
245
+ }
246
+ lastEvaluation.cleanHistory = newChatHistory;
247
+ lastEvaluation.contextWindow = newContextWindowChatHistory;
248
+ continue;
242
249
  }
243
- lastEvaluation.cleanHistory = newChatHistory;
244
- lastEvaluation.contextWindow = newContextWindowChatHistory;
245
- continue;
246
250
  }
247
- }
248
- this._lastEvaluation = lastEvaluation;
249
- this._chatHistory = newChatHistory;
250
- this._chatHistoryStateRef = {};
251
- const lastModelResponseItem = getLastModelResponseItem(newChatHistory);
252
- const responseText = lastModelResponseItem.response
253
- .filter((item) => typeof item === "string")
254
- .join("");
255
- if (metadata.stopReason === "customStopTrigger")
251
+ this._lastEvaluation = lastEvaluation;
252
+ this._chatHistory = newChatHistory;
253
+ this._chatHistoryStateRef = {};
254
+ const lastModelResponseItem = getLastModelResponseItem(newChatHistory);
255
+ const responseText = lastModelResponseItem.response
256
+ .filter((item) => typeof item === "string")
257
+ .join("");
258
+ if (metadata.stopReason === "customStopTrigger")
259
+ return {
260
+ response: lastModelResponseItem.response,
261
+ responseText,
262
+ stopReason: metadata.stopReason,
263
+ customStopTrigger: metadata.customStopTrigger,
264
+ remainingGenerationAfterStop: metadata.remainingGenerationAfterStop
265
+ };
256
266
  return {
257
267
  response: lastModelResponseItem.response,
258
268
  responseText,
259
269
  stopReason: metadata.stopReason,
260
- customStopTrigger: metadata.customStopTrigger,
261
270
  remainingGenerationAfterStop: metadata.remainingGenerationAfterStop
262
271
  };
263
- return {
264
- response: lastModelResponseItem.response,
265
- responseText,
266
- stopReason: metadata.stopReason,
267
- remainingGenerationAfterStop: metadata.remainingGenerationAfterStop
268
- };
272
+ }
273
+ }
274
+ finally {
275
+ disposeAbortController();
269
276
  }
270
277
  });
271
278
  }
@@ -320,7 +327,7 @@ export class LlamaChatSession {
320
327
  else if (grammar._llama !== this.model._llama)
321
328
  throw new Error("The LlamaGrammar used by passed to this function was created with a different Llama instance than the one used by this sequence's model. Make sure you use the same Llama instance for both the model and the grammar.");
322
329
  }
323
- const abortController = wrapAbortSignal(signal);
330
+ const [abortController, disposeAbortController] = wrapAbortSignal(signal);
324
331
  this._preloadAndCompleteAbortControllers.add(abortController);
325
332
  try {
326
333
  return await withLock(this._chatLock, "evaluation", abortController.signal, async () => {
@@ -380,6 +387,7 @@ export class LlamaChatSession {
380
387
  }
381
388
  finally {
382
389
  this._preloadAndCompleteAbortControllers.delete(abortController);
390
+ disposeAbortController();
383
391
  }
384
392
  }
385
393
  getChatHistory() {
@@ -1 +1 @@
1
- {"version":3,"file":"LlamaChatSession.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaChatSession/LlamaChatSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlamaChatSession.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaChatSession/LlamaChatSession.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,6 @@ import { ChatSessionModelFunction } from "../../../types.js";
10
10
  */
11
11
  export declare function defineChatSessionFunction<const Params extends GbnfJsonSchema | undefined>({ description, params, handler }: {
12
12
  description?: string;
13
- params?: Params & GbnfJsonSchema;
13
+ params?: Readonly<Params>;
14
14
  handler: (params: GbnfJsonSchemaToType<Params>) => Promise<any> | any;
15
15
  }): ChatSessionModelFunction<Params>;
@@ -9,6 +9,7 @@ import { getQueuedTokensBeforeStopTrigger } from "../utils/getQueuedTokensBefore
9
9
  import { safeEventCallback } from "../utils/safeEventCallback.js";
10
10
  import { pushAll } from "../utils/pushAll.js";
11
11
  import { GgufArchitectureType } from "../gguf/types/GgufMetadataTypes.js";
12
+ import { resolveBeginningTokenToPrepend } from "../utils/tokenizerUtils.js";
12
13
  import { LlamaGrammarEvaluationState } from "./LlamaGrammarEvaluationState.js";
13
14
  const defaultContextShiftSize = ((sequence) => Math.max(1, Math.floor(sequence.context.contextSize / 10)));
14
15
  const defaultMinPrefixKeepTokens = ((sequence) => Math.max(1, Math.floor(sequence.context.contextSize / 10)));
@@ -60,13 +61,12 @@ export class LlamaCompletion {
60
61
  async generateCompletionWithMeta(input, { onTextChunk, onToken, signal, maxTokens, temperature, minP, topK, topP, seed, trimWhitespaceSuffix = false, repeatPenalty = {}, tokenBias, evaluationPriority = 5, grammar, customStopTriggers, contextShiftSize = defaultContextShiftSize, disableContextShift } = {}) {
61
62
  if (this._sequence == null || this.disposed)
62
63
  throw new DisposedError();
63
- const bosToken = this._sequence.model.tokens.bos;
64
- const shouldPrependBosToken = this._sequence.model.tokens.shouldPrependBosToken;
64
+ const beginningTokenToPrepend = resolveBeginningTokenToPrepend(this._sequence.model.vocabularyType, this._sequence.model.tokens);
65
65
  const extraEosTokens = getExtraCompletionEosTokens(this._sequence.model);
66
66
  async function fitInputIntoContext({ maxTokens, tokens }) {
67
67
  const res = [];
68
- if (shouldPrependBosToken && bosToken != null)
69
- res.push(bosToken);
68
+ if (beginningTokenToPrepend != null)
69
+ res.push(beginningTokenToPrepend);
70
70
  const inputTokensSize = Math.max(0, Math.min(maxTokens - res.length, tokens.length));
71
71
  if (inputTokensSize === 0 && tokens.length > 0)
72
72
  throw new Error("The context size is too small to generate a response for the given input");
@@ -84,7 +84,7 @@ export class LlamaCompletion {
84
84
  ensureNotAborted();
85
85
  if (this._sequence == null || this.disposed)
86
86
  throw new DisposedError();
87
- const resolvedInput = tokenizeInput(input, this._sequence.model.tokenizer, (shouldPrependBosToken && bosToken != null)
87
+ const resolvedInput = tokenizeInput(input, this._sequence.model.tokenizer, beginningTokenToPrepend != null
88
88
  ? "trimLeadingSpace"
89
89
  : undefined);
90
90
  const resolvedContextShiftSize = await resolveContextShiftSize(contextShiftSize, this._sequence);
@@ -149,8 +149,7 @@ export class LlamaCompletion {
149
149
  const prefixToken = this._sequence.model.tokens.infill.prefix;
150
150
  const suffixToken = this._sequence.model.tokens.infill.suffix;
151
151
  const middleToken = this._sequence.model.tokens.infill.middle;
152
- const bosToken = this._sequence.model.tokens.bos;
153
- const shouldPrependBosToken = this._sequence.model.tokens.shouldPrependBosToken;
152
+ const beginningTokenToPrepend = resolveBeginningTokenToPrepend(this._sequence.model.vocabularyType, this._sequence.model.tokens);
154
153
  if (prefixToken == null || suffixToken == null)
155
154
  throw new UnsupportedError("Infill completions are not supported by this model");
156
155
  const extraEosTokens = getExtraInfillEosTokens(this._sequence.model);
@@ -160,7 +159,7 @@ export class LlamaCompletion {
160
159
  // 2 - InfillPrefix token, InfillSuffix token
161
160
  const specialTokensInContext = 2 +
162
161
  (middleToken != null ? 1 : 0) +
163
- ((shouldPrependBosToken && bosToken != null) ? 1 : 0);
162
+ (beginningTokenToPrepend != null ? 1 : 0);
164
163
  const resolvedMaxTokens = maxTokens - specialTokensInContext;
165
164
  let sizeLeftToFill = resolvedMaxTokens;
166
165
  let suffixTokensSize = Math.min(sizeLeftToFill, suffixTokens.length);
@@ -181,8 +180,8 @@ export class LlamaCompletion {
181
180
  const resolvedPrefixTokens = prefixTokens.slice(-prefixTokensSize);
182
181
  const resolvedSuffixTokens = suffixTokens.slice(0, suffixTokensSize);
183
182
  const newContextState = [];
184
- if (shouldPrependBosToken && bosToken != null)
185
- newContextState.push(bosToken);
183
+ if (beginningTokenToPrepend != null)
184
+ newContextState.push(beginningTokenToPrepend);
186
185
  if (middleToken != null) {
187
186
  newContextState.push(prefixToken);
188
187
  pushAll(newContextState, resolvedPrefixTokens);
@@ -1 +1 @@
1
- {"version":3,"file":"LlamaCompletion.js","sourceRoot":"","sources":["../../src/evaluator/LlamaCompletion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlamaCompletion.js","sourceRoot":"","sources":["../../src/evaluator/LlamaCompletion.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { EventRelay } from "lifecycle-utils";
2
2
  import { Token } from "../types.js";
3
3
  import { LlamaText } from "../utils/LlamaText.js";
4
4
  import { LlamaEmbedding } from "./LlamaEmbedding.js";
5
+ import type { LlamaModel } from "./LlamaModel/LlamaModel.js";
5
6
  export type LlamaEmbeddingContextOptions = {
6
7
  /**
7
8
  * The number of tokens the model can see at once.
@@ -44,4 +45,5 @@ export declare class LlamaEmbeddingContext {
44
45
  /** @hidden */
45
46
  [Symbol.asyncDispose](): Promise<void>;
46
47
  get disposed(): boolean;
48
+ get model(): LlamaModel;
47
49
  }
@@ -1,5 +1,6 @@
1
1
  import { AsyncDisposeAggregator, EventRelay, withLock } from "lifecycle-utils";
2
2
  import { tokenizeInput } from "../utils/tokenizeInput.js";
3
+ import { resolveBeginningTokenToPrepend, resolveEndTokenToAppend } from "../utils/tokenizerUtils.js";
3
4
  import { LlamaEmbedding } from "./LlamaEmbedding.js";
4
5
  export class LlamaEmbeddingContext {
5
6
  /** @internal */ _llamaContext;
@@ -18,7 +19,7 @@ export class LlamaEmbeddingContext {
18
19
  });
19
20
  }
20
21
  async getEmbeddingFor(input) {
21
- const resolvedInput = tokenizeInput(input, this._llamaContext.model.tokenizer);
22
+ const resolvedInput = tokenizeInput(input, this._llamaContext.model.tokenizer, undefined, true);
22
23
  if (resolvedInput.length > this._llamaContext.contextSize)
23
24
  throw new Error("Input is longer than the context size. " +
24
25
  "Try to increase the context size or use another model that supports longer contexts.");
@@ -26,6 +27,12 @@ export class LlamaEmbeddingContext {
26
27
  return new LlamaEmbedding({
27
28
  vector: []
28
29
  });
30
+ const beginningToken = resolveBeginningTokenToPrepend(this.model.vocabularyType, this.model.tokens);
31
+ if (beginningToken != null && resolvedInput[0] !== beginningToken)
32
+ resolvedInput.unshift(beginningToken);
33
+ const endToken = resolveEndTokenToAppend(this.model.vocabularyType, this.model.tokens);
34
+ if (endToken != null && resolvedInput.at(-1) !== endToken)
35
+ resolvedInput.push(endToken);
29
36
  return await withLock(this, "evaluate", async () => {
30
37
  await this._sequence.eraseContextTokenRanges([{
31
38
  start: 0,
@@ -53,8 +60,13 @@ export class LlamaEmbeddingContext {
53
60
  get disposed() {
54
61
  return this._llamaContext.disposed;
55
62
  }
63
+ get model() {
64
+ return this._llamaContext.model;
65
+ }
56
66
  /** @internal */
57
67
  static async _create({ _model }, { contextSize, batchSize, threads = 6, createSignal, ignoreMemorySafetyChecks }) {
68
+ if (_model.fileInsights.hasEncoder && _model.fileInsights.hasDecoder)
69
+ throw new Error("Computing embeddings is not supported for encoder-decoder models.");
58
70
  const llamaContext = await _model.createContext({
59
71
  contextSize,
60
72
  batchSize,
@@ -1 +1 @@
1
- {"version":3,"file":"LlamaEmbeddingContext.js","sourceRoot":"","sources":["../../src/evaluator/LlamaEmbeddingContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlamaEmbeddingContext.js","sourceRoot":"","sources":["../../src/evaluator/LlamaEmbeddingContext.ts"],"names":[],"mappings":"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"}