Spaces:
Runtime error
Runtime error
| import argparse | |
| import sys | |
| import os | |
| import torch | |
| tencentpretrain_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) | |
| sys.path.append(tencentpretrain_dir) | |
| def average(model_list_path): | |
| for i, model_path in enumerate(model_list_path): | |
| model = torch.load(model_path) | |
| if i == 0: | |
| avg_model = model | |
| else: | |
| for k, _ in avg_model.items(): | |
| avg_model[k].mul_(i).add_(model[k]).div_(i+1) | |
| return avg_model | |
| if __name__ == '__main__': | |
| parser = argparse.ArgumentParser(description="") | |
| parser.add_argument("--model_list_path", nargs="+", required=True, | |
| help="Path of the input model list.") | |
| parser.add_argument("--output_model_path", required=True, | |
| help="Path of the output model.") | |
| args = parser.parse_args() | |
| avg_model = average(args.model_list_path) | |
| torch.save(avg_model, args.output_model_path) | |