@clutor/core 0.2.0 → 0.3.1

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/dist/index.cjs CHANGED
@@ -697,6 +697,24 @@ var CATALOG = [
697
697
  publishedParamsB: 6.9,
698
698
  source: "OLMoE paper (Muennighoff et al., 2024)"
699
699
  },
700
+ {
701
+ id: "granite-3.0-3b-a800m",
702
+ name: "Granite 3.0 3B-A800M (IBM)",
703
+ family: "granite-moe",
704
+ layers: 32,
705
+ denseLayers: 0,
706
+ hidden: 1536,
707
+ vocab: 49155,
708
+ denseFfn: 0,
709
+ attention: { kind: "gqa", heads: 24, kvHeads: 8, headDim: 64 },
710
+ experts: 40,
711
+ expertsUsed: 8,
712
+ sharedExperts: 0,
713
+ expertFfn: 512,
714
+ maxContext: 4096,
715
+ publishedParamsB: 3.4,
716
+ source: "IBM Granite 3.0 model card; shapes read from the GGUF header of granite-3.0-3b-a800m-instruct"
717
+ },
700
718
  {
701
719
  id: "qwen2.5-coder-7b",
702
720
  name: "Qwen2.5-Coder-7B (dense)",
@@ -714,6 +732,25 @@ var CATALOG = [
714
732
  maxContext: 131072,
715
733
  publishedParamsB: 7.6,
716
734
  source: "Qwen2.5-Coder model card"
735
+ },
736
+ {
737
+ id: "qwen2.5-1.5b",
738
+ name: "Qwen2.5-1.5B-Instruct (dense)",
739
+ family: "qwen2",
740
+ layers: 28,
741
+ denseLayers: 28,
742
+ hidden: 1536,
743
+ vocab: 151936,
744
+ denseFfn: 8960,
745
+ attention: { kind: "gqa", heads: 12, kvHeads: 2, headDim: 128 },
746
+ experts: 0,
747
+ expertsUsed: 0,
748
+ sharedExperts: 0,
749
+ expertFfn: 0,
750
+ maxContext: 32768,
751
+ tiedEmbeddings: true,
752
+ publishedParamsB: 1.54,
753
+ source: "Qwen2.5 model card; shapes read from the GGUF header of qwen2.5-1.5b-instruct"
717
754
  }
718
755
  ];
719
756
  function layerParams(s, moe) {
@@ -730,7 +767,7 @@ function layerParams(s, moe) {
730
767
  };
731
768
  }
732
769
  function totalParams(s) {
733
- let n = 2 * s.vocab * s.hidden;
770
+ let n = (s.tiedEmbeddings ? 1 : 2) * s.vocab * s.hidden;
734
771
  for (let l = 0; l < s.layers; l++) {
735
772
  const p = layerParams(s, s.experts > 0 && l >= s.denseLayers);
736
773
  n += p.attention + p.denseFfn + p.routed + p.shared + p.router;
@@ -743,7 +780,7 @@ function approximateLayout(s, bitsPerWeight2) {
743
780
  let offset = 0;
744
781
  const layers = [];
745
782
  let total = 0;
746
- const resident = bytes(2 * s.vocab * s.hidden);
783
+ const resident = bytes((s.tiedEmbeddings ? 1 : 2) * s.vocab * s.hidden);
747
784
  for (let l = 0; l < s.layers; l++) {
748
785
  const moe = s.experts > 0 && l >= s.denseLayers;
749
786
  const p = layerParams(s, moe);