Skip to content

CI fails with dev dependencies: AttributeError: 'GPTNeoXForSequenceClassification' object has no attribute 'generation_config' #4595

@albertvillanova

Description

@albertvillanova

CI fails with dev dependencies:

AttributeError: 'GPTNeoXForSequenceClassification' object has no attribute 'generation_config'

FAILED tests/test_dataset_formatting.py::TestCloneChatTemplate::test_clone_with_sequence_classification_model - AttributeError: 'GPTNeoXForSequenceClassification' object has no attribute 'generation_config'
FAILED tests/test_reward_trainer.py::TestRewardTrainer::test_train_with_set_chat_template_from_model - AttributeError: 'GPTNeoXForSequenceClassification' object has no attribute 'generation_config'

Stacktrace:

      def test_clone_with_sequence_classification_model(self):
          # This tokenizer doesn't have a chat_template by default
          tokenizer = AutoTokenizer.from_pretrained("trl-internal-testing/tiny-GptNeoXForSequenceClassification")
          model = AutoModelForSequenceClassification.from_pretrained(
              "trl-internal-testing/tiny-GptNeoXForSequenceClassification"
          )
          # This one has a chat_template by default
          source = "trl-internal-testing/tiny-Qwen3ForCausalLM"
  >       _, modified_tokenizer, _ = clone_chat_template(model, tokenizer, source)
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  
  tests/test_dataset_formatting.py:236: 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
  trl/models/utils.py:225: in clone_chat_template
      if model.generation_config is not None:  # for SequenceClassification models, generation_config is None
         ^^^^^^^^^^^^^^^^^^^^^^^
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
  
  self = GPTNeoXForSequenceClassification(
    (gpt_neox): GPTNeoXModel(
      (embed_in): Embedding(50304, 16)
      (emb_dropout): ...ne=True)
      (rotary_emb): GPTNeoXRotaryEmbedding()
    )
    (score): Linear(in_features=16, out_features=1, bias=False)
  )
  name = 'generation_config'
  
      def __getattr__(self, name: str) -> Union[Tensor, "Module"]:
          if "_parameters" in self.__dict__:
              _parameters = self.__dict__["_parameters"]
              if name in _parameters:
                  return _parameters[name]
          if "_buffers" in self.__dict__:
              _buffers = self.__dict__["_buffers"]
              if name in _buffers:
                  return _buffers[name]
          if "_modules" in self.__dict__:
              modules = self.__dict__["_modules"]
              if name in modules:
                  return modules[name]
  >       raise AttributeError(
              f"'{type(self).__name__}' object has no attribute '{name}'"
          )
  E       AttributeError: 'GPTNeoXForSequenceClassification' object has no attribute 'generation_config'
  
  .venv/lib/python3.12/site-packages/torch/nn/modules/module.py:1964: AttributeError

Metadata

Metadata

Labels

🐛 bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions