node-llama-cpp 3.5.0 → 3.6.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.
Files changed (79) hide show
  1. package/README.md +2 -2
  2. package/dist/ChatWrapper.js +45 -0
  3. package/dist/ChatWrapper.js.map +1 -1
  4. package/dist/bindings/utils/compileLLamaCpp.js +2 -0
  5. package/dist/bindings/utils/compileLLamaCpp.js.map +1 -1
  6. package/dist/chatWrappers/DeepSeekChatWrapper.d.ts +37 -0
  7. package/dist/chatWrappers/DeepSeekChatWrapper.js +294 -0
  8. package/dist/chatWrappers/DeepSeekChatWrapper.js.map +1 -0
  9. package/dist/chatWrappers/FunctionaryChatWrapper.js +39 -13
  10. package/dist/chatWrappers/FunctionaryChatWrapper.js.map +1 -1
  11. package/dist/chatWrappers/Llama3_1ChatWrapper.d.ts +0 -3
  12. package/dist/chatWrappers/Llama3_1ChatWrapper.js +5 -4
  13. package/dist/chatWrappers/Llama3_1ChatWrapper.js.map +1 -1
  14. package/dist/chatWrappers/Llama3_2LightweightChatWrapper.js +1 -1
  15. package/dist/chatWrappers/Llama3_2LightweightChatWrapper.js.map +1 -1
  16. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.d.ts +10 -1
  17. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js +8 -2
  18. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js.map +1 -1
  19. package/dist/chatWrappers/generic/TemplateChatWrapper.d.ts +17 -1
  20. package/dist/chatWrappers/generic/TemplateChatWrapper.js +10 -2
  21. package/dist/chatWrappers/generic/TemplateChatWrapper.js.map +1 -1
  22. package/dist/chatWrappers/generic/utils/templateSegmentOptionsToChatWrapperSettings.d.ts +22 -0
  23. package/dist/chatWrappers/generic/utils/templateSegmentOptionsToChatWrapperSettings.js +28 -0
  24. package/dist/chatWrappers/generic/utils/templateSegmentOptionsToChatWrapperSettings.js.map +1 -0
  25. package/dist/chatWrappers/utils/resolveChatWrapper.d.ts +46 -3
  26. package/dist/chatWrappers/utils/resolveChatWrapper.js +6 -2
  27. package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
  28. package/dist/cli/commands/ChatCommand.js +38 -7
  29. package/dist/cli/commands/ChatCommand.js.map +1 -1
  30. package/dist/cli/recommendedModels.js +80 -10
  31. package/dist/cli/recommendedModels.js.map +1 -1
  32. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +1 -1
  33. package/dist/config.d.ts +1 -1
  34. package/dist/config.js +1 -1
  35. package/dist/config.js.map +1 -1
  36. package/dist/evaluator/LlamaChat/LlamaChat.d.ts +87 -5
  37. package/dist/evaluator/LlamaChat/LlamaChat.js +770 -194
  38. package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
  39. package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js +55 -1
  40. package/dist/evaluator/LlamaChat/utils/contextShiftStrategies/eraseFirstResponseAndKeepFirstSystemChatContextShiftStrategy.js.map +1 -1
  41. package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +22 -7
  42. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +28 -8
  43. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
  44. package/dist/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.js +1 -1
  45. package/dist/evaluator/LlamaChatSession/utils/LlamaChatSessionPromptCompletionEngine.js.map +1 -1
  46. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.d.ts +9 -2
  47. package/dist/evaluator/LlamaChatSession/utils/defineChatSessionFunction.js.map +1 -1
  48. package/dist/evaluator/LlamaCompletion.js +61 -48
  49. package/dist/evaluator/LlamaCompletion.js.map +1 -1
  50. package/dist/evaluator/LlamaGrammar.d.ts +2 -2
  51. package/dist/evaluator/LlamaGrammar.js +2 -2
  52. package/dist/evaluator/LlamaModel/LlamaModel.d.ts +1 -1
  53. package/dist/evaluator/LlamaModel/LlamaModel.js +1 -1
  54. package/dist/index.d.ts +7 -5
  55. package/dist/index.js +3 -2
  56. package/dist/index.js.map +1 -1
  57. package/dist/tsconfig.tsbuildinfo +1 -1
  58. package/dist/types.d.ts +32 -2
  59. package/dist/types.js +7 -1
  60. package/dist/types.js.map +1 -1
  61. package/dist/utils/LlamaText.js +8 -9
  62. package/dist/utils/LlamaText.js.map +1 -1
  63. package/dist/utils/TokenStreamRegulator.d.ts +2 -0
  64. package/dist/utils/TokenStreamRegulator.js +12 -0
  65. package/dist/utils/TokenStreamRegulator.js.map +1 -1
  66. package/dist/utils/getChatWrapperSegmentDefinition.d.ts +2 -0
  67. package/dist/utils/getChatWrapperSegmentDefinition.js +7 -0
  68. package/dist/utils/getChatWrapperSegmentDefinition.js.map +1 -0
  69. package/dist/utils/parseModelUri.js +1 -1
  70. package/dist/utils/parseModelUri.js.map +1 -1
  71. package/dist/utils/resolveModelFile.js +2 -0
  72. package/dist/utils/resolveModelFile.js.map +1 -1
  73. package/llama/binariesGithubRelease.json +1 -1
  74. package/llama/gitRelease.bundle +0 -0
  75. package/llama/grammars/README.md +4 -4
  76. package/llama/llama.cpp.info.json +2 -2
  77. package/package.json +13 -12
  78. package/templates/packed/electron-typescript-react.json +1 -1
  79. package/templates/packed/node-typescript.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import { EventRelay } from "lifecycle-utils";
