@seanhogg/builderforce-memory-engine 2026.6.35 → 2026.7.11

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 (96) hide show
  1. package/README.md +30 -2
  2. package/dist/codec/evermind_video.d.ts +35 -0
  3. package/dist/codec/evermind_video.d.ts.map +1 -0
  4. package/dist/codec/evermind_video.js +37 -0
  5. package/dist/codec/evermind_video.js.map +1 -0
  6. package/dist/codec/image_rvq.d.ts +28 -0
  7. package/dist/codec/image_rvq.d.ts.map +1 -0
  8. package/dist/codec/image_rvq.js +39 -0
  9. package/dist/codec/image_rvq.js.map +1 -0
  10. package/dist/codec/index.d.ts +13 -0
  11. package/dist/codec/index.d.ts.map +1 -0
  12. package/dist/codec/index.js +11 -0
  13. package/dist/codec/index.js.map +1 -0
  14. package/dist/codec/multimodal_vocab.d.ts +79 -0
  15. package/dist/codec/multimodal_vocab.d.ts.map +1 -0
  16. package/dist/codec/multimodal_vocab.js +96 -0
  17. package/dist/codec/multimodal_vocab.js.map +1 -0
  18. package/dist/codec/video_rvq.d.ts +116 -0
  19. package/dist/codec/video_rvq.d.ts.map +1 -0
  20. package/dist/codec/video_rvq.js +450 -0
  21. package/dist/codec/video_rvq.js.map +1 -0
  22. package/dist/import/evermind.d.ts +48 -0
  23. package/dist/import/evermind.d.ts.map +1 -0
  24. package/dist/import/evermind.js +111 -0
  25. package/dist/import/evermind.js.map +1 -0
  26. package/dist/import/index.d.ts +11 -0
  27. package/dist/import/index.d.ts.map +1 -0
  28. package/dist/import/index.js +10 -0
  29. package/dist/import/index.js.map +1 -0
  30. package/dist/import/safetensors.d.ts +13 -0
  31. package/dist/import/safetensors.d.ts.map +1 -0
  32. package/dist/import/safetensors.js +64 -0
  33. package/dist/import/safetensors.js.map +1 -0
  34. package/dist/index.d.ts +8 -3
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +5 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/kernels/selective_scan.d.ts.map +1 -1
  39. package/dist/kernels/selective_scan.js +9 -3
  40. package/dist/kernels/selective_scan.js.map +1 -1
  41. package/dist/kernels/ssd.d.ts.map +1 -1
  42. package/dist/kernels/ssd.js +8 -2
  43. package/dist/kernels/ssd.js.map +1 -1
  44. package/dist/kernels/weight_update.d.ts.map +1 -1
  45. package/dist/kernels/weight_update.js +22 -3
  46. package/dist/kernels/weight_update.js.map +1 -1
  47. package/dist/limbic/index.d.ts +2 -2
  48. package/dist/limbic/index.d.ts.map +1 -1
  49. package/dist/limbic/index.js +1 -1
  50. package/dist/limbic/index.js.map +1 -1
  51. package/dist/limbic/regions.d.ts +31 -0
  52. package/dist/limbic/regions.d.ts.map +1 -1
  53. package/dist/limbic/regions.js +34 -0
  54. package/dist/limbic/regions.js.map +1 -1
  55. package/dist/model/mamba_model.d.ts +17 -0
  56. package/dist/model/mamba_model.d.ts.map +1 -1
  57. package/dist/model/mamba_model.js +27 -0
  58. package/dist/model/mamba_model.js.map +1 -1
  59. package/dist/moe/index.d.ts +1 -1
  60. package/dist/moe/index.d.ts.map +1 -1
  61. package/dist/moe/moe_package.d.ts +40 -2
  62. package/dist/moe/moe_package.d.ts.map +1 -1
  63. package/dist/moe/moe_package.js +90 -7
  64. package/dist/moe/moe_package.js.map +1 -1
  65. package/dist/tokenizer/bpe.d.ts +37 -0
  66. package/dist/tokenizer/bpe.d.ts.map +1 -1
  67. package/dist/tokenizer/bpe.js +47 -0
  68. package/dist/tokenizer/bpe.js.map +1 -1
  69. package/dist/training/trainer.d.ts +34 -2
  70. package/dist/training/trainer.d.ts.map +1 -1
  71. package/dist/training/trainer.js +76 -26
  72. package/dist/training/trainer.js.map +1 -1
  73. package/dist/utils/quantization.d.ts.map +1 -1
  74. package/dist/utils/quantization.js +4 -1
  75. package/dist/utils/quantization.js.map +1 -1
  76. package/package.json +1 -1
  77. package/src/codec/evermind_video.ts +55 -0
  78. package/src/codec/image_rvq.ts +50 -0
  79. package/src/codec/index.ts +16 -0
  80. package/src/codec/multimodal_vocab.ts +115 -0
  81. package/src/codec/video_rvq.ts +496 -0
  82. package/src/import/evermind.ts +128 -0
  83. package/src/import/index.ts +11 -0
  84. package/src/import/safetensors.ts +67 -0
  85. package/src/index.ts +35 -0
  86. package/src/kernels/selective_scan.ts +9 -3
  87. package/src/kernels/ssd.ts +8 -2
  88. package/src/kernels/weight_update.ts +22 -3
  89. package/src/limbic/index.ts +2 -1
  90. package/src/limbic/regions.ts +60 -0
  91. package/src/model/mamba_model.ts +27 -0
  92. package/src/moe/index.ts +1 -0
  93. package/src/moe/moe_package.ts +107 -6
  94. package/src/tokenizer/bpe.ts +59 -0
  95. package/src/training/trainer.ts +92 -28
  96. package/src/utils/quantization.ts +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mamba_model.js","sourceRoot":"","sources":["../../src/model/mamba_model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mamba_model.js","sourceRoot":"","sources":["../../src/model/mamba_model.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,5 @@ export type { MoEConfig, MoEParam, RouteResult } from "./moe_model.js";
