@qvac/llm-llamacpp 0.64.2 → 0.64.3

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.
package/README.md CHANGED
@@ -265,9 +265,9 @@ projector runs on CPU. The resolved choice is logged at verbosity ≥ 2 as
265
265
 
266
266
  `spec-type: 'draft-mtp'` turns on llama-server's multi-token-prediction speculative decoding for models that ship their MTP layers (`blk.N.nextn.*`, e.g. Qwen3.5 / Qwen3.6 GGUFs that keep them; quantizations that strip them fail to load with this option unless an external head is given, see below). Every step the MTP head drafts up to `spec-draft-n-max` tokens from the model's own hidden states, the model verifies the sampled token and the draft in one decode, and the longest matching prefix plus one new token is kept. The sampler decides every kept token, so sampling settings, grammars and stop conditions behave as without speculation. The implementation follows llama-server step by step: the same draft limits, rollback by trimming or by a checkpoint for memory that cannot trim, and the same replay.
267
267
 
268
- For a model without MTP layers, give an external MTP head as `spec-draft-model` (llama-server's `--spec-type draft-mtp -md <head>`): a GGUF with MTP layers for the same model, such as the MTP quantization of it, or a Gemma 4 assistant for its Gemma 4 model. The head is loaded next to the model and placed like it (`device`, `gpu-layers`), and the load's fit and `assessFit` count its weights as well as its context. A head without MTP layers fails the load, and `assessFit` refuses it with `unsupported-config`. A head for another model, with a different hidden width or vocabulary, also fails the load, and `assessFit` refuses it the same way. Fabric cannot measure a Gemma 4 assistant on its own, so the fits leave it out, as for DFlash.
268
+ For a model without MTP layers, give an external MTP head as `spec-draft-model` (llama-server's `--spec-type draft-mtp -md <head>`): a GGUF with MTP layers for the same model, such as the MTP quantization of it, or a Gemma 4 assistant for its Gemma 4 model. The head is loaded next to the model and placed like it (`device`, `gpu-layers`), and the load's fit and `assessFit` count its weights as well as its context. A head without MTP layers fails the load, and `assessFit` refuses it with `unsupported-config`. A head for another model, with a different hidden width or vocabulary, also fails the load, and `assessFit` refuses it the same way. A Gemma 4 assistant reads the model's own tensors, so fabric measures it next to the model, as the load creates it.
269
269
 
270
- `spec-type: 'draft-dflash'` drafts with a separate DFlash model instead, given as `spec-draft-model` (an absolute path; llama-server's `-md`). The DFlash model reads the hidden states of the target layers it was trained on and denoises a whole block of draft tokens in one pass, so a step drafts up to its block size minus one tokens (`spec-draft-n-max` caps it further). It is loaded next to the model and placed like it (`device`, `gpu-layers`). The load's fit and `assessFit` pass it to fabric as an extra model, but fabric cannot measure a DFlash model yet: it logs `failed to measure the memory of the extra model, fitting without it`, so neither counts the draft model's memory. Leave room for it yourself. Everything else (verification, rollback, batching, caches, stats) is the same as for MTP.
270
+ `spec-type: 'draft-dflash'` drafts with a separate DFlash model instead, given as `spec-draft-model` (an absolute path; llama-server's `-md`). The DFlash model reads the hidden states of the target layers it was trained on and denoises a whole block of draft tokens in one pass, so a step drafts up to its block size minus one tokens (`spec-draft-n-max` caps it further). It is loaded next to the model and placed like it (`device`, `gpu-layers`). The load's fit and `assessFit` count its weights and context, measured next to the model when the drafter borrows the model's embeddings and output head. A draft model fabric still cannot measure is left out of both, and fabric logs `failed to measure the memory of the extra model, fitting without it`. Everything else (verification, rollback, batching, caches, stats) is the same as for MTP.
271
271
 
272
272
  MTP and DFlash work on single prompts, multimodal prompts and continuous batching (`parallel >= 2`), together with `cacheKey` conversations: the draft context's state travels with checkpoints and the RAM tier, and a `cacheKey` file (target state only, like llama-server's slot files) restarts drafting from the next decoded token.
273
273
 
@@ -455,7 +455,7 @@ fit.hostBytes // the same, for the trailing host row
455
455
 
456
456
  `config` is the load, exactly as `loadModel` takes it. The projection resolves it with the same code that load runs, so every setting reaches the fitter the way it would reach the engine, and a load the engine would refuse is refused here as `status: "error"` with `unsupported-config`. A setting left out takes llama's default.
457
457
 
458
- With `spec-type: 'draft-mtp'` the MTP draft context is fitted next to the model, as the load fits it, and its memory is in the verdict and in the per-device figures; on a model or head without MTP layers the load fails, so the projection is refused with `unsupported-config`. A DFlash draft model or a Gemma 4 assistant is passed to the fit the same way, but fabric cannot measure either yet, so neither the verdict nor the figures count it (see [Speculative decoding](#speculative-decoding-mtp-dflash)).
458
+ With `spec-type: 'draft-mtp'` the MTP draft context is fitted next to the model, as the load fits it, and its memory is in the verdict and in the per-device figures; on a model or head without MTP layers the load fails, so the projection is refused with `unsupported-config`. A DFlash draft model or a Gemma 4 assistant is fitted the same way, measured next to the model since it reads the model's tensors, and is in the verdict and the figures too (see [Speculative decoding](#speculative-decoding-mtp-dflash)).
459
459
 
460
460
  Pinning `gpu-layers` fixes the placement: the fitter refuses to move layers off a device the load claimed, so the answer is whether that exact placement fits, never a reduced one. Leave it unset for a projection that can place the model itself.
461
461
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qvac/llm-llamacpp",
3
- "version": "0.64.2",
3
+ "version": "0.64.3",
4
4
  "description": "llama addon for qvac",
5
5
  "addon": true,
6
6
  "scripts": {
@@ -79,8 +79,8 @@
79
79
  "bugs": "https://github.com/tetherto/qvac/issues",
80
80
  "homepage": "https://qvac.tether.io",
81
81
  "devDependencies": {
82
- "@qvac/fabric-android-arm64": "0.23.0",
83
- "@qvac/fabric-ios": "0.23.0",
82
+ "@qvac/fabric-android-arm64": "^0.23.1",
83
+ "@qvac/fabric-ios": "^0.23.1",
84
84
  "@types/node": "^24.2.1",
85
85
  "bare-crypto": "^1.15.3",
86
86
  "bare-process": "^4.2.2",
@@ -102,22 +102,22 @@
102
102
  "typescript-eslint": "^8.63.0"
103
103
  },
104
104
  "dependencies": {
105
- "@qvac/fabric": "^0.23.0",
105
+ "@qvac/fabric": "^0.23.1",
106
106
  "@qvac/infer-base": "^0.8.0",
107
107
  "@qvac/logging": "^0.1.0",
108
108
  "bare-fs": "^4.5.1",
109
109
  "bare-path": "^3.0.0"
110
110
  },
111
111
  "optionalDependencies": {
112
- "@qvac/fabric-linux-x64": "^0.23.0",
113
- "@qvac/fabric-linux-arm64": "^0.23.0",
114
- "@qvac/fabric-darwin-arm64": "^0.23.0",
115
- "@qvac/fabric-darwin-x64": "^0.23.0",
116
- "@qvac/fabric-win32-x64": "^0.23.0"
112
+ "@qvac/fabric-linux-x64": "^0.23.1",
113
+ "@qvac/fabric-linux-arm64": "^0.23.1",
114
+ "@qvac/fabric-darwin-arm64": "^0.23.1",
115
+ "@qvac/fabric-darwin-x64": "^0.23.1",
116
+ "@qvac/fabric-win32-x64": "^0.23.1"
117
117
  },
118
118
  "peerDependencies": {
119
- "@qvac/fabric-android-arm64": "^0.23.0",
120
- "@qvac/fabric-ios": "^0.23.0"
119
+ "@qvac/fabric-android-arm64": "^0.23.1",
120
+ "@qvac/fabric-ios": "^0.23.1"
121
121
  },
122
122
  "peerDependenciesMeta": {
123
123
  "@qvac/fabric-android-arm64": {
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "current_versions": [
9
9
  {
10
- "version": "0.64.2"
10
+ "version": "0.64.3"
11
11
  }
12
12
  ],
13
13
  "exported_symbols": [
@@ -193,7 +193,6 @@
193
193
  "__ZN14MtmdLlmContext35refreshCurrentCacheTokensFromMemoryEv",
194
194
  "__ZN30qvac_lib_inference_addon_llama5utils17resolveToolChoiceERKNSt3__18optionalINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEERKNS1_6vectorI16common_chat_toolNS6_ISD_EEEE",
195
195
  "__ZN30qvac_lib_inference_addon_llama8batching7RequestC1EjONSt3__16vectorIiNS2_9allocatorIiEEEEji",
196
- "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEjRKNSt3__16vectorIP19ggml_backend_deviceNS2_9allocatorIS5_EEEERNS3_I25common_device_memory_dataNS6_ISB_EEEE",
197
196
  "__ZN30qvac_lib_inference_addon_llama8batching14timeDecodeStepEP13llama_contextR11llama_batchRKNSt3__18functionIFiS2_S4_EEERKNS6_IFvS2_EEE",
198
197
  "__ZN30qvac_lib_inference_addon_llama8batching19MultiRequestBatcher20completeMediaBarrierEjiRKNSt3__18functionIFvjimEEE",
199
198
  "__ZN14TextLlmContext17removeLastNTokensEi",
@@ -384,7 +383,6 @@
384
383
  "__ZThn48_NK14MtmdLlmContext8getNPastEv",
385
384
  "__ZN14TextLlmContext18onDraftLogitsReadyEiijRKNSt3__18functionIFvRKNS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEE",
386
385
  "__ZNK12CacheManager15isCacheDisabledEv",
387
- "__ZN30qvac_lib_inference_addon_llama11speculative20fitLeavesOutMtpDraftERKNS0_9GgufShapeE",
388
386
  "__ZNK14MtmdLlmContext14getCacheTokensEv",
389
387
  "__ZN30qvac_lib_inference_addon_llama5utils21SequenceStateSnapshot5clearEv",
390
388
  "__ZN14TextLlmContext15reconcilePromptERKNSt3__16vectorIiNS0_9allocatorIiEEEEb",
@@ -565,6 +563,7 @@
565
563
  "__ZN14MtmdLlmContext24rebuildSamplerFromLedgerERKN30qvac_lib_inference_addon_llama5cache6LedgerE",
566
564
  "__ZNK30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntime13resetSequenceEi",
567
565
  "__ZN14MtmdLlmContext15reconcilePromptE11PrefillPlanRKN30qvac_lib_inference_addon_llama5cache6LedgerEb",
566
+ "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEPKcRK18llama_model_paramsRK20llama_context_paramsRKNSt3__16vectorIP19ggml_backend_deviceNSA_9allocatorISD_EEEERNSB_I25common_device_memory_dataNSE_ISJ_EEEE",
568
567
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler15StepUnlockGuardD1Ev",
569
568
  "__ZN26LlamaLazyInitializeBackend10initializeERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES8_",
570
569
  "__ZNK13ModelMetaData9tryGetU32EPKc",
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "current_versions": [
9
9
  {
10
- "version": "0.64.2"
10
+ "version": "0.64.3"
11
11
  }
12
12
  ],
13
13
  "exported_symbols": [
@@ -455,9 +455,9 @@
455
455
  "__ZTSZN30qvac_lib_inference_addon_llama9assessFitEP8js_env_sP18js_callback_info_sEUlvE_",
456
456
  "__ZTSNSt3__111__match_anyIcEE",
457
457
  "__ZTSN28qvac_lib_inference_addon_cpp17MultiJobSchedulerE",
458
- "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp16OutputCallBackJs5StateENS_9allocatorIS3_EEEE",
459
458
  "__ZTSZN28qvac_lib_inference_addon_cpp17makeQueueCallbackIN24llama_finetuning_helpers21FinetuneProgressStatsEEENSt3__18functionIFvRKT_EEENS3_10shared_ptrINS_11OutputQueueEEENS3_13shared_futureIyEEEUlRKS2_E_",
460
459
  "__ZTSNSt3__110__function6__funcIZN28qvac_lib_inference_addon_cpp2js11JsAsyncTask3runIZNS2_7AddonJs9cancelJobENS_8optionalIyEEEUlvE_EEP10js_value_sP8js_env_sOT_EUlSD_RKNS_9monostateEE_NS_9allocatorISJ_EEFSB_SD_SI_EEE",
460
+ "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp16OutputCallBackJs5StateENS_9allocatorIS3_EEEE",
461
461
  "__ZTI10LlmContext",
462
462
  "__ZTINSt3__110__function6__baseIFP10js_value_sRKNS_6vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS8_ISA_EEEEEEE",
463
463
  "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp9out_handl20JsErrorOutputHandlerENS_9allocatorIS3_EEEE",
@@ -578,7 +578,6 @@
578
578
  "__ZN14MtmdLlmContext17removeLastNTokensEi",
579
579
  "__ZN30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntimeD2Ev",
580
580
  "__ZN30qvac_lib_inference_addon_llama5utils17resolveToolChoiceERKNSt3__18optionalINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEERKNS1_6vectorI16common_chat_toolNS6_ISD_EEEE",
581
- "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEjRKNSt3__16vectorIP19ggml_backend_deviceNS2_9allocatorIS5_EEEERNS3_I25common_device_memory_dataNS6_ISB_EEEE",
582
581
  "__ZN14MtmdLlmContext10resetMediaEv",
583
582
  "__ZN30qvac_lib_inference_addon_llama8batching22finalizeTerminalDriverER14SequenceDriverNS0_10StopReasonEbRKNSt3__18functionIFvRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEEEE",
584
583
  "__ZN30qvac_lib_inference_addon_llama5utils21SequenceStateSnapshot10adoptEmptyEi",
@@ -668,7 +667,6 @@
668
667
  "__ZN14TextLlmContextC2ER13common_paramsNSt3__110unique_ptrI18common_init_resultNS2_14default_deleteIS4_EEEENS3_IN30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntimeENS5_ISA_EEEE",
669
668
  "__ZN14TextLlmContext17beginCacheRequestEv",
670
669
  "__ZNK12CacheManager15isCacheDisabledEv",
671
- "__ZN30qvac_lib_inference_addon_llama11speculative20fitLeavesOutMtpDraftERKNS0_9GgufShapeE",
672
670
  "__ZThn48_NK14TextLlmContext19residentStateTokensEv",
673
671
  "__ZN14MtmdLlmContext18commitCacheRequestEv",
674
672
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler23recordPendingSlotCancelEjy",
@@ -1070,6 +1068,7 @@
1070
1068
  "__ZN10LlamaModel21isMultiBatchActivatedERNS_15ReloadableStateE",
1071
1069
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchSchedulerC2E15LlmModelContextjjmiRK13common_paramsNSt3__18functionIFNS6_10unique_ptrI14SequenceDriverNS6_14default_deleteIS9_EEEES5_jiEEE",
1072
1070
  "__ZN14MtmdLlmContext15reconcilePromptE11PrefillPlanRKN30qvac_lib_inference_addon_llama5cache6LedgerEb",
1071
+ "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEPKcRK18llama_model_paramsRK20llama_context_paramsRKNSt3__16vectorIP19ggml_backend_deviceNSA_9allocatorISD_EEEERNSB_I25common_device_memory_dataNSE_ISJ_EEEE",
1073
1072
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler15StepUnlockGuardD1Ev",
1074
1073
  "__ZN26LlamaLazyInitializeBackend10initializeERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES8_",
1075
1074
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler19drainFinishedLockedEPNSt3__111unique_lockINS2_5mutexEEE",
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "current_versions": [
9
9
  {
10
- "version": "0.64.2"
10
+ "version": "0.64.3"
11
11
  }
12
12
  ],
13
13
  "exported_symbols": [
@@ -193,7 +193,6 @@
193
193
  "__ZN14MtmdLlmContext35refreshCurrentCacheTokensFromMemoryEv",
194
194
  "__ZN30qvac_lib_inference_addon_llama5utils17resolveToolChoiceERKNSt3__18optionalINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEERKNS1_6vectorI16common_chat_toolNS6_ISD_EEEE",
195
195
  "__ZN30qvac_lib_inference_addon_llama8batching7RequestC1EjONSt3__16vectorIiNS2_9allocatorIiEEEEji",
196
- "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEjRKNSt3__16vectorIP19ggml_backend_deviceNS2_9allocatorIS5_EEEERNS3_I25common_device_memory_dataNS6_ISB_EEEE",
197
196
  "__ZN30qvac_lib_inference_addon_llama8batching14timeDecodeStepEP13llama_contextR11llama_batchRKNSt3__18functionIFiS2_S4_EEERKNS6_IFvS2_EEE",
198
197
  "__ZN30qvac_lib_inference_addon_llama8batching19MultiRequestBatcher20completeMediaBarrierEjiRKNSt3__18functionIFvjimEEE",
199
198
  "__ZN14TextLlmContext17removeLastNTokensEi",
@@ -384,7 +383,6 @@
384
383
  "__ZThn48_NK14MtmdLlmContext8getNPastEv",
385
384
  "__ZN14TextLlmContext18onDraftLogitsReadyEiijRKNSt3__18functionIFvRKNS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEE",
386
385
  "__ZNK12CacheManager15isCacheDisabledEv",
387
- "__ZN30qvac_lib_inference_addon_llama11speculative20fitLeavesOutMtpDraftERKNS0_9GgufShapeE",
388
386
  "__ZNK14MtmdLlmContext14getCacheTokensEv",
389
387
  "__ZN30qvac_lib_inference_addon_llama5utils21SequenceStateSnapshot5clearEv",
390
388
  "__ZN14TextLlmContext15reconcilePromptERKNSt3__16vectorIiNS0_9allocatorIiEEEEb",
@@ -565,6 +563,7 @@
565
563
  "__ZN14MtmdLlmContext24rebuildSamplerFromLedgerERKN30qvac_lib_inference_addon_llama5cache6LedgerE",
566
564
  "__ZNK30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntime13resetSequenceEi",
567
565
  "__ZN14MtmdLlmContext15reconcilePromptE11PrefillPlanRKN30qvac_lib_inference_addon_llama5cache6LedgerEb",
566
+ "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEPKcRK18llama_model_paramsRK20llama_context_paramsRKNSt3__16vectorIP19ggml_backend_deviceNSA_9allocatorISD_EEEERNSB_I25common_device_memory_dataNSE_ISJ_EEEE",
568
567
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler15StepUnlockGuardD1Ev",
569
568
  "__ZN26LlamaLazyInitializeBackend10initializeERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES8_",
570
569
  "__ZNK13ModelMetaData9tryGetU32EPKc",
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "current_versions": [
9
9
  {
10
- "version": "0.64.2"
10
+ "version": "0.64.3"
11
11
  }
12
12
  ],
13
13
  "exported_symbols": [
@@ -193,7 +193,6 @@
193
193
  "__ZN14MtmdLlmContext35refreshCurrentCacheTokensFromMemoryEv",
194
194
  "__ZN30qvac_lib_inference_addon_llama5utils17resolveToolChoiceERKNSt3__18optionalINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEERKNS1_6vectorI16common_chat_toolNS6_ISD_EEEE",
195
195
  "__ZN30qvac_lib_inference_addon_llama8batching7RequestC1EjONSt3__16vectorIiNS2_9allocatorIiEEEEji",
196
- "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEjRKNSt3__16vectorIP19ggml_backend_deviceNS2_9allocatorIS5_EEEERNS3_I25common_device_memory_dataNS6_ISB_EEEE",
197
196
  "__ZN30qvac_lib_inference_addon_llama8batching14timeDecodeStepEP13llama_contextR11llama_batchRKNSt3__18functionIFiS2_S4_EEERKNS6_IFvS2_EEE",
198
197
  "__ZN30qvac_lib_inference_addon_llama8batching19MultiRequestBatcher20completeMediaBarrierEjiRKNSt3__18functionIFvjimEEE",
199
198
  "__ZN14TextLlmContext17removeLastNTokensEi",
@@ -384,7 +383,6 @@
384
383
  "__ZThn48_NK14MtmdLlmContext8getNPastEv",
385
384
  "__ZN14TextLlmContext18onDraftLogitsReadyEiijRKNSt3__18functionIFvRKNS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEE",
386
385
  "__ZNK12CacheManager15isCacheDisabledEv",
387
- "__ZN30qvac_lib_inference_addon_llama11speculative20fitLeavesOutMtpDraftERKNS0_9GgufShapeE",
388
386
  "__ZNK14MtmdLlmContext14getCacheTokensEv",
389
387
  "__ZN30qvac_lib_inference_addon_llama5utils21SequenceStateSnapshot5clearEv",
390
388
  "__ZN14TextLlmContext15reconcilePromptERKNSt3__16vectorIiNS0_9allocatorIiEEEEb",
@@ -565,6 +563,7 @@
565
563
  "__ZN14MtmdLlmContext24rebuildSamplerFromLedgerERKN30qvac_lib_inference_addon_llama5cache6LedgerE",
566
564
  "__ZNK30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntime13resetSequenceEi",
567
565
  "__ZN14MtmdLlmContext15reconcilePromptE11PrefillPlanRKN30qvac_lib_inference_addon_llama5cache6LedgerEb",
566
+ "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEPKcRK18llama_model_paramsRK20llama_context_paramsRKNSt3__16vectorIP19ggml_backend_deviceNSA_9allocatorISD_EEEERNSB_I25common_device_memory_dataNSE_ISJ_EEEE",
568
567
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler15StepUnlockGuardD1Ev",
569
568
  "__ZN26LlamaLazyInitializeBackend10initializeERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES8_",
570
569
  "__ZNK13ModelMetaData9tryGetU32EPKc",
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "current_versions": [
9
9
  {
10
- "version": "0.64.2"
10
+ "version": "0.64.3"
11
11
  }
12
12
  ],
13
13
  "exported_symbols": [
@@ -467,9 +467,9 @@
467
467
  "__ZTSZN30qvac_lib_inference_addon_llama9assessFitEP8js_env_sP18js_callback_info_sEUlvE_",
468
468
  "__ZTSNSt3__111__match_anyIcEE",
469
469
  "__ZTSN28qvac_lib_inference_addon_cpp17MultiJobSchedulerE",
470
- "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp16OutputCallBackJs5StateENS_9allocatorIS3_EEEE",
471
470
  "__ZTSZN28qvac_lib_inference_addon_cpp17makeQueueCallbackIN24llama_finetuning_helpers21FinetuneProgressStatsEEENSt3__18functionIFvRKT_EEENS3_10shared_ptrINS_11OutputQueueEEENS3_13shared_futureIyEEEUlRKS2_E_",
472
471
  "__ZTSNSt3__110__function6__funcIZN28qvac_lib_inference_addon_cpp2js11JsAsyncTask3runIZNS2_7AddonJs9cancelJobENS_8optionalIyEEEUlvE_EEP10js_value_sP8js_env_sOT_EUlSD_RKNS_9monostateEE_NS_9allocatorISJ_EEFSB_SD_SI_EEE",
472
+ "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp16OutputCallBackJs5StateENS_9allocatorIS3_EEEE",
473
473
  "__ZTI10LlmContext",
474
474
  "__ZTINSt3__110__function6__baseIFP10js_value_sRKNS_6vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS8_ISA_EEEEEEE",
475
475
  "__ZTSNSt3__120__shared_ptr_emplaceIN28qvac_lib_inference_addon_cpp9out_handl20JsErrorOutputHandlerENS_9allocatorIS3_EEEE",
@@ -591,7 +591,6 @@
591
591
  "__ZN14MtmdLlmContext17removeLastNTokensEi",
592
592
  "__ZN30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntimeD2Ev",
593
593
  "__ZN30qvac_lib_inference_addon_llama5utils17resolveToolChoiceERKNSt3__18optionalINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEERKNS1_6vectorI16common_chat_toolNS6_ISD_EEEE",
594
- "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEjRKNSt3__16vectorIP19ggml_backend_deviceNS2_9allocatorIS5_EEEERNS3_I25common_device_memory_dataNS6_ISB_EEEE",
595
594
  "__ZN14MtmdLlmContext10resetMediaEv",
596
595
  "__ZN30qvac_lib_inference_addon_llama8batching22finalizeTerminalDriverER14SequenceDriverNS0_10StopReasonEbRKNSt3__18functionIFvRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEEEE",
597
596
  "__ZN30qvac_lib_inference_addon_llama5utils21SequenceStateSnapshot10adoptEmptyEi",
@@ -681,7 +680,6 @@
681
680
  "__ZN14TextLlmContextC2ER13common_paramsNSt3__110unique_ptrI18common_init_resultNS2_14default_deleteIS4_EEEENS3_IN30qvac_lib_inference_addon_llama11speculative18SpeculativeRuntimeENS5_ISA_EEEE",
682
681
  "__ZN14TextLlmContext17beginCacheRequestEv",
683
682
  "__ZNK12CacheManager15isCacheDisabledEv",
684
- "__ZN30qvac_lib_inference_addon_llama11speculative20fitLeavesOutMtpDraftERKNS0_9GgufShapeE",
685
683
  "__ZThn48_NK14TextLlmContext19residentStateTokensEv",
686
684
  "__ZN14MtmdLlmContext18commitCacheRequestEv",
687
685
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler23recordPendingSlotCancelEjy",
@@ -1083,6 +1081,7 @@
1083
1081
  "__ZN10LlamaModel21isMultiBatchActivatedERNS_15ReloadableStateE",
1084
1082
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchSchedulerC2E15LlmModelContextjjmiRK13common_paramsNSt3__18functionIFNS6_10unique_ptrI14SequenceDriverNS6_14default_deleteIS9_EEEES5_jiEEE",
1085
1083
  "__ZN14MtmdLlmContext15reconcilePromptE11PrefillPlanRKN30qvac_lib_inference_addon_llama5cache6LedgerEb",
1084
+ "__ZNK30qvac_lib_inference_addon_llama11speculative19SpeculativeFitModel9addMemoryEPKcRK18llama_model_paramsRK20llama_context_paramsRKNSt3__16vectorIP19ggml_backend_deviceNSA_9allocatorISD_EEEERNSB_I25common_device_memory_dataNSE_ISJ_EEEE",
1086
1085
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler15StepUnlockGuardD1Ev",
1087
1086
  "__ZN26LlamaLazyInitializeBackend10initializeERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES8_",
1088
1087
  "__ZN30qvac_lib_inference_addon_llama8batching24ContinuousBatchScheduler19drainFinishedLockedEPNSt3__111unique_lockINS2_5mutexEEE",