ruvector/crates/ruvector-attention-node/src
rUv 3e67c726a7
fix(training): WASM contrastive loss + NAPI optimizer step (#339)
ADR-145: Fix training pipeline issues across WASM and NAPI bindings.

WASM (ruvector-attention-wasm):
- Replace serde_wasm_bindgen deserialization of negatives param with
  explicit js_sys::Float32Array conversion. TypedArrays don't
  deserialize via serde — use js_sys::Array iteration instead.

NAPI (ruvector-attention-node):
- Add stepInPlace() to SGD, Adam, AdamW optimizers for zero-copy
  in-place parameter mutation via Float32Array's AsMut<[f32]>
- Document that step() returns a NEW array (callers must use return)

Note: LoRA B=0 initialization in learning-wasm is correct by design
(Hu et al. 2021) — documented in ADR-145, no code change needed.

Co-authored-by: Reuven <cohen@ruv-mac-mini.local>
2026-04-06 21:41:54 -04:00
..
async_ops.rs fix(ci): Fix formatting and workflow permission issues 2025-12-26 22:11:57 +00:00
attention.rs fix(ci): Fix formatting and workflow permission issues 2025-12-26 22:11:57 +00:00
graph.rs fix(ci): Fix formatting and workflow permission issues 2025-12-26 22:11:57 +00:00
lib.rs fix(ci): Fix formatting and workflow permission issues 2025-12-26 22:11:57 +00:00
training.rs fix(training): WASM contrastive loss + NAPI optimizer step (#339) 2026-04-06 21:41:54 -04:00