lsnu's picture
Add files using upload-large-folder tool
5ce8761 verified
import argparse
def str_none(value):
if value.lower() in ['none', 'null', 'nil'] or len(value) == 0:
return None
else:
return value
def str2bool(value):
if value.lower() in ['true', '1', 't', 'y', 'yes']:
return True
elif value.lower() in ['false', '0', 'f', 'n', 'no']:
return False
else:
raise argparse.ArgumentTypeError(f"Invalid boolean value: {value}")
def round_floats(o):
if isinstance(o, float): return round(o, 2)
if isinstance(o, dict): return {k: round_floats(v) for k, v in o.items()}
if isinstance(o, (list, tuple)): return [round_floats(x) for x in o]
return o
def count_parameters(model):
print(
"Trainable model parameters:",
sum(p.numel() for p in model.parameters() if p.requires_grad)
)
# Print number of trainable parameters for main modules
for name, submodule in model.named_modules():
if '.' not in name:
submodule_params = sum(
p.numel() for p in submodule.parameters()
if p.requires_grad
)
if submodule_params > 0:
print(f"{name} - trainable params: {submodule_params}")