(param, state_dict)
| 99 | |
| 100 | |
| 101 | def search_parameter(param, state_dict): |
| 102 | for name, param_ in state_dict.items(): |
| 103 | if param.numel() == param_.numel(): |
| 104 | if param.shape == param_.shape: |
| 105 | if torch.dist(param, param_) < 1e-3: |
| 106 | return name |
| 107 | else: |
| 108 | if torch.dist(param.flatten(), param_.flatten()) < 1e-3: |
| 109 | return name |
| 110 | return None |
| 111 | |
| 112 | |
| 113 | def build_rename_dict(source_state_dict, target_state_dict, split_qkv=False): |