6
6
  export { MoETrainer } from "./moe_trainer.js";
7
7
  export type { MoESample, MoETrainOptions, MoEEpochResult } from "./moe_trainer.js";
8
8
  export { EvermindModelPackage } from "./moe_package.js";
9
- export type { EvermindModelManifest, EvermindModelCard, EvermindModelType, PackageMeta, ValidationResult, } from "./moe_package.js";
9
+ export type { EvermindModelManifest, EvermindModelCard, EvermindModelType, EvermindModality, PackageMeta, ValidationResult, } from "./moe_package.js";
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/moe/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/moe/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
@@ -12,8 +12,11 @@
12
12
  */
13
13
  import { SharedExpertMoE } from "./moe_model.js";
14
14
  import { EvermindLM } from "../lm/evermind_lm.js";
15
+ import { VideoRVQCodec } from "../codec/video_rvq.js";
15
16
  /** The kinds of model an `.evermind` package can carry. */
16
17
  export type EvermindModelType = "shared-expert-moe" | "evermind-lm";
18
+ /** Output modality. `text` (default) needs no codec; `video`/`image` bundle a VRQ codec. */
19
+ export type EvermindModality = "text" | "video" | "image";
17
20
  /** Human-facing description published with the model (the "model card"). */
18
21
  export interface EvermindModelCard {
19
22
  description: string;
@@ -30,14 +33,26 @@ export interface EvermindModelManifest {
30
33
  name: string;
31
34
  version: string;
32
35
  modelType: EvermindModelType;
36
+ /** Output modality; absent ⇒ "text". Video/image also carry a `codec` section. */
37
+ modality?: EvermindModality;
33
38
  /** Flat numeric model config (the constructor args), serialised verbatim. */
34
39
  config: Record<string, number>;
35
40
  /** Total trainable scalar parameters (for sizing / pricing / display). */
36
41
  paramCount: number;
37
42
  checkpointFormat: "MoE0" | "EVL0";
38
43
  checkpointFp16: boolean;
44
+ /**
45
+ * Byte length of the checkpoint section — REQUIRED when a codec section follows
46
+ * (so the reader knows where the checkpoint ends). Absent ⇒ checkpoint runs to
47
+ * end-of-blob (the original text-only layout, still read verbatim).
48
+ */
49
+ checkpointBytes?: number;
39
50
  /** 32-bit FNV-1a over the checkpoint bytes — integrity for download/purchase. */
40
51
  checksum: number;
52
+ /** Media codec section format (present for video/image packages). */
53
+ codecFormat?: "VRQ0";
54
+ /** 32-bit FNV-1a over the codec bytes — integrity for the bundled codec. */
55
+ codecChecksum?: number;
41
56
  card: EvermindModelCard;
42
57
  /** ISO timestamp, caller-supplied (the engine avoids Date for determinism). */
43
58
  createdAt?: string;
@@ -62,12 +77,25 @@ export interface ValidationResult {
62
77
  export declare class EvermindModelPackage {
63
78
  readonly manifest: EvermindModelManifest;
64
79
  readonly checkpoint: ArrayBuffer;
65
- constructor(manifest: EvermindModelManifest, checkpoint: ArrayBuffer);
80
+ /** Serialized media codec ("VRQ0" blob), present for video/image packages. */
81
+ readonly codec?: ArrayBuffer | undefined;
82
+ constructor(manifest: EvermindModelManifest, checkpoint: ArrayBuffer,
83
+ /** Serialized media codec ("VRQ0" blob), present for video/image packages. */
84
+ codec?: ArrayBuffer | undefined);
66
85
  /** Package a trained model with its publishing metadata. */
67
86
  static fromModel(model: SharedExpertMoE, meta: PackageMeta): EvermindModelPackage;
68
87
  /** Package a trained generative {@link EvermindLM} — the runnable marketplace AI. */
69
88
  static fromLM(lm: EvermindLM, meta: PackageMeta): EvermindModelPackage;
70
- /** Serialise to a single `.evermind` blob: magic, version, manifest, checkpoint. */
89
+ /**
90
+ * Package a video/image generative model: its {@link EvermindLM} weights AND the
91
+ * {@link VideoRVQCodec} needed to turn generated tokens back into frames. Without
92
+ * the bundled codec a served media model would emit undecodable token ids — this
93
+ * is what makes an `.evermind` media artifact self-contained and servable.
94
+ */
95
+ static fromMediaLM(lm: EvermindLM, codec: VideoRVQCodec, meta: PackageMeta & {
96
+ modality: "video" | "image";
97
+ }): EvermindModelPackage;
98
+ /** Serialise to a single `.evermind` blob: magic, version, manifest, checkpoint[, codec]. */
71
99
  toBlob(): ArrayBuffer;
72
100
  /** Parse a `.evermind` blob. Throws on bad magic / truncation. */
73
101
  static fromBlob(buffer: ArrayBuffer): EvermindModelPackage;
@@ -77,5 +105,15 @@ export declare class EvermindModelPackage {
77
105
  loadModel(): SharedExpertMoE;
78
106
  /** Reconstruct the runnable generative model — what a marketplace buyer runs. */
79
107
  loadLM(): EvermindLM;
108
+ /**
109
+ * Reconstruct a video/image model: the generative {@link EvermindLM} plus its
110
+ * {@link VideoRVQCodec}. Pair with `generateVideo` / `generateImage` to produce
111
+ * frames. This is what a media-serving path (gateway) loads and runs.
112
+ */
113
+ loadMediaLM(): {
114
+ lm: EvermindLM;
115
+ codec: VideoRVQCodec;
116
+ modality: EvermindModality;
117
+ };
80
118
  }
81
119
  //# sourceMappingURL=moe_package.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"moe_package.d.ts","sourceRoot":"","sources":["../../src/moe/moe_package.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAyB,MAAM,sBAAsB,CAAC;AAMzE,2DAA2D;AAC3D,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,aAAa,CAAC;AAEpE,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,cAAc,EAAE,OAAO,CAAC;IACxB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,iBAAiB,CAAC;IACxB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;IACxB,mEAAmE;IACnE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAYD;;;;GAIG;AACH,qBAAa,oBAAoB;IAE7B,QAAQ,CAAC,QAAQ,EAAE,qBAAqB;IACxC,QAAQ,CAAC,UAAU,EAAE,WAAW;gBADvB,QAAQ,EAAE,qBAAqB,EAC/B,UAAU,EAAE,WAAW;IAGlC,4DAA4D;IAC5D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,oBAAoB;IAmBjF,qFAAqF;IACrF,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,oBAAoB;IAmBtE,oFAAoF;IACpF,MAAM,IAAI,WAAW;IAarB,kEAAkE;IAClE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,oBAAoB;IAe1D,iFAAiF;IACjF,QAAQ,IAAI,gBAAgB;IAsB5B,uFAAuF;IACvF,SAAS,IAAI,eAAe;IAW5B,iFAAiF;IACjF,MAAM,IAAI,UAAU;CAUrB"}
1
+ {"version":3,"file":"moe_package.d.ts","sourceRoot":"","sources":["../../src/moe/moe_package.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  import { SharedExpertMoE } from "./moe_model.js";
14
14
  import { EvermindLM } from "../lm/evermind_lm.js";
15
+ import { VideoRVQCodec } from "../codec/video_rvq.js";
15
16
  /** First 4 bytes of a serialised package: "EVM1". */
16
17
  const PKG_MAGIC = 0x45564d31;
17
18
  const PKG_VERSION = 1;
@@ -32,9 +33,13 @@ function fnv1a(bytes) {
32
33
  export class EvermindModelPackage {
33
34
  manifest;
34
35
  checkpoint;
35
- constructor(manifest, checkpoint) {
36
+ codec;
37
+ constructor(manifest, checkpoint,
38
+ /** Serialized media codec ("VRQ0" blob), present for video/image packages. */
39
+ codec) {
36
40
  this.manifest = manifest;
37
41
  this.checkpoint = checkpoint;
42
+ this.codec = codec;
38
43
  }
39
44
  /** Package a trained model with its publishing metadata. */
40
45
  static fromModel(model, meta) {
@@ -74,17 +79,55 @@ export class EvermindModelPackage {
74
79
  };
75
80
  return new EvermindModelPackage(manifest, checkpoint);
76
81
  }
77
- /** Serialise to a single `.evermind` blob: magic, version, manifest, checkpoint. */
82
+ /**
83
+ * Package a video/image generative model: its {@link EvermindLM} weights AND the
84
+ * {@link VideoRVQCodec} needed to turn generated tokens back into frames. Without
85
+ * the bundled codec a served media model would emit undecodable token ids — this
86
+ * is what makes an `.evermind` media artifact self-contained and servable.
87
+ */
88
+ static fromMediaLM(lm, codec, meta) {
89
+ if (lm.config.vocabSize !== codec.vocabSize) {
90
+ throw new Error(`fromMediaLM: LM vocabSize (${lm.config.vocabSize}) must equal codec.vocabSize (${codec.vocabSize})`);
91
+ }
92
+ const fp16 = meta.fp16 ?? false;
93
+ const checkpoint = lm.exportWeights({ fp16 });
94
+ const codecBlob = codec.serialize();
95
+ const manifest = {
96
+ schema: "evermind.model/1",
97
+ name: meta.name,
98
+ version: meta.version,
99
+ modelType: "evermind-lm",
100
+ modality: meta.modality,
101
+ config: lm.config,
102
+ paramCount: lm.parameters().reduce((n, p) => n + p.data.length, 0),
103
+ checkpointFormat: "EVL0",
104
+ checkpointFp16: fp16,
105
+ checkpointBytes: checkpoint.byteLength,
106
+ checksum: fnv1a(new Uint8Array(checkpoint)),
107
+ codecFormat: "VRQ0",
108
+ codecChecksum: fnv1a(new Uint8Array(codecBlob)),
109
+ card: meta.card,
110
+ ...(meta.createdAt ? { createdAt: meta.createdAt } : {}),
111
+ };
112
+ return new EvermindModelPackage(manifest, checkpoint, codecBlob);
113
+ }
114
+ /** Serialise to a single `.evermind` blob: magic, version, manifest, checkpoint[, codec]. */
78
115
  toBlob() {
79
116
  const manifestBytes = new TextEncoder().encode(JSON.stringify(this.manifest));
80
117
  const headerBytes = 12; // magic, version, manifestLen
81
- const out = new ArrayBuffer(headerBytes + manifestBytes.byteLength + this.checkpoint.byteLength);
118
+ const codecBytes = this.codec?.byteLength ?? 0;
119
+ const out = new ArrayBuffer(headerBytes + manifestBytes.byteLength + this.checkpoint.byteLength + codecBytes);
82
120
  const head = new Uint32Array(out, 0, 3);
83
121
  head[0] = PKG_MAGIC;
84
122
  head[1] = PKG_VERSION;
85
123
  head[2] = manifestBytes.byteLength;
86
- new Uint8Array(out, headerBytes, manifestBytes.byteLength).set(manifestBytes);
87
- new Uint8Array(out, headerBytes + manifestBytes.byteLength).set(new Uint8Array(this.checkpoint));
124
+ let o = headerBytes;
125
+ new Uint8Array(out, o, manifestBytes.byteLength).set(manifestBytes);
126
+ o += manifestBytes.byteLength;
127
+ new Uint8Array(out, o, this.checkpoint.byteLength).set(new Uint8Array(this.checkpoint));
128
+ o += this.checkpoint.byteLength;
129
+ if (this.codec)
130
+ new Uint8Array(out, o, codecBytes).set(new Uint8Array(this.codec));
88
131
  return out;
89
132
  }
90
133
  /** Parse a `.evermind` blob. Throws on bad magic / truncation. */
@@ -101,8 +144,19 @@ export class EvermindModelPackage {
101
144
  }
102
145
  const manifestBytes = new Uint8Array(buffer, headerBytes, manifestLen);
103
146
  const manifest = JSON.parse(new TextDecoder().decode(manifestBytes));
104
- const checkpoint = buffer.slice(headerBytes + manifestLen);
105
- return new EvermindModelPackage(manifest, checkpoint);
147
+ const bodyStart = headerBytes + manifestLen;
148
+ // A codec section follows the checkpoint only when the manifest fixed the
149
+ // checkpoint length; otherwise the checkpoint runs to end-of-blob (text layout).
150
+ const cpBytes = manifest.checkpointBytes;
151
+ if (cpBytes != null) {
152
+ if (bodyStart + cpBytes > buffer.byteLength) {
153
+ throw new Error("EvermindModelPackage.fromBlob: truncated (checkpointBytes exceeds blob)");
154
+ }
155
+ const checkpoint = buffer.slice(bodyStart, bodyStart + cpBytes);
156
+ const codec = bodyStart + cpBytes < buffer.byteLength ? buffer.slice(bodyStart + cpBytes) : undefined;
157
+ return new EvermindModelPackage(manifest, checkpoint, codec);
158
+ }
159
+ return new EvermindModelPackage(manifest, buffer.slice(bodyStart));
106
160
  }
107
161
  /** Verify integrity + structural sanity before trusting a downloaded package. */
108
162
  validate() {
@@ -127,6 +181,20 @@ export class EvermindModelPackage {
127
181
  if (actual !== this.manifest.checksum) {
128
182
  errors.push(`checksum mismatch (manifest ${this.manifest.checksum}, actual ${actual}) — corrupt or tampered checkpoint`);
129
183
  }
184
+ // Media packages must carry an integral codec — a served media model can't
185
+ // decode tokens → frames without it.
186
+ const modality = this.manifest.modality ?? "text";
187
+ if (modality === "video" || modality === "image") {
188
+ if (!this.codec) {
189
+ errors.push(`modality '${modality}' package is missing its codec section`);
190
+ }
191
+ else {
192
+ const codecActual = fnv1a(new Uint8Array(this.codec));
193
+ if (codecActual !== this.manifest.codecChecksum) {
194
+ errors.push(`codec checksum mismatch (manifest ${this.manifest.codecChecksum}, actual ${codecActual}) — corrupt codec`);
195
+ }
196
+ }
197
+ }
130
198
  return { ok: errors.length === 0, errors };
131
199
  }
132
200
  /** Reconstruct the bare MoE layer. Validates first; throws if invalid / wrong type. */
@@ -153,5 +221,20 @@ export class EvermindModelPackage {
153
221
  lm.loadWeights(this.checkpoint);
154
222
  return lm;
155
223
  }
224
+ /**
225
+ * Reconstruct a video/image model: the generative {@link EvermindLM} plus its
226
+ * {@link VideoRVQCodec}. Pair with `generateVideo` / `generateImage` to produce
227
+ * frames. This is what a media-serving path (gateway) loads and runs.
228
+ */
229
+ loadMediaLM() {
230
+ const v = this.validate();
231
+ if (!v.ok)
232
+ throw new Error(`EvermindModelPackage.loadMediaLM: ${v.errors.join("; ")}`);
233
+ const modality = this.manifest.modality ?? "text";
234
+ if (modality !== "video" && modality !== "image") {
235
+ throw new Error(`loadMediaLM: package modality is '${modality}', use loadLM()`);
236
+ }
237
+ return { lm: this.loadLM(), codec: VideoRVQCodec.deserialize(this.codec), modality };
238
+ }
156
239
  }
157
240
  //# sourceMappingURL=moe_package.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"moe_package.js","sourceRoot":"","sources":["../../src/moe/moe_package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"moe_package.js","sourceRoot":"","sources":["../../src/moe/moe_package.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,22 @@ export interface BPEEncodeOptions {
6
6
  addEos?: boolean;
7
7
  }
8
8
  export type PadSide = 'right' | 'left';
9
+ /** A Hugging Face `tokenizer.json` (or a bare `{ vocab, merges }`) for import. */
10
+ export interface HuggingFaceTokenizerSpec {
11
+ model?: {
12
+ vocab?: Record<string, number>;
13
+ merges?: Array<string | [string, string]>;
14
+ };
15
+ vocab?: Record<string, number>;
16
+ merges?: Array<string | [string, string]>;
17
+ }
18
+ /** Override the special-token strings to match an imported tokenizer. */
19
+ export interface SpecialTokenOverrides {
20
+ bos?: string;
21
+ eos?: string;
22
+ pad?: string;
23
+ unk?: string;
24
+ }
9
25
  export declare class BPETokenizer {
10
26
  vocab: Map<string, number>;
11
27
  idToToken: Map<number, string>;
@@ -31,6 +47,27 @@ export declare class BPETokenizer {
31
47
  minPairFreq?: number;
32
48
  }): void;
33
49
  loadFromObjects(vocabObj: Record<string, number>, mergeArr: string[]): void;
50
+ /**
51
+ * Seed this tokenizer from an existing Hugging Face `tokenizer.json` — the
52
+ * *import-merges* path (vs `train`, which learns a fresh vocab from a corpus).
53
+ *
54
+ * BPE merges + vocab are portable DATA, not architecture: a proven code
55
+ * tokenizer (GPT-2 / Llama / StarCoder family) gives Evermind a battle-tested
56
+ * code vocabulary on day one. Those tokenizers use the same GPT-2 byte→unicode
57
+ * mapping this class already implements ({@link BYTE_ENCODER}), so the imported
58
+ * vocab is directly compatible with `encode`/`decode`/`_bpe`.
59
+ *
60
+ * Accepts the full `tokenizer.json` object (reads `.model.vocab` / `.model.merges`)
61
+ * or a bare `{ vocab, merges }`. `merges` may be the classic `"a b"` strings or
62
+ * the newer `["a", "b"]` pair arrays. Special-token strings can be overridden to
63
+ * match the source tokenizer (e.g. `<|endoftext|>`, `<s>`, `</s>`).
64
+ */
65
+ loadHuggingFace(spec: HuggingFaceTokenizerSpec, specials?: SpecialTokenOverrides): void;
66
+ /**
67
+ * Fetch and import a Hugging Face `tokenizer.json` by URL — the IDE's
68
+ * "import merges from a repo" path. Resolves once the tokenizer is loaded.
69
+ */
70
+ loadHuggingFaceUrl(url: string, specials?: SpecialTokenOverrides): Promise<void>;
34
71
  encode(text: string, opts?: BPEEncodeOptions): number[];
35
72
  decode(ids: number[]): string;
36
73
  _bpe(word: string): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"bpe.d.ts","sourceRoot":"","sources":["../../src/tokenizer/bpe.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AA8BvC,qBAAa,YAAY;IACrB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;;IAef,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5F;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAsE/F,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAS3E,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,MAAM,EAAE;IA4B3D,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM;IAgB7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA+B5B,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,OAAiB,GAAG,MAAM,EAAE;IAO/E,IAAI,SAAS,IAAI,MAAM,CAA4B;CACtD"}
1
+ {"version":3,"file":"bpe.d.ts","sourceRoot":"","sources":["../../src/tokenizer/bpe.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AAEvC,kFAAkF;AAClF,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;KAAE,CAAC;IACtF,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,yEAAyE;AACzE,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA8BD,qBAAa,YAAY;IACrB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;;IAef,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5F;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAsE/F,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAS3E;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,IAAI,EAAE,wBAAwB,EAAE,QAAQ,GAAE,qBAA0B,GAAG,IAAI;IAkB3F;;;OAGG;IACG,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,qBAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1F,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,MAAM,EAAE;IA4B3D,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM;IAgB7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA+B5B,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,OAAiB,GAAG,MAAM,EAAE;IAO/E,IAAI,SAAS,IAAI,MAAM,CAA4B;CACtD"}
@@ -162,6 +162,53 @@ export class BPETokenizer {
162
162
  this.eosId = this.vocab.get(this.eosToken) ?? null;
163
163
  this.padId = this.vocab.get(this.padToken) ?? null;
164
164
  }
165
+ /**
166
+ * Seed this tokenizer from an existing Hugging Face `tokenizer.json` — the
167
+ * *import-merges* path (vs `train`, which learns a fresh vocab from a corpus).
168
+ *
169
+ * BPE merges + vocab are portable DATA, not architecture: a proven code
170
+ * tokenizer (GPT-2 / Llama / StarCoder family) gives Evermind a battle-tested
171
+ * code vocabulary on day one. Those tokenizers use the same GPT-2 byte→unicode
172
+ * mapping this class already implements ({@link BYTE_ENCODER}), so the imported
173
+ * vocab is directly compatible with `encode`/`decode`/`_bpe`.
174
+ *
175
+ * Accepts the full `tokenizer.json` object (reads `.model.vocab` / `.model.merges`)
176
+ * or a bare `{ vocab, merges }`. `merges` may be the classic `"a b"` strings or
177
+ * the newer `["a", "b"]` pair arrays. Special-token strings can be overridden to
178
+ * match the source tokenizer (e.g. `<|endoftext|>`, `<s>`, `</s>`).
179
+ */
180
+ loadHuggingFace(spec, specials = {}) {
181
+ const model = (spec.model ?? spec);
182
+ const vocabObj = model.vocab ?? spec.vocab;
183
+ const rawMerges = model.merges ?? spec.merges;
184
+ if (!vocabObj || typeof vocabObj !== 'object') {
185
+ throw new Error('loadHuggingFace: missing model.vocab (expected a Hugging Face tokenizer.json)');
186
+ }
187
+ if (!Array.isArray(rawMerges)) {
188
+ throw new Error('loadHuggingFace: missing model.merges (expected a BPE tokenizer.json)');
189
+ }
190
+ const mergeArr = rawMerges.map((m) => (Array.isArray(m) ? `${m[0]} ${m[1]}` : String(m)));
191
+ if (specials.bos)
192
+ this.bosToken = specials.bos;
193
+ if (specials.eos)
194
+ this.eosToken = specials.eos;
195
+ if (specials.pad)
196
+ this.padToken = specials.pad;
197
+ if (specials.unk)
198
+ this.unkToken = specials.unk;
199
+ this.loadFromObjects(vocabObj, mergeArr);
200
+ }
201
+ /**
202
+ * Fetch and import a Hugging Face `tokenizer.json` by URL — the IDE's
203
+ * "import merges from a repo" path. Resolves once the tokenizer is loaded.
204
+ */
205
+ async loadHuggingFaceUrl(url, specials = {}) {
206
+ const res = await fetch(url);
207
+ if (!res.ok)
208
+ throw new Error(`loadHuggingFaceUrl: ${res.status} fetching ${url}`);
209
+ const spec = (await res.json());
210
+ this.loadHuggingFace(spec, specials);
211
+ }
165
212
  encode(text, opts = {}) {
166
213
  const words = text.match(PRE_TOKENIZE_RE) ?? [];
167
214
  const ids = [];
@@ -1 +1 @@
1
- {"version":3,"file":"bpe.js","sourceRoot":"","sources":["../../src/tokenizer/bpe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bpe.js","sourceRoot":"","sources":["../../src/tokenizer/bpe.ts"],"names":[],"mappings":"AAAA;;GAEG;AAwBH,SAAS,gBAAgB;IACrB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,MAAM,GAAuB;QAC/B,CAAC,IAAI,EAAE,IAAI,CAAC;QACZ,CAAC,IAAI,EAAE,IAAI,CAAC;QACZ,CAAC,IAAI,EAAE,IAAI,CAAC;KACf,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;IACL,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC,EAAE,CAAC;QACR,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;AACxC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,MAAM,eAAe,GACjB,sHAAsH,CAAC;AAE3H,MAAM,OAAO,YAAY;IACrB,KAAK,CAAsB;IAC3B,SAAS,CAAsB;IAC/B,MAAM,CAAsB;IAC5B,QAAQ,CAAS;IACjB,QAAQ,CAAS;IACjB,QAAQ,CAAS;IACjB,QAAQ,CAAS;IACjB,KAAK,CAAgB;IACrB,KAAK,CAAgB;IACrB,KAAK,CAAgB;IAErB;QACI,IAAI,CAAC,KAAK,GAAQ,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAI,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAO,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAK,cAAc,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAK,YAAY,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAK,eAAe,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAK,OAAO,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAQ,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,GAAQ,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,GAAQ,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAsC,EAAE,MAAyB;QACxE,IAAI,QAAgC,CAAC;QACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAA4B,CAAC;QAC1D,CAAC;aAAM,CAAC;YACJ,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,KAAK,GAAO,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAElE,IAAI,UAAoB,CAAC;QACzB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC7B,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACJ,UAAU,GAAG,MAAM,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACvD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAyB,EAAE,OAAqD,EAAE;QACpF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAExD,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClF,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEzE,uEAAuE;QACvE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;YAC7C,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;gBACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAE,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;oBAC3C,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC7D,CAAC;YACL,CAAC;YACD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;gBACrC,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;oBACpB,IAAI,GAAG,IAAI,CAAC;oBACZ,SAAS,GAAG,KAAK,CAAC;gBACtB,CAAC;YACL,CAAC;YACD,IAAI,SAAS,GAAG,WAAW;gBAAE,MAAM;YACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAa,EAAE,CAAC;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACrC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBAClE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACjB,CAAC,EAAE,CAAC;oBACR,CAAC;yBAAM,CAAC;wBACJ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;oBACzB,CAAC;gBACL,CAAC;gBACD,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;YACjB,CAAC;QACL,CAAC;QAED,qFAAqF;QACrF,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,KAAK,MAAM,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjF,IAAI,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC;gBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QACzD,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC,CAAC,EAAE,IAAI,QAAQ,CAAC;gBAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QAC/C,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC;gBAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,eAAe,CAAC,QAAgC,EAAE,QAAkB;QAChE,IAAI,CAAC,KAAK,GAAO,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,GAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,IAA8B,EAAE,WAAkC,EAAE;QAChF,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAkF,CAAC;QACpH,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,IAAK,IAAiC,CAAC,KAAK,CAAC;QACzE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,IAAK,IAAiC,CAAC,MAAM,CAAC;QAC5E,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAC;QACrG,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1F,IAAI,QAAQ,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC/C,IAAI,QAAQ,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC/C,IAAI,QAAQ,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC/C,IAAI,QAAQ,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC/C,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,GAAW,EAAE,WAAkC,EAAE;QACtE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA6B,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,OAAyB,EAAE;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAChD,MAAM,GAAG,GAAe,EAAE,CAAC;QAE3B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE7D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,KAAK,GAAM,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,OAAO,GAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAErC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC/B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;oBACnB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;wBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC/B,IAAI,GAAG,KAAK,SAAS;4BAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,CAAC,GAAa;QAChB,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnC,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,IAAI,GAAG,CAAC;QAC1C,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,UAAU,CACxB,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACzE,CAAC;QACF,IAAI,CAAC;YACD,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,OAAO,CAAC;QACnB,CAAC;IACL,CAAC;IAED,IAAI,CAAC,IAAY;QACb,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAExB,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,QAAQ,GAAG,QAAQ,CAAC;YACxB,IAAI,OAAO,GAAI,CAAC,CAAC,CAAC;YAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;oBACxC,QAAQ,GAAG,IAAI,CAAC;oBAChB,OAAO,GAAI,CAAC,CAAC;gBACjB,CAAC;YACL,CAAC;YAED,IAAI,OAAO,KAAK,CAAC,CAAC;gBAAE,MAAM;YAE1B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAE,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,CAAE,CAAC;YACzD,OAAO,GAAG;gBACN,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC;gBAC5B,MAAM;gBACN,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;aAChC,CAAC;QACN,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,aAAa,CAAC,GAAa,EAAE,MAAc,EAAE,OAAgB,OAAO;QAChE,IAAI,GAAG,CAAC,MAAM,IAAI,MAAM;YAAE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAK,IAAI,KAAK,CAAS,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjE,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,SAAS,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;CACtD"}
@@ -14,22 +14,54 @@ export interface TrainOptions {
14
14
  beta2?: number;
15
15
  eps?: number;
16
16
  wsla?: boolean;
17
- onEpochEnd?: ((epoch: number, loss: number) => void) | null;
17
+ /** Trust region: max |Δθ| per optimizer step. 0 disables. Defaults to
18
+ * {@link WSLA_MAX_DELTA} in WSLA (write-through) mode, else 0 (full training). */
19
+ maxDelta?: number;
20
+ /** Read back the pre-clip gradient L2 norm each step (the `grad_norm_reduce`
21
+ * kernel already computes it — this just maps it to the CPU). OFF by default: the
22
+ * readback is a GPU sync point that would slow a long finetune. `adapt()` turns it
23
+ * ON so the norm reaches {@link AdaptResult} as an instability signal. */
24
+ trackGradNorm?: boolean;
25
+ onEpochEnd?: ((epoch: number, loss: number, gradNorm?: number) => void) | null;
18
26
  }
27
+ /**
28
+ * Default per-step trust region for WSLA / write-through adaptation. Small
29
+ * enough that a single `adapt()` nudges the narrow params without lurching, so
30
+ * repeated adapts stay stable (and any that regress are cheaply rolled back by
31
+ * the session). Full-training callers pass `maxDelta: 0` (or omit it in
32
+ * non-WSLA mode) for unbounded steps.
33
+ */
34
+ export declare const WSLA_MAX_DELTA = 0.05;
19
35
  export declare class MambaTrainer {
20
36
  model: HybridMambaModel;
21
37
  tokenizer: BPETokenizer | null;
22
38
  device: GPUDevice;
39
+ /**
40
+ * Adam moments keyed by parameter NAME (not array index). Name-keying is what
41
+ * lets WSLA toggle safely: a narrow write-through step updates only the
42
+ * `layer{i}.wXProj/bXProj` subset, a full fine-tune updates everything, and
43
+ * both reuse the SAME `m`/`v` buffers per parameter. Index-keyed moments (the
44
+ * old scheme) silently misaligned the moment with the wrong parameter the
45
+ * moment the trainable set changed shape — corrupting the update.
46
+ */
23
47
  private _moments;
24
48
  private _step;
25
49
  private _adamwPipeline;
26
50
  private _clipReducePipeline;
27
51
  private _clipScalePipeline;
28
52
  constructor(model: HybridMambaModel | MambaModel, tokenizer?: BPETokenizer | null);
29
- private _initMoments;
53
+ /** Get-or-create the Adam first/second moments for a parameter, by name. */
54
+ private _momentFor;
30
55
  train(input: string | number[], opts?: TrainOptions): Promise<number[]>;
31
56
  private _trainStep;
32
57
  private _adamwStep;
58
+ /**
59
+ * Clip gradients to `maxNorm` in place. The reduce kernel writes Σg² into
60
+ * `normSqBuf`; the scale kernel then rescales the grads. When `trackNorm` is set
61
+ * we read Σg² back and return the true pre-clip L2 norm (√Σg²) — the kernel
62
+ * already computed it, so this is only a small buffer readback (a GPU sync,
63
+ * hence opt-in). Returns null when not tracking.
64
+ */
33
65
  private _clipGradients;
34
66
  evaluate(input: string | number[]): Promise<number>;
35
67
  }