node-llama-cpp 3.0.0-beta.16 → 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 (173) hide show
  1. package/README.md +8 -5
  2. package/dist/ChatWrapper.d.ts +1 -15
  3. package/dist/ChatWrapper.js +22 -32
  4. package/dist/ChatWrapper.js.map +1 -1
  5. package/dist/apiDocsOverrides.d.ts +1 -0
  6. package/dist/apiDocsOverrides.js +5 -0
  7. package/dist/apiDocsOverrides.js.map +1 -0
  8. package/dist/bindings/AddonTypes.d.ts +4 -1
  9. package/dist/bindings/getLlama.d.ts +5 -1
  10. package/dist/bindings/getLlama.js +11 -4
  11. package/dist/bindings/getLlama.js.map +1 -1
  12. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.d.ts +3 -0
  13. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js +27 -0
  14. package/dist/bindings/utils/hasBuildingFromSourceDependenciesInstalled.js.map +1 -0
  15. package/dist/chatWrappers/FunctionaryChatWrapper.js +39 -40
  16. package/dist/chatWrappers/FunctionaryChatWrapper.js.map +1 -1
  17. package/dist/chatWrappers/{LlamaChatWrapper.d.ts → Llama2ChatWrapper.d.ts} +1 -1
  18. package/dist/chatWrappers/{LlamaChatWrapper.js → Llama2ChatWrapper.js} +3 -3
  19. package/dist/chatWrappers/Llama2ChatWrapper.js.map +1 -0
  20. package/dist/chatWrappers/Llama3ChatWrapper.d.ts +31 -0
  21. package/dist/chatWrappers/Llama3ChatWrapper.js +129 -0
  22. package/dist/chatWrappers/Llama3ChatWrapper.js.map +1 -0
  23. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.d.ts +2 -2
  24. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js +6 -2
  25. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js.map +1 -1
  26. package/dist/chatWrappers/generic/TemplateChatWrapper.d.ts +3 -4
  27. package/dist/chatWrappers/generic/TemplateChatWrapper.js +1 -2
  28. package/dist/chatWrappers/generic/TemplateChatWrapper.js.map +1 -1
  29. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.d.ts +42 -0
  30. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.js +82 -0
  31. package/dist/chatWrappers/utils/ChatModelFunctionsDocumentationGenerator.js.map +1 -0
  32. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js +3 -3
  33. package/dist/chatWrappers/utils/isJinjaTemplateEquivalentToSpecializedChatWrapper.js.map +1 -1
  34. package/dist/chatWrappers/utils/resolveChatWrapper.d.ts +6 -4
  35. package/dist/chatWrappers/utils/resolveChatWrapper.js +23 -17
  36. package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
  37. package/dist/cli/cli.js +5 -3
  38. package/dist/cli/cli.js.map +1 -1
  39. package/dist/cli/commands/ChatCommand.d.ts +2 -0
  40. package/dist/cli/commands/ChatCommand.js +26 -9
  41. package/dist/cli/commands/ChatCommand.js.map +1 -1
  42. package/dist/cli/commands/CompleteCommand.d.ts +2 -0
  43. package/dist/cli/commands/CompleteCommand.js +24 -7
  44. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  45. package/dist/cli/commands/DebugCommand.js +3 -5
  46. package/dist/cli/commands/DebugCommand.js.map +1 -1
  47. package/dist/cli/commands/DownloadCommand.d.ts +1 -1
  48. package/dist/cli/commands/DownloadCommand.js +2 -1
  49. package/dist/cli/commands/DownloadCommand.js.map +1 -1
  50. package/dist/cli/commands/InfillCommand.d.ts +2 -0
  51. package/dist/cli/commands/InfillCommand.js +24 -7
  52. package/dist/cli/commands/InfillCommand.js.map +1 -1
  53. package/dist/cli/commands/PullCommand.d.ts +12 -0
  54. package/dist/cli/commands/PullCommand.js +109 -0
  55. package/dist/cli/commands/PullCommand.js.map +1 -0
  56. package/dist/cli/commands/inspect/commands/InspectGgufCommand.d.ts +1 -0
  57. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +23 -11
  58. package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
  59. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.d.ts +2 -0
  60. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +43 -11
  61. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
  62. package/dist/cli/recommendedModels.js +61 -0
  63. package/dist/cli/recommendedModels.js.map +1 -1
  64. package/dist/cli/utils/printCommonInfoLines.js +4 -3
  65. package/dist/cli/utils/printCommonInfoLines.js.map +1 -1
  66. package/dist/cli/utils/resolveCommandGgufPath.d.ts +3 -1
  67. package/dist/cli/utils/resolveCommandGgufPath.js +44 -39
  68. package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
  69. package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +1 -1
  70. package/dist/evaluator/LlamaChat/LlamaChat.d.ts +18 -2
  71. package/dist/evaluator/LlamaChat/LlamaChat.js +271 -186
  72. package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
  73. package/dist/evaluator/LlamaChat/utils/FunctionCallGrammar.js +3 -1
  74. package/dist/evaluator/LlamaChat/utils/FunctionCallGrammar.js.map +1 -1
  75. package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +22 -3
  76. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +18 -7
  77. package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
  78. package/dist/evaluator/LlamaCompletion.d.ts +2 -2
  79. package/dist/evaluator/LlamaCompletion.js +11 -13
  80. package/dist/evaluator/LlamaCompletion.js.map +1 -1
  81. package/dist/evaluator/LlamaContext/LlamaContext.d.ts +6 -11
  82. package/dist/evaluator/LlamaContext/LlamaContext.js +23 -16
  83. package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
  84. package/dist/evaluator/LlamaEmbeddingContext.d.ts +2 -10
  85. package/dist/evaluator/LlamaEmbeddingContext.js +10 -24
  86. package/dist/evaluator/LlamaEmbeddingContext.js.map +1 -1
  87. package/dist/evaluator/LlamaGrammar.d.ts +1 -1
  88. package/dist/evaluator/LlamaModel.d.ts +23 -3
  89. package/dist/evaluator/LlamaModel.js +32 -5
  90. package/dist/evaluator/LlamaModel.js.map +1 -1
  91. package/dist/evaluator/TokenBias.d.ts +1 -1
  92. package/dist/evaluator/TokenBias.js +3 -3
  93. package/dist/evaluator/TokenBias.js.map +1 -1
  94. package/dist/gguf/insights/GgufInsights.js +12 -12
  95. package/dist/gguf/insights/GgufInsights.js.map +1 -1
  96. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js +27 -3
  97. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js.map +1 -1
  98. package/dist/gguf/parser/parseGguf.js +5 -0
  99. package/dist/gguf/parser/parseGguf.js.map +1 -1
  100. package/dist/gguf/readGgufFileInfo.d.ts +5 -2
  101. package/dist/gguf/readGgufFileInfo.js +38 -10
  102. package/dist/gguf/readGgufFileInfo.js.map +1 -1
  103. package/dist/gguf/types/GgufFileInfoTypes.d.ts +32 -0
  104. package/dist/gguf/types/GgufFileInfoTypes.js.map +1 -1
  105. package/dist/gguf/types/GgufMetadataTypes.d.ts +4 -0
  106. package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
  107. package/dist/gguf/utils/getGgufMetadataArchitectureData.js +1 -1
  108. package/dist/gguf/utils/getGgufMetadataArchitectureData.js.map +1 -1
  109. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.d.ts +2 -0
  110. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js +39 -0
  111. package/dist/gguf/utils/resolveBinarySplitGgufPartUrls.js.map +1 -0
  112. package/dist/gguf/utils/resolveSplitGgufParts.d.ts +7 -0
  113. package/dist/gguf/utils/resolveSplitGgufParts.js +55 -0
  114. package/dist/gguf/utils/resolveSplitGgufParts.js.map +1 -0
  115. package/dist/index.d.ts +9 -5
  116. package/dist/index.js +7 -3
  117. package/dist/index.js.map +1 -1
  118. package/dist/types.d.ts +21 -1
  119. package/dist/types.js.map +1 -1
  120. package/dist/utils/LlamaText.d.ts +31 -21
  121. package/dist/utils/LlamaText.js +253 -223
  122. package/dist/utils/LlamaText.js.map +1 -1
  123. package/dist/utils/StopGenerationDetector.d.ts +1 -1
  124. package/dist/utils/StopGenerationDetector.js +21 -18
  125. package/dist/utils/StopGenerationDetector.js.map +1 -1
  126. package/dist/utils/TokenStreamRegulator.d.ts +4 -2
  127. package/dist/utils/TokenStreamRegulator.js +22 -4
  128. package/dist/utils/TokenStreamRegulator.js.map +1 -1
  129. package/dist/utils/createModelDownloader.d.ts +99 -0
  130. package/dist/utils/createModelDownloader.js +226 -0
  131. package/dist/utils/createModelDownloader.js.map +1 -0
  132. package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js +18 -8
  133. package/dist/utils/findCharacterRemovalCountToFitChatHistoryInContext.js.map +1 -1
  134. package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js +15 -11
  135. package/dist/utils/getTypeScriptTypeStringForGbnfJsonSchema.js.map +1 -1
  136. package/dist/utils/parseTextTemplate.d.ts +2 -2
  137. package/dist/utils/parseTextTemplate.js +2 -2
  138. package/dist/utils/runtime.d.ts +4 -0
  139. package/dist/utils/runtime.js +8 -0
  140. package/dist/utils/runtime.js.map +1 -0
  141. package/dist/utils/utilTypes.d.ts +3 -0
  142. package/dist/utils/utilTypes.js +2 -0
  143. package/dist/utils/utilTypes.js.map +1 -0
  144. package/llama/addon.cpp +67 -14
  145. package/llama/binariesGithubRelease.json +1 -1
  146. package/llama/gitRelease.bundle +0 -0
  147. package/llama/grammars/README.md +1 -1
  148. package/llama/llama.cpp.info.json +1 -1
  149. package/llamaBins/linux-arm64/_nlcBuildMetadata.json +1 -1
  150. package/llamaBins/linux-arm64/llama-addon.node +0 -0
  151. package/llamaBins/linux-armv7l/_nlcBuildMetadata.json +1 -1
  152. package/llamaBins/linux-armv7l/llama-addon.node +0 -0
  153. package/llamaBins/linux-x64/_nlcBuildMetadata.json +1 -1
  154. package/llamaBins/linux-x64/llama-addon.node +0 -0
  155. package/llamaBins/linux-x64-cuda/_nlcBuildMetadata.json +1 -1
  156. package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
  157. package/llamaBins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -1
  158. package/llamaBins/linux-x64-vulkan/llama-addon.node +0 -0
  159. package/llamaBins/mac-arm64-metal/_nlcBuildMetadata.json +1 -1
  160. package/llamaBins/mac-arm64-metal/default.metallib +0 -0
  161. package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
  162. package/llamaBins/mac-x64/_nlcBuildMetadata.json +1 -1
  163. package/llamaBins/mac-x64/llama-addon.node +0 -0
  164. package/llamaBins/win-arm64/_nlcBuildMetadata.json +1 -1
  165. package/llamaBins/win-arm64/llama-addon.node +0 -0
  166. package/llamaBins/win-x64/_nlcBuildMetadata.json +1 -1
  167. package/llamaBins/win-x64/llama-addon.node +0 -0
  168. package/llamaBins/win-x64-cuda/_nlcBuildMetadata.json +1 -1
  169. package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
  170. package/llamaBins/win-x64-vulkan/_nlcBuildMetadata.json +1 -1
  171. package/llamaBins/win-x64-vulkan/llama-addon.node +0 -0
  172. package/package.json +9 -5
  173. package/dist/chatWrappers/LlamaChatWrapper.js.map +0 -1
