@genai-fi/nanogpt 0.10.3 → 0.12.0

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 (238) hide show
  1. package/dist/Generator.d.ts +10 -5
  2. package/dist/Generator.js +1789 -1765
  3. package/dist/{RealDiv-KAPDe8zB.js → RealDiv-C8neBwFi.js} +15 -15
  4. package/dist/{Reshape-BYkmUnAv.js → Reshape-Bd4V_4X7.js} +1 -1
  5. package/dist/{Reshape-Zt6eb7yh.js → Reshape-Ck29jQSY.js} +5 -5
  6. package/dist/TeachableLLM.d.ts +5 -3
  7. package/dist/TeachableLLM.js +14 -14
  8. package/dist/Trainer.d.ts +3 -1
  9. package/dist/Trainer.js +11 -8
  10. package/dist/{axis_util-BaG7mf5A.js → axis_util-DGqbT-FX.js} +3 -3
  11. package/dist/backend.js +2 -2
  12. package/dist/{backend_util-RCe-rHaj.js → backend_util-DC3rBo_H.js} +18 -18
  13. package/dist/{backend_webgpu-DE3ACOLx.js → backend_webgpu-mbhNnlx9.js} +3 -3
  14. package/dist/{broadcast_to-B3eYlZm7.js → broadcast_to-D1Dmg2Oz.js} +2 -2
  15. package/dist/checks/appendCache.js +2 -2
  16. package/dist/checks/attentionMask.js +3 -3
  17. package/dist/checks/gelu.js +2 -2
  18. package/dist/checks/matMulGelu.js +2 -2
  19. package/dist/checks/normRMS.js +4 -4
  20. package/dist/checks/normRMSGrad.js +3 -3
  21. package/dist/checks/packUnpack.js +2 -2
  22. package/dist/checks/qkv.js +4 -4
  23. package/dist/checks/rope.js +2 -2
  24. package/dist/{clip_by_value-BnO7-a88.js → clip_by_value-fg2aKzUy.js} +5 -5
  25. package/dist/complex-Cyg-eQeZ.js +11 -0
  26. package/dist/concat-CSm2rMwe.js +17 -0
  27. package/dist/{concat_util-DpW8mL_l.js → concat_util-D0je5Ppu.js} +1 -1
  28. package/dist/{dataset-BcwmTGYc.js → dataset-CVIJu7Xa.js} +7 -7
  29. package/dist/{dropout-BcvN9JYi.js → dropout-DLhSMNTZ.js} +9 -9
  30. package/dist/expand_dims-ChkuOp6I.js +11 -0
  31. package/dist/{exports_initializers-Hta_rEnm.js → exports_initializers-1KWPiStI.js} +1 -1
  32. package/dist/{floor-D5QdR_le.js → floor-BRMPgeIs.js} +1 -1
  33. package/dist/{gather-D3JcZUaI.js → gather-BSULDalH.js} +1 -1
  34. package/dist/{gelu-CjNPL4OH.js → gelu-BK1k-n1i.js} +1 -1
  35. package/dist/{gpgpu_math-DAOmgtXR.js → gpgpu_math-BJSTk_mW.js} +25 -25
  36. package/dist/{index-BwexR4lA.js → index-BBVLAXZD.js} +89 -89
  37. package/dist/{index-DOvlwCh-.js → index-Duu1Lvvv.js} +53 -53
  38. package/dist/{kernel_funcs_utils-CCzYdUZg.js → kernel_funcs_utils-BtYrPoJu.js} +6 -6
  39. package/dist/layers/BaseLayer.js +2 -2
  40. package/dist/layers/CausalSelfAttention.js +6 -6
  41. package/dist/layers/MLP.js +4 -4
  42. package/dist/layers/PositionEmbedding.js +5 -5
  43. package/dist/layers/RMSNorm.js +3 -3
  44. package/dist/layers/RoPECache.js +4 -4
  45. package/dist/layers/TiedEmbedding.js +6 -6
  46. package/dist/layers/TransformerBlock.js +1 -1
  47. package/dist/loader/loadTransformers.js +1 -1
  48. package/dist/loader/oldZipLoad.js +9 -9
  49. package/dist/log_sum_exp-CVqLsVLl.js +39 -0
  50. package/dist/main.d.ts +10 -1
  51. package/dist/main.js +68 -58
  52. package/dist/{matMul16-BWRSOCWB.js → matMul16-xswmhSuF.js} +3 -3
  53. package/dist/{matMulGelu-CzfgT6Wq.js → matMulGelu-BpvgnYG8.js} +14 -14
  54. package/dist/mat_mul-Bn2BDpT4.js +11 -0
  55. package/dist/{mod-AnXEvvpo.js → mod-B4AUd1Np.js} +1 -1
  56. package/dist/models/NanoGPTV1.js +2 -2
  57. package/dist/models/model.js +9 -9
  58. package/dist/{ones-D2rT0xk2.js → ones-CBI1AQjb.js} +3 -3
  59. package/dist/ops/adamAdjust.js +1 -1
  60. package/dist/ops/adamMoments.js +1 -1
  61. package/dist/ops/add16.js +1 -1
  62. package/dist/ops/appendCache.js +3 -3
  63. package/dist/ops/attentionMask.js +1 -1
  64. package/dist/ops/concat16.js +2 -2
  65. package/dist/ops/cpu/adamAdjust.js +9 -9
  66. package/dist/ops/cpu/adamMoments.js +5 -5
  67. package/dist/ops/cpu/appendCache.js +6 -6
  68. package/dist/ops/cpu/attentionMask.js +10 -10
  69. package/dist/ops/cpu/fusedSoftmax.js +5 -5
  70. package/dist/ops/cpu/gatherSub.js +9 -9
  71. package/dist/ops/cpu/gelu.js +5 -5
  72. package/dist/ops/cpu/matMul16.js +2 -2
  73. package/dist/ops/cpu/matMulGelu.js +3 -3
  74. package/dist/ops/cpu/matMulMul.js +5 -5
  75. package/dist/ops/cpu/mulDropout.js +1 -1
  76. package/dist/ops/cpu/normRMS.js +7 -7
  77. package/dist/ops/cpu/qkv.js +3 -3
  78. package/dist/ops/cpu/rope.js +5 -5
  79. package/dist/ops/cpu/scatterSub.js +11 -11
  80. package/dist/ops/dot16.js +2 -2
  81. package/dist/ops/gatherSub.js +1 -1
  82. package/dist/ops/gelu.js +2 -2
  83. package/dist/ops/grads/add16.js +4 -4
  84. package/dist/ops/grads/attentionMask.js +2 -2
  85. package/dist/ops/grads/gelu.js +2 -2
  86. package/dist/ops/grads/matMul16.js +3 -3
  87. package/dist/ops/grads/matMulGelu.js +6 -6
  88. package/dist/ops/grads/normRMS.js +4 -4
  89. package/dist/ops/grads/pack16.js +3 -3
  90. package/dist/ops/grads/qkv.js +10 -10
  91. package/dist/ops/grads/rope.js +2 -2
  92. package/dist/ops/grads/softmax16.js +1 -1
  93. package/dist/ops/grads/unpack16.js +2 -2
  94. package/dist/ops/matMul16.js +3 -3
  95. package/dist/ops/matMulGelu.js +2 -2
  96. package/dist/ops/matMulMul.js +1 -1
  97. package/dist/ops/mul16.js +1 -1
  98. package/dist/ops/mulDrop.js +1 -1
  99. package/dist/ops/normRMS.js +1 -1
  100. package/dist/ops/pack16.js +2 -2
  101. package/dist/ops/qkv.js +1 -1
  102. package/dist/ops/reshape16.js +2 -2
  103. package/dist/ops/rope.js +2 -2
  104. package/dist/ops/scatterSub.js +1 -1
  105. package/dist/ops/slice16.js +2 -2
  106. package/dist/ops/softmax16.js +1 -1
  107. package/dist/ops/sub16.js +1 -1
  108. package/dist/ops/sum16.js +2 -2
  109. package/dist/ops/transpose16.js +6 -6
  110. package/dist/ops/unpack16.js +2 -2
  111. package/dist/ops/webgl/adamAdjust.js +2 -2
  112. package/dist/ops/webgl/adamMoments.js +1 -1
  113. package/dist/ops/webgl/appendCache.js +1 -1
  114. package/dist/ops/webgl/attentionMask.js +1 -1
  115. package/dist/ops/webgl/fusedSoftmax.js +4 -4
  116. package/dist/ops/webgl/gatherSub.js +1 -1
  117. package/dist/ops/webgl/gelu.js +2 -2
  118. package/dist/ops/webgl/log.js +3 -3
  119. package/dist/ops/webgl/matMul16.js +8 -8
  120. package/dist/ops/webgl/matMulGelu.js +4 -4
  121. package/dist/ops/webgl/matMulMul.js +7 -7
  122. package/dist/ops/webgl/mulDropout.js +1 -1
  123. package/dist/ops/webgl/normRMS.js +7 -7
  124. package/dist/ops/webgl/qkv.js +1 -1
  125. package/dist/ops/webgl/rope.js +1 -1
  126. package/dist/ops/webgl/scatterSub.js +1 -1
  127. package/dist/ops/webgpu/adamAdjust.js +3 -3
  128. package/dist/ops/webgpu/adamMoments.js +5 -5
  129. package/dist/ops/webgpu/add16.js +1 -1
  130. package/dist/ops/webgpu/appendCache.js +3 -3
  131. package/dist/ops/webgpu/attentionMask.js +2 -2
  132. package/dist/ops/webgpu/attentionMask32_program.js +2 -2
  133. package/dist/ops/webgpu/concat16.js +5 -5
  134. package/dist/ops/webgpu/gatherSub.js +5 -5
  135. package/dist/ops/webgpu/gelu.js +3 -3
  136. package/dist/ops/webgpu/matMul16.js +19 -19
  137. package/dist/ops/webgpu/matMul16_program.js +2 -2
  138. package/dist/ops/webgpu/mul16.js +4 -4
  139. package/dist/ops/webgpu/normRMS.js +6 -6
  140. package/dist/ops/webgpu/normRMSGrad.js +4 -4
  141. package/dist/ops/webgpu/pack16.js +3 -3
  142. package/dist/ops/webgpu/pack16_program.js +2 -2
  143. package/dist/ops/webgpu/qkv.js +8 -8
  144. package/dist/ops/webgpu/rope.js +3 -3
  145. package/dist/ops/webgpu/scatterSub.js +3 -3
  146. package/dist/ops/webgpu/slice16.js +4 -4
  147. package/dist/ops/webgpu/softmax16.js +4 -4
  148. package/dist/ops/webgpu/softmax16_program.js +2 -2
  149. package/dist/ops/webgpu/softmax16_subgroup_program.js +2 -2
  150. package/dist/ops/webgpu/softmax16grad.js +1 -1
  151. package/dist/ops/webgpu/sub16.js +4 -4
  152. package/dist/ops/webgpu/sum16.js +5 -5
  153. package/dist/ops/webgpu/transpose16.js +2 -2
  154. package/dist/ops/webgpu/transpose16_program.js +2 -2
  155. package/dist/ops/webgpu/transpose16_shared_program.js +3 -3
  156. package/dist/ops/webgpu/unpack16.js +5 -5
  157. package/dist/ops/webgpu/utils/binary_op.js +3 -3
  158. package/dist/ops/webgpu/utils/reductions.js +4 -4
  159. package/dist/{ops-B5yanEdW.js → ops-C2_OXuZ4.js} +69 -69
  160. package/dist/{pack16-nQ6JaLo-.js → pack16-atD0eYRm.js} +9 -9
  161. package/dist/patches/webgpu_backend.js +6 -6
  162. package/dist/patches/webgpu_base.js +1 -1
  163. package/dist/patches/webgpu_program.js +8 -8
  164. package/dist/{random_width-or-CEftb.js → random_width-BN4wGJaW.js} +33 -33
  165. package/dist/range-DKmP1-OQ.js +10 -0
  166. package/dist/relu-BsXmGzzu.js +9 -0
  167. package/dist/{reshape-ByE68wS9.js → reshape-BI0yzp1T.js} +1 -1
  168. package/dist/{resize_nearest_neighbor-B19mCEg2.js → resize_nearest_neighbor-BA_BX-ub.js} +26 -26
  169. package/dist/{rope-Ir4mTyD1.js → rope-DJ7Y7c-u.js} +1 -1
  170. package/dist/{scatter_nd_util-lvSiX8q4.js → scatter_nd_util-k9MUVUkn.js} +1 -1
  171. package/dist/{selu_util-kbhpTdYD.js → selu_util-DyW0X1WG.js} +5 -5
  172. package/dist/{shared-DT1TkE6w.js → shared-Q3BS6T03.js} +1 -1
  173. package/dist/{shared-dntlHIDQ.js → shared-nnSWpC3u.js} +86 -86
  174. package/dist/{slice-BfEGSH82.js → slice-wBNvzVyz.js} +1 -1
  175. package/dist/{slice_util-uTKwiEpW.js → slice_util-zN8KFC5I.js} +1 -1
  176. package/dist/{softmax-CA5jFsLR.js → softmax-DfuYyjMh.js} +1 -1
  177. package/dist/split-BYrLboMq.js +9 -0
  178. package/dist/squeeze-Bk8Brcct.js +10 -0
  179. package/dist/{stack-Cf4n9h0N.js → stack-CDWShFHF.js} +1 -1
  180. package/dist/{step-CINUs5QB.js → step-BS5JXRR6.js} +23 -23
  181. package/dist/{sum-DWAtNGez.js → sum-BPUfDB2X.js} +3 -3
  182. package/dist/tensor-CEt9Nm2s.js +8 -0
  183. package/dist/tensor1d-Cc_KCIDg.js +11 -0
  184. package/dist/{tensor2d-Bs9wZRc7.js → tensor2d-BN97fF71.js} +3 -3
  185. package/dist/{tensor4d-BARPdTaS.js → tensor4d-vuDDgdUI.js} +1 -1
  186. package/dist/{tfjs_backend-y1cvNhLA.js → tfjs_backend-806hyYve.js} +49 -49
  187. package/dist/{tile-mbfagpsB.js → tile-OWUvpIVt.js} +3 -3
  188. package/dist/tokeniser/BaseTokeniser.d.ts +25 -0
  189. package/dist/tokeniser/BaseTokeniser.js +94 -0
  190. package/dist/tokeniser/CharTokeniser.d.ts +10 -9
  191. package/dist/tokeniser/CharTokeniser.js +44 -30
  192. package/dist/tokeniser/bpe.d.ts +10 -9
  193. package/dist/tokeniser/bpe.js +67 -52
  194. package/dist/tokeniser/type.d.ts +14 -5
  195. package/dist/training/Adam.js +2 -2
  196. package/dist/training/AdamExt.js +1 -1
  197. package/dist/training/DatasetBuilder.d.ts +3 -3
  198. package/dist/training/DatasetBuilder.js +34 -38
  199. package/dist/training/FullTrainer.js +1 -1
  200. package/dist/training/Trainer.d.ts +4 -3
  201. package/dist/training/Trainer.js +22 -25
  202. package/dist/training/sparseCrossEntropy.js +3 -3
  203. package/dist/training/tasks/ConversationTask.d.ts +11 -0
  204. package/dist/training/tasks/ConversationTask.js +26 -0
  205. package/dist/training/tasks/PretrainingTask.d.ts +11 -0
  206. package/dist/training/tasks/PretrainingTask.js +34 -0
  207. package/dist/training/tasks/StartSentenceTask.d.ts +12 -0
  208. package/dist/training/tasks/StartSentenceTask.js +42 -0
  209. package/dist/training/tasks/Task.d.ts +8 -0
  210. package/dist/training/tasks/Task.js +41 -0
  211. package/dist/{transpose-ClWiBS_b.js → transpose-BUkQCJp9.js} +6 -6
  212. package/dist/{unsorted_segment_sum-BDDhB_E6.js → unsorted_segment_sum-BljxHhCY.js} +5 -5
  213. package/dist/utilities/dummy.js +3 -3
  214. package/dist/utilities/multinomialCPU.js +2 -2
  215. package/dist/utilities/packed.js +1 -1
  216. package/dist/utilities/performance.js +1 -1
  217. package/dist/utilities/profile.js +1 -1
  218. package/dist/utilities/safetensors.js +2 -2
  219. package/dist/utilities/sentences.d.ts +1 -1
  220. package/dist/utilities/sentences.js +11 -11
  221. package/dist/utilities/weights.js +2 -2
  222. package/dist/{variable-WawDEaAb.js → variable-DPt_Iuog.js} +1 -1
  223. package/dist/{webgpu_program-DuOXPQol.js → webgpu_program-BpWRlghH.js} +3 -3
  224. package/dist/{webgpu_util-RxEF33Rj.js → webgpu_util-DMiKzzQM.js} +7 -7
  225. package/dist/{zeros-KnWaWf-X.js → zeros-5YROwwUH.js} +2 -2
  226. package/dist/{zeros_like-DvE73F4e.js → zeros_like-De4n1C3m.js} +71 -71
  227. package/package.json +1 -1
  228. package/dist/complex-DjxcVmoX.js +0 -11
  229. package/dist/concat-BV8bt5H-.js +0 -17
  230. package/dist/expand_dims-DT4tEPwA.js +0 -11
  231. package/dist/log_sum_exp-ngO0-4pK.js +0 -39
  232. package/dist/mat_mul-SjpJRLyL.js +0 -11
  233. package/dist/range-BklejeeW.js +0 -10
  234. package/dist/relu-CP0ZcxWO.js +0 -9
  235. package/dist/split-CVLc0w--.js +0 -9
  236. package/dist/squeeze-C7Z2srUo.js +0 -10
  237. package/dist/tensor-DJoc7gJU.js +0 -8
  238. package/dist/tensor1d-D11P_7Dp.js +0 -11
