node-llama-cpp 2.8.0 → 3.0.0-beta.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 (80) hide show
  1. package/README.md +1 -1
  2. package/dist/chatWrappers/generateContextTextFromConversationHistory.d.ts +0 -8
  3. package/dist/chatWrappers/generateContextTextFromConversationHistory.js +0 -8
  4. package/dist/chatWrappers/generateContextTextFromConversationHistory.js.map +1 -1
  5. package/dist/chatWrappers/resolveChatWrapperBasedOnModel.d.ts +13 -0
  6. package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js +49 -0
  7. package/dist/chatWrappers/resolveChatWrapperBasedOnModel.js.map +1 -0
  8. package/dist/cli/cli.js +1 -1
  9. package/dist/cli/cli.js.map +1 -1
  10. package/dist/cli/commands/ChatCommand.js +20 -10
  11. package/dist/cli/commands/ChatCommand.js.map +1 -1
  12. package/dist/index.d.ts +6 -4
  13. package/dist/index.js +5 -4
  14. package/dist/index.js.map +1 -1
  15. package/dist/llamaEvaluator/LlamaBins.d.ts +19 -4
  16. package/dist/llamaEvaluator/LlamaBins.js +3 -3
  17. package/dist/llamaEvaluator/LlamaChatSession.d.ts +24 -23
  18. package/dist/llamaEvaluator/LlamaChatSession.js +90 -36
  19. package/dist/llamaEvaluator/LlamaChatSession.js.map +1 -1
  20. package/dist/llamaEvaluator/LlamaContext/LlamaContext.d.ts +112 -0
  21. package/dist/llamaEvaluator/LlamaContext/LlamaContext.js +640 -0
  22. package/dist/llamaEvaluator/LlamaContext/LlamaContext.js.map +1 -0
  23. package/dist/llamaEvaluator/LlamaContext/types.d.ts +90 -0
  24. package/dist/llamaEvaluator/LlamaContext/types.js +2 -0
  25. package/dist/llamaEvaluator/LlamaContext/types.js.map +1 -0
  26. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.d.ts +5 -0
  27. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.js +16 -0
  28. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/firstInFirstOutStrategy.js.map +1 -0
  29. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.d.ts +5 -0
  30. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.js +42 -0
  31. package/dist/llamaEvaluator/LlamaContext/utils/batchItemsPrioritizingStrategies/maximumParallelismStrategy.js.map +1 -0
  32. package/dist/llamaEvaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.d.ts +2 -0
  33. package/dist/llamaEvaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.js +13 -0
  34. package/dist/llamaEvaluator/LlamaContext/utils/resolveBatchItemsPrioritizingStrategy.js.map +1 -0
  35. package/dist/llamaEvaluator/LlamaGrammar.d.ts +5 -5
  36. package/dist/llamaEvaluator/LlamaGrammar.js +7 -7
  37. package/dist/llamaEvaluator/LlamaGrammarEvaluationState.d.ts +6 -5
  38. package/dist/llamaEvaluator/LlamaGrammarEvaluationState.js +8 -7
  39. package/dist/llamaEvaluator/LlamaGrammarEvaluationState.js.map +1 -1
  40. package/dist/llamaEvaluator/LlamaModel.d.ts +93 -112
  41. package/dist/llamaEvaluator/LlamaModel.js +294 -59
  42. package/dist/llamaEvaluator/LlamaModel.js.map +1 -1
  43. package/dist/types.d.ts +3 -1
  44. package/dist/utils/ReplHistory.js +1 -1
  45. package/dist/utils/ReplHistory.js.map +1 -1
  46. package/dist/utils/getBin.d.ts +71 -39
  47. package/dist/utils/getBin.js.map +1 -1
  48. package/dist/utils/getReleaseInfo.d.ts +1 -1
  49. package/dist/utils/getReleaseInfo.js.map +1 -1
  50. package/dist/utils/parseModelFileName.d.ts +9 -0
  51. package/dist/utils/parseModelFileName.js +68 -0
  52. package/dist/utils/parseModelFileName.js.map +1 -0
  53. package/dist/utils/parseModelTypeDescription.d.ts +6 -0
  54. package/dist/utils/parseModelTypeDescription.js +9 -0
  55. package/dist/utils/parseModelTypeDescription.js.map +1 -0
  56. package/llama/.clang-format +10 -9
  57. package/llama/addon.cpp +689 -356
  58. package/llama/binariesGithubRelease.json +1 -1
  59. package/llama/gitRelease.bundle +0 -0
  60. package/llama/grammars/README.md +2 -2
  61. package/llamaBins/linux-arm64/llama-addon.node +0 -0
  62. package/llamaBins/linux-armv7l/llama-addon.node +0 -0
  63. package/llamaBins/linux-x64/llama-addon.node +0 -0
  64. package/llamaBins/mac-arm64/ggml-metal.metal +107 -1
  65. package/llamaBins/mac-arm64/llama-addon.node +0 -0
  66. package/llamaBins/mac-x64/ggml-metal.metal +107 -1
  67. package/llamaBins/mac-x64/llama-addon.node +0 -0
  68. package/llamaBins/win-x64/llama-addon.exp +0 -0
  69. package/llamaBins/win-x64/llama-addon.lib +0 -0
  70. package/llamaBins/win-x64/llama-addon.node +0 -0
  71. package/package.json +13 -7
  72. package/dist/chatWrappers/createChatWrapperByBos.d.ts +0 -2
  73. package/dist/chatWrappers/createChatWrapperByBos.js +0 -14
  74. package/dist/chatWrappers/createChatWrapperByBos.js.map +0 -1
  75. package/dist/llamaEvaluator/LlamaContext.d.ts +0 -100
  76. package/dist/llamaEvaluator/LlamaContext.js +0 -141
  77. package/dist/llamaEvaluator/LlamaContext.js.map +0 -1
  78. package/dist/utils/withLock.d.ts +0 -1
  79. package/dist/utils/withLock.js +0 -19
  80. package/dist/utils/withLock.js.map +0 -1
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  [![Build](https://github.com/withcatai/node-llama-cpp/actions/workflows/build.yml/badge.svg)](https://github.com/withcatai/node-llama-cpp/actions/workflows/build.yml)
12
12
  [![License](https://badgen.net/badge/color/MIT/green?label=license)](https://www.npmjs.com/package/node-llama-cpp)
13
- [![License](https://badgen.net/badge/color/TypeScript/blue?label=types)](https://www.npmjs.com/package/node-llama-cpp)
13
+ [![Types](https://badgen.net/badge/color/TypeScript/blue?label=types)](https://www.npmjs.com/package/node-llama-cpp)
14
14
  [![Version](https://badgen.net/npm/v/node-llama-cpp)](https://www.npmjs.com/package/node-llama-cpp)
15
15
 
16
16
  </div>
@@ -2,14 +2,6 @@ import { ChatPromptWrapper } from "../ChatPromptWrapper.js";
2
2
  import { ConversationInteraction } from "../types.js";
3
3
  /**
4
4
  * Generate context text to load into a model context from a conversation history.
5
- * @param {ChatPromptWrapper} chatPromptWrapper
6
- * @param {ConversationInteraction[]} conversationHistory
7
- * @param {object} [options]
8
- * @param {string} [options.systemPrompt]
9
- * @param {number} [options.currentPromptIndex]
10
- * @param {string | null} [options.lastStopString]
11
- * @param {string | null} [options.lastStopStringSuffix]
12
- * @returns {{text: string, stopString: (string | null), stopStringSuffix: (string | null)}}
13
5
  */
14
6
  export declare function generateContextTextFromConversationHistory(chatPromptWrapper: ChatPromptWrapper, conversationHistory: readonly ConversationInteraction[], { systemPrompt, currentPromptIndex, lastStopString, lastStopStringSuffix }?: {
15
7
  systemPrompt?: string;
@@ -1,14 +1,6 @@
1
1
  import { defaultChatSystemPrompt } from "../config.js";
2
2
  /**
3
3
  * Generate context text to load into a model context from a conversation history.
4
- * @param {ChatPromptWrapper} chatPromptWrapper
5
- * @param {ConversationInteraction[]} conversationHistory
6
- * @param {object} [options]
7
- * @param {string} [options.systemPrompt]
8
- * @param {number} [options.currentPromptIndex]
9
- * @param {string | null} [options.lastStopString]
10
- * @param {string | null} [options.lastStopStringSuffix]
11
- * @returns {{text: string, stopString: (string | null), stopStringSuffix: (string | null)}}
12
4
  */
13
5
  export function generateContextTextFromConversationHistory(chatPromptWrapper, conversationHistory, { systemPrompt = defaultChatSystemPrompt, currentPromptIndex = 0, lastStopString = null, lastStopStringSuffix = null } = {}) {
14
6
  let res = "";
@@ -1 +1 @@
1
- {"version":3,"file":"generateContextTextFromConversationHistory.js","sourceRoot":"","sources":["../../src/chatWrappers/generateContextTextFromConversationHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,cAAc,CAAC;AAIrD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0CAA0C,CACtD,iBAAoC,EACpC,mBAAuD,EACvD,EACI,YAAY,GAAG,uBAAuB,EAAE,kBAAkB,GAAG,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE,oBAAoB,GAAG,IAAI,KAGlH,EAAE;IAMN,IAAI,GAAG,GAAG,EAAE,CAAC;IAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACjD,MAAM,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE;YACnE,YAAY;YACZ,WAAW,EAAE,kBAAkB;YAC/B,cAAc;YACd,oBAAoB;SACvB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACvD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC;QACnE,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAElF,kBAAkB,EAAE,CAAC;QACrB,cAAc,GAAG,IAAI,CAAC;QACtB,oBAAoB,GAAG,IAAI,CAAC;QAE5B,GAAG,IAAI,aAAa,CAAC;QAErB,KAAK,MAAM,UAAU,IAAI,4BAA4B,EAAE;YACnD,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBAC3C,OAAO,CAAC,KAAK,CACT,gBAAgB,UAAU,mEAAmE,CAAC,EAAE,EAChG,EAAC,WAAW,EAAE,UAAU,EAAC,CAC5B,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;aACnG;SACJ;QAED,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC;QAC5B,GAAG,IAAI,iBAAiB,CAAC;QACzB,cAAc,GAAG,iBAAiB,CAAC;QACnC,oBAAoB,GAAG,EAAE,CAAC;KAC7B;IAED,OAAO;QACH,IAAI,EAAE,GAAG;QACT,UAAU,EAAE,cAAc;QAC1B,gBAAgB,EAAE,oBAAoB;KACzC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"generateContextTextFromConversationHistory.js","sourceRoot":"","sources":["../../src/chatWrappers/generateContextTextFromConversationHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,cAAc,CAAC;AAIrD;;GAEG;AACH,MAAM,UAAU,0CAA0C,CACtD,iBAAoC,EACpC,mBAAuD,EACvD,EACI,YAAY,GAAG,uBAAuB,EAAE,kBAAkB,GAAG,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE,oBAAoB,GAAG,IAAI,KAGlH,EAAE;IAMN,IAAI,GAAG,GAAG,EAAE,CAAC;IAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACjD,MAAM,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE;YACnE,YAAY;YACZ,WAAW,EAAE,kBAAkB;YAC/B,cAAc;YACd,oBAAoB;SACvB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACvD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC;QACnE,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAElF,kBAAkB,EAAE,CAAC;QACrB,cAAc,GAAG,IAAI,CAAC;QACtB,oBAAoB,GAAG,IAAI,CAAC;QAE5B,GAAG,IAAI,aAAa,CAAC;QAErB,KAAK,MAAM,UAAU,IAAI,4BAA4B,EAAE;YACnD,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBAC3C,OAAO,CAAC,KAAK,CACT,gBAAgB,UAAU,mEAAmE,CAAC,EAAE,EAChG,EAAC,WAAW,EAAE,UAAU,EAAC,CAC5B,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;aACnG;SACJ;QAED,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC;QAC5B,GAAG,IAAI,iBAAiB,CAAC;QACzB,cAAc,GAAG,iBAAiB,CAAC;QACnC,oBAAoB,GAAG,EAAE,CAAC;KAC7B;IAED,OAAO;QACH,IAAI,EAAE,GAAG;QACT,UAAU,EAAE,cAAc;QAC1B,gBAAgB,EAAE,oBAAoB;KACzC,CAAC;AACN,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { LlamaChatPromptWrapper } from "./LlamaChatPromptWrapper.js";
2
+ import { GeneralChatPromptWrapper } from "./GeneralChatPromptWrapper.js";
3
+ import { FalconChatPromptWrapper } from "./FalconChatPromptWrapper.js";
4
+ import type { ModelTypeDescription } from "../utils/getBin.js";
5
+ /**
6
+ * @param options
7
+ */
8
+ export declare function resolveChatWrapperBasedOnModel({ bosString, filename, typeDescription }: {
9
+ bosString?: string | null;
10
+ filename?: string;
11
+ /** @hidden this type alias is too long in the documentation */
12
+ typeDescription?: ModelTypeDescription;
13
+ }): typeof GeneralChatPromptWrapper | typeof LlamaChatPromptWrapper | typeof FalconChatPromptWrapper | null;
@@ -0,0 +1,49 @@
1
+ import { parseModelFileName } from "../utils/parseModelFileName.js";
2
+ import { parseModelTypeDescription } from "../utils/parseModelTypeDescription.js";
3
+ import { LlamaChatPromptWrapper } from "./LlamaChatPromptWrapper.js";
4
+ import { ChatMLChatPromptWrapper } from "./ChatMLChatPromptWrapper.js";
5
+ import { GeneralChatPromptWrapper } from "./GeneralChatPromptWrapper.js";
6
+ import { FalconChatPromptWrapper } from "./FalconChatPromptWrapper.js";
7
+ /**
8
+ * @param options
9
+ */
10
+ export function resolveChatWrapperBasedOnModel({ bosString, filename, typeDescription }) {
11
+ if (filename != null) {
12
+ const { name, subType, fileType } = parseModelFileName(filename);
13
+ if (fileType?.toLowerCase() === "gguf") {
14
+ const lowercaseName = name?.toLowerCase();
15
+ const lowercaseSubType = subType?.toLowerCase();
16
+ const splitLowercaseSubType = lowercaseSubType?.split("-");
17
+ const firstSplitLowercaseSubType = splitLowercaseSubType?.[0];
18
+ if (lowercaseName === "llama")
19
+ return LlamaChatPromptWrapper;
20
+ else if (lowercaseName === "yarn" && firstSplitLowercaseSubType === "llama")
21
+ return LlamaChatPromptWrapper;
22
+ else if (lowercaseName === "orca")
23
+ return ChatMLChatPromptWrapper;
24
+ else if (lowercaseName === "phind" && lowercaseSubType === "codellama")
25
+ return LlamaChatPromptWrapper;
26
+ else if (lowercaseName === "mistral")
27
+ return GeneralChatPromptWrapper;
28
+ else if (firstSplitLowercaseSubType === "llama")
29
+ return LlamaChatPromptWrapper;
30
+ }
31
+ }
32
+ if (typeDescription != null) {
33
+ const { arch } = parseModelTypeDescription(typeDescription);
34
+ if (arch === "llama")
35
+ return LlamaChatPromptWrapper;
36
+ else if (arch === "falcon")
37
+ return FalconChatPromptWrapper;
38
+ }
39
+ if (bosString === "" || bosString == null)
40
+ return null;
41
+ if ("<s>[INST] <<SYS>>\n".startsWith(bosString)) {
42
+ return LlamaChatPromptWrapper;
43
+ }
44
+ else if ("<|im_start|>system\n".startsWith(bosString)) {
45
+ return ChatMLChatPromptWrapper;
46
+ }
47
+ return null;
48
+ }
49
+ //# sourceMappingURL=resolveChatWrapperBasedOnModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveChatWrapperBasedOnModel.js","sourceRoot":"","sources":["../../src/chatWrappers/resolveChatWrapperBasedOnModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,yBAAyB,EAAC,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAC,sBAAsB,EAAC,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,wBAAwB,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAIrE;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAAC,EAC3C,SAAS,EACT,QAAQ,EACR,eAAe,EAOlB;IACG,IAAI,QAAQ,IAAI,IAAI,EAAE;QAClB,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAE/D,IAAI,QAAQ,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE;YACpC,MAAM,aAAa,GAAG,IAAI,EAAE,WAAW,EAAE,CAAC;YAC1C,MAAM,gBAAgB,GAAG,OAAO,EAAE,WAAW,EAAE,CAAC;YAChD,MAAM,qBAAqB,GAAG,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3D,MAAM,0BAA0B,GAAG,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;YAE9D,IAAI,aAAa,KAAK,OAAO;gBACzB,OAAO,sBAAsB,CAAC;iBAC7B,IAAI,aAAa,KAAK,MAAM,IAAI,0BAA0B,KAAK,OAAO;gBACvE,OAAO,sBAAsB,CAAC;iBAC7B,IAAI,aAAa,KAAK,MAAM;gBAC7B,OAAO,uBAAuB,CAAC;iBAC9B,IAAI,aAAa,KAAK,OAAO,IAAI,gBAAgB,KAAK,WAAW;gBAClE,OAAO,sBAAsB,CAAC;iBAC7B,IAAI,aAAa,KAAK,SAAS;gBAChC,OAAO,wBAAwB,CAAC;iBAC/B,IAAI,0BAA0B,KAAK,OAAO;gBAC3C,OAAO,sBAAsB,CAAC;SACrC;KACJ;IAED,IAAI,eAAe,IAAI,IAAI,EAAE;QACzB,MAAM,EAAC,IAAI,EAAC,GAAG,yBAAyB,CAAC,eAAe,CAAC,CAAC;QAE1D,IAAI,IAAI,KAAK,OAAO;YAChB,OAAO,sBAAsB,CAAC;aAC7B,IAAI,IAAI,KAAK,QAAQ;YACtB,OAAO,uBAAuB,CAAC;KACtC;IAED,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,IAAI,IAAI;QACrC,OAAO,IAAI,CAAC;IAEhB,IAAI,qBAAqB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC7C,OAAO,sBAAsB,CAAC;KACjC;SAAM,IAAI,sBAAsB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QACrD,OAAO,uBAAuB,CAAC;KAClC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/dist/cli/cli.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import { fileURLToPath } from "url";
3
3
  import path from "path";
4
4
  import yargs from "yargs";
5
- // eslint-disable-next-line node/file-extension-in-import
5
+ // eslint-disable-next-line n/file-extension-in-import
6
6
  import { hideBin } from "yargs/helpers";
7
7
  import fs from "fs-extra";
8
8
  import { cliBinName } from "../config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,yDAAyD;AACzD,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAC,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;AAEtF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1C,IAAI;KACC,UAAU,CAAC,UAAU,CAAC;KACtB,KAAK,CAAC,+BAA+B,CAAC;KACtC,OAAO,CAAC,eAAe,CAAC;KACxB,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,WAAW,CAAC;KACpB,OAAO,CAAC,oBAAoB,CAAC;KAC7B,iBAAiB,EAAE;KACnB,aAAa,CAAC,CAAC,CAAC;KAChB,MAAM,EAAE;KACR,cAAc,EAAE;KAChB,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC;KACrB,IAAI,CAAC,GAAG,CAAC;KACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;KAClB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;KAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;KACzC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,sDAAsD;AACtD,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAC,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;AAEtF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1C,IAAI;KACC,UAAU,CAAC,UAAU,CAAC;KACtB,KAAK,CAAC,+BAA+B,CAAC;KACtC,OAAO,CAAC,eAAe,CAAC;KACxB,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,WAAW,CAAC;KACpB,OAAO,CAAC,oBAAoB,CAAC;KAC7B,iBAAiB,EAAE;KACnB,aAAa,CAAC,CAAC,CAAC;KAChB,MAAM,EAAE;KACR,cAAc,EAAE;KAChB,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC;KACrB,IAAI,CAAC,GAAG,CAAC;KACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;KAClB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;KAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;KACzC,KAAK,EAAE,CAAC"}
@@ -8,7 +8,7 @@ import { chatCommandHistoryFilePath, defaultChatSystemPrompt } from "../../confi
8
8
  import { LlamaChatPromptWrapper } from "../../chatWrappers/LlamaChatPromptWrapper.js";
9
9
  import { GeneralChatPromptWrapper } from "../../chatWrappers/GeneralChatPromptWrapper.js";
10
10
  import { ChatMLChatPromptWrapper } from "../../chatWrappers/ChatMLChatPromptWrapper.js";
11
- import { getChatWrapperByBos } from "../../chatWrappers/createChatWrapperByBos.js";
11
+ import { resolveChatWrapperBasedOnModel } from "../../chatWrappers/resolveChatWrapperBasedOnModel.js";
12
12
  import { FalconChatPromptWrapper } from "../../chatWrappers/FalconChatPromptWrapper.js";
13
13
  import { getIsInDocumentationMode } from "../../state.js";
14
14
  import { ReplHistory } from "../../utils/ReplHistory.js";
@@ -174,7 +174,7 @@ export const ChatCommand = {
174
174
  async function RunChat({ model: modelArg, systemInfo, systemPrompt, prompt, wrapper, contextSize, grammar: grammarArg, jsonSchemaGrammarFile: jsonSchemaGrammarFilePath, threads, temperature, topK, topP, gpuLayers, lastTokensRepeatPenalty, repeatPenalty, penalizeRepeatingNewLine, repeatFrequencyPenalty, repeatPresencePenalty, maxTokens, noHistory }) {
175
175
  const { LlamaChatSession } = await import("../../llamaEvaluator/LlamaChatSession.js");
176
176
  const { LlamaModel } = await import("../../llamaEvaluator/LlamaModel.js");
177
- const { LlamaContext } = await import("../../llamaEvaluator/LlamaContext.js");
177
+ const { LlamaContext } = await import("../../llamaEvaluator/LlamaContext/LlamaContext.js");
178
178
  const { LlamaGrammar } = await import("../../llamaEvaluator/LlamaGrammar.js");
179
179
  const { LlamaJsonSchemaGrammar } = await import("../../llamaEvaluator/LlamaJsonSchemaGrammar.js");
180
180
  let initialPrompt = prompt ?? null;
@@ -192,17 +192,23 @@ async function RunChat({ model: modelArg, systemInfo, systemPrompt, prompt, wrap
192
192
  : grammarArg !== "text"
193
193
  ? await LlamaGrammar.getFor(grammarArg)
194
194
  : undefined;
195
- const bos = context.getBosString(); // bos = beginning of sequence
196
- const eos = context.getEosString(); // eos = end of sequence
197
- const promptWrapper = getChatWrapper(wrapper, bos);
195
+ const bos = model.tokens.bosString; // bos = beginning of sequence
196
+ const eos = model.tokens.bosString; // eos = end of sequence
197
+ const promptWrapper = getChatWrapper(wrapper, {
198
+ bosString: bos,
199
+ filename: model.filename,
200
+ typeDescription: model.typeDescription
201
+ });
198
202
  const session = new LlamaChatSession({
199
- context,
203
+ contextSequence: context.getSequence(),
200
204
  printLLamaSystemInfo: systemInfo,
201
205
  systemPrompt,
202
206
  promptWrapper
203
207
  });
204
208
  if (grammarArg != "text" && jsonSchemaGrammarFilePath != null)
205
209
  console.warn(chalk.yellow("Both `grammar` and `jsonSchemaGrammarFile` were specified. `jsonSchemaGrammarFile` will be used."));
210
+ console.info(`${chalk.yellow("Context size:")} ${context.contextSize}`);
211
+ console.info(`${chalk.yellow("Train context size:")} ${model.trainContextSize}`);
206
212
  console.info(`${chalk.yellow("BOS:")} ${bos}`);
207
213
  console.info(`${chalk.yellow("EOS:")} ${eos}`);
208
214
  console.info(`${chalk.yellow("Chat wrapper:")} ${promptWrapper.wrapperName}`);
@@ -266,19 +272,19 @@ async function RunChat({ model: modelArg, systemInfo, systemPrompt, prompt, wrap
266
272
  lastTokens: lastTokensRepeatPenalty
267
273
  },
268
274
  maxTokens: maxTokens === -1
269
- ? context.getContextSize()
275
+ ? context.contextSize
270
276
  : maxTokens <= 0
271
277
  ? undefined
272
278
  : maxTokens,
273
279
  onToken(chunk) {
274
- process.stdout.write(session.context.decode(chunk));
280
+ process.stdout.write(model.detokenize(chunk));
275
281
  }
276
282
  });
277
283
  process.stdout.write(endColor);
278
284
  console.log();
279
285
  }
280
286
  }
281
- function getChatWrapper(wrapper, bos) {
287
+ function getChatWrapper(wrapper, { bosString, filename, typeDescription }) {
282
288
  switch (wrapper) {
283
289
  case "general":
284
290
  return new GeneralChatPromptWrapper();
@@ -291,7 +297,11 @@ function getChatWrapper(wrapper, bos) {
291
297
  default:
292
298
  }
293
299
  if (wrapper === "auto") {
294
- const chatWrapper = getChatWrapperByBos(bos);
300
+ const chatWrapper = resolveChatWrapperBasedOnModel({
301
+ bosString,
302
+ filename,
303
+ typeDescription
304
+ });
295
305
  if (chatWrapper != null)
296
306
  return new chatWrapper();
297
307
  return new GeneralChatPromptWrapper();
@@ -1 +1 @@
1
- {"version":3,"file":"ChatCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/ChatCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/ChatCommand.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,11 @@
1
- import { LlamaModel, type LlamaModelOptions } from "./llamaEvaluator/LlamaModel.js";
1
+ import { DisposedError } from "lifecycle-utils";
2
+ import { LlamaModel, LlamaModelInfillTokens, type LlamaModelOptions, LlamaModelTokens } from "./llamaEvaluator/LlamaModel.js";
2
3
  import { LlamaGrammar, type LlamaGrammarOptions } from "./llamaEvaluator/LlamaGrammar.js";
3
4
  import { LlamaJsonSchemaGrammar } from "./llamaEvaluator/LlamaJsonSchemaGrammar.js";
4
5
  import { LlamaJsonSchemaValidationError } from "./utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js";
5
6
  import { LlamaGrammarEvaluationState, LlamaGrammarEvaluationStateOptions } from "./llamaEvaluator/LlamaGrammarEvaluationState.js";
6
- import { LlamaContext, type LlamaContextOptions, type LlamaContextRepeatPenalty } from "./llamaEvaluator/LlamaContext.js";
7
+ import { LlamaContext, LlamaContextSequence } from "./llamaEvaluator/LlamaContext/LlamaContext.js";
8
+ import { type LlamaContextOptions, type BatchingOptions, type LlamaContextSequenceRepeatPenalty, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizeStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type TokenPriority } from "./llamaEvaluator/LlamaContext/types.js";
7
9
  import { LlamaChatSession, type LlamaChatSessionOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty } from "./llamaEvaluator/LlamaChatSession.js";
8
10
  import { AbortError } from "./AbortError.js";
9
11
  import { ChatPromptWrapper } from "./ChatPromptWrapper.js";
@@ -12,8 +14,8 @@ import { LlamaChatPromptWrapper } from "./chatWrappers/LlamaChatPromptWrapper.js
12
14
  import { GeneralChatPromptWrapper } from "./chatWrappers/GeneralChatPromptWrapper.js";
13
15
  import { ChatMLChatPromptWrapper } from "./chatWrappers/ChatMLChatPromptWrapper.js";
14
16
  import { FalconChatPromptWrapper } from "./chatWrappers/FalconChatPromptWrapper.js";
15
- import { getChatWrapperByBos } from "./chatWrappers/createChatWrapperByBos.js";
17
+ import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
16
18
  import { getReleaseInfo } from "./utils/getReleaseInfo.js";
17
19
  import { type ConversationInteraction, type Token } from "./types.js";
18
20
  import { type GbnfJsonArraySchema, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonObjectSchema, type GbnfJsonOneOfSchema, type GbnfJsonSchema, type GbnfJsonSchemaImmutableType, type GbnfJsonSchemaToType } from "./utils/gbnfJson/types.js";
19
- export { LlamaModel, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, type LlamaContextOptions, type LlamaContextRepeatPenalty, LlamaChatSession, type LlamaChatSessionOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty, type ConversationInteraction, AbortError, ChatPromptWrapper, EmptyChatPromptWrapper, LlamaChatPromptWrapper, GeneralChatPromptWrapper, ChatMLChatPromptWrapper, FalconChatPromptWrapper, getChatWrapperByBos, getReleaseInfo, type Token, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema };
21
+ export { LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, type LlamaModelOptions, LlamaGrammar, type LlamaGrammarOptions, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, type LlamaGrammarEvaluationStateOptions, LlamaContext, LlamaContextSequence, type LlamaContextOptions, type BatchingOptions, type CustomBatchingDispatchSchedule, type CustomBatchingPrioritizeStrategy, type BatchItem, type PrioritizedBatchItem, type ContextShiftOptions, type ContextTokensDeleteRange, type EvaluationPriority, type TokenPriority, type LlamaContextSequenceRepeatPenalty, LlamaChatSession, type LlamaChatSessionOptions, type LLamaChatPromptOptions, type LlamaChatSessionRepeatPenalty, type ConversationInteraction, AbortError, DisposedError, ChatPromptWrapper, EmptyChatPromptWrapper, LlamaChatPromptWrapper, GeneralChatPromptWrapper, ChatMLChatPromptWrapper, FalconChatPromptWrapper, resolveChatWrapperBasedOnModel, getReleaseInfo, type Token, type GbnfJsonSchema, type GbnfJsonSchemaToType, type GbnfJsonSchemaImmutableType, type GbnfJsonBasicSchema, type GbnfJsonConstSchema, type GbnfJsonEnumSchema, type GbnfJsonOneOfSchema, type GbnfJsonObjectSchema, type GbnfJsonArraySchema };
package/dist/index.js CHANGED
@@ -1,9 +1,10 @@
1
- import { LlamaModel } from "./llamaEvaluator/LlamaModel.js";
1
+ import { DisposedError } from "lifecycle-utils";
2
+ import { LlamaModel, LlamaModelInfillTokens, LlamaModelTokens } from "./llamaEvaluator/LlamaModel.js";
2
3
  import { LlamaGrammar } from "./llamaEvaluator/LlamaGrammar.js";
3
4
  import { LlamaJsonSchemaGrammar } from "./llamaEvaluator/LlamaJsonSchemaGrammar.js";
4
5
  import { LlamaJsonSchemaValidationError } from "./utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js";
5
6
  import { LlamaGrammarEvaluationState } from "./llamaEvaluator/LlamaGrammarEvaluationState.js";
6
- import { LlamaContext } from "./llamaEvaluator/LlamaContext.js";
7
+ import { LlamaContext, LlamaContextSequence } from "./llamaEvaluator/LlamaContext/LlamaContext.js";
7
8
  import { LlamaChatSession } from "./llamaEvaluator/LlamaChatSession.js";
8
9
  import { AbortError } from "./AbortError.js";
9
10
  import { ChatPromptWrapper } from "./ChatPromptWrapper.js";
@@ -12,7 +13,7 @@ import { LlamaChatPromptWrapper } from "./chatWrappers/LlamaChatPromptWrapper.js
12
13
  import { GeneralChatPromptWrapper } from "./chatWrappers/GeneralChatPromptWrapper.js";
13
14
  import { ChatMLChatPromptWrapper } from "./chatWrappers/ChatMLChatPromptWrapper.js";
14
15
  import { FalconChatPromptWrapper } from "./chatWrappers/FalconChatPromptWrapper.js";
15
- import { getChatWrapperByBos } from "./chatWrappers/createChatWrapperByBos.js";
16
+ import { resolveChatWrapperBasedOnModel } from "./chatWrappers/resolveChatWrapperBasedOnModel.js";
16
17
  import { getReleaseInfo } from "./utils/getReleaseInfo.js";
17
- export { LlamaModel, LlamaGrammar, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, LlamaContext, LlamaChatSession, AbortError, ChatPromptWrapper, EmptyChatPromptWrapper, LlamaChatPromptWrapper, GeneralChatPromptWrapper, ChatMLChatPromptWrapper, FalconChatPromptWrapper, getChatWrapperByBos, getReleaseInfo };
18
+ export { LlamaModel, LlamaModelTokens, LlamaModelInfillTokens, LlamaGrammar, LlamaJsonSchemaGrammar, LlamaJsonSchemaValidationError, LlamaGrammarEvaluationState, LlamaContext, LlamaContextSequence, LlamaChatSession, AbortError, DisposedError, ChatPromptWrapper, EmptyChatPromptWrapper, LlamaChatPromptWrapper, GeneralChatPromptWrapper, ChatMLChatPromptWrapper, FalconChatPromptWrapper, resolveChatWrapperBasedOnModel, getReleaseInfo };
18
19
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAyB,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAC,YAAY,EAA2B,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAC,sBAAsB,EAAC,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAC,8BAA8B,EAAC,MAAM,2DAA2D,CAAC;AACzG,OAAO,EAAC,2BAA2B,EAAqC,MAAM,iDAAiD,CAAC;AAChI,OAAO,EAAC,YAAY,EAA2D,MAAM,kCAAkC,CAAC;AACxH,OAAO,EACH,gBAAgB,EACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAC,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,mBAAmB,EAAC,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AASzD,OAAO,EACH,UAAU,EAEV,YAAY,EAEZ,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAE3B,YAAY,EAGZ,gBAAgB,EAKhB,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EAWjB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAE,sBAAsB,EAA0B,gBAAgB,EAAC,MAAM,gCAAgC,CAAC;AAC5H,OAAO,EAAC,YAAY,EAA2B,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAC,sBAAsB,EAAC,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAC,8BAA8B,EAAC,MAAM,2DAA2D,CAAC;AACzG,OAAO,EAAC,2BAA2B,EAAqC,MAAM,iDAAiD,CAAC;AAChI,OAAO,EAAC,YAAY,EAAE,oBAAoB,EAAC,MAAM,+CAA+C,CAAC;AAMjG,OAAO,EACH,gBAAgB,EACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAC,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,8BAA8B,EAAC,MAAM,kDAAkD,CAAC;AAChG,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AASzD,OAAO,EACH,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EAEtB,YAAY,EAEZ,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAE3B,YAAY,EACZ,oBAAoB,EAYpB,gBAAgB,EAKhB,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAC9B,cAAc,EAWjB,CAAC"}
@@ -1,4 +1,19 @@
1
- import { type LLAMAModel, type LLAMAContext, type LLAMAGrammar, type LLAMAGrammarEvaluationState } from "../utils/getBin.js";
2
- export declare const llamaCppNode: import("../utils/getBin.js").LlamaCppNodeModule;
3
- declare const LLAMAModel: LLAMAModel, LLAMAContext: LLAMAContext, LLAMAGrammar: LLAMAGrammar, LLAMAGrammarEvaluationState: LLAMAGrammarEvaluationState;
4
- export { LLAMAModel, LLAMAContext, LLAMAGrammar, LLAMAGrammarEvaluationState };
1
+ import { type AddonModel, type AddonContext, type AddonGrammar, type AddonGrammarEvaluationState } from "../utils/getBin.js";
2
+ export declare const addonBinding: import("../utils/getBin.js").BindingModule;
3
+ declare const AddonModel: new (modelPath: string, params: {
4
+ gpuLayers?: number | undefined;
5
+ vocabOnly?: boolean | undefined;
6
+ useMmap?: boolean | undefined;
7
+ useMlock?: boolean | undefined;
8
+ }) => AddonModel, AddonContext: new (model: AddonModel, params: {
9
+ seed?: number | undefined;
10
+ contextSize?: number | undefined;
11
+ batchSize?: number | undefined;
12
+ f16Kv?: boolean | undefined;
13
+ logitsAll?: boolean | undefined;
14
+ embedding?: boolean | undefined;
15
+ threads?: number | undefined;
16
+ }) => AddonContext, AddonGrammar: new (grammarPath: string, params?: {
17
+ printGrammar?: boolean | undefined;
18
+ } | undefined) => AddonGrammar, AddonGrammarEvaluationState: new (grammar: AddonGrammar) => AddonGrammarEvaluationState;
19
+ export { AddonModel, AddonContext, AddonGrammar, AddonGrammarEvaluationState };
@@ -1,5 +1,5 @@
1
1
  import { loadBin } from "../utils/getBin.js";
2
- export const llamaCppNode = await loadBin();
3
- const { LLAMAModel, LLAMAContext, LLAMAGrammar, LLAMAGrammarEvaluationState } = llamaCppNode;
4
- export { LLAMAModel, LLAMAContext, LLAMAGrammar, LLAMAGrammarEvaluationState };
2
+ export const addonBinding = await loadBin();
3
+ const { AddonModel, AddonContext, AddonGrammar, AddonGrammarEvaluationState } = addonBinding;
4
+ export { AddonModel, AddonContext, AddonGrammar, AddonGrammarEvaluationState };
5
5
  //# sourceMappingURL=LlamaBins.js.map
@@ -1,16 +1,20 @@
1
1
  /// <reference types="node" />
2
+ import { EventRelay } from "lifecycle-utils";
2
3
  import { ChatPromptWrapper } from "../ChatPromptWrapper.js";
3
4
  import { ConversationInteraction, Token } from "../types.js";
4
- import { LlamaContext } from "./LlamaContext.js";
5
+ import { LlamaModel } from "./LlamaModel.js";
6
+ import { LlamaContextSequence } from "./LlamaContext/LlamaContext.js";
5
7
  import { LlamaGrammar } from "./LlamaGrammar.js";
6
8
  export type LlamaChatSessionOptions = {
7
- context: LlamaContext;
9
+ contextSequence: LlamaContextSequence;
8
10
  printLLamaSystemInfo?: boolean;
9
- /** GeneralChatPromptWrapper is ued by default */
10
- promptWrapper?: ChatPromptWrapper | "auto";
11
+ /** `"auto"` is used by default */
12
+ promptWrapper?: "auto" | ChatPromptWrapper;
11
13
  systemPrompt?: string;
12
14
  /** Conversation history to load into the context to continue an existing conversation */
13
15
  conversationHistory?: readonly ConversationInteraction[];
16
+ /** Automatically dispose the sequence when the session is disposed */
17
+ autoDisposeSequence?: boolean;
14
18
  };
15
19
  export type LLamaChatPromptOptions = {
16
20
  onToken?: (tokens: Token[]) => void;
@@ -85,31 +89,30 @@ export type LlamaChatSessionRepeatPenalty = {
85
89
  presencePenalty?: number;
86
90
  };
87
91
  export declare class LlamaChatSession {
88
- private readonly _systemPrompt;
89
- private readonly _printLLamaSystemInfo;
90
- private readonly _promptWrapper;
91
- private _promptIndex;
92
- private _initialized;
93
- private _lastStopString;
94
- private _lastStopStringSuffix;
95
- private _conversationHistoryToLoad;
96
- private readonly _ctx;
92
+ readonly onDispose: EventRelay<void>;
97
93
  /**
98
- * @param {LlamaChatSessionOptions} options
94
+ * @param options
99
95
  */
100
- constructor({ context, printLLamaSystemInfo, promptWrapper, systemPrompt, conversationHistory }: LlamaChatSessionOptions);
96
+ constructor({ contextSequence, printLLamaSystemInfo, promptWrapper, systemPrompt, conversationHistory, autoDisposeSequence }: LlamaChatSessionOptions);
97
+ dispose({ disposedSequence }?: {
98
+ disposedSequence?: boolean;
99
+ }): void;
100
+ /** @hidden */
101
+ [Symbol.dispose](): void;
102
+ get disposed(): boolean;
101
103
  get initialized(): boolean;
102
- get context(): LlamaContext;
104
+ get sequence(): LlamaContextSequence;
105
+ get context(): import("./LlamaContext/LlamaContext.js").LlamaContext;
106
+ get model(): LlamaModel;
103
107
  init(): Promise<void>;
104
108
  /**
105
- * @param {string} prompt
106
- * @param {object} options
107
- * @returns {Promise<string>}
109
+ * @param prompt
110
+ * @param [options]
108
111
  */
109
112
  prompt(prompt: string, { onToken, signal, maxTokens, temperature, topK, topP, grammar, trimWhitespaceSuffix, repeatPenalty }?: LLamaChatPromptOptions): Promise<string>;
110
113
  /**
111
- * @param {string} prompt
112
- * @param {LLamaChatPromptOptions} options
114
+ * @param prompt
115
+ * @param [options]
113
116
  */
114
117
  promptWithMeta(prompt: string, { onToken, signal, maxTokens, temperature, topK, topP, grammar, trimWhitespaceSuffix, repeatPenalty }?: LLamaChatPromptOptions): Promise<{
115
118
  text: string;
@@ -117,6 +120,4 @@ export declare class LlamaChatSession {
117
120
  stopString: string | null;
118
121
  stopStringSuffix: string | null;
119
122
  }>;
120
- private _evalTokens;
121
- private _checkStopString;
122
123
  }