@@ -15,17 +15,21 @@ export function getTypeScriptTypeStringForGbnfJsonSchema(schema) {
15
15
  .join(" | ");
16
16
  }
17
17
  else if (isGbnfJsonObjectSchema(schema)) {
18
- return Object.entries(schema.properties)
19
- .map(([propName, propSchema]) => {
20
- const escapedValue = JSON.stringify(propName) ?? "";
21
- const keyText = escapedValue.slice(1, -1) === propName ? propName : escapedValue;
22
- const valueType = getTypeScriptTypeStringForGbnfJsonSchema(propSchema);
23
- if (keyText === "" || valueType === "")
24
- return "";
25
- return keyText + ": " + valueType;
26
- })
27
- .filter((item) => item !== "")
28
- .join(", ");
18
+ return [
19
+ "{",
20
+ Object.entries(schema.properties)
21
+ .map(([propName, propSchema]) => {
22
+ const escapedValue = JSON.stringify(propName) ?? "";
23
+ const keyText = escapedValue.slice(1, -1) === propName ? propName : escapedValue;
24
+ const valueType = getTypeScriptTypeStringForGbnfJsonSchema(propSchema);
25
+ if (keyText === "" || valueType === "")
26
+ return "";
27
+ return keyText + ": " + valueType;
28
+ })
29
+ .filter((item) => item !== "")
30
+ .join(", "),
31
+ "}"
32
+ ].join("");
29
33
  }