@@ -1633,7 +1633,7 @@ class et {
1633
1633
  * gradient, which defaults to `1`.
1634
1634
  */
1635
1635
  gradients(t, n, s, r = !1) {
1636
- if (p(n.length > 0, () => "gradients() received an empty list of xs."), s != null && s.dtype !== "float32")
1636
+ if (p(n.length > 0, () => "gradients() received an empty list of xs."), s != null && s.dtype !== "float32" && s.dtype !== "packedF16")
1637
1637
  throw new Error(`dy must have 'float32' dtype, but has '${s.dtype}'`);
1638
1638
  const a = this.scopedRun(() => this.startTape(), () => this.endTape(), () => this.tidy("forward", t));
1639
1639
  p(a instanceof F, () => "The result y returned by f() must be a tensor.");
@@ -3228,46 +3228,46 @@ function vs() {
3228
3228
  }
3229
3229
  vs();
3230
3230
  export {
3231
- Cs as $,
3232
- N as A,
3233
- T as B,
3234
- Ct as C,
3235
- Jn as D,
3231
+ fi as $,
3232
+ Kr as A,
3233
+ K as B,
3234
+ yr as C,
3235
+ ur as D,
3236
3236
  f as E,
3237
- yr as F,
3238
- En as G,
3239
- wr as H,
3240
- Kr as I,
3241
- Yr as J,
3242
- Qr as K,
3243
- K as L,
3244
- ur as M,
3245
- Na as N,
3237
+ Yr as F,
3238
+ Qr as G,
3239
+ Ja as H,
3240
+ So as I,
3241
+ wo as J,
3242
+ Gs as K,
3243
+ Rt as L,
3244
+ Na as M,
3245
+ yo as N,
3246
3246
  H as O,
3247
- Ja as P,
3248
- So as Q,
3247
+ Oa as P,
3248
+ se as Q,
3249
3249
  Xa as R,
3250
3250
  uo as S,
3251
3251
  Co as T,
3252
- wo as U,
3253
- Gs as V,
3254
- Oa as W,
3255
- Rt as X,
3256
- yo as Y,
3257
- se as Z,
3258
- Ue as _,
3252
+ z as U,
3253
+ Ue as V,
3254
+ Cs as W,
3255
+ Tn as X,
3256
+ vn as Y,
3257
+ qa as Z,
3258
+ os as _,
3259
3259
  si as a,
3260
3260
  Ba as a$,
3261
- Tn as a0,
3262
- vn as a1,
3263
- qa as a2,
3264
- os as a3,
3265
- fi as a4,
3266
- mi as a5,
3267
- pi as a6,
3268
- C as a7,
3269
- F as a8,
3270
- gi as a9,
3261
+ mi as a0,
3262
+ pi as a1,
3263
+ C as a2,
3264
+ F as a3,
3265
+ gi as a4,
3266
+ Ds as a5,
3267
+ te as a6,
3268
+ br as a7,
3269
+ $t as a8,
3270
+ ei as a9,
3271
3271
  xt as aA,
3272
3272
  he as aB,
3273
3273
  R as aC,
@@ -3295,11 +3295,11 @@ export {
3295
3295
  ci as aY,
3296
3296
  rs as aZ,
3297
3297
  co as a_,
3298
- Ds as aa,
3299
- te as ab,
3300
- br as ac,
3301
- $t as ad,
3302
- ei as ae,
3298
+ S as aa,
3299
+ Dt as ab,
3300
+ di as ac,
3301
+ ii as ad,
3302
+ Us as ae,
3303
3303
  Ce as af,
3304
3304
  Ps as ag,
3305
3305
  Os as ah,
@@ -3496,25 +3496,25 @@ export {
3496
3496
  Wa as dy,
3497
3497
  ja as dz,
3498
3498
  ni as e,
3499
- ii as f,
3499
+ Jo as f,
3500
3500
  oi as g,
3501
- z as h,
3502
- Us as i,
3503
- S as j,
3501
+ as as h,
3502
+ Xo as i,
3503
+ $ as j,
3504
3504
  Fn as k,
3505
- p as l,
3505
+ k as l,
3506
3506
  b as m,
3507
- Dt as n,
3508
- di as o,
3509
- Jo as p,
3510
- as as q,
3507
+ nt as n,
3508
+ N as o,
3509
+ Qt as p,
3510
+ T as q,
3511
3511
  ai as r,
3512
3512
  ri as s,
3513
3513
  E as t,
3514
- Xo as u,
3514
+ Ct as u,
3515
3515
  hs as v,
3516
- $ as w,
3517
- k as x,
3518
- nt as y,
3519
- Qt as z
3516
+ Jn as w,
3517
+ p as x,
3518
+ En as y,
3519
+ wr as z
3520
3520
  };
@@ -1,6 +1,6 @@
1
- import { a3 as B, h as K, aQ as G, ac as W, aJ as z, aR as V, j as N, aK as F, ak as S } from "./index-DOvlwCh-.js";
2
- import { u as O, f as Y } from "./gpgpu_math-DAOmgtXR.js";
3
- import { f as v } from "./backend_util-RCe-rHaj.js";
1
+ import { _ as B, U as K, aQ as G, a7 as W, aJ as z, aR as V, aa as N, aK as F, ak as S } from "./index-Duu1Lvvv.js";
2
+ import { u as O, f as Y } from "./gpgpu_math-BJSTk_mW.js";
3
+ import { f as v } from "./backend_util-DC3rBo_H.js";
4
4
  function H(t, e) {
5
5
  return ["x", "y", "z", "w", "u", "v"].slice(0, e).map((s) => `${t}.${s}`);
6
6
  }
@@ -31,7 +31,7 @@ class q {
31
31
  `;
32
32
  }
33
33
  }
34
- const T = "if (isnan(x)) return x;", j = "return x;", de = "return abs(x);", M = "return (x >= 0.0) ? x : (exp(x) - 1.0);", J = T + `
34
+ const T = "if (isnan(x)) return x;", M = "return x;", de = "return abs(x);", j = "return (x >= 0.0) ? x : (exp(x) - 1.0);", J = T + `
35
35
  return (x < 0.0) ? 0.0 : x;
36
36
  `, Q = T + `
37
37
  return (x < 0.0) ? 0.0 : min(6.0, x);
@@ -265,11 +265,11 @@ function Ie({ opSnippet: t, packedOpSnippet: e, checkOutOfBounds: s = !1, suppor
265
265
  }
266
266
  function Ae(t, e = !1) {
267
267
  if (t === "linear")
268
- return e ? ee : j;
268
+ return e ? ee : M;
269
269
  if (t === "relu")
270
270
  return e ? se : J;
271
271
  if (t === "elu")
272
- return e ? te : M;
272
+ return e ? te : j;
273
273
  if (t === "relu6")
274
274
  return e ? ae : Q;
275
275
  if (t === "prelu")
@@ -1,5 +1,5 @@
1
- import { D as p, a8 as g, a6 as v, e as o, a9 as _ } from "../index-DOvlwCh-.js";
2
- import { v as V } from "../variable-WawDEaAb.js";
1
+ import { w as p, a3 as g, a1 as v, e as o, a4 as _ } from "../index-Duu1Lvvv.js";
2
+ import { v as V } from "../variable-DPt_Iuog.js";
3
3
  class T {
4
4
  parent;
5
5
  config;
@@ -1,18 +1,18 @@
1
1
  import { attentionMask as P } from "../ops/attentionMask.js";
2
2
  import _ from "./BaseLayer.js";
3
- import { r as k } from "../rope-Ir4mTyD1.js";
3
+ import { r as k } from "../rope-DJ7Y7c-u.js";
4
4
  import { appendCache as b } from "../ops/appendCache.js";
5
- import { k as u, t as S } from "../index-DOvlwCh-.js";
5
+ import { k as u, t as S } from "../index-Duu1Lvvv.js";
6
6
  import { softmax16 as C } from "../ops/softmax16.js";
7
- import { b as R } from "../matMul16-BWRSOCWB.js";
8
- import { p as V } from "../pack16-nQ6JaLo-.js";
7
+ import { b as R } from "../matMul16-xswmhSuF.js";
8
+ import { p as V } from "../pack16-atD0eYRm.js";
9
9
  import { transpose16 as J } from "../ops/transpose16.js";
10
10
  import { dot16 as L } from "../ops/dot16.js";
11
11
  import { reshape16 as N } from "../ops/reshape16.js";
12
12
  import { isPackedTensor as l } from "../utilities/packed.js";
13
13
  import { qkv as j } from "../ops/qkv.js";
14
- import { v as T } from "../variable-WawDEaAb.js";
15
- import { r as v, d as y } from "../dropout-BcvN9JYi.js";
14
+ import { v as T } from "../variable-DPt_Iuog.js";
15
+ import { r as v, d as y } from "../dropout-DLhSMNTZ.js";
16
16
  class X extends _ {
17
17
  divisor;
18
18
  index;
@@ -1,9 +1,9 @@
1
- import { t as p } from "../index-DOvlwCh-.js";
1
+ import { t as p } from "../index-Duu1Lvvv.js";
2
2
  import u from "./BaseLayer.js";
3
- import { c, b as M } from "../matMul16-BWRSOCWB.js";
3
+ import { c, b as M } from "../matMul16-xswmhSuF.js";
4
4
  import { reshape16 as o } from "../ops/reshape16.js";
5
- import { v as d } from "../variable-WawDEaAb.js";
6
- import { r as h, d as b } from "../dropout-BcvN9JYi.js";
5
+ import { v as d } from "../variable-DPt_Iuog.js";
6
+ import { r as h, d as b } from "../dropout-DLhSMNTZ.js";
7
7
  class O extends u {
8
8
  index;
9
9
  hiddenUnits;
@@ -1,9 +1,9 @@
1
- import { t as c, al as u, b as i } from "../index-DOvlwCh-.js";
1
+ import { t as c, al as u, b as i } from "../index-Duu1Lvvv.js";
2
2
  import f from "./BaseLayer.js";
3
- import { E as g, D as h } from "../random_width-or-CEftb.js";
4
- import { r as l } from "../exports_initializers-Hta_rEnm.js";
5
- import { m as b } from "../mod-AnXEvvpo.js";
6
- import { r as w } from "../range-BklejeeW.js";
3
+ import { E as g, D as h } from "../random_width-BN4wGJaW.js";
4
+ import { r as l } from "../exports_initializers-1KWPiStI.js";
5
+ import { m as b } from "../mod-B4AUd1Np.js";
6
+ import { r as w } from "../range-DKmP1-OQ.js";
7
7
  function E(t) {
8
8
  return new h(t);
9
9
  }
@@ -1,8 +1,8 @@
1
- import { t as s } from "../index-DOvlwCh-.js";
1
+ import { t as s } from "../index-Duu1Lvvv.js";
2
2
  import e from "./BaseLayer.js";
3
3
  import { normRMS as a } from "../ops/normRMS.js";
4
- import { v as i } from "../variable-WawDEaAb.js";
5
- import { o as m } from "../ones-D2rT0xk2.js";
4
+ import { v as i } from "../variable-DPt_Iuog.js";
5
+ import { o as m } from "../ones-CBI1AQjb.js";
6
6
  class l extends e {
7
7
  GAMMA;
8
8
  constructor(r, t = "", o) {
@@ -1,7 +1,7 @@
1
- import { w as a, b as n, z as c, t as p, k as r } from "../index-DOvlwCh-.js";
2
- import { r as l } from "../zeros_like-DvE73F4e.js";
3
- import { c as f, s as m } from "../unsorted_segment_sum-BDDhB_E6.js";
4
- import { r as h } from "../range-BklejeeW.js";
1
+ import { j as a, b as n, p as c, t as p, k as r } from "../index-Duu1Lvvv.js";
2
+ import { r as l } from "../zeros_like-De4n1C3m.js";
3
+ import { c as f, s as m } from "../unsorted_segment_sum-BljxHhCY.js";
4
+ import { r as h } from "../range-DKmP1-OQ.js";
5
5
  class D {
6
6
  constructor(s) {
7
7
  this.config = s;
@@ -1,13 +1,13 @@
1
- import "../random_width-or-CEftb.js";
2
- import "../index-DOvlwCh-.js";
3
- import { r as s } from "../exports_initializers-Hta_rEnm.js";
1
+ import "../random_width-BN4wGJaW.js";
2
+ import "../index-Duu1Lvvv.js";
3
+ import { r as s } from "../exports_initializers-1KWPiStI.js";
4
4
  import a from "./BaseLayer.js";
5
5
  import { dot16 as o } from "../ops/dot16.js";
6
6
  import { isPackedTensor as r } from "../utilities/packed.js";
7
- import { p as m } from "../pack16-nQ6JaLo-.js";
7
+ import { p as m } from "../pack16-atD0eYRm.js";
8
8
  import { transpose16 as d } from "../ops/transpose16.js";
9
- import { v as p } from "../variable-WawDEaAb.js";
10
- import { g as h } from "../gather-D3JcZUaI.js";
9
+ import { v as p } from "../variable-DPt_Iuog.js";
10
+ import { g as h } from "../gather-BSULDalH.js";
11
11
  class g extends a {
12
12
  vocabSize;
13
13
  embedDim;
@@ -2,7 +2,7 @@ import p from "./CausalSelfAttention.js";
2
2
  import m from "./MLP.js";
3
3
  import d from "./RMSNorm.js";
4
4
  import h from "./BaseLayer.js";
5
- import { k as n, t as u } from "../index-DOvlwCh-.js";
5
+ import { k as n, t as u } from "../index-Duu1Lvvv.js";
6
6
  import { add16 as l } from "../ops/add16.js";
7
7
  class g extends h {
8
8
  ln1;
@@ -1,7 +1,7 @@
1
1
  import l from "../tokeniser/CharTokeniser.js";
2
2
  import c from "../tokeniser/bpe.js";
3
3
  import { load_safetensors as b } from "../utilities/safetensors.js";
4
- import { ae as y } from "../index-DOvlwCh-.js";
4
+ import { a9 as y } from "../index-Duu1Lvvv.js";
5
5
  import { dummyPassAsync as u } from "../utilities/dummy.js";
6
6
  import _ from "../models/factory.js";
7
7
  async function L(e, a, r, t) {
@@ -1,22 +1,22 @@
1
- import { ae as y } from "../index-DOvlwCh-.js";
2
- import "../random_width-or-CEftb.js";
3
- import "../zeros_like-DvE73F4e.js";
1
+ import { a9 as y } from "../index-Duu1Lvvv.js";
2
+ import "../random_width-BN4wGJaW.js";
3
+ import "../zeros_like-De4n1C3m.js";
4
4
  import "../Generator.js";
5
5
  import "../index-Cp39cXWe.js";
6
- import "../dataset-BcwmTGYc.js";
6
+ import "../dataset-CVIJu7Xa.js";
7
7
  import "../ops/cpu/attentionMask.js";
8
8
  import "../ops/webgl/attentionMask.js";
9
9
  import "../ops/grads/attentionMask.js";
10
10
  import "../ops/cpu/rope.js";
11
11
  import "../ops/webgl/rope.js";
12
- import "../rope-Ir4mTyD1.js";
12
+ import "../rope-DJ7Y7c-u.js";
13
13
  import "../ops/cpu/appendCache.js";
14
14
  import "../ops/webgl/appendCache.js";
15
15
  import "../ops/grads/softmax16.js";
16
- import "../matMul16-BWRSOCWB.js";
16
+ import "../matMul16-xswmhSuF.js";
17
17
  import "../ops/webgl/matMul16.js";
18
18
  import "../ops/cpu/matMul16.js";
19
- import "../pack16-nQ6JaLo-.js";
19
+ import "../pack16-atD0eYRm.js";
20
20
  import "../ops/transpose16.js";
21
21
  import "../ops/reshape16.js";
22
22
  import "../ops/cpu/qkv.js";
@@ -42,11 +42,11 @@ import "../ops/cpu/adamMoments.js";
42
42
  import "../ops/webgl/adamMoments.js";
43
43
  import "../papaparse.min-C0cScC2i.js";
44
44
  import "../ops/cpu/matMulGelu.js";
45
- import "../matMulGelu-CzfgT6Wq.js";
45
+ import "../matMulGelu-BpvgnYG8.js";
46
46
  import "../ops/grads/matMulGelu.js";
47
47
  import "../ops/cpu/gelu.js";
48
48
  import "../ops/webgl/gelu.js";
49
- import "../gelu-CjNPL4OH.js";
49
+ import "../gelu-BK1k-n1i.js";
50
50
  import "../ops/webgl/log.js";
51
51
  import "../checks/normRMS.js";
52
52
  import "../checks/normRMSGrad.js";
@@ -0,0 +1,39 @@
1
+ import { o as r, q as x, E as p, am as E, an as $, ao as d, af as h, c as S, l as K } from "./index-Duu1Lvvv.js";
2
+ import { e as _ } from "./axis_util-DGqbT-FX.js";
3
+ import { r as m } from "./reshape-BI0yzp1T.js";
4
+ import { s as T } from "./sum-BPUfDB2X.js";
5
+ function b(s, o = null, n = !1) {
6
+ const a = { x: x(s, "x", "max") }, e = { reductionIndices: o, keepDims: n };
7
+ return p.runKernel(E, a, e);
8
+ }
9
+ const I = /* @__PURE__ */ r({ max_: b });
10
+ function M(s) {
11
+ const n = { x: x(s, "x", "exp") };
12
+ return p.runKernel($, n);
13
+ }
14
+ const N = /* @__PURE__ */ r({ exp_: M });
15
+ function q(s) {
16
+ const n = { x: x(s, "x", "log", "float32") };
17
+ return p.runKernel(d, n);
18
+ }
19
+ const v = /* @__PURE__ */ r({ log_: q });
20
+ function w(s, o = null, n = !1) {
21
+ const t = x(s, "x", "logSumExp"), a = h(o, t.shape), e = I(
22
+ t,
23
+ a,
24
+ !0
25
+ /* keepDims */
26
+ ), l = S(t, e), i = N(l), f = T(i, a), u = v(f), c = K(m(e, u.shape), u);
27
+ if (n) {
28
+ const g = _(c.shape, a);
29
+ return m(c, g);
30
+ }
31
+ return c;
32
+ }
33
+ const P = /* @__PURE__ */ r({ logSumExp_: w });
34
+ export {
35
+ v as a,
36
+ N as e,
37
+ P as l,
38
+ I as m
39
+ };
package/dist/main.d.ts CHANGED
@@ -1,3 +1,6 @@
1
+ import { default as PretrainingTask } from './training/tasks/PretrainingTask';
2
+ import { default as StartSentenceTask } from './training/tasks/StartSentenceTask';
3
+ import { default as ConversationTask } from './training/tasks/ConversationTask';
1
4
  import { pack16 } from './ops/pack16';
2
5
  import { unpack16 } from './ops/unpack16';
3
6
  import { default as CausalSelfAttention } from './layers/CausalSelfAttention';
@@ -14,11 +17,17 @@ export { default as Generator } from './Generator';
14
17
  export type { ITrainerOptions } from './Trainer';
15
18
  export type { IGenerateOptions } from './Generator';
16
19
  export { type ModelForwardAttributes, default as Model } from './models/model';
17
- export type { ITokeniser } from './tokeniser/type';
20
+ export type { ITokeniser, Conversation, Roles } from './tokeniser/type';
18
21
  export type { TrainingProgress, TrainingLogEntry } from './training/Trainer';
19
22
  export type { GPTConfig } from './models/config';
20
23
  export { estimateParameterCount, estimateMemoryUsage, estimateTrainingMemoryUsage, estimateResources, validateConfig, } from './utilities/parameters';
21
24
  export { default as topP } from './utilities/topP';
25
+ export { Task } from './training/tasks/Task';
26
+ export declare const tasks: {
27
+ PretrainingTask: typeof PretrainingTask;
28
+ StartSentenceTask: typeof StartSentenceTask;
29
+ ConversationTask: typeof ConversationTask;
30
+ };
22
31
  declare const ops: {
23
32
  pack16: typeof pack16;
24
33
  unpack16: typeof unpack16;
package/dist/main.js CHANGED
@@ -1,18 +1,22 @@
1
- import "./index-DOvlwCh-.js";
2
- import "./random_width-or-CEftb.js";
3
- import "./zeros_like-DvE73F4e.js";
4
- import { default as oo } from "./Generator.js";
1
+ import "./index-Duu1Lvvv.js";
2
+ import "./random_width-BN4wGJaW.js";
3
+ import "./zeros_like-De4n1C3m.js";
4
+ import { default as io } from "./Generator.js";
5
5
  import "./index-Cp39cXWe.js";
6
- import "./dataset-BcwmTGYc.js";
7
- import { default as to } from "./models/NanoGPTV1.js";
8
- import { default as mo } from "./TeachableLLM.js";
9
- import { default as io } from "./tokeniser/CharTokeniser.js";
10
- import { default as so } from "./tokeniser/bpe.js";
11
- import { default as lo } from "./utilities/waitForModel.js";
12
- import { default as xo } from "./data/textLoader.js";
13
- import { default as co } from "./models/model.js";
14
- import { estimateMemoryUsage as ko, estimateParameterCount as go, estimateResources as Mo, estimateTrainingMemoryUsage as Po, validateConfig as Co } from "./utilities/parameters.js";
15
- import { default as ho } from "./utilities/topP.js";
6
+ import "./dataset-CVIJu7Xa.js";
7
+ import { default as fo } from "./models/NanoGPTV1.js";
8
+ import { default as lo } from "./TeachableLLM.js";
9
+ import { default as co } from "./tokeniser/CharTokeniser.js";
10
+ import { default as ko } from "./tokeniser/bpe.js";
11
+ import { default as go } from "./utilities/waitForModel.js";
12
+ import { default as Co } from "./data/textLoader.js";
13
+ import { default as Eo } from "./models/model.js";
14
+ import { estimateMemoryUsage as Bo, estimateParameterCount as bo, estimateResources as yo, estimateTrainingMemoryUsage as Lo, validateConfig as So } from "./utilities/parameters.js";
15
+ import { default as Ao } from "./utilities/topP.js";
16
+ import { Task as Ro } from "./training/tasks/Task.js";
17
+ import o from "./training/tasks/PretrainingTask.js";
18
+ import r from "./training/tasks/StartSentenceTask.js";
19
+ import t from "./training/tasks/ConversationTask.js";
16
20
  import "./ops/cpu/scatterSub.js";
17
21
  import "./ops/webgl/scatterSub.js";
18
22
  import "./ops/cpu/gatherSub.js";
@@ -25,15 +29,15 @@ import "./ops/webgl/qkv.js";
25
29
  import "./ops/grads/qkv.js";
26
30
  import "./ops/cpu/rope.js";
27
31
  import "./ops/webgl/rope.js";
28
- import "./rope-Ir4mTyD1.js";
32
+ import "./rope-DJ7Y7c-u.js";
29
33
  import "./ops/cpu/appendCache.js";
30
34
  import "./ops/webgl/appendCache.js";
31
35
  import "./ops/cpu/matMulGelu.js";
32
- import "./matMulGelu-CzfgT6Wq.js";
36
+ import "./matMulGelu-BpvgnYG8.js";
33
37
  import "./ops/grads/matMulGelu.js";
34
38
  import "./ops/cpu/gelu.js";
35
39
  import "./ops/webgl/gelu.js";
36
- import "./gelu-CjNPL4OH.js";
40
+ import "./gelu-BK1k-n1i.js";
37
41
  import "./ops/cpu/normRMS.js";
38
42
  import "./ops/webgl/normRMS.js";
39
43
  import "./ops/grads/normRMS.js";
@@ -42,51 +46,57 @@ import "./ops/cpu/adamMoments.js";
42
46
  import "./ops/webgl/adamMoments.js";
43
47
  import "./ops/cpu/adamAdjust.js";
44
48
  import "./ops/webgl/adamAdjust.js";
45
- import { u as o, p as r } from "./pack16-nQ6JaLo-.js";
49
+ import { u as e, p as m } from "./pack16-atD0eYRm.js";
46
50
  import "./ops/grads/softmax16.js";
47
- import "./matMul16-BWRSOCWB.js";
51
+ import "./matMul16-xswmhSuF.js";
48
52
  import "./ops/webgl/matMul16.js";
49
53
  import "./ops/cpu/matMul16.js";
50
54
  import "./ops/transpose16.js";
51
- import { selectBackend as bo } from "./backend.js";
52
- import { default as Lo } from "./utilities/performance.js";
53
- import t from "./layers/CausalSelfAttention.js";
54
- import e from "./layers/MLP.js";
55
- import m from "./layers/TransformerBlock.js";
56
- import p from "./layers/RoPECache.js";
57
- import { default as Go } from "./training/AdamExt.js";
58
- import { default as Uo } from "./checks/index.js";
59
- import { sentenceEmbeddings as wo, sentenceEmbeddingsTensor as Do } from "./utilities/sentences.js";
60
- const Y = {
61
- pack16: r,
62
- unpack16: o
63
- }, Z = {
64
- CausalSelfAttention: t,
65
- MLP: e,
66
- TransformerBlock: m,
67
- RoPECache: p
55
+ import { selectBackend as wo } from "./backend.js";
56
+ import { default as Fo } from "./utilities/performance.js";
57
+ import p from "./layers/CausalSelfAttention.js";
58
+ import a from "./layers/MLP.js";
59
+ import i from "./layers/TransformerBlock.js";
60
+ import s from "./layers/RoPECache.js";
61
+ import { default as jo } from "./training/AdamExt.js";
62
+ import { default as zo } from "./checks/index.js";
63
+ import { sentenceEmbeddings as Io, sentenceEmbeddingsTensor as Jo } from "./utilities/sentences.js";
64
+ const to = {
65
+ PretrainingTask: o,
66
+ StartSentenceTask: r,
67
+ ConversationTask: t
68
+ }, eo = {
69
+ pack16: m,
70
+ unpack16: e
71
+ }, mo = {
72
+ CausalSelfAttention: p,
73
+ MLP: a,
74
+ TransformerBlock: i,
75
+ RoPECache: s
68
76
  };
69
77
  export {
70
- Go as AdamExt,
71
- so as BPETokeniser,
72
- io as CharTokeniser,
73
- oo as Generator,
74
- co as Model,
75
- to as NanoGPT,
76
- mo as TeachableLLM,
77
- Uo as checks,
78
- ko as estimateMemoryUsage,
79
- go as estimateParameterCount,
80
- Mo as estimateResources,
81
- Po as estimateTrainingMemoryUsage,
82
- Z as layers,
83
- xo as loadTextData,
84
- Y as ops,
85
- Lo as performanceTest,
86
- bo as selectBackend,
87
- wo as sentenceEmbeddings,
88
- Do as sentenceEmbeddingsTensor,
89
- ho as topP,
90
- Co as validateConfig,
91
- lo as waitForModel
78
+ jo as AdamExt,
79
+ ko as BPETokeniser,
80
+ co as CharTokeniser,
81
+ io as Generator,
82
+ Eo as Model,
83
+ fo as NanoGPT,
84
+ Ro as Task,
85
+ lo as TeachableLLM,
86
+ zo as checks,
87
+ Bo as estimateMemoryUsage,
88
+ bo as estimateParameterCount,
89
+ yo as estimateResources,
90
+ Lo as estimateTrainingMemoryUsage,
91
+ mo as layers,
92
+ Co as loadTextData,
93
+ eo as ops,
94
+ Fo as performanceTest,
95
+ wo as selectBackend,
96
+ Io as sentenceEmbeddings,
97
+ Jo as sentenceEmbeddingsTensor,
98
+ to as tasks,
99
+ Ao as topP,
100
+ So as validateConfig,
101
+ go as waitForModel
92
102
  };
@@ -1,9 +1,9 @@
1
- import { u as y, e as h } from "./index-DOvlwCh-.js";
1
+ import { i as y, e as h } from "./index-Duu1Lvvv.js";
2
2
  import "./ops/webgl/matMul16.js";
3
3
  import "./ops/cpu/matMul16.js";
4
4
  import { isPackedTensor as g } from "./utilities/packed.js";
5
- import { p as v } from "./pack16-nQ6JaLo-.js";
6
- import { d as k } from "./gelu-CjNPL4OH.js";
5
+ import { p as v } from "./pack16-atD0eYRm.js";
6
+ import { d as k } from "./gelu-BK1k-n1i.js";
7
7
  import { transpose16 as S } from "./ops/transpose16.js";
8
8
  import { reshape16 as w } from "./ops/reshape16.js";
9
9
  const G = {