@genai-fi/nanogpt 0.9.0 → 0.10.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.
- package/README.md +352 -14
- package/dist/Generator.js +69 -78
- package/dist/{RealDiv-D4EzDsC0.js → RealDiv-DgA3z9oO.js} +32 -206
- package/dist/Reshape-CF6odzV4.js +16 -0
- package/dist/Reshape-_kILl6tK.js +81 -0
- package/dist/TeachableLLM.js +28 -22
- package/dist/Trainer.d.ts +2 -0
- package/dist/Trainer.js +3 -2
- package/dist/{axis_util-TbGYJ208.js → axis_util-BvHEw88j.js} +7 -23
- package/dist/backend.d.ts +2 -1
- package/dist/backend.js +10 -4
- package/dist/backend_util-D-rUb2ty.js +474 -0
- package/dist/backend_webgpu-B0u2ndUn.js +547 -0
- package/dist/binary_op_util-pKXltfxI.js +192 -0
- package/dist/broadcast_to-CwF7XIeu.js +30 -0
- package/dist/checks/appendCache.js +2 -2
- package/dist/checks/attentionMask.js +3 -3
- package/dist/checks/check.d.ts +1 -1
- package/dist/checks/check.js +8 -8
- package/dist/checks/gelu.js +2 -2
- package/dist/checks/index.d.ts +2 -0
- package/dist/checks/index.js +7 -5
- package/dist/checks/matMulGelu.js +6 -6
- package/dist/checks/normRMS.js +7 -7
- package/dist/checks/normRMSGrad.js +3 -3
- package/dist/checks/packUnpack.d.ts +1 -0
- package/dist/checks/packUnpack.js +18 -0
- package/dist/checks/qkv.js +12 -27
- package/dist/checks/rope.js +2 -2
- package/dist/checks/weights.js +18 -16
- package/dist/complex-CSlYz-2T.js +13 -0
- package/dist/complex_util-Yc1A_gV1.js +55 -0
- package/dist/concat-BHlIJeyT.js +19 -0
- package/dist/concat_util-DcJk7YHS.js +22 -0
- package/dist/data/docx.js +1 -1
- package/dist/data/parquet.js +2 -2
- package/dist/data/pdf.js +1 -1
- package/dist/data/textLoader.js +1 -1
- package/dist/{dataset-DlZtKmBq.js → dataset-0xP8GjwI.js} +136 -236
- package/dist/dropout-C1pM3f11.js +99 -0
- package/dist/expand_dims-BPG4fwBP.js +13 -0
- package/dist/exports_initializers-xuidcwI4.js +7 -0
- package/dist/gather-DykLGqmW.js +10 -0
- package/dist/{gelu-Bp_-935b.js → gelu-CNLFZWea.js} +11 -10
- package/dist/{gpgpu_math-CDaYiyE_.js → gpgpu_math-DDVJCn6-.js} +90 -265
- package/dist/{index-C4L8Cm77.js → index-CieiGp4Y.js} +14 -14
- package/dist/index-CjOj7j-u.js +7308 -0
- package/dist/{index-Tf7vU29b.js → index-Cp39cXWe.js} +3 -10
- package/dist/{index-Dwqa6Zy2.js → index-DvYrXKkX.js} +2 -2
- package/dist/index-ZyQhjEPo.js +2157 -0
- package/dist/{jszip.min-CjP2V1VV.js → jszip.min-Bz5-11Bk.js} +56 -57
- package/dist/kernel_funcs_utils-Dg_-E44D.js +308 -0
- package/dist/layers/BaseLayer.d.ts +1 -0
- package/dist/layers/BaseLayer.js +7 -6
- package/dist/layers/CausalSelfAttention.d.ts +0 -1
- package/dist/layers/CausalSelfAttention.js +56 -55
- package/dist/layers/MLP.js +15 -16
- package/dist/layers/PositionEmbedding.js +5 -14
- package/dist/layers/RMSNorm.js +3 -3
- package/dist/layers/RoPECache.d.ts +2 -0
- package/dist/layers/RoPECache.js +22 -17
- package/dist/layers/TiedEmbedding.js +22 -17
- package/dist/layers/TransformerBlock.js +21 -20
- package/dist/loader/load.js +1 -1
- package/dist/loader/loadTransformers.js +1 -1
- package/dist/loader/oldZipLoad.js +39 -33
- package/dist/loader/save.js +1 -1
- package/dist/log_sum_exp-DWI-76TI.js +41 -0
- package/dist/main.d.ts +8 -0
- package/dist/main.js +63 -52
- package/dist/matMul16--R5hOwDG.js +77 -0
- package/dist/mat_mul-DeAh4uTH.js +12 -0
- package/dist/mod-Gt1rMB4n.js +12 -0
- package/dist/models/NanoGPTV1.js +40 -31
- package/dist/models/model.d.ts +2 -0
- package/dist/models/model.js +37 -29
- package/dist/{mulmat_packed_gpu-BT60jmzP.js → mulmat_packed_gpu-BMFhLwta.js} +1 -17
- package/dist/{non_max_suppression_impl-CsEgBuMA.js → non_max_suppression_impl-B2W7YjZB.js} +0 -32
- package/dist/ones-CAMiP4I2.js +15 -0
- package/dist/ops/adamAdjust.js +1 -1
- package/dist/ops/adamMoments.d.ts +1 -1
- package/dist/ops/adamMoments.js +4 -4
- package/dist/ops/add16.d.ts +2 -0
- package/dist/ops/add16.js +9 -0
- package/dist/ops/appendCache.js +16 -9
- package/dist/ops/attentionMask.js +4 -4
- package/dist/ops/concat16.d.ts +2 -0
- package/dist/ops/concat16.js +9 -0
- package/dist/ops/cpu/adamAdjust.js +14 -13
- package/dist/ops/cpu/adamMoments.js +10 -9
- package/dist/ops/cpu/appendCache.js +9 -8
- package/dist/ops/cpu/attentionMask.js +15 -14
- package/dist/ops/cpu/fusedSoftmax.js +13 -12
- package/dist/ops/cpu/gatherSub.js +9 -24
- package/dist/ops/cpu/gelu.js +13 -12
- package/dist/ops/cpu/matMul16.d.ts +1 -0
- package/dist/ops/cpu/matMul16.js +16 -0
- package/dist/ops/cpu/matMulGelu.js +18 -16
- package/dist/ops/cpu/matMulMul.js +8 -7
- package/dist/ops/cpu/mulDropout.js +4 -3
- package/dist/ops/cpu/normRMS.js +11 -10
- package/dist/ops/cpu/qkv.js +17 -13
- package/dist/ops/cpu/rope.js +23 -22
- package/dist/ops/cpu/scatterSub.js +16 -30
- package/dist/ops/dot16.d.ts +2 -0
- package/dist/ops/dot16.js +42 -0
- package/dist/ops/gatherSub.js +1 -1
- package/dist/ops/gelu.js +2 -2
- package/dist/ops/grads/add16.d.ts +1 -0
- package/dist/ops/grads/add16.js +27 -0
- package/dist/ops/grads/attentionMask.js +12 -19
- package/dist/ops/grads/gelu.js +4 -3
- package/dist/ops/grads/matMul16.d.ts +2 -0
- package/dist/ops/grads/matMul16.js +9 -0
- package/dist/ops/grads/matMulGelu.js +8 -7
- package/dist/ops/grads/normRMS.js +8 -7
- package/dist/ops/grads/{fusedSoftmax.d.ts → pack16.d.ts} +1 -1
- package/dist/ops/grads/pack16.js +7 -0
- package/dist/ops/grads/qkv.d.ts +3 -1
- package/dist/ops/grads/qkv.js +28 -22
- package/dist/ops/grads/rope.d.ts +2 -1
- package/dist/ops/grads/rope.js +6 -13
- package/dist/ops/grads/softmax16.d.ts +2 -0
- package/dist/ops/grads/softmax16.js +26 -0
- package/dist/ops/grads/unpack16.d.ts +2 -0
- package/dist/ops/grads/unpack16.js +6 -0
- package/dist/ops/grads/utils.d.ts +3 -0
- package/dist/ops/grads/utils.js +10 -0
- package/dist/ops/matMul16.d.ts +15 -0
- package/dist/ops/matMul16.js +13 -0
- package/dist/ops/matMulGelu.js +1 -1
- package/dist/ops/matMulMul.js +1 -1
- package/dist/ops/mul16.d.ts +2 -0
- package/dist/ops/mul16.js +8 -0
- package/dist/ops/mulDrop.js +1 -1
- package/dist/ops/normRMS.js +1 -1
- package/dist/ops/pack16.d.ts +2 -0
- package/dist/ops/pack16.js +6 -0
- package/dist/ops/qkv.d.ts +1 -1
- package/dist/ops/qkv.js +8 -4
- package/dist/ops/reshape16.d.ts +2 -0
- package/dist/ops/reshape16.js +43 -0
- package/dist/ops/rope.d.ts +1 -1
- package/dist/ops/rope.js +8 -10
- package/dist/ops/scatterSub.js +1 -1
- package/dist/ops/slice16.d.ts +2 -0
- package/dist/ops/slice16.js +9 -0
- package/dist/ops/softmax16.d.ts +2 -0
- package/dist/ops/softmax16.js +12 -0
- package/dist/ops/sub16.d.ts +2 -0
- package/dist/ops/sub16.js +8 -0
- package/dist/ops/sum16.d.ts +2 -0
- package/dist/ops/sum16.js +13 -0
- package/dist/ops/transpose16.d.ts +3 -0
- package/dist/ops/transpose16.js +41 -0
- package/dist/ops/unpack16.d.ts +2 -0
- package/dist/ops/unpack16.js +6 -0
- package/dist/ops/webgl/adamAdjust.js +3 -2
- package/dist/ops/webgl/adamMoments.js +2 -1
- package/dist/ops/webgl/appendCache.js +2 -1
- package/dist/ops/webgl/attentionMask.js +5 -4
- package/dist/ops/webgl/fusedSoftmax.js +6 -4
- package/dist/ops/webgl/gatherSub.js +7 -6
- package/dist/ops/webgl/gelu.js +3 -2
- package/dist/ops/webgl/log.js +12 -27
- package/dist/ops/webgl/matMul16.d.ts +1 -0
- package/dist/ops/webgl/matMul16.js +37 -0
- package/dist/ops/webgl/matMulGelu.js +17 -15
- package/dist/ops/webgl/matMulMul.js +13 -12
- package/dist/ops/webgl/mulDropout.js +9 -8
- package/dist/ops/webgl/normRMS.js +8 -7
- package/dist/ops/webgl/qkv.js +6 -5
- package/dist/ops/webgl/rope.js +11 -10
- package/dist/ops/webgl/scatterSub.js +6 -5
- package/dist/ops/webgpu/adamAdjust.js +12 -10
- package/dist/ops/webgpu/adamMoments.js +27 -22
- package/dist/ops/webgpu/add16.d.ts +1 -0
- package/dist/ops/webgpu/add16.js +14 -0
- package/dist/ops/webgpu/appendCache.js +64 -17
- package/dist/ops/webgpu/attentionMask.js +19 -62
- package/dist/ops/webgpu/attentionMask32_program.d.ts +19 -0
- package/dist/ops/webgpu/attentionMask32_program.js +54 -0
- package/dist/ops/webgpu/concat16.d.ts +19 -0
- package/dist/ops/webgpu/concat16.js +128 -0
- package/dist/ops/webgpu/gatherSub.js +9 -7
- package/dist/ops/webgpu/gelu.js +78 -31
- package/dist/ops/webgpu/index.js +12 -0
- package/dist/ops/webgpu/matMul16.d.ts +1 -0
- package/dist/ops/webgpu/matMul16.js +58 -0
- package/dist/ops/webgpu/matMul16_program.d.ts +42 -0
- package/dist/ops/webgpu/matMul16_program.js +336 -0
- package/dist/ops/webgpu/mul16.d.ts +1 -0
- package/dist/ops/webgpu/mul16.js +14 -0
- package/dist/ops/webgpu/normRMS.js +21 -40
- package/dist/ops/webgpu/normRMS16_program.d.ts +9 -0
- package/dist/ops/webgpu/normRMS16_program.js +24 -0
- package/dist/ops/webgpu/normRMS32_program.d.ts +9 -0
- package/dist/ops/webgpu/normRMS32_program.js +24 -0
- package/dist/ops/webgpu/normRMSGrad.js +113 -64
- package/dist/ops/webgpu/pack16.d.ts +1 -0
- package/dist/ops/webgpu/pack16.js +19 -0
- package/dist/ops/webgpu/pack16_program.d.ts +19 -0
- package/dist/ops/webgpu/pack16_program.js +92 -0
- package/dist/ops/webgpu/qkv.js +20 -55
- package/dist/ops/webgpu/rope.js +77 -22
- package/dist/ops/webgpu/scatterSub.js +9 -7
- package/dist/ops/webgpu/slice16.d.ts +7 -0
- package/dist/ops/webgpu/slice16.js +71 -0
- package/dist/{variable-Bm2OFwGI.js → ops/webgpu/softmax16.d.ts} +2 -8
- package/dist/ops/webgpu/softmax16.js +23 -0
- package/dist/ops/webgpu/softmax16_program.d.ts +13 -0
- package/dist/ops/webgpu/softmax16_program.js +73 -0
- package/dist/ops/webgpu/softmax16_subgroup_program.d.ts +17 -0
- package/dist/ops/webgpu/softmax16_subgroup_program.js +75 -0
- package/dist/ops/webgpu/softmax16grad.d.ts +1 -0
- package/dist/ops/webgpu/softmax16grad.js +38 -0
- package/dist/ops/webgpu/sub16.d.ts +1 -0
- package/dist/ops/webgpu/sub16.js +14 -0
- package/dist/ops/webgpu/sum16.d.ts +1 -0
- package/dist/ops/webgpu/sum16.js +40 -0
- package/dist/ops/webgpu/transpose16.d.ts +1 -0
- package/dist/ops/webgpu/transpose16.js +35 -0
- package/dist/ops/webgpu/transpose16_program.d.ts +16 -0
- package/dist/ops/webgpu/transpose16_program.js +50 -0
- package/dist/ops/webgpu/transpose16_shared_program.d.ts +15 -0
- package/dist/ops/webgpu/transpose16_shared_program.js +71 -0
- package/dist/ops/webgpu/unpack16.d.ts +1 -0
- package/dist/ops/webgpu/unpack16.js +49 -0
- package/dist/ops/webgpu/utils/binary_op.d.ts +19 -0
- package/dist/ops/webgpu/utils/binary_op.js +79 -0
- package/dist/ops/webgpu/utils/deviceInfo.d.ts +7 -0
- package/dist/ops/webgpu/utils/deviceInfo.js +11 -0
- package/dist/ops/webgpu/utils/reductions.d.ts +32 -4
- package/dist/ops/webgpu/utils/reductions.js +236 -45
- package/dist/ops-CNI3TwqM.js +645 -0
- package/dist/pack16-CFUqumar.js +41 -0
- package/dist/{papaparse.min-C8l2Kvo1.js → papaparse.min-C0cScC2i.js} +2 -8
- package/dist/{parquet-C0Tlmv9c.js → parquet-BE8MU_ge.js} +201 -278
- package/dist/patches/PackedTensor.d.ts +12 -0
- package/dist/patches/PackedTensor.js +11 -0
- package/dist/patches/engine.d.ts +261 -0
- package/dist/patches/engine.js +10 -0
- package/dist/patches/tape.d.ts +12 -0
- package/dist/patches/tape.js +5 -0
- package/dist/patches/webgpu_backend.d.ts +18 -0
- package/dist/patches/webgpu_backend.js +57 -0
- package/dist/{tensor-CZr4dh61.js → patches/webgpu_base.d.ts} +5 -8
- package/dist/patches/webgpu_base.js +34 -0
- package/dist/patches/webgpu_program.d.ts +36 -0
- package/dist/patches/webgpu_program.js +401 -0
- package/dist/{pdf-kJD-f258.js → pdf-NIhmP3sq.js} +424 -428
- package/dist/random_width-DY6Kk2Dl.js +10051 -0
- package/dist/range-BMS52eQi.js +11 -0
- package/dist/reciprocal-CTmshQ9J.js +10 -0
- package/dist/{register_all_kernels-DIGpEwcf.js → register_all_kernels-Bwu1PTuU.js} +719 -9766
- package/dist/relu-yZ2-7WxU.js +10 -0
- package/dist/reshape-DevtBWtf.js +10 -0
- package/dist/rope-B5UUMsPi.js +32 -0
- package/dist/{scatter_nd_util-BQdz--Gn.js → scatter_nd_util-5EL-8VAQ.js} +1 -1
- package/dist/selu_util-D1w6yyTO.js +303 -0
- package/dist/{shared-DuP7ue-R.js → shared-BRksrJb3.js} +1 -17
- package/dist/shared-BuAXb4CI.js +2145 -0
- package/dist/sin-BGfy2HZo.js +16 -0
- package/dist/slice-D_gkkqZK.js +13 -0
- package/dist/slice_util-DtEldBfK.js +261 -0
- package/dist/softmax-ZHVebtR1.js +13 -0
- package/dist/split-DrfihRpZ.js +10 -0
- package/dist/squeeze-DZEpeblb.js +11 -0
- package/dist/stack-yOIAalTq.js +13 -0
- package/dist/sum-_fzj5ZTB.js +12 -0
- package/dist/tensor-DdQUJZlz.js +909 -0
- package/dist/tensor-f35l8Odg.js +8 -0
- package/dist/tensor1d-CeZuc-Rv.js +12 -0
- package/dist/tensor2d-G4Ys2GxX.js +15 -0
- package/dist/tensor4d-B8roDgtc.js +15 -0
- package/dist/tensor_util-DV-FP5Q3.js +523 -0
- package/dist/tfjs_backend-kNyO5L2d.js +653 -0
- package/dist/tile-BzyEiF-F.js +13 -0
- package/dist/tokeniser/CharTokeniser.js +1 -1
- package/dist/tokeniser/bpe.js +1 -1
- package/dist/training/Adam.d.ts +2 -1
- package/dist/training/Adam.js +12 -28
- package/dist/training/AdamExt.d.ts +1 -0
- package/dist/training/AdamExt.js +2 -2
- package/dist/training/DatasetBuilder.js +3 -20
- package/dist/training/FullTrainer.js +82 -64
- package/dist/training/Trainer.d.ts +11 -6
- package/dist/training/Trainer.js +51 -39
- package/dist/training/sparseCrossEntropy.js +3 -3
- package/dist/transpose-DKELTqhe.js +38 -0
- package/dist/utilities/arrayClose.js +7 -7
- package/dist/utilities/dummy.js +35 -27
- package/dist/utilities/multinomialCPU.js +2 -2
- package/dist/utilities/packed.d.ts +7 -0
- package/dist/utilities/packed.js +716 -0
- package/dist/utilities/performance.js +1 -1
- package/dist/utilities/profile.js +1 -1
- package/dist/utilities/safetensors.js +2 -2
- package/dist/utilities/sentences.d.ts +5 -0
- package/dist/utilities/sentences.js +41 -0
- package/dist/utilities/weights.js +2 -2
- package/dist/variable-Bhn5bHYv.js +7 -0
- package/dist/{webgpu_program-DkQJOJSd.js → webgpu_program-Cigz-7RF.js} +15 -44
- package/dist/webgpu_util-BBCnKm2X.js +65 -0
- package/dist/zeros-2gldETuK.js +14 -0
- package/package.json +4 -3
- package/dist/Reshape-Bowtk9BP.js +0 -127
- package/dist/Reshape-DUqYftGC.js +0 -30
- package/dist/backend_util-CJIiDoV1.js +0 -749
- package/dist/broadcast_to-DzlNweb8.js +0 -44
- package/dist/concat-B912vBbo.js +0 -33
- package/dist/dropout-C-csYCLj.js +0 -193
- package/dist/exports_initializers-B8iZMgQ0.js +0 -16
- package/dist/gather-Dnpgw-YQ.js +0 -25
- package/dist/index-BzFyqcy-.js +0 -4457
- package/dist/index-C1rx_Ajs.js +0 -12076
- package/dist/kernel_funcs_utils-DKLK0Mg3.js +0 -466
- package/dist/log_sum_exp-DO6z8tSE.js +0 -103
- package/dist/mat_mul-DzjTFx-u.js +0 -27
- package/dist/mod-Dobti4j4.js +0 -27
- package/dist/ones-tIJeHlq-.js +0 -29
- package/dist/ops/fusedSoftmax.d.ts +0 -2
- package/dist/ops/fusedSoftmax.js +0 -10
- package/dist/ops/grads/fusedSoftmax.js +0 -22
- package/dist/ops-LuCMAnmM.js +0 -1525
- package/dist/random_width-CXVRloNK.js +0 -13670
- package/dist/range-CWcz7xFA.js +0 -26
- package/dist/reciprocal-C4rNcM-S.js +0 -25
- package/dist/relu-BjCh_SYb.js +0 -25
- package/dist/reshape-CnIwVG1c.js +0 -25
- package/dist/selu_util-OtRzVwW5.js +0 -719
- package/dist/shared-DmRsFyaJ.js +0 -3134
- package/dist/sin-gpDNRxE0.js +0 -47
- package/dist/slice-d0Vo9XTN.js +0 -28
- package/dist/softmax-D7Jj3p_P.js +0 -28
- package/dist/split-DK2k5eHf.js +0 -25
- package/dist/stack-DFatutCx.js +0 -27
- package/dist/sum-CJ0ULhmt.js +0 -27
- package/dist/tensor1d-vML0r3q6.js +0 -27
- package/dist/tensor2d-D76QGjF3.js +0 -30
- package/dist/tensor4d-Df1WlVDY.js +0 -30
- package/dist/webgpu_util-pLEV9tks.js +0 -80
- package/dist/zeros-Bj5rMYA7.js +0 -52
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { A as o, B as t, E as r } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { l as i, n as a } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
function e(n) {
|
|
4
|
+
const s = { x: t(n, "x", "cos", "float32") };
|
|
5
|
+
return r.runKernel(i, s);
|
|
6
|
+
}
|
|
7
|
+
const p = /* @__PURE__ */ o({ cos_: e });
|
|
8
|
+
function x(n) {
|
|
9
|
+
const s = { x: t(n, "x", "sin", "float32") };
|
|
10
|
+
return r.runKernel(a, s);
|
|
11
|
+
}
|
|
12
|
+
const l = /* @__PURE__ */ o({ sin_: x });
|
|
13
|
+
export {
|
|
14
|
+
p as c,
|
|
15
|
+
l as s
|
|
16
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { A as c, B as e, E as a } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { f as l } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
function p(s, o, n) {
|
|
4
|
+
const r = e(s, "x", "slice", "string_or_numeric");
|
|
5
|
+
if (r.rank === 0)
|
|
6
|
+
throw new Error("Slicing scalar is not possible");
|
|
7
|
+
const t = { x: r }, i = { begin: o, size: n };
|
|
8
|
+
return a.runKernel(l, t, i);
|
|
9
|
+
}
|
|
10
|
+
const u = /* @__PURE__ */ c({ slice_: p });
|
|
11
|
+
export {
|
|
12
|
+
u as s
|
|
13
|
+
};
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
import { a as E, k as x } from "./tensor-DdQUJZlz.js";
|
|
2
|
+
const N = -2, L = -1;
|
|
3
|
+
function P(n, e, i) {
|
|
4
|
+
const r = n.shape.length;
|
|
5
|
+
E(r === e.length, () => `Error in slice${r}D: Length of begin ${e} must match the rank of the array (${r}).`), E(r === i.length, () => `Error in slice${r}D: Length of size ${i} must match the rank of the array (${r}).`);
|
|
6
|
+
for (let t = 0; t < r; ++t)
|
|
7
|
+
E(e[t] + i[t] <= n.shape[t], () => `Error in slice${r}D: begin[${t}] + size[${t}] (${e[t] + i[t]}) would overflow input.shape[${t}] (${n.shape[t]})`);
|
|
8
|
+
}
|
|
9
|
+
function j(n) {
|
|
10
|
+
const e = [];
|
|
11
|
+
let i = 0;
|
|
12
|
+
for (; n > 0; )
|
|
13
|
+
n & 1 && e.push(i), n /= 2, i++;
|
|
14
|
+
return e;
|
|
15
|
+
}
|
|
16
|
+
function z(n, e, i) {
|
|
17
|
+
const r = [];
|
|
18
|
+
for (let t = 0; t < n.length; t++)
|
|
19
|
+
r[t] = Math.ceil((e[t] - n[t]) / i[t]);
|
|
20
|
+
return r;
|
|
21
|
+
}
|
|
22
|
+
function V(n, e, i, r) {
|
|
23
|
+
const t = [...n];
|
|
24
|
+
for (let o = t.length; o < r.length; o++)
|
|
25
|
+
t.push(1);
|
|
26
|
+
for (let o = 0; o < i; o++)
|
|
27
|
+
o === 0 ? t[e] = 1 : (t.splice(
|
|
28
|
+
e,
|
|
29
|
+
0,
|
|
30
|
+
1
|
|
31
|
+
/* element to add */
|
|
32
|
+
), t.pop());
|
|
33
|
+
return t;
|
|
34
|
+
}
|
|
35
|
+
function D(n, e, i) {
|
|
36
|
+
return i <= n ? i : i - (e - 1);
|
|
37
|
+
}
|
|
38
|
+
function O(n, e) {
|
|
39
|
+
const i = [];
|
|
40
|
+
for (let r = 0; r < n; r++)
|
|
41
|
+
i.push(e + r);
|
|
42
|
+
return i;
|
|
43
|
+
}
|
|
44
|
+
function B(n, e, i, r, t, o, a, f, c) {
|
|
45
|
+
const h = n.length;
|
|
46
|
+
let S = new Array(h), g = new Array(h), s = new Array(h);
|
|
47
|
+
if (e.length && i > 0) {
|
|
48
|
+
const u = e[0], p = i + 1;
|
|
49
|
+
S = T(a, u, p, r, n), g = R(f, u, p, t, n), s = V(o, u, p, n);
|
|
50
|
+
} else
|
|
51
|
+
for (let u = 0; u < h; u++)
|
|
52
|
+
S[u] = W(a, r, o, n, u, c), g[u] = v(f, t, o, n, u, c), s[u] = X(o, u, c);
|
|
53
|
+
return {
|
|
54
|
+
begin: S,
|
|
55
|
+
end: g,
|
|
56
|
+
strides: s
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
function T(n, e, i, r, t) {
|
|
60
|
+
const o = [...t], a = O(i, e);
|
|
61
|
+
for (let f = 0; f < o.length; f++)
|
|
62
|
+
if (a.indexOf(f) > -1)
|
|
63
|
+
o[f] = 0;
|
|
64
|
+
else {
|
|
65
|
+
const c = D(e, i, f);
|
|
66
|
+
let h = r[c];
|
|
67
|
+
n & 1 << c && (h = 0), o[f] = h;
|
|
68
|
+
}
|
|
69
|
+
return o;
|
|
70
|
+
}
|
|
71
|
+
function R(n, e, i, r, t) {
|
|
72
|
+
const o = [...t], a = O(i, e);
|
|
73
|
+
for (let f = 0; f < o.length; f++)
|
|
74
|
+
if (a.indexOf(f) > -1)
|
|
75
|
+
o[f] = Number.MAX_SAFE_INTEGER;
|
|
76
|
+
else {
|
|
77
|
+
const c = D(e, i, f);
|
|
78
|
+
let h = r[c];
|
|
79
|
+
n & 1 << c && (h = Number.MAX_SAFE_INTEGER), o[f] = h;
|
|
80
|
+
}
|
|
81
|
+
for (let f = 0; f < o.length; f++) {
|
|
82
|
+
const c = t[f];
|
|
83
|
+
o[f] < 0 && (o[f] += c), o[f] = x(0, o[f], t[f]);
|
|
84
|
+
}
|
|
85
|
+
return o;
|
|
86
|
+
}
|
|
87
|
+
function X(n, e, i) {
|
|
88
|
+
let r = n[e];
|
|
89
|
+
return (i & 1 << e || r == null) && (r = 1), r;
|
|
90
|
+
}
|
|
91
|
+
function W(n, e, i, r, t, o) {
|
|
92
|
+
let a = e[t];
|
|
93
|
+
const f = i[t] || 1;
|
|
94
|
+
(n & 1 << t || o & 1 << t || a == null) && (f > 0 ? a = Number.MIN_SAFE_INTEGER : a = Number.MAX_SAFE_INTEGER);
|
|
95
|
+
const c = r[t];
|
|
96
|
+
return a < 0 && (a += c), a = x(0, a, c - 1), a;
|
|
97
|
+
}
|
|
98
|
+
function v(n, e, i, r, t, o) {
|
|
99
|
+
let a = e[t];
|
|
100
|
+
const f = i[t] || 1;
|
|
101
|
+
(n & 1 << t || o & 1 << t || a == null) && (f > 0 ? a = Number.MAX_SAFE_INTEGER : a = Number.MIN_SAFE_INTEGER);
|
|
102
|
+
const c = r[t];
|
|
103
|
+
return a < 0 && (a += c), f > 0 ? a = x(0, a, c) : a = x(-1, a, c - 1), a;
|
|
104
|
+
}
|
|
105
|
+
function C(n, e, i) {
|
|
106
|
+
let r = i.length;
|
|
107
|
+
for (let t = 0; t < i.length; t++)
|
|
108
|
+
if (i[t] > 1) {
|
|
109
|
+
r = t;
|
|
110
|
+
break;
|
|
111
|
+
}
|
|
112
|
+
for (let t = r + 1; t < i.length; t++)
|
|
113
|
+
if (e[t] > 0 || i[t] !== n[t])
|
|
114
|
+
return !1;
|
|
115
|
+
return !0;
|
|
116
|
+
}
|
|
117
|
+
function H(n, e) {
|
|
118
|
+
let i = n.length > 0 ? n[n.length - 1] : 1;
|
|
119
|
+
for (let r = 0; r < n.length - 1; r++)
|
|
120
|
+
i += n[r] * e[r];
|
|
121
|
+
return i;
|
|
122
|
+
}
|
|
123
|
+
function K(n, e, i) {
|
|
124
|
+
let r;
|
|
125
|
+
const t = n.shape.length;
|
|
126
|
+
typeof e == "number" ? r = [e, ...new Array(t - 1).fill(0)] : e.length < t ? r = e.concat(new Array(t - e.length).fill(0)) : r = e.slice(), r.forEach((a) => {
|
|
127
|
+
E(a !== -1, () => "slice() does not support negative begin indexing.");
|
|
128
|
+
});
|
|
129
|
+
let o;
|
|
130
|
+
return i == null ? o = new Array(t).fill(-1) : typeof i == "number" ? o = [i, ...new Array(t - 1).fill(-1)] : i.length < t ? o = i.concat(new Array(t - i.length).fill(-1)) : o = i, o = o.map((a, f) => a >= 0 ? a : (E(a === -1, () => `Negative size values should be exactly -1 but got ${a} for the slice() size at index ${f}.`), n.shape[f] - r[f])), [r, o];
|
|
131
|
+
}
|
|
132
|
+
function q(n, e, i, r, t, o, a, f, c) {
|
|
133
|
+
let h;
|
|
134
|
+
if (r == null ? (h = new Array(e.length), h.fill(1)) : h = r, a != null && (a & a - 1) !== 0)
|
|
135
|
+
throw new Error("Multiple ellipses in slice is not allowed.");
|
|
136
|
+
let S = !1;
|
|
137
|
+
const g = {
|
|
138
|
+
dims: h.length,
|
|
139
|
+
numAddAxisAfterEllipsis: 0,
|
|
140
|
+
begin: e.slice(),
|
|
141
|
+
end: i.slice(),
|
|
142
|
+
strides: h.slice(),
|
|
143
|
+
beginMask: t,
|
|
144
|
+
endMask: o,
|
|
145
|
+
ellipsisMask: a,
|
|
146
|
+
newAxisMask: f,
|
|
147
|
+
shrinkAxisMask: c
|
|
148
|
+
};
|
|
149
|
+
for (let l = 0; l < g.dims; l++)
|
|
150
|
+
S && (1 << l & f) !== 0 && g.numAddAxisAfterEllipsis++, 1 << l & a && (S = !0);
|
|
151
|
+
S || (g.ellipsisMask |= 1 << g.dims, g.dims++);
|
|
152
|
+
const s = {
|
|
153
|
+
dims: n.length,
|
|
154
|
+
beginMask: 0,
|
|
155
|
+
endMask: 0,
|
|
156
|
+
beginValid: !1,
|
|
157
|
+
endValid: !1
|
|
158
|
+
};
|
|
159
|
+
J(g, s);
|
|
160
|
+
let u = !0, p = !0, M = !0;
|
|
161
|
+
const I = [], w = [];
|
|
162
|
+
for (let l = 0; l < n.length; ++l) {
|
|
163
|
+
if (s.strides[l] === 0)
|
|
164
|
+
throw Error(`strides[${l}] must be non-zero`);
|
|
165
|
+
const m = !!(s.shrinkAxisMask & 1 << l), d = n[l];
|
|
166
|
+
if (d === -1) {
|
|
167
|
+
I.push(m ? 1 : -1);
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
170
|
+
const _ = [s.beginMask & 1 << l, s.endMask & 1 << l], $ = [
|
|
171
|
+
s.strides[l] > 0 ? 0 : -1,
|
|
172
|
+
s.strides[l] > 0 ? d : d - 1
|
|
173
|
+
];
|
|
174
|
+
if (m && s.strides[l] <= 0)
|
|
175
|
+
throw Error("only stride 1 allowed on non-range indexing.");
|
|
176
|
+
M = M && s.strides[l] === 1;
|
|
177
|
+
const y = !!(s.beginMask & 1 << l && s.endMask & 1 << l);
|
|
178
|
+
if (s.beginValid && s.endValid) {
|
|
179
|
+
if (m) {
|
|
180
|
+
const G = s.begin[l] < 0 ? d + s.begin[l] : s.begin[l];
|
|
181
|
+
if (s.begin[l] = G, s.end[l] = s.begin[l] + 1, G < 0 || G >= d)
|
|
182
|
+
throw Error(`slice index ${s.begin[l]} of dimension ${l} out of bounds.`);
|
|
183
|
+
} else
|
|
184
|
+
s.begin[l] = F(s.begin[l], 0, s.strides[l], d, _, $), s.end[l] = F(s.end[l], 1, s.strides[l], d, _, $);
|
|
185
|
+
const b = s.strides[l] === 1 && s.begin[l] === 0 && s.end[l] === d;
|
|
186
|
+
u = u && b, p = p && (l === 0 && s.strides[l] === 1 || b);
|
|
187
|
+
} else
|
|
188
|
+
u = u && s.strides[l] === 1 && y, p = p && (l === 0 && s.strides[l] === 1 || y);
|
|
189
|
+
let A, k = !1;
|
|
190
|
+
if (s.beginValid && s.endValid ? (A = s.end[l] - s.begin[l], k = !0) : m ? (A = 1, k = !0) : y && d >= 0 && (s.strides[l] < 0 ? A = -d : A = d, k = !0), k) {
|
|
191
|
+
let b;
|
|
192
|
+
A === 0 || A < 0 != s.strides[l] < 0 ? b = 0 : b = Math.trunc(A / s.strides[l]) + (A % s.strides[l] !== 0 ? 1 : 0), I.push(b);
|
|
193
|
+
} else
|
|
194
|
+
I.push(-1);
|
|
195
|
+
}
|
|
196
|
+
for (let l = 0; l < s.finalShapeGatherIndices.length; ++l) {
|
|
197
|
+
const m = s.finalShapeGatherIndices[l];
|
|
198
|
+
m >= 0 ? w.push(I[m]) : m === N && w.push(1);
|
|
199
|
+
}
|
|
200
|
+
return {
|
|
201
|
+
finalShapeSparse: w.filter((l, m) => s.finalShapeGatherIndices[m] !== N),
|
|
202
|
+
finalShape: w,
|
|
203
|
+
isIdentity: u,
|
|
204
|
+
sliceDim0: p,
|
|
205
|
+
isSimpleSlice: M,
|
|
206
|
+
begin: s.begin,
|
|
207
|
+
end: s.end,
|
|
208
|
+
strides: s.strides
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
function J(n, e) {
|
|
212
|
+
e.beginMask = 0, e.endMask = 0, e.shrinkAxisMask = 0;
|
|
213
|
+
let i = 0;
|
|
214
|
+
e.beginValid = n.begin != null, e.endValid = n.end != null, e.begin = new Array(e.dims), e.end = new Array(e.dims), e.strides = new Array(e.dims), e.finalShapeGatherIndices = [], e.finalShapeGatherIndicesSparse = [], e.inputShapeGatherIndicesSparse = new Array(e.dims);
|
|
215
|
+
for (let r = 0; r < n.dims; r++)
|
|
216
|
+
if (1 << r & n.ellipsisMask) {
|
|
217
|
+
const t = Math.min(e.dims - (n.dims - r) + 1 + n.numAddAxisAfterEllipsis, e.dims);
|
|
218
|
+
for (; i < t; i++)
|
|
219
|
+
e.begin[i] = 0, e.end[i] = 0, e.strides[i] = 1, e.beginMask |= 1 << i, e.endMask |= 1 << i, e.finalShapeGatherIndices.push(i), e.finalShapeGatherIndicesSparse.push(-1), e.inputShapeGatherIndicesSparse[i] = r;
|
|
220
|
+
} else if (1 << r & n.newAxisMask)
|
|
221
|
+
e.finalShapeGatherIndices.push(N), e.finalShapeGatherIndicesSparse.push(-1);
|
|
222
|
+
else {
|
|
223
|
+
if (i === e.begin.length)
|
|
224
|
+
throw Error(`Index out of range using input dim ${i}; input has only ${e.dims} dims, ${e.begin.length}.`);
|
|
225
|
+
n.begin != null && (e.begin[i] = n.begin[r]), n.end != null && (e.end[i] = n.end[r]), e.strides[i] = n.strides[r], n.beginMask & 1 << r && (e.beginMask |= 1 << i), n.endMask & 1 << r && (e.endMask |= 1 << i), n.shrinkAxisMask & 1 << r ? (e.finalShapeGatherIndices.push(L), e.finalShapeGatherIndicesSparse.push(-1), e.shrinkAxisMask |= 1 << i) : (e.finalShapeGatherIndices.push(i), e.finalShapeGatherIndicesSparse.push(r)), e.inputShapeGatherIndicesSparse[i] = r, i++;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
function F(n, e, i, r, t, o) {
|
|
229
|
+
if (t[e])
|
|
230
|
+
return i > 0 ? o[e] : o[e + 1 & 1];
|
|
231
|
+
{
|
|
232
|
+
const a = n < 0 ? r + n : n;
|
|
233
|
+
return a < o[0] ? o[0] : a > o[1] ? o[1] : a;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
const Y = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
237
|
+
__proto__: null,
|
|
238
|
+
assertParamsValid: P,
|
|
239
|
+
computeFlatOffset: H,
|
|
240
|
+
computeOutShape: z,
|
|
241
|
+
getNormalizedAxes: B,
|
|
242
|
+
isSliceContinous: C,
|
|
243
|
+
maskToAxes: j,
|
|
244
|
+
parseSliceParams: K,
|
|
245
|
+
sliceInfo: q,
|
|
246
|
+
startForAxis: W,
|
|
247
|
+
startIndicesWithElidedDims: T,
|
|
248
|
+
stopForAxis: v,
|
|
249
|
+
stopIndicesWithElidedDims: R,
|
|
250
|
+
stridesForAxis: X,
|
|
251
|
+
stridesWithElidedDims: V
|
|
252
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
253
|
+
export {
|
|
254
|
+
P as a,
|
|
255
|
+
q as b,
|
|
256
|
+
H as c,
|
|
257
|
+
z as d,
|
|
258
|
+
C as i,
|
|
259
|
+
K as p,
|
|
260
|
+
Y as s
|
|
261
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { A as r, B as f, E as i } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { S as e } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
function l(s, o = -1) {
|
|
4
|
+
const t = f(s, "logits", "softmax", "float32");
|
|
5
|
+
if (o === -1 && (o = t.rank - 1), o !== t.rank - 1)
|
|
6
|
+
throw Error(`Softmax along a non-last dimension is not yet supported. Logits was rank ${t.rank} and dim was ${o}`);
|
|
7
|
+
const n = { logits: t }, a = { dim: o };
|
|
8
|
+
return i.runKernel(e, n, a);
|
|
9
|
+
}
|
|
10
|
+
const c = /* @__PURE__ */ r({ softmax_: l });
|
|
11
|
+
export {
|
|
12
|
+
c as s
|
|
13
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { A as p, B as i, E as c } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { c as a } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
function e(t, s, o = 0) {
|
|
4
|
+
const n = { x: i(t, "x", "split") }, r = { numOrSizeSplits: s, axis: o };
|
|
5
|
+
return c.runKernel(a, n, r);
|
|
6
|
+
}
|
|
7
|
+
const u = /* @__PURE__ */ p({ split_: e });
|
|
8
|
+
export {
|
|
9
|
+
u as s
|
|
10
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { A as o, B as n } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { r as t } from "./reshape-DevtBWtf.js";
|
|
3
|
+
import { h as a } from "./tensor-DdQUJZlz.js";
|
|
4
|
+
function p(r, s) {
|
|
5
|
+
const e = n(r, "x", "squeeze", "string_or_numeric");
|
|
6
|
+
return t(e, a(e.shape, s).newShape);
|
|
7
|
+
}
|
|
8
|
+
const c = /* @__PURE__ */ o({ squeeze_: p });
|
|
9
|
+
export {
|
|
10
|
+
c as s
|
|
11
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { A as e, C as c, E as i } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { P as m } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
import { a as r } from "./tensor-DdQUJZlz.js";
|
|
4
|
+
function f(o, s = 0) {
|
|
5
|
+
const t = c(o, "tensors", "stack", "string_or_numeric");
|
|
6
|
+
r(t.length >= 1, () => "Pass at least one tensor to tf.stack"), t.length > 0 && r(s <= t[0].rank, () => "Axis must be <= rank of the tensor");
|
|
7
|
+
const n = t, a = { axis: s };
|
|
8
|
+
return i.runKernel(m, n, a);
|
|
9
|
+
}
|
|
10
|
+
const l = /* @__PURE__ */ e({ stack_: f });
|
|
11
|
+
export {
|
|
12
|
+
l as s
|
|
13
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { A as e, B as u, G as m, E as c } from "./index-ZyQhjEPo.js";
|
|
2
|
+
import { g as i } from "./tensor_util-DV-FP5Q3.js";
|
|
3
|
+
function l(t, o = null, n = !1) {
|
|
4
|
+
let s = u(t, "x", "sum");
|
|
5
|
+
s.dtype === "bool" && (s = m(s, "int32"));
|
|
6
|
+
const r = { x: s }, a = { axis: o, keepDims: n };
|
|
7
|
+
return c.runKernel(i, r, a);
|
|
8
|
+
}
|
|
9
|
+
const x = /* @__PURE__ */ e({ sum_: l });
|
|
10
|
+
export {
|
|
11
|
+
x as s
|
|
12
|
+
};
|