30
34
  else if (isGbnfJsonArraySchema(schema)) {
31
35
  const valuesType = getTypeScriptTypeStringForGbnfJsonSchema(schema.items);
@@ -1 +1 @@
1
- {"version":3,"file":"getTypeScriptTypeStringForGbnfJsonSchema.js","sourceRoot":"","sources":["../../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACa,qBAAqB,EAAE,iCAAiC,EAAE,qBAAqB,EAC/F,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EACtE,MAAM,qBAAqB,CAAC;AAE7B,MAAM,UAAU,wCAAwC,CAAC,MAAsB;IAC3E,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK;aACtB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,wCAAwC,CAAC,SAAS,CAAC,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC7B;SAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QACtC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;KAC7C;SAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE;QACrC,OAAO,MAAM,CAAC,IAAI;aACb,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aACzC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;aAC7B,IAAI,CAAC,KAAK,CAAC,CAAC;KACpB;SAAM,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE;QACvC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;aACnC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;YACjF,MAAM,SAAS,GAAG,wCAAwC,CAAC,UAAU,CAAC,CAAC;YAEvE,IAAI,OAAO,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE;gBAClC,OAAO,EAAE,CAAC;YAEd,OAAO,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;QACtC,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;aAC7B,IAAI,CAAC,IAAI,CAAC,CAAC;KACnB;SAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QACtC,MAAM,UAAU,GAAG,wCAAwC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE1E,IAAI,UAAU,KAAK,EAAE;YACjB,OAAO,IAAI,CAAC;QAEhB,OAAO,GAAG,GAAG,UAAU,GAAG,KAAK,CAAC;KACnC;IAED,MAAM,KAAK,GAA4D,EAAE,CAAC;IAE1E,IAAI,iCAAiC,CAAC,MAAM,EAAE,QAAQ,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzB,IAAI,iCAAiC,CAAC,MAAM,EAAE,QAAQ,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzB,IAAI,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC;QACpD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzB,IAAI,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC;QACpD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAE1B,IAAI,iCAAiC,CAAC,MAAM,EAAE,MAAM,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvB,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"getTypeScriptTypeStringForGbnfJsonSchema.js","sourceRoot":"","sources":["../../src/utils/getTypeScriptTypeStringForGbnfJsonSchema.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { MergeUnionTypes } from "./mergeUnionTypes.js";
2
2
  /**
3
3
  * Parses a text template into a map of parts and their prefixes and suffixes.
4
4
  * This parser assumes each part occurs exactly once in the template, and that all parts must occur in the order they are defined.
5
- * For example,
5
+ * @example
6
6
  * ```typescript
7
7
  * const res = parseTextTemplate(
8
8
  * "Hello, {{name}}! What is the {{thing}}?",
@@ -25,7 +25,7 @@ import { MergeUnionTypes } from "./mergeUnionTypes.js";
25
25
  * }
26
26
  * });
27
27
  * ```
28
- *
28
+ * @example
29
29
  * ```typescript
30
30
  * const res2 = parseTextTemplate(
31
31
  * "What is the {{thing}}?",
@@ -2,7 +2,7 @@ import { splitText } from "lifecycle-utils";
2
2
  /**
3
3
  * Parses a text template into a map of parts and their prefixes and suffixes.
4
4
  * This parser assumes each part occurs exactly once in the template, and that all parts must occur in the order they are defined.
5
- * For example,
5
+ * @example
6
6
  * ```typescript
7
7
  * const res = parseTextTemplate(
8
8
  * "Hello, {{name}}! What is the {{thing}}?",
@@ -25,7 +25,7 @@ import { splitText } from "lifecycle-utils";
25
25
  * }
26
26
  * });
27
27
  * ```
28
- *
28
+ * @example
29
29
  * ```typescript
30
30
  * const res2 = parseTextTemplate(
31
31
  * "What is the {{thing}}?",
@@ -0,0 +1,4 @@
1
+ export declare const runningInElectron: boolean;
2
+ export declare const runningInsideAsar: boolean;
3
+ export declare const runningInBun: boolean;
4
+ export declare const runningInNode: boolean;
@@ -0,0 +1,8 @@
1
+ import path from "path";
2
+ import { fileURLToPath } from "url";
3
+ const __filename = fileURLToPath(import.meta.url);
4
+ export const runningInElectron = process.versions.electron != null;
5
+ export const runningInsideAsar = runningInElectron && __filename.toLowerCase().includes(".asar" + path.sep);
6
+ export const runningInBun = process.versions.bun != null;
7
+ export const runningInNode = !runningInElectron && !runningInBun;
8
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/utils/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;AAElC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC;AACnE,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5G,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC;AACzD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,iBAAiB,IAAI,CAAC,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type Writable<T> = {
2
+ -readonly [P in keyof T]: T[P];
3
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=utilTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilTypes.js","sourceRoot":"","sources":["../../src/utils/utilTypes.ts"],"names":[],"mappings":""}
package/llama/addon.cpp CHANGED
@@ -108,12 +108,12 @@ static void adjustNapiExternalMemorySubtract(Napi::Env env, uint64_t size) {
108
108
  }
109
109
  }
110
110
 
111
- std::string addon_model_token_to_piece(const struct llama_model* model, llama_token token) {
111
+ std::string addon_model_token_to_piece(const struct llama_model* model, llama_token token, bool specialTokens) {
112
112
  std::vector<char> result(8, 0);
113
- const int n_tokens = llama_token_to_piece(model, token, result.data(), result.size());
113
+ const int n_tokens = llama_token_to_piece(model, token, result.data(), result.size(), specialTokens);
114
114
  if (n_tokens < 0) {
115
115
  result.resize(-n_tokens);
116
- int check = llama_token_to_piece(model, token, result.data(), result.size());
116
+ int check = llama_token_to_piece(model, token, result.data(), result.size(), specialTokens);
117
117
  GGML_ASSERT(check == -n_tokens);
118
118
  } else {
119
119
  result.resize(n_tokens);
@@ -289,6 +289,10 @@ class AddonModel : public Napi::ObjectWrap<AddonModel> {
289
289
  model_params.use_mlock = options.Get("useMlock").As<Napi::Boolean>().Value();
290
290
  }
291
291
 
292
+ if (options.Has("checkTensors")) {
293
+ model_params.check_tensors = options.Get("checkTensors").As<Napi::Boolean>().Value();
294
+ }
295
+
292
296
  if (options.Has("onLoadProgress")) {
293
297
  auto onLoadProgressJSCallback = options.Get("onLoadProgress").As<Napi::Function>();
294
298
  if (onLoadProgressJSCallback.IsFunction()) {
@@ -378,13 +382,16 @@ class AddonModel : public Napi::ObjectWrap<AddonModel> {
378
382
  }
379
383
 
380
384
  Napi::Uint32Array tokens = info[0].As<Napi::Uint32Array>();
385
+ bool decodeSpecialTokens = info.Length() > 0
386
+ ? info[1].As<Napi::Boolean>().Value()
387
+ : false;
381
388
 
382
389
  // Create a stringstream for accumulating the decoded string.
383
390
  std::stringstream ss;
384
391
 
385
392
  // Decode each token and accumulate the result.
386
393
  for (size_t i = 0; i < tokens.ElementLength(); i++) {
387
- const std::string piece = addon_model_token_to_piece(model, (llama_token)tokens[i]);
394
+ const std::string piece = addon_model_token_to_piece(model, (llama_token)tokens[i], decodeSpecialTokens);
388
395
 
389
396
  if (piece.empty()) {
390
397
  continue;
@@ -534,6 +541,20 @@ class AddonModel : public Napi::ObjectWrap<AddonModel> {
534
541
 
535
542
  return Napi::Number::From(info.Env(), int32_t(tokenType));
536
543
  }
544
+ Napi::Value IsEogToken(const Napi::CallbackInfo& info) {
545
+ if (disposed) {
546
+ Napi::Error::New(info.Env(), "Model is disposed").ThrowAsJavaScriptException();
547
+ return info.Env().Undefined();
548
+ }
549
+
550
+ if (info[0].IsNumber() == false) {
551
+ return Napi::Boolean::New(info.Env(), false);
552
+ }
553
+
554
+ int token = info[0].As<Napi::Number>().Int32Value();
555
+
556
+ return Napi::Boolean::New(info.Env(), llama_token_is_eog(model, token));
557
+ }
537
558
  Napi::Value GetVocabularyType(const Napi::CallbackInfo& info) {
538
559
  if (disposed) {
539
560
  Napi::Error::New(info.Env(), "Model is disposed").ThrowAsJavaScriptException();
@@ -581,6 +602,7 @@ class AddonModel : public Napi::ObjectWrap<AddonModel> {
581
602
  InstanceMethod("eotToken", &AddonModel::EotToken),
582
603
  InstanceMethod("getTokenString", &AddonModel::GetTokenString),
583
604
  InstanceMethod("getTokenType", &AddonModel::GetTokenType),
605
+ InstanceMethod("isEogToken", &AddonModel::IsEogToken),
584
606
  InstanceMethod("getVocabularyType", &AddonModel::GetVocabularyType),
585
607
  InstanceMethod("shouldPrependBosToken", &AddonModel::ShouldPrependBosToken),
586
608
  InstanceMethod("getModelSize", &AddonModel::GetModelSize),
@@ -1054,6 +1076,30 @@ class AddonContext : public Napi::ObjectWrap<AddonContext> {
1054
1076
  return info.Env().Undefined();
1055
1077
  }
1056
1078
 
1079
+ Napi::Value CanBeNextTokenForGrammarEvaluationState(const Napi::CallbackInfo& info) {
1080
+ AddonGrammarEvaluationState* grammar_evaluation_state =
1081
+ Napi::ObjectWrap<AddonGrammarEvaluationState>::Unwrap(info[0].As<Napi::Object>());
1082
+ llama_token tokenId = info[1].As<Napi::Number>().Int32Value();
1083
+
1084
+ if ((grammar_evaluation_state)->grammar != nullptr) {
1085
+ std::vector<llama_token_data> candidates;
1086
+ candidates.reserve(1);
1087
+ candidates.emplace_back(llama_token_data { tokenId, 1, 0.0f });
1088
+
1089
+ llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false };
1090
+
1091
+ llama_sample_grammar(ctx, &candidates_p, (grammar_evaluation_state)->grammar);
1092
+
1093
+ if (candidates_p.size == 0 || candidates_p.data[0].logit == -INFINITY) {
1094
+ return Napi::Boolean::New(info.Env(), false);
1095
+ }
1096
+
1097
+ return Napi::Boolean::New(info.Env(), true);
1098
+ }
1099
+
1100
+ return Napi::Boolean::New(info.Env(), false);
1101
+ }
1102
+
1057
1103
  Napi::Value GetEmbedding(const Napi::CallbackInfo& info) {
1058
1104
  if (disposed) {
1059
1105
  Napi::Error::New(info.Env(), "Context is disposed").ThrowAsJavaScriptException();
@@ -1118,6 +1164,7 @@ class AddonContext : public Napi::ObjectWrap<AddonContext> {
1118
1164
  InstanceMethod("decodeBatch", &AddonContext::DecodeBatch),
1119
1165
  InstanceMethod("sampleToken", &AddonContext::SampleToken),
1120
1166
  InstanceMethod("acceptGrammarEvaluationStateToken", &AddonContext::AcceptGrammarEvaluationStateToken),
1167
+ InstanceMethod("canBeNextTokenForGrammarEvaluationState", &AddonContext::CanBeNextTokenForGrammarEvaluationState),
1121
1168
  InstanceMethod("getEmbedding", &AddonContext::GetEmbedding),
1122
1169
  InstanceMethod("getStateSize", &AddonContext::GetStateSize),
1123
1170
  InstanceMethod("printTimings", &AddonContext::PrintTimings),
@@ -1440,9 +1487,13 @@ class AddonContextSampleTokenWorker : public Napi::AsyncWorker {
1440
1487
  llama_token new_token_id = 0;
1441
1488
 
1442
1489
  // Select the best prediction.
1490
+ if (llama_get_logits(ctx->ctx) == nullptr) {
1491
+ SetError("This model does not support token generation");
1492
+ return;
1493
+ }
1494
+
1443
1495
  auto logits = llama_get_logits_ith(ctx->ctx, batchLogitIndex);
1444
1496
  auto n_vocab = llama_n_vocab(ctx->model->model);
1445
- auto eos_token = llama_token_eos(ctx->model->model);
1446
1497
 
1447
1498
  std::vector<llama_token_data> candidates;
1448
1499
  candidates.reserve(n_vocab);
@@ -1455,7 +1506,7 @@ class AddonContextSampleTokenWorker : public Napi::AsyncWorker {
1455
1506
  if (hasTokenBias) {
1456
1507
  auto logitBias = tokenBiases.at(token_id);
1457
1508
  if (logitBias == -INFINITY || logitBias < -INFINITY) {
1458
- if (token_id != eos_token) {
1509
+ if (!llama_token_is_eog(ctx->model->model, token_id)) {
1459
1510
  logit = -INFINITY;
1460
1511
  }
1461
1512
  } else {
@@ -1513,7 +1564,7 @@ class AddonContextSampleTokenWorker : public Napi::AsyncWorker {
1513
1564
  new_token_id = llama_sample_token(ctx->ctx, &candidates_p);
1514
1565
  }
1515
1566
 
1516
- if (new_token_id != eos_token && use_grammar && (grammar_evaluation_state)->grammar != nullptr) {
1567
+ if (!llama_token_is_eog(ctx->model->model, new_token_id) && use_grammar && (grammar_evaluation_state)->grammar != nullptr) {
1517
1568
  llama_grammar_accept_token(ctx->ctx, (grammar_evaluation_state)->grammar, new_token_id);
1518
1569
  }
1519
1570
 
@@ -1659,13 +1710,15 @@ static void addonLlamaCppLogCallback(ggml_log_level level, const char* text, voi
1659
1710
  }
1660
1711
  }
1661
1712
 
1662
- if (level == 2) {
1663
- fputs(text, stderr);
1664
- fflush(stderr);
1665
- } else {
1666
- fputs(text, stdout);
1667
- fflush(stdout);
1668
- }
1713
+ if (text != nullptr) {
1714
+ if (level == 2) {
1715
+ fputs(text, stderr);
1716
+ fflush(stderr);
1717
+ } else {
1718
+ fputs(text, stdout);
1719
+ fflush(stdout);
1720
+ }
1721
+ }
1669
1722
  }
1670
1723
 
1671
1724
  Napi::Value setLogger(const Napi::CallbackInfo& info) {
@@ -1,3 +1,3 @@
1
1
  {
2
- "release": "b2665"
2
+ "release": "b2834"
3
3
  }
Binary file
@@ -51,7 +51,7 @@ single-line ::= [^\n]+ "\n"`
51
51
 
52
52
  ## Sequences and Alternatives
53
53
 
54
- The order of symbols in a sequence matter. For example, in `"1. " move " " move "\n"`, the `"1. "` must come before the first `move`, etc.
54
+ The order of symbols in a sequence matters. For example, in `"1. " move " " move "\n"`, the `"1. "` must come before the first `move`, etc.
55
55
 
56
56
  Alternatives, denoted by `|`, give different sequences that are acceptable. For example, in `move ::= pawn | nonpawn | castle`, `move` can be a `pawn` move, a `nonpawn` move, or a `castle`.
57
57
 
@@ -1,4 +1,4 @@
1
1
  {
2
- "tag": "b2665",
2
+ "tag": "b2834",
3
3
  "llamaCppGithubRepo": "ggerganov/llama.cpp"
4
4
  }
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"arm64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"arm64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"armv7l","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"armv7l","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":"cuda","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":"cuda","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":"vulkan","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"linux","platformInfo":{"name":"Ubuntu","version":"22.04"},"arch":"x64","gpu":"vulkan","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"mac","platformInfo":{"name":"macOS","version":"21.6.0"},"arch":"arm64","gpu":"metal","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"mac","platformInfo":{"name":"macOS","version":"21.6.0"},"arch":"arm64","gpu":"metal","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"mac","platformInfo":{"name":"macOS","version":"21.6.0"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"mac","platformInfo":{"name":"macOS","version":"21.6.0"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
Binary file
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"arm64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"arm64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":false,"llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
Binary file
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":"cuda","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":"cuda","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
@@ -1 +1 @@
1
- {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":"vulkan","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2665"}}}
1
+ {"buildOptions":{"customCmakeOptions":{},"progressLogs":true,"platform":"win","platformInfo":{"name":"Windows","version":"10.0.20348"},"arch":"x64","gpu":"vulkan","llamaCpp":{"repo":"ggerganov/llama.cpp","release":"b2834"}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-llama-cpp",
3
- "version": "3.0.0-beta.16",
3
+ "version": "3.0.0-beta.18",
4
4
  "description": "Run AI models locally on your machine with node.js bindings for llama.cpp. Force a JSON schema on the model output on the generation level",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -60,8 +60,9 @@
60
60
  "dev:setup:downloadAllTestModels": "vite-node test/utils/scripts/downloadAllTestModels.ts",
61
61
  "dev:setup": "npm run build && node ./dist/cli/cli.js download --noUsageExample && npm run docs:generateTypedoc && npm run dev:setup:downloadAllTestModels",
62
62
  "dev:build": "npm run build && node ./dist/cli/cli.js build --noUsageExample",
63
- "clean": "rm -rf ./node_modules ./dist ./tsconfig.tsbuildinfo ./test/.models",
64
- "docs:generateTypedoc": "typedoc && rimraf ./docs/api/index.md ./docs/api/exports.md",
63
+ "clean": "rm -rf ./node_modules ./dist ./tsconfig.tsbuildinfo ./test/.models ./docs/api ./docs/api-overrides",
64
+ "docs:generateTypedoc": "typedoc && rimraf ./docs/api/index.md ./docs/api/globals.md ./docs/api/functions/LlamaText.md && npm run docs:generateTypedoc:overrides",
65
+ "docs:generateTypedoc:overrides": "typedoc --entryPoints ./src/apiDocsOverrides.ts --out ./docs/api-overrides && copyfiles --flat \"./docs/api-overrides/classes/*.md\" ./docs/api/classes && rimraf ./docs/api-overrides",
65
66
  "docs:dev": "npm run docs:generateTypedoc && vitepress dev",
66
67
  "docs:build": "npm run docs:generateTypedoc && vitepress build",
67
68
  "docs:preview": "npm run docs:generateTypedoc && vitepress preview",
@@ -115,6 +116,7 @@
115
116
  "@commitlint/cli": "^17.7.1",
116
117
  "@commitlint/config-conventional": "^17.7.0",
117
118
  "@semantic-release/exec": "^6.0.3",
119
+ "@shikijs/vitepress-twoslash": "^1.3.0",
118
120
  "@types/async-retry": "^1.4.8",
119
121
  "@types/bytes": "^3.1.4",
120
122
  "@types/cross-spawn": "^6.0.2",
@@ -129,6 +131,7 @@
129
131
  "@typescript-eslint/parser": "^6.3.0",
130
132
  "@vitest/coverage-v8": "^1.4.0",
131
133
  "@vitest/ui": "^1.4.0",
134
+ "copyfiles": "^2.4.1",
132
135
  "eslint": "^8.46.0",
133
136
  "eslint-plugin-import": "^2.28.0",
134
137
  "eslint-plugin-jsdoc": "^46.9.0",
@@ -143,7 +146,7 @@
143
146
  "typedoc-vitepress-theme": "^1.0.0-next.10",
144
147
  "typescript": "^5.2.2",
145
148
  "vite-node": "^1.4.0",
146
- "vitepress": "1.0.0-rc.22",
149
+ "vitepress": "^1.1.4",
147
150
  "vitest": "^1.4.0",
148
151
  "zx": "^7.2.3"
149
152
  },
@@ -157,8 +160,9 @@
157
160
  "cross-env": "^7.0.3",
158
161
  "cross-spawn": "^7.0.3",
159
162
  "env-var": "^7.3.1",
163
+ "filenamify": "^6.0.0",
160
164
  "fs-extra": "^11.2.0",
161
- "ipull": "^3.0.11",
165
+ "ipull": "^3.1.1",
162
166
  "is-unicode-supported": "^2.0.0",
163
167
  "lifecycle-utils": "^1.4.1",
164
168
  "log-symbols": "^5.1.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"LlamaChatWrapper.js","sourceRoot":"","sources":["../../src/chatWrappers/LlamaChatWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAC,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAEjF,mEAAmE;AACnE,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAC7B,WAAW,GAAW,WAAW,CAAC;IAElD,gBAAgB,CAAkB,kBAAkB,CAAU;IAE9D,YAAmB,EACf,iBAAiB,GAAG,KAAK,KAMzB,EAAE;QACF,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAChD,CAAC;IAEe,mBAAmB,CAAC,OAAmC,EAAE,EAAC,kBAAkB,EAAE,sBAAsB,KAGhH,EAAE;QAKF,MAAM,oBAAoB,GAAG,IAAI,CAAC,2CAA2C,CAAC,OAAO,EAAE,kBAAkB,EAAE;YACvG,cAAc,EAAE,sBAAsB;SACzC,CAAC,CAAC;QAEH,MAAM,WAAW,GAIZ,EAAE,CAAC;QAER,IAAI,WAAW,GAAa,EAAE,CAAC;QAC/B,IAAI,SAAS,GAAa,EAAE,CAAC;QAC7B,IAAI,UAAU,GAAa,EAAE,CAAC;QAC9B,IAAI,qBAAqB,GAAuC,IAAI,CAAC;QAErE,SAAS,KAAK;YACV,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;gBACvE,WAAW,CAAC,IAAI,CAAC;oBACb,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;oBAChC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;oBAC5B,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;iBACjC,CAAC,CAAC;YAEP,WAAW,GAAG,EAAE,CAAC;YACjB,SAAS,GAAG,EAAE,CAAC;YACf,UAAU,GAAG,EAAE,CAAC;QACpB,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE;YACrC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACxB,IAAI,qBAAqB,KAAK,QAAQ;oBAClC,KAAK,EAAE,CAAC;gBAEZ,qBAAqB,GAAG,QAAQ,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC/B;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;gBAC7B,IAAI,qBAAqB,KAAK,QAAQ,IAAI,qBAAqB,KAAK,MAAM;oBACtE,KAAK,EAAE,CAAC;gBAEZ,qBAAqB,GAAG,MAAM,CAAC;gBAC/B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC7B;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;gBAC9B,qBAAqB,GAAG,OAAO,CAAC;gBAChC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aAClE;;gBACG,KAAK,CAAC,IAAoB,CAAC,CAAC;SACnC;QAED,KAAK,EAAE,CAAC;QAER,MAAM,WAAW,GAAG,SAAS,CACzB,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,EAAE,KAAK,EAAE,EAAE;YAC7C,MAAM,UAAU,GAAG,KAAK,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YAEpD,OAAO,SAAS,CAAC;gBACb,IAAI,YAAY,CAAC,KAAK,CAAC;gBACvB,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;oBACtC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;oBACf,CAAC,CAAC,SAAS,CAAC;wBACR,IAAI,iBAAiB,CAAC,SAAS,CAAC;wBAChC,MAAM,CAAC,MAAM,KAAK,CAAC;4BACf,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;4BACf,CAAC,CAAC,SAAS,CAAC;gCACR,IAAI,iBAAiB,CAAC,WAAW,CAAC;gCAClC,MAAM;gCACN,IAAI,iBAAiB,CAAC,gBAAgB,CAAC;6BAC1C,CAAC;wBACN,IAAI;wBACJ,IAAI,iBAAiB,CAAC,WAAW,CAAC;qBACrC,CAAC;gBACN,KAAK;gBACL,IAAI,CAAC,kBAAkB;oBACnB,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,EAAE;gBACR,UAAU;oBACN,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;oBACf,CAAC,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC;aAChC,CAAC,CAAC;QACP,CAAC,CAAC,CACL,CAAC;QAEF,OAAO;YACH,WAAW;YACX,sBAAsB,EAAE;gBACpB,SAAS,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;gBAClC,SAAS,CAAC,MAAM,CAAC;aACpB;SACJ,CAAC;IACN,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,yDAAyD;QAC5E,OAAO,CAAC;gBACJ,iBAAiB,EAAE,KAAK;aAC3B,EAAE;gBACC,iBAAiB,EAAE,IAAI;aAC1B,CAA4D,CAAC;IAClE,CAAC;CACJ"}