node-llama-cpp 3.0.0-beta.36 → 3.0.0-beta.38

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 (98) hide show
  1. package/bins/linux-arm64/_nlcBuildMetadata.json +1 -1
  2. package/bins/linux-arm64/libllama.so +0 -0
  3. package/bins/linux-arm64/llama-addon.node +0 -0
  4. package/bins/linux-armv7l/_nlcBuildMetadata.json +1 -1
  5. package/bins/linux-armv7l/libllama.so +0 -0
  6. package/bins/linux-armv7l/llama-addon.node +0 -0
  7. package/bins/linux-x64/_nlcBuildMetadata.json +1 -1
  8. package/bins/linux-x64/libllama.so +0 -0
  9. package/bins/linux-x64/llama-addon.node +0 -0
  10. package/bins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -1
  11. package/bins/linux-x64-vulkan/libllama.so +0 -0
  12. package/bins/linux-x64-vulkan/llama-addon.node +0 -0
  13. package/bins/mac-arm64-metal/_nlcBuildMetadata.json +1 -1
  14. package/bins/mac-arm64-metal/ggml-common.h +7 -7
  15. package/bins/mac-arm64-metal/ggml-metal.metal +0 -1
  16. package/bins/mac-arm64-metal/libggml.dylib +0 -0
  17. package/bins/mac-arm64-metal/libllama.dylib +0 -0
  18. package/bins/mac-arm64-metal/llama-addon.node +0 -0
  19. package/bins/mac-x64/_nlcBuildMetadata.json +1 -1
  20. package/bins/mac-x64/libllama.dylib +0 -0
  21. package/bins/mac-x64/llama-addon.node +0 -0
  22. package/bins/win-arm64/_nlcBuildMetadata.json +1 -1
  23. package/bins/win-arm64/ggml.dll +0 -0
  24. package/bins/win-arm64/llama-addon.node +0 -0
  25. package/bins/win-arm64/llama.dll +0 -0
  26. package/bins/win-x64/_nlcBuildMetadata.json +1 -1
  27. package/bins/win-x64/ggml.dll +0 -0
  28. package/bins/win-x64/llama-addon.node +0 -0
  29. package/bins/win-x64/llama.dll +0 -0
  30. package/bins/win-x64-vulkan/_nlcBuildMetadata.json +1 -1
  31. package/bins/win-x64-vulkan/ggml.dll +0 -0
  32. package/bins/win-x64-vulkan/llama-addon.node +0 -0
  33. package/bins/win-x64-vulkan/llama.dll +0 -0
  34. package/dist/bindings/AddonTypes.d.ts +1 -0
  35. package/dist/bindings/Llama.d.ts +2 -2
  36. package/dist/bindings/Llama.js +4 -1
  37. package/dist/bindings/Llama.js.map +1 -1
  38. package/dist/bindings/getLlama.d.ts +5 -2
  39. package/dist/bindings/getLlama.js +2 -0
  40. package/dist/bindings/getLlama.js.map +1 -1
  41. package/dist/bindings/types.d.ts +1 -0
  42. package/dist/bindings/types.js.map +1 -1
  43. package/dist/bindings/utils/getGpuTypesToUseForOption.d.ts +2 -1
  44. package/dist/bindings/utils/getGpuTypesToUseForOption.js +13 -4
  45. package/dist/bindings/utils/getGpuTypesToUseForOption.js.map +1 -1
  46. package/dist/chatWrappers/Llama3ChatWrapper.js +2 -2
  47. package/dist/chatWrappers/Llama3ChatWrapper.js.map +1 -1
  48. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.d.ts +9 -0
  49. package/dist/chatWrappers/generic/JinjaTemplateChatWrapper.js.map +1 -1
  50. package/dist/cli/commands/ChatCommand.d.ts +1 -0
  51. package/dist/cli/commands/ChatCommand.js +15 -6
  52. package/dist/cli/commands/ChatCommand.js.map +1 -1
  53. package/dist/cli/commands/CompleteCommand.d.ts +1 -0
  54. package/dist/cli/commands/CompleteCommand.js +13 -4
  55. package/dist/cli/commands/CompleteCommand.js.map +1 -1
  56. package/dist/cli/commands/InfillCommand.d.ts +1 -0
  57. package/dist/cli/commands/InfillCommand.js +13 -4
  58. package/dist/cli/commands/InfillCommand.js.map +1 -1
  59. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.d.ts +1 -0
  60. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +19 -6
  61. package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
  62. package/dist/cli/utils/interactivelyAskForModel.d.ts +2 -1
  63. package/dist/cli/utils/interactivelyAskForModel.js +19 -9
  64. package/dist/cli/utils/interactivelyAskForModel.js.map +1 -1
  65. package/dist/cli/utils/printCommonInfoLines.js +4 -0
  66. package/dist/cli/utils/printCommonInfoLines.js.map +1 -1
  67. package/dist/cli/utils/resolveCommandGgufPath.d.ts +2 -1
  68. package/dist/cli/utils/resolveCommandGgufPath.js +3 -2
  69. package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
  70. package/dist/evaluator/LlamaContext/LlamaContext.d.ts +1 -0
  71. package/dist/evaluator/LlamaContext/LlamaContext.js +15 -4
  72. package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
  73. package/dist/evaluator/LlamaContext/types.d.ts +14 -0
  74. package/dist/evaluator/LlamaModel/LlamaModel.d.ts +22 -0
  75. package/dist/evaluator/LlamaModel/LlamaModel.js +49 -4
  76. package/dist/evaluator/LlamaModel/LlamaModel.js.map +1 -1
  77. package/dist/gguf/insights/GgufInsights.d.ts +3 -1
  78. package/dist/gguf/insights/GgufInsights.js +18 -2
  79. package/dist/gguf/insights/GgufInsights.js.map +1 -1
  80. package/dist/gguf/insights/GgufInsightsConfigurationResolver.d.ts +6 -3
  81. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js +8 -5
  82. package/dist/gguf/insights/GgufInsightsConfigurationResolver.js.map +1 -1
  83. package/dist/gguf/insights/utils/resolveContextContextSizeOption.d.ts +2 -1
  84. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js +3 -1
  85. package/dist/gguf/insights/utils/resolveContextContextSizeOption.js.map +1 -1
  86. package/dist/gguf/insights/utils/resolveModelGpuLayersOption.d.ts +2 -1
  87. package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js +16 -10
  88. package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js.map +1 -1
  89. package/dist/gguf/types/GgufMetadataTypes.d.ts +15 -10
  90. package/dist/gguf/types/GgufMetadataTypes.js +15 -2
  91. package/dist/gguf/types/GgufMetadataTypes.js.map +1 -1
  92. package/dist/index.d.ts +3 -3
  93. package/dist/index.js.map +1 -1
  94. package/llama/addon.cpp +13 -26
  95. package/llama/binariesGithubRelease.json +1 -1
  96. package/llama/gitRelease.bundle +0 -0
  97. package/llama/llama.cpp.info.json +1 -1
  98. package/package.json +3 -3
