1. 01 Jul, 2024 1 commit
    • JDKWangGuan's avatar
      Fix KeyError handling for non-existing key in state_dict.pop() (#898) · 0d810cfb
      JDKWangGuan authored
      Update handling for KeyError in state_dict.pop() for non-existing keys.
      Changed state_dict.pop(f"h.{d}.attn.bias") to state_dict.pop(f"h.{d}.attn.bias", None) to prevent KeyError exceptions.
      
      
      The following code can re-produce the issue
      ```
      from transformers import AutoTokenizer, GPT2Model, GPT2Config
      from flash_attn.models.gpt import GPTLMHeadModel, GPTModel
      
      # >>> transformers.__version__
      # '4.38.2'
      
      model_path = 'gpt2'
      output_model_path = 'gpt2_model'
      config = GPT2Config.from_pretrained(model_path, output_hidden_states=True)
      model = GPT2Model.from_pretrained(model_path, from_tf=False, config=config)
      '''
      model fine-tuning here
      '''
      # dump the fine-tuned model
      model.save_pretrained(output_model_path)
      
      # load the fine-tuned model
      config = GPT2Config.from_pretrained(output_model_path, output_hidden_states=True)
      model = GPTModel.from_pretrained(output_model_path, config=config, strict=True)  # failed due to KeyError: 'h.0.attn.bias'
      model = GPTLMHeadModel.from_pretrained(output_model_path, config=config, strict=True)  # failed due to KeyError: 'h.0.attn.bias'
      
      ```
      0d810cfb
  2. 31 Jan, 2024 1 commit
  3. 05 Jan, 2024 1 commit
  4. 25 Dec, 2023 2 commits
  5. 23 Dec, 2023 1 commit
  6. 22 Dec, 2023 1 commit
  7. 21 Sep, 2023 1 commit
  8. 13 Sep, 2023 1 commit
  9. 11 Sep, 2023 1 commit
  10. 04 Sep, 2023 2 commits
  11. 30 Aug, 2023 1 commit
  12. 27 Aug, 2023 1 commit
  13. 24 Aug, 2023 1 commit
  14. 20 Aug, 2023 1 commit
  15. 19 Aug, 2023 1 commit
  16. 18 Aug, 2023 2 commits
  17. 17 Aug, 2023 1 commit
  18. 29 Jul, 2023 1 commit
  19. 26 Jul, 2023 1 commit
  20. 23 Jul, 2023 4 commits
  21. 30 May, 2023 1 commit
  22. 06 May, 2023 1 commit
  23. 05 May, 2023 1 commit
  24. 21 Apr, 2023 2 commits
  25. 19 Apr, 2023 1 commit
  26. 18 Apr, 2023 1 commit
  27. 13 Apr, 2023 1 commit
  28. 31 Mar, 2023 1 commit
  29. 29 Mar, 2023 1 commit
  30. 22 Mar, 2023 1 commit
  31. 23 Jan, 2023 1 commit
  32. 19 Jan, 2023 1 commit
  33. 18 Jan, 2023 1 commit