2
2
  import { ChatWrapper } from "../../ChatWrapper.js";
3
3
  import { LlamaContextSequence } from "../LlamaContext/LlamaContext.js";
4
- import { ChatHistoryItem, ChatModelFunctions, LLamaContextualRepeatPenalty, Token, Tokenizer } from "../../types.js";
4
+ import { ChatHistoryItem, ChatModelFunctions, ChatModelSegmentType, LLamaContextualRepeatPenalty, Token, Tokenizer } from "../../types.js";
5
5
  import { GbnfJsonSchemaToType } from "../../utils/gbnfJson/types.js";
6
6
  import { LlamaGrammar } from "../LlamaGrammar.js";
7
7
  import { LlamaText, LlamaTextJSON } from "../../utils/LlamaText.js";
8
8
  import { EvaluationPriority } from "../LlamaContext/types.js";
9
9
  import { TokenBias } from "../TokenBias.js";
10
+ import { LlamaModel } from "../LlamaModel/LlamaModel.js";
10
11
  export type LlamaChatOptions = {
11
12
  contextSequence: LlamaContextSequence;
12
13
  /** `"auto"` is used by default */
@@ -18,19 +19,84 @@ export type LlamaChatOptions = {
18
19
  */
19
20
  autoDisposeSequence?: boolean;
20
21
  };
22
+ export type LlamaChatResponseChunk = LlamaChatResponseTextChunk | LlamaChatResponseSegmentChunk;
23
+ export type LlamaChatResponseTextChunk = {
24
+ /** When `type` is `undefined`, the chunk is part of the main response and is not a segment */
25
+ type: undefined;
26
+ /**
27
+ * `segmentType` has no purpose when `type` is `undefined` (meaning that this chunk is part of the main response and is not a segment).
28
+ */
29
+ segmentType: undefined;
30
+ /**
31
+ * The generated text chunk.
32
+ *
33
+ * Detokenized from the `tokens` property,
34
+ * but with the context of the previous generation (for better spacing of the text with some models).
35
+ *
36
+ * Prefer using this property over `tokens` when streaming the generated response as text.
37
+ */
38
+ text: string;
39
+ /** The generated tokens */
40
+ tokens: Token[];
41
+ };
42
+ export type LlamaChatResponseSegmentChunk = {
43
+ type: "segment";
44
+ /** Segment type */
45
+ segmentType: ChatModelSegmentType;
46
+ /**
47
+ * The generated text chunk.
48
+ *
49
+ * Detokenized from the `tokens` property,
50
+ * but with the context of the previous generation (for better spacing of the text with some models).
51
+ *
52
+ * Prefer using this property over `tokens` when streaming the generated response as text.
53
+ */
54
+ text: string;
55
+ /** The generated tokens */
56
+ tokens: Token[];
57
+ /**
58
+ * When the current chunk is the start of a segment, this field will be set.
59
+ *
60
+ * It's possible that a chunk with no tokens and empty text will be emitted just to set this field
61
+ * to signify that the segment has started.
62
+ */
63
+ segmentStartTime?: Date;
64
+ /**
65
+ * When the current chunk is the last one of a segment (meaning the current segment has ended), this field will be set.
66
+ *
67
+ * It's possible that a chunk with no tokens and empty text will be emitted just to set this field
68
+ * to signify that the segment has ended.
69
+ */
70
+ segmentEndTime?: Date;
71
+ };
21
72
  export type LLamaChatGenerateResponseOptions<Functions extends ChatModelFunctions | undefined = undefined> = {
22
73
  /**
23
- * Called as the model generates a response with the generated text chunk.
74
+ * Called as the model generates the main response with the generated text chunk.
24
75
  *
25
76
  * Useful for streaming the generated response as it's being generated.
77
+ *
78
+ * Includes only the main response without any text segments (like thoughts).
79
+ * For streaming the response with segments, use {@link onResponseChunk `onResponseChunk`}.
26
80
  */
27
81
  onTextChunk?: (text: string) => void;
28
82
  /**
29
- * Called as the model generates a response with the generated tokens.
83
+ * Called as the model generates the main response with the generated tokens.
30
84
  *
31
- * Preferably, you'd want to use `onTextChunk` instead of this.
85
+ * Preferably, you'd want to use {@link onTextChunk `onTextChunk`} instead of this.
86
+ *
87
+ * Includes only the main response without any segments (like thoughts).
88
+ * For streaming the response with segments, use {@link onResponseChunk `onResponseChunk`}.
32
89
  */
33
90
  onToken?: (tokens: Token[]) => void;
91
+ /**
92
+ * Called as the model generates a response with the generated text and tokens,
93
+ * including segment information (when the generated output is part of a segment).
94
+ *
95
+ * Useful for streaming the generated response as it's being generated, including the main response and all segments.
96
+ *
97
+ * Only use this function when you need the segmented texts, like thought segments (chain of thought text).
98
+ */
99
+ onResponseChunk?: (chunk: LlamaChatResponseChunk) => void;
34
100
  signal?: AbortSignal;
35
101
  /**
36
102
  * When a response already started being generated and then the signal is aborted,
@@ -247,12 +313,19 @@ export declare class LlamaChat {
247
313
  get chatWrapper(): ChatWrapper;
248
314
  get sequence(): LlamaContextSequence;
249
315
  get context(): import("../LlamaContext/LlamaContext.js").LlamaContext;
250
- get model(): import("../LlamaModel/LlamaModel.js").LlamaModel;
316
+ get model(): LlamaModel;
251
317
  generateResponse<const Functions extends ChatModelFunctions | undefined = undefined>(history: ChatHistoryItem[], options?: LLamaChatGenerateResponseOptions<Functions>): Promise<LlamaChatResponse<Functions>>;
252
318
  loadChatAndCompleteUserMessage<const Functions extends ChatModelFunctions | undefined = undefined>(history: ChatHistoryItem[], options?: LLamaChatLoadAndCompleteUserMessageOptions<Functions>): Promise<LlamaChatLoadAndCompleteUserResponse>;
253
319
  }
254
320
  export type LlamaChatResponse<Functions extends ChatModelFunctions | undefined = undefined> = {
321
+ /**
322
+ * The response text only, _without_ any text segments (like thoughts).
323
+ */
255
324
  response: string;
325
+ /**
326
+ * The full response, including all text and text segments (like thoughts).
327
+ */
328
+ fullResponse: Array<string | LlamaChatResponseSegment>;
256
329
  functionCalls?: Functions extends ChatModelFunctions ? LlamaChatResponseFunctionCall<Functions>[] : never;
257
330
  lastEvaluation: {
258
331
  cleanHistory: ChatHistoryItem[];
@@ -273,6 +346,15 @@ export type LlamaChatResponseFunctionCall<Functions extends ChatModelFunctions,
273
346
  params: Params;
274
347
  raw: LlamaTextJSON;
275
348
  };
349
+ export type LlamaChatResponseSegment = {
350
+ type: "segment";
351
+ segmentType: ChatModelSegmentType;
352
+ text: string;
353
+ ended: boolean;
354
+ raw: LlamaTextJSON;
355
+ startTime?: string;
356
+ endTime?: string;
357
+ };
276
358
  export type LlamaChatLoadAndCompleteUserResponse = {
277
359
  completion: string;
278
360
  lastEvaluation: {