CompressedGemma commited on
Commit
51fc4ff
·
verified ·
1 Parent(s): bbc46bd

Upload slimshard_gui.py

Browse files
Files changed (1) hide show
  1. slimshard_gui.py +37 -5
slimshard_gui.py CHANGED
@@ -864,7 +864,34 @@ class SlimShardGUI:
864
  cmd += ["--max-experts", str(me)]
865
  except Exception:
866
  pass
 
 
867
  cmd += ["--device", self.device_var.get()]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
868
  elif mode == "build":
869
  if self.model_dir_var.get():
870
  cmd += ["--model-dir", self.model_dir_var.get()]
@@ -891,8 +918,12 @@ class SlimShardGUI:
891
 
892
  def _inspect_plan(self) -> None:
893
  shard = self.shard_var.get().strip()
894
- if not shard or not Path(shard).exists():
895
- messagebox.showwarning("SlimShard", "Please select a valid .safetensors shard first.")
 
 
 
 
896
  return
897
  try:
898
  tp = float(self.target_params_b_var.get())
@@ -909,6 +940,7 @@ class SlimShardGUI:
909
  config=self.config_var.get().strip() or None,
910
  target_params_b=tp if tp > 0.0 else None,
911
  max_experts=me if me > 0 else None,
 
912
  )
913
  except Exception as exc:
914
  messagebox.showerror("Inspect Failed", str(exc))
@@ -929,7 +961,7 @@ class SlimShardGUI:
929
  surv = plan["surviving_layers"]
930
  miss = plan["missing_layers"]
931
  self.layers_summary_var.set(
932
- f"Surviving in shard ({len(surv)}): {surv[:12]}{'...' if len(surv) > 12 else ''} | "
933
  f"Missing to CheckFree-reconstruct ({len(miss)}): {miss[:12]}{'...' if len(miss) > 12 else ''}"
934
  )
935
  c = plan["counts"]
@@ -940,8 +972,8 @@ class SlimShardGUI:
940
  self._plan_rows = plan["rows"]
941
  self._refresh_table()
942
  self._log(
943
- f"Inspected {Path(shard).name}: {plan['present_tensors']}/{plan['total_tensors']} present, "
944
- f"{len(miss)} layers to reconstruct via CheckFree."
945
  )
946
 
947
  def _refresh_table(self) -> None:
 
864
  cmd += ["--max-experts", str(me)]
865
  except Exception:
866
  pass
867
+ if self.anchor_layers_var.get().strip():
868
+ cmd += ["--anchor-layers", self.anchor_layers_var.get().strip()]
869
  cmd += ["--device", self.device_var.get()]
870
+ elif mode == "fetch-hf":
871
+ if self.hf_url_var.get().strip():
872
+ cmd += ["--repo", self.hf_url_var.get().strip()]
873
+ if self.model_dir_var.get().strip():
874
+ cmd += ["--output-dir", self.model_dir_var.get().strip()]
875
+ try:
876
+ tp = float(self.target_params_b_var.get())
877
+ if tp > 0.0:
878
+ cmd += ["--target-params-b", f"{tp:g}"]
879
+ except Exception:
880
+ pass
881
+ try:
882
+ me = int(self.max_experts_var.get())
883
+ if me > 0:
884
+ cmd += ["--max-experts", str(me)]
885
+ except Exception:
886
+ pass
887
+ try:
888
+ na = int(self.num_anchor_layers_var.get())
889
+ cmd += ["--num-anchor-layers", str(na)]
890
+ except Exception:
891
+ pass
892
+ if self.anchor_layers_var.get().strip():
893
+ cmd += ["--anchor-layers", self.anchor_layers_var.get().strip()]
894
+ cmd += ["--mode", self.hf_fetch_mode_var.get()]
895
  elif mode == "build":
896
  if self.model_dir_var.get():
897
  cmd += ["--model-dir", self.model_dir_var.get()]
 
918
 
919
  def _inspect_plan(self) -> None:
920
  shard = self.shard_var.get().strip()
921
+ try:
922
+ resolved = _resolve_shard_paths(shard) if shard else []
923
+ except Exception:
924
+ resolved = []
925
+ if not resolved:
926
+ messagebox.showwarning("SlimShard", "Please select one or more valid .safetensors shards first.")
927
  return
928
  try:
929
  tp = float(self.target_params_b_var.get())
 
940
  config=self.config_var.get().strip() or None,
941
  target_params_b=tp if tp > 0.0 else None,
942
  max_experts=me if me > 0 else None,
943
+ anchor_layers=self.anchor_layers_var.get().strip() or None,
944
  )
945
  except Exception as exc:
946
  messagebox.showerror("Inspect Failed", str(exc))
 
961
  surv = plan["surviving_layers"]
962
  miss = plan["missing_layers"]
963
  self.layers_summary_var.set(
964
+ f"Surviving across {len(resolved)} shard(s) ({len(surv)}): {surv[:12]}{'...' if len(surv) > 12 else ''} | "
965
  f"Missing to CheckFree-reconstruct ({len(miss)}): {miss[:12]}{'...' if len(miss) > 12 else ''}"
966
  )
967
  c = plan["counts"]
 
972
  self._plan_rows = plan["rows"]
973
  self._refresh_table()
974
  self._log(
975
+ f"Inspected {len(resolved)} shard(s): {plan['present_tensors']}/{plan['total_tensors']} present, "
976
+ f"{len(surv)} anchor layers, {len(miss)} layers to reconstruct via CheckFree."
977
  )
978
 
979
  def _refresh_table(self) -> None: