#!/usr/bin/env python3 """Rank H3 transformer matrices by mean activation importance.""" from __future__ import annotations import argparse import json import re import struct from pathlib import Path import numpy as np FC1 = re.compile(r"model\.diffusion_model\.blocks\.(\d+)\.mlp\.fc1\.weight$") def read_entries(path: Path) -> list[dict[str, object]]: rows: list[dict[str, object]] = [] with path.open("rb") as stream: (entry_count,) = struct.unpack(" None: parser = argparse.ArgumentParser() parser.add_argument("imatrix", type=Path) parser.add_argument("--output", type=Path) args = parser.parse_args() rows = read_entries(args.imatrix) rendered = json.dumps(rows, indent=2) + "\n" if args.output: args.output.write_text(rendered, encoding="utf-8") else: print(rendered, end="") if __name__ == "__main__": main()