@@ -20,7 +20,7 @@ import { splitAnsiToLines } from "./splitAnsiToLines.js";
20
20
  import { consolePromptQuestion } from "./consolePromptQuestion.js";
21
21
  import { renderInfoLine } from "./printInfoLine.js";
22
22
  const vramStateUpdateInterval = 1000;
23
- export async function interactivelyAskForModel({ llama, modelsDirectory, allowLocalModels = true, downloadIntent = true }) {
23
+ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLocalModels = true, downloadIntent = true, flashAttention = false }) {
24
24
  let localModelFileOptions = [];
25
25
  const recommendedModelOptions = [];
26
26
  const activeInteractionController = new AbortController();
@@ -61,7 +61,9 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
61
61
  }
62
62
  readItems++;
63
63
  progressUpdater.setProgress(readItems / ggufFileNames.length, renderProgress());
64
- const compatibilityScore = await ggufInsights?.configurationResolver.scoreModelConfigurationCompatibility();
64
+ const compatibilityScore = await ggufInsights?.configurationResolver.scoreModelConfigurationCompatibility({
65
+ flashAttention: flashAttention && ggufInsights?.flashAttentionSupported
66
+ });
65
67
  return {
66
68
  type: "localModel",
67
69
  title: fileName,
@@ -145,7 +147,7 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
145
147
  try {
146
148
  // eslint-disable-next-line no-constant-condition
147
149
  while (true) {
148
- const minWidth = Math.min(80, process.stdout.columns - 1);
150
+ const minWidth = Math.min(80 + (flashAttention ? 26 : 0), process.stdout.columns - 1);
149
151
  const selectedItem = await basicChooseFromListConsoleInteraction({
150
152
  title(item, rerender) {
151
153
  const title = chalk.bold("Select a model:") + " ";
@@ -161,7 +163,12 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
161
163
  chalk.yellow("VRAM usage:") + " " +
162
164
  (String(Math.floor((vramState.used / vramState.total) * 100 * 100) / 100) + "%") + " " +
163
165
  chalk.dim("(" + bytes(vramState.used) + "/" + bytes(vramState.total) + ")") +
164
- " "));
166
+ " ") + (!flashAttention
167
+ ? ""
168
+ : (" " +
169
+ chalk.bgGray(" " +
170
+ chalk.yellow("Flash attention:") + " " + "enabled" +
171
+ " "))));
165
172
  const pad = Math.max(0, minWidth - (stripAnsi(title).length + stripAnsi(vramStateText).length));
166
173
  clearTimeout(scheduledTitleRerenderTimeout);
167
174
  scheduledTitleRerenderTimeout = setTimeout(async () => {
@@ -193,7 +200,7 @@ export async function interactivelyAskForModel({ llama, modelsDirectory, allowLo
193
200
  },
194
201
  items: options,
195
202
  renderItem(item, focused, rerender) {
196
- return renderSelectionItem(item, focused, rerender, activeInteractionController.signal, llama);
203
+ return renderSelectionItem(item, focused, rerender, activeInteractionController.signal, llama, flashAttention);
197
204
  },
198
205
  canFocusItem(item) {
199
206
  return item.type === "recommendedModel" || item.type === "localModel" || item.type === "action";
@@ -283,7 +290,7 @@ async function askForModelUrlOrPath(allowLocalModels) {
283
290
  }
284
291
  });
285
292
  }
286
- function renderSelectionItem(item, focused, rerender, abortSignal, llama) {
293
+ function renderSelectionItem(item, focused, rerender, abortSignal, llama, flashAttention) {
287
294
  if (item.type === "localModel") {
288
295
  let modelText = item.title instanceof Function
289
296
  ? item.title()
@@ -305,7 +312,8 @@ function renderSelectionItem(item, focused, rerender, abortSignal, llama) {
305
312
  recommendedModelOption: item,
306
313
  abortSignal,
307
314
  rerenderOption: rerender,
308
- llama
315
+ llama,
316
+ flashAttention
309
317
  });
310
318
  }
311
319
  if (item.urlSelectionLoadingState === "loading")
@@ -408,7 +416,7 @@ function renderCompatibilityPercentageWithColors(percentage, { greenBright = 100
408
416
  return chalk.yellowBright(percentageText);
409
417
  return chalk.red(percentageText);
410
418
  }
411
- async function selectFileForModelRecommendation({ recommendedModelOption, llama, abortSignal, rerenderOption }) {
419
+ async function selectFileForModelRecommendation({ recommendedModelOption, llama, abortSignal, rerenderOption, flashAttention }) {
412
420
  try {
413
421
  let bestScore = undefined;
414
422
  let bestScoreSelectedUrl = undefined;
@@ -423,7 +431,9 @@ async function selectFileForModelRecommendation({ recommendedModelOption, llama,
423
431
  const ggufInsights = await GgufInsights.from(ggufFileInfo, llama);
424
432
  if (abortSignal.aborted)
425
433
  return;
426
- const compatibilityScore = await ggufInsights.configurationResolver.scoreModelConfigurationCompatibility();
434
+ const compatibilityScore = await ggufInsights.configurationResolver.scoreModelConfigurationCompatibility({
435
+ flashAttention
436
+ });
427
437
  if (bestScore == null || compatibilityScore.compatibilityScore > bestScore) {
428
438
  bestScore = compatibilityScore.compatibilityScore;
429
439
  bestScoreSelectedUrl = {
@@ -1 +1 @@
1
- {"version":3,"file":"interactivelyAskForModel.js","sourceRoot":"","sources":["../../../src/cli/utils/interactivelyAskForModel.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAC,sBAAsB,EAAC,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,qBAAqB,EAAC,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAC,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAC,gBAAgB,EAAC,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAC,qCAAqC,EAAC,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,qCAAqC,EAAC,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AA8BlD,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAC3C,KAAK,EACL,eAAe,EACf,gBAAgB,GAAG,IAAI,EACvB,cAAc,GAAG,IAAI,EAMxB;IACG,IAAI,qBAAqB,GAA6C,EAAE,CAAC;IACzE,MAAM,uBAAuB,GAAmD,EAAE,CAAC;IACnF,MAAM,2BAA2B,GAAG,IAAI,eAAe,EAAE,CAAC;IAC1D,IAAI,6BAA6B,GAA8C,SAAS,CAAC;IACzF,IAAI,SAAS,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC;IAEtC,IAAI,gBAAgB,IAAI,eAAe,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACtF,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;aACpD,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3B,OAAO,KAAK,CAAC;YAEjB,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAElD,OAAO,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QACP,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CACzB,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,MAAM,GAAG,GAAG,CAC7F,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;YACxB,MAAM,eAAe,CAAC;gBAClB,WAAW,EAAE,gCAAgC;gBAC7C,QAAQ,EAAE,uCAAuC;gBACjD,WAAW,EAAE,6BAA6B;gBAC1C,mBAAmB,EAAE,IAAI;gBACzB,sBAAsB,EAAE,cAAc,EAAE;aAC3C,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE;gBACzB,qBAAqB,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;oBAEtD,IAAI,YAAY,GAA6B,SAAS,CAAC;oBACvD,IAAI,CAAC;wBACD,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE;4BAClD,UAAU,EAAE,YAAY;4BACxB,MAAM,EAAE,2BAA2B,CAAC,MAAM;yBAC7C,CAAC,CAAC;wBACH,YAAY,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;oBAChE,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,aAAa;oBACjB,CAAC;oBAED,SAAS,EAAE,CAAC;oBACZ,eAAe,CAAC,WAAW,CAAC,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;oBAEhF,MAAM,kBAAkB,GAAG,MAAM,YAAY,EAAE,qBAAqB,CAAC,oCAAoC,EAAE,CAAC;oBAE5G,OAAO;wBACH,IAAI,EAAE,YAAY;wBAClB,KAAK,EAAE,QAAQ;wBACf,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;wBAChD,YAAY,EAAE,YAAY;wBAC1B,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB;wBAC1D,uBAAuB,EAAE,kBAAkB,EAAE,UAAU;wBACvD,wBAAwB,EAAE,kBAAkB,EAAE,cAAc,CAAC,WAAW;qBACrD,CAAC;gBAC5B,CAAC,CAAC,CACL,CAAC;gBAEF,qBAAqB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACxD,IAAI,CAAC,CAAC,kBAAkB,IAAI,IAAI,IAAI,CAAC,CAAC,kBAAkB,IAAI,IAAI;wBAC5D,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;yBAChC,IAAI,CAAC,CAAC,kBAAkB,IAAI,IAAI;wBACjC,OAAO,CAAC,CAAC,CAAC;yBACT,IAAI,CAAC,CAAC,kBAAkB,IAAI,IAAI;wBACjC,OAAO,CAAC,CAAC;yBACR,IAAI,CAAC,CAAC,kBAAkB,KAAK,CAAC,CAAC,kBAAkB;wBAClD,CAAC,CAAC,uBAAuB,IAAI,IAAI,IAAI,CAAC,CAAC,uBAAuB,IAAI,IAAI;wBAEtE,OAAO,CAAC,CAAC,uBAAuB,GAAG,CAAC,CAAC,uBAAuB,CAAC;oBAEjE,OAAO,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,CAAC;gBACvD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC;QACD,0EAA0E;QAC1E,MAAM,EAAC,iBAAiB,EAAC,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAEpE,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;YAC/C,MAAM,aAAa,GAAG,qCAAqC,CAAC,gBAAgB,CAAC,CAAC;YAE9E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gBACxB,uBAAuB,CAAC,IAAI,CAAC;oBACzB,IAAI,EAAE,kBAAkB;oBACxB,KAAK,EAAE,gBAAgB,CAAC,IAAI;oBAC5B,aAAa;oBACb,WAAW,EAAE,gBAAgB,CAAC,WAAW;iBAC5C,CAAC,CAAC;QACX,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,aAAa;IACjB,CAAC;IAED,IAAI,iBAAiB,GAAG,CAAC,CAAC,CAAC,qBAAqB;IAChD,MAAM,OAAO,GAAkB;QAC3B;YACI,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAgB;gBAClB,CAAC,CAAC,mCAAmC;gBACrC,CAAC,CAAC,sBAAsB;YAC5B,GAAG,EAAE,SAAS;SACjB;QACD,GAAG,CACC,CAAC,qBAAqB,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,IAAI,IAAI,CAAC;YAC3D,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBAChD;gBACD;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC;iBAC3G;gBACD,GAAG,qBAAqB;aACH,CAChC;QACD,GAAG,CACC,uBAAuB,CAAC,MAAM,KAAK,CAAC;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBAChD;gBACD;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAC7C,cAAc;wBACV,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;wBAC3C,CAAC,CAAC,EAAE,CACX;iBACJ;gBACD,GAAG,uBAAuB;aACL,CAChC;KACJ,CAAC;IAEF,IAAI,CAAC;QACD,iDAAiD;QACjD,OAAO,IAAI,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,MAAM,qCAAqC,CAAC;gBAC7D,KAAK,CAAC,IAAI,EAAE,QAAQ;oBAChB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;oBAEnD,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,KAAK,CAAC;wBACvC,CAAC,CAAC,KAAK,CAAC,MAAM,CACV,GAAG;4BACH,QAAQ;4BACR,GAAG,CACN;wBACD,CAAC,CAAC,CACE,KAAK,CAAC,MAAM,CACR,GAAG;4BACH,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC;4BAC7D,GAAG,CACN;4BACD,GAAG;4BACH,KAAK,CAAC,MAAM,CACR,GAAG;gCACH,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG;gCACjC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG;gCACtF,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;gCAC3E,GAAG,CACN,CACJ,CAAC;oBAEN,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;oBAEhG,YAAY,CAAC,6BAA6B,CAAC,CAAC;oBAC5C,6BAA6B,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;wBAClD,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;wBAChD,IAAI,SAAS,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;4BACjF,SAAS,GAAG,YAAY,CAAC;4BACzB,QAAQ,EAAE,CAAC;wBACf,CAAC;oBACL,CAAC,EAAE,uBAAuB,CAAC,CAAC;oBAE5B,OAAO;wBACH,KAAK;wBACL,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;wBACf,aAAa;qBAChB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,CAAC;gBACD,MAAM,CAAC,IAAI;oBACP,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI;wBAC5D,OAAO,SAAS,CAAC;oBAErB,MAAM,OAAO,GAAG,CAAC,CAAC;oBAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;oBACnE,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAE3D,OAAO,KAAK;wBACR,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,IAAI;wBACjE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;6BAC5C,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI;wBACtB,gBAAgB,CAAC,mCAAmC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC;6BACjG,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;6BAC3C,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;gBACD,KAAK,EAAE,OAAO;gBACd,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ;oBAC9B,OAAO,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,2BAA2B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnG,CAAC;gBACD,YAAY,CAAC,IAAI;oBACb,OAAO,IAAI,CAAC,IAAI,KAAK,kBAAkB,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;gBACpG,CAAC;gBACD,aAAa,CAAC,IAAI;oBACd,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB;wBAChC,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC;oBAEpC,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;gBAChE,CAAC;gBACD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;gBAClE,iBAAiB,EAAE,CAAC;gBACpB,iBAAiB,EAAE,CAAC;gBACpB,mBAAmB,CAAC,IAAI;oBACpB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;wBACnE,OAAO,EAAE,CAAC;yBACT,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBAClC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,YAAY,QAAQ;4BAC7C,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;4BACd,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;wBAEjB,OAAO,UAAU,CAAC,OAAO,GAAG,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC5E,CAAC;yBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;wBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,YAAY,QAAQ;4BAC7C,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;4BACd,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;wBAEjB,OAAO,UAAU,CAAC,OAAO,GAAG,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC5E,CAAC;oBAED,KAAK,CAAC,IAAoB,CAAC,CAAC;oBAC5B,OAAO,EAAE,CAAC;gBACd,CAAC;gBACD,WAAW,EAAE,IAAI;aACpB,CAAC,CAAC;YAEH,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,CAAC,IAAI,KAAK,WAAW;gBACzD,SAAS;iBACR,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY;gBACvC,OAAO,YAAY,CAAC,IAAI,CAAC;iBACxB,IAAI,YAAY,CAAC,IAAI,KAAK,kBAAkB,IAAI,YAAY,CAAC,WAAW,IAAI,IAAI;gBACjF,OAAO,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC;iBACnC,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtC,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;oBACjC,iBAAiB,GAAG,CAAC,CAAC;oBACtB,MAAM,sBAAsB,GAAG,MAAM,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;oBAE5E,IAAI,sBAAsB,IAAI,IAAI;wBAC9B,SAAS;oBAEb,OAAO,sBAAsB,CAAC;gBAClC,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;YAAS,CAAC;QACP,2BAA2B,CAAC,KAAK,EAAE,CAAC;IACxC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,gBAAyB;IACzD,OAAO,MAAM,qBAAqB,CAC9B,gBAAgB;QACZ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC;QAChD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,EACvC;QACI,WAAW,EAAE,KAAK;QAClB,KAAK,CAAC,QAAQ,CAAC,KAAK;YAChB,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACD,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,OAAO,aAAa,CAAC;gBACzB,CAAC;gBAED,OAAO,IAAI,CAAC;YAChB,CAAC;iBAAM,IAAI,CAAC,gBAAgB;gBACxB,OAAO,uBAAuB,CAAC;YAEnC,IAAI,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC1B,OAAO,IAAI,CAAC;gBAEhB,OAAO,qBAAqB,CAAC;YACjC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,cAAc,CAAC;YAC1B,CAAC;QACL,CAAC;QACD,mBAAmB,CAAC,IAAI;YACpB,IAAI,IAAI,IAAI,IAAI;gBACZ,OAAO,EAAE,CAAC;YAEd,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;gBAClB,OAAO,UAAU,CAAC,OAAO,GAAG,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gBAErE,OAAO,UAAU,CAAC,OAAO,GAAG,sBAAsB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;KACJ,CACJ,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB,EAAE,OAAgB,EAAE,QAAoB,EAAE,WAAwB,EAAE,KAAY;IAC1H,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC7B,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,YAAY,QAAQ;YAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;YACd,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAEjB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YACzB,SAAS,IAAI,IAAI,GAAG,wBAAwB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;;YAExH,SAAS,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAErE,OAAO,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QAC1C,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,YAAY,QAAQ;YAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;YACd,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAEjB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;gBACxC,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;gBAC1C,KAAK,gCAAgC,CAAC;oBAClC,sBAAsB,EAAE,IAAI;oBAC5B,WAAW;oBACX,cAAc,EAAE,QAAQ;oBACxB,KAAK;iBACR,CAAC,CAAC;YACP,CAAC;YAED,IAAI,IAAI,CAAC,wBAAwB,KAAK,SAAS;gBAC3C,SAAS,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;iBACxD,IAAI,IAAI,CAAC,wBAAwB,KAAK,MAAM;gBAC7C,SAAS,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;;gBAEhE,KAAK,CAAC,IAAI,CAAC,wBAAwC,CAAC,CAAC;QAC7D,CAAC;;YACG,SAAS,IAAI,IAAI,GAAG,wBAAwB,CACxC,IAAI,CAAC,WAAW,CAAC,YAAY,EAC7B,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,kBAAkB,EACtD,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,cAAc,CAAC,WAAW,CACjE,CAAC;QAEN,OAAO,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,IAAI,YAAY,QAAQ;YAChC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;YACb,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACpB,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,YAAY,QAAQ;YAC5C,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;YACb,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEhB,OAAO,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,IAAoB,CAAC,CAAC;IAC5B,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,OAAgB;IACxD,IAAI,OAAO;QACP,OAAO,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhE,OAAO,KAAK,GAAG,IAAI,CAAC;AACxB,CAAC;AAED,SAAS,wBAAwB,CAC7B,YAA0B,EAAE,kBAAsC,EAAE,wBAA4C;IAEhH,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,kBAAkB,IAAI,IAAI;QAC1B,IAAI,CAAC,IAAI,CACL,uCAAuC,CAAC,kBAAkB,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC;cACrG,CACE,wBAAwB,IAAI,IAAI;gBAC5B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,wBAAwB,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAC7H,CACJ,CAAC;IAEN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAE1F,OAAO,IAAI;SACN,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;SAC7C,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,mCAAmC,CACxC,gBAA6E,EAC7E,QAAgB,EAChB,SAAkB;IAElB,IAAI,gBAAgB,IAAI,IAAI;QACxB,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC;IAEjE,MAAM,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC;IACnD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC;IAE/D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjF,OAAO,KAAK,GAAG;QACX,cAAc,CAAC;YACX,KAAK,EAAE,YAAY;YACnB,QAAQ,EAAE,YAAY;YACtB,aAAa,EAAE,KAAK;YACpB,QAAQ;YACR,IAAI,EAAE,CAAC;oBACH,KAAK,EAAE,MAAM;oBACb,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;iBACvC,EAAE;oBACC,IAAI,EAAE,YAAY,CAAC,gBAAgB,IAAI,IAAI;oBAC3C,KAAK,EAAE,oBAAoB;oBAC3B,KAAK,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,gBAAgB,IAAI,CAAC,CAAC;iBAC1E,CAAC;SACL,CAAC;QACF,cAAc,CAAC;YACX,KAAK,EAAE,iBAAiB;YACxB,QAAQ,EAAE,YAAY;YACtB,aAAa,EAAE,KAAK;YACpB,QAAQ;YACR,IAAI,EAAE,CAAC;oBACH,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE,uCAAuC,CAAC,kBAAkB,CAAC,kBAAkB,GAAG,GAAG,CAAC,GAAG,gBAAgB;iBACjH,EAAE;oBACC,IAAI,EAAE,YAAY,CAAC,gBAAgB,IAAI,IAAI;oBAC3C,KAAK,EAAE,cAAc;oBACrB,KAAK,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,cAAc,CAAC,WAAW,CAAC;iBAC/E,EAAE;oBACC,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,GAAG,EAAE,CAAC,CACT,kBAAkB,CAAC,cAAc,CAAC,SAAS,GAAG,GAAG,GAAG,YAAY,CAAC,WAAW,GAAG,GAAG;wBAClF,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAChH;iBACJ,EAAE;oBACC,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC;iBACvE,CAAC;SACL,CAAC;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,uCAAuC,CAAC,UAAkB,EAAE,EACjE,WAAW,GAAG,GAAG,EACjB,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,EAAE,EACX,YAAY,GAAG,EAAE,KAMjB,EAAE;IACF,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC;IAE5D,IAAI,UAAU,IAAI,WAAW;QACzB,OAAO,KAAK,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;SACxC,IAAI,UAAU,IAAI,KAAK;QACxB,OAAO,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;SAClC,IAAI,UAAU,IAAI,MAAM;QACzB,OAAO,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;SACnC,IAAI,UAAU,IAAI,YAAY;QAC/B,OAAO,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAE9C,OAAO,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,gCAAgC,CAAC,EAC5C,sBAAsB,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAM7D;IACG,IAAI,CAAC;QACD,IAAI,SAAS,GAAuB,SAAS,CAAC;QAC9C,IAAI,oBAAoB,GAA4E,SAAS,CAAC;QAE9G,KAAK,MAAM,YAAY,IAAI,sBAAsB,CAAC,aAAa,EAAE,CAAC;YAC9D,IAAI,WAAW,CAAC,OAAO;gBACnB,OAAO;YAEX,IAAI,CAAC;gBACD,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE;oBACtD,UAAU,EAAE,SAAS;oBACrB,MAAM,EAAE,WAAW;iBACtB,CAAC,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gBAElE,IAAI,WAAW,CAAC,OAAO;oBACnB,OAAO;gBAEX,MAAM,kBAAkB,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,oCAAoC,EAAE,CAAC;gBAE3G,IAAI,SAAS,IAAI,IAAI,IAAI,kBAAkB,CAAC,kBAAkB,GAAG,SAAS,EAAE,CAAC;oBACzE,SAAS,GAAG,kBAAkB,CAAC,kBAAkB,CAAC;oBAClD,oBAAoB,GAAG;wBACnB,GAAG,EAAE,YAAY;wBACjB,YAAY;wBACZ,kBAAkB;qBACrB,CAAC;oBAEF,IAAI,SAAS,KAAK,CAAC;wBACf,MAAM;gBACd,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,aAAa;YACjB,CAAC;QACL,CAAC;QAED,sBAAsB,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAC1D,sBAAsB,CAAC,wBAAwB,GAAG,MAAM,CAAC;QACzD,cAAc,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,sBAAsB,CAAC,wBAAwB,GAAG,MAAM,CAAC;QACzD,cAAc,EAAE,CAAC;IACrB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"interactivelyAskForModel.js","sourceRoot":"","sources":["../../../src/cli/utils/interactivelyAskForModel.ts"],"names":[],"mappings":"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"}
@@ -62,6 +62,10 @@ export async function printCommonInfoLines({ context, minTitleLength = 0, logBat
62
62
  show: logBatchSize,
63
63
  title: "Batch size",
64
64
  value: bytes(context.batchSize)
65
+ }, {
66
+ show: context.flashAttention,
67
+ title: "Flash attention",
68
+ value: "enabled"
65
69
  }, {
66
70
  show: tokenMeterEnabled,
67
71
  title: "Token meter",
@@ -1 +1 @@
1
- {"version":3,"file":"printCommonInfoLines.js","sourceRoot":"","sources":["../../../src/cli/utils/printCommonInfoLines.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"printCommonInfoLines.js","sourceRoot":"","sources":["../../../src/cli/utils/printCommonInfoLines.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Llama } from "../../bindings/Llama.js";
2
- export declare function resolveCommandGgufPath(ggufPath: string | undefined, llama: Llama, fetchHeaders?: Record<string, string>, { targetDirectory }?: {
2
+ export declare function resolveCommandGgufPath(ggufPath: string | undefined, llama: Llama, fetchHeaders?: Record<string, string>, { targetDirectory, flashAttention }?: {
3
3
  targetDirectory?: string;
4
+ flashAttention?: boolean;
4
5
  }): Promise<string>;
@@ -9,14 +9,15 @@ import { createModelDownloader } from "../../utils/createModelDownloader.js";
9
9
  import { ConsoleInteraction, ConsoleInteractionKey } from "./ConsoleInteraction.js";
10
10
  import { getReadablePath } from "./getReadablePath.js";
11
11
  import { interactivelyAskForModel } from "./interactivelyAskForModel.js";
12
- export async function resolveCommandGgufPath(ggufPath, llama, fetchHeaders, { targetDirectory = cliModelsDirectory } = {}) {
12
+ export async function resolveCommandGgufPath(ggufPath, llama, fetchHeaders, { targetDirectory = cliModelsDirectory, flashAttention = false } = {}) {
13
13
  let resolvedGgufPath = ggufPath;
14
14
  if (resolvedGgufPath == null)
15
15
  resolvedGgufPath = await interactivelyAskForModel({
16
16
  llama,
17
17
  modelsDirectory: targetDirectory,
18
18
  allowLocalModels: true,
19
- downloadIntent: true
19
+ downloadIntent: true,
20
+ flashAttention
20
21
  });
21
22
  if (!isUrl(resolvedGgufPath)) {
22
23
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"resolveCommandGgufPath.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveCommandGgufPath.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveCommandGgufPath.js","sourceRoot":"","sources":["../../../src/cli/utils/resolveCommandGgufPath.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export declare class LlamaContext {
15
15
  get model(): LlamaModel;
16
16
  get contextSize(): number;
17
17
  get batchSize(): number;
18
+ get flashAttention(): boolean;
18
19
  /**
19
20
  * The actual size of the state in the memory in bytes.
20
21
  * This value is provided by `llama.cpp` and doesn't include all the memory overhead of the context.
@@ -1,4 +1,4 @@
1
- import { DisposeAggregator, EventRelay, withLock, DisposedError, AsyncDisposeAggregator } from "lifecycle-utils";
1
+ import { AsyncDisposeAggregator, DisposeAggregator, DisposedError, EventRelay, withLock } from "lifecycle-utils";
2
2
  import { removeNullFields } from "../../utils/removeNullFields.js";
3
3
  import { compareTokens } from "../../utils/compareTokens.js";
4
4
  import { DisposeGuard } from "../../utils/DisposeGuard.js";
@@ -12,6 +12,7 @@ export class LlamaContext {
12
12
  /** @internal */ _model;
13
13
  /** @internal */ _contextSize;
14
14
  /** @internal */ _batchSize;
15
+ /** @internal */ _flashAttention;
15
16
  /** @internal */ _totalSequences;
16
17
  /** @internal */ _unusedSequenceIds = [];
17
18
  /** @internal */ _batchingOptions;
@@ -26,7 +27,7 @@ export class LlamaContext {
26
27
  /** @internal */ _allocatedContextSize;
27
28
  /** @internal */ _disposed = false;
28
29
  onDispose = new EventRelay();
29
- constructor({ _model }, { sequences, seed = null, contextSize, batchSize, threads = 6, batching: { dispatchSchedule: batchingDispatchSchedule = "nextTick", itemPrioritizationStrategy: batchingItemsPrioritizationStrategy = "maximumParallelism" } = {}, _embeddings, _noSeed }) {
30
+ constructor({ _model }, { sequences, seed = null, contextSize, batchSize, flashAttention = _model.defaultContextFlashAttention, threads = 6, batching: { dispatchSchedule: batchingDispatchSchedule = "nextTick", itemPrioritizationStrategy: batchingItemsPrioritizationStrategy = "maximumParallelism" } = {}, _embeddings, _noSeed }) {
30
31
  if (_model.disposed)
31
32
  throw new DisposedError();
32
33
  this._llama = _model._llama;
@@ -36,11 +37,13 @@ export class LlamaContext {
36
37
  this._totalSequences = Math.max(1, Math.floor(sequences));
37
38
  this._contextSize = Math.max(2, contextSize);
38
39
  this._batchSize = Math.max(batchSize, this._totalSequences);
40
+ this._flashAttention = flashAttention;
39
41
  this._ctx = new this._llama._bindings.AddonContext(this._model._model, removeNullFields({
40
42
  seed: seed != null ? Math.max(-1, Math.floor(seed)) : undefined,
41
43
  contextSize: this._contextSize * this._totalSequences, // each sequence needs its own <contextSize> of cells
42
44
  batchSize: this._batchSize,
43
45
  sequences: this._totalSequences,
46
+ flashAttention: this._flashAttention,
44
47
  threads: Math.max(0, Math.floor(threads)),
45
48
  embeddings: _embeddings,
46
49
  noSeed: _noSeed
@@ -84,6 +87,9 @@ export class LlamaContext {
84
87
  get batchSize() {
85
88
  return this._batchSize;
86
89
  }
90
+ get flashAttention() {
91
+ return this._flashAttention;
92
+ }
87
93
  /**
88
94
  * The actual size of the state in the memory in bytes.
89
95
  * This value is provided by `llama.cpp` and doesn't include all the memory overhead of the context.
@@ -391,11 +397,15 @@ export class LlamaContext {
391
397
  /** @internal */
392
398
  static async _create(options, { _model }) {
393
399
  const sequences = options.sequences ?? getDefaultContextSequences();
400
+ const flashAttention = _model.flashAttentionSupported
401
+ ? Boolean(options.flashAttention ?? _model.defaultContextFlashAttention)
402
+ : false;
394
403
  const contextSize = await _model.fileInsights.configurationResolver.resolveContextContextSize(options.contextSize, {
395
404
  batchSize: options.batchSize,
396
405
  sequences: sequences,
397
406
  modelGpuLayers: _model.gpuLayers,
398
407
  modelTrainContextSize: _model.trainContextSize,
408
+ flashAttention,
399
409
  getVramState: () => _model._llama._vramOrchestrator.getMemoryState(),
400
410
  llamaGpu: _model._llama.gpu,
401
411
  ignoreMemorySafetyChecks: options.ignoreMemorySafetyChecks,
@@ -407,9 +417,10 @@ export class LlamaContext {
407
417
  sequences,
408
418
  isEmbeddingContext: options._embeddings,
409
419
  modelGpuLayers: _model.gpuLayers,
410
- batchSize
420
+ batchSize,
421
+ flashAttention
411
422
  }).gpuVram;
412
- const context = new LlamaContext({ _model }, { ...options, contextSize, batchSize, sequences });
423
+ const context = new LlamaContext({ _model }, { ...options, contextSize, batchSize, sequences, flashAttention });
413
424
  const { createSignal } = options;
414
425
  const contextCreationMemoryReservation = options.ignoreMemorySafetyChecks
415
426
  ? null
@@ -1 +1 @@
1
- {"version":3,"file":"LlamaContext.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaContext/LlamaContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlamaContext.js","sourceRoot":"","sources":["../../../src/evaluator/LlamaContext/LlamaContext.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,20 @@ export type LlamaContextOptions = {
35
35
  * Defaults to `512` or `contextSize` if `contextSize` is less than `512`.
36
36
  */
37
37
  batchSize?: number;
38
+ /**
39
+ * Flash attention is an optimization in the attention mechanism that makes inference faster, more efficient and uses less memory.
40
+ *
41
+ * The support for flash attention is currently experimental and may not always work as expected.
42
+ * Use with caution.
43
+ *
44
+ * This option will be ignored if flash attention is not supported by the model.
45
+ *
46
+ * Defaults to `false` (inherited from the model option `defaultContextFlashAttention`).
47
+ *
48
+ * Upon flash attention exiting the experimental status, the default value will become `true`
49
+ * (the inherited value from the model option `defaultContextFlashAttention` will become `true`).
50
+ */
51
+ flashAttention?: boolean;
38
52
  /**
39
53
  * number of threads to use to evaluate tokens.
40
54
  * set to 0 to use the maximum threads supported by the current machine hardware.
@@ -86,6 +86,26 @@ export type LlamaModelOptions = {
86
86
  */
87
87
  onLoadProgress?(loadProgress: number): void;
88
88
  };
89
+ /**
90
+ * Enable flash attention by default for contexts created with this model.
91
+ * Only works with models that support flash attention.
92
+ *
93
+ * Flash attention is an optimization in the attention mechanism that makes inference faster, more efficient and uses less memory.
94
+ *
95
+ * The support for flash attention is currently experimental and may not always work as expected.
96
+ * Use with caution.
97
+ *
98
+ * This option will be ignored if flash attention is not supported by the model.
99
+ *
100
+ * Enabling this affects the calculations of default values for the model and contexts created with it
101
+ * as flash attention reduces the amount of memory required,
102
+ * which allows for more layers to be offloaded to the GPU and for context sizes to be bigger.
103
+ *
104
+ * Defaults to `false`.
105
+ *
106
+ * Upon flash attention exiting the experimental status, the default value will become `true`.
107
+ */
108
+ defaultContextFlashAttention?: boolean;
89
109
  /**
90
110
  * Called with the load percentage when the model is being loaded.
91
111
  * > **Note:** This progress does not include the progress of loading the provided LoRA adapters (when `lora` is used)
@@ -123,6 +143,8 @@ export declare class LlamaModel {
123
143
  * Total model size in memory in bytes
124
144
  */
125
145
  get size(): number;
146
+ get flashAttentionSupported(): boolean;
147
+ get defaultContextFlashAttention(): boolean;
126
148
  /**
127
149
  * Transform text into tokens that can be fed to the model
128
150
  * @param text - the text to tokenize