Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors with ODAC23 EquiformerV2 models #727

Open
andreadaru opened this issue Jun 12, 2024 · 6 comments
Open

Errors with ODAC23 EquiformerV2 models #727

andreadaru opened this issue Jun 12, 2024 · 6 comments
Assignees
Labels
bug Something isn't working stale

Comments

@andreadaru
Copy link

Hello!
I found some errors when I try to run the new ODAC23 EquiformerV2 models. The same code with other ODAC23 models works.

With EquiformerV2-S2EF-ODAC the error is:

 File "/fairchem/core/common/relaxation/ase_utils.py", line 184, in __init__
    self.trainer = registry.get_trainer_class(config["trainer"])(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fairchem/core/trainers/ocp_trainer.py", line 96, in __init__
    super().__init__(
  File "/fairchem/core/trainers/base_trainer.py", line 182, in __init__
    self.load()
  File "/fairchem/core/trainers/base_trainer.py", line 209, in load
    self.load_extras()
  File "/fairchem/core/trainers/base_trainer.py", line 597, in load_extras
    self.scheduler = LRScheduler(self.optimizer, self.config["optim"])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fairchem/core/modules/scheduler.py", line 41, in __init__
    self.scheduler = self.scheduler(optimizer, **scheduler_args)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: LambdaLR.__init__() missing 1 required positional argument: 'lr_lambda'

With EquiformerV2-Large-S2EF-ODAC the error is:

   calc = OCPCalculator(
           ^^^^^^^^^^^^^^
  File "/fairchem/core/common/relaxation/ase_utils.py", line 184, in __init__
    self.trainer = registry.get_trainer_class(config["trainer"])(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fairchem/core/trainers/ocp_trainer.py", line 96, in __init__
    super().__init__(
  File "/fairchem/core/trainers/base_trainer.py", line 182, in __init__
    self.load()
  File "/fairchem/core/trainers/base_trainer.py", line 206, in load
    self.load_model()
  File "/fairchem/core/trainers/base_trainer.py", line 418, in load_model
    self.model = registry.get_model_class(self.config["model"])(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: EquiformerV2_OC20.__init__() got an unexpected keyword argument 'norm_scale_nodes'

Any help?

@mwzum
Copy link

mwzum commented Jun 13, 2024

Hello,

First of all, thank you for the incredible work on this project.

Given that the OC models work perfectly, it seems the problem is specific to the ODAC-related models. Could this be a compatibility issue with the configuration format or something specific to the ODAC model settings?

I have attempted to add/remove some keys directly into the configuration, but this leads to other issues arising. viz.,
KeyError: 'dataset' in the config["task"]["dataset"] key.

I also noticed @janiceblue and @mshuaibii updated the configs to use ocp2.0 format (#653)

@anuroopsriram @abhshkdz: Any guidance or updates on resolving these configuration issues would be greatly appreciated.

Thank you for your time and assistance!

@mshuaibii
Copy link
Collaborator

mshuaibii commented Jun 13, 2024

@anuroopsriram this looks like ODAC used an older version of EqV2. The scheduler issue is something you'll also need to manually update the checkpoints, similar to #660. Can you please take a look.

@komorisu
Copy link

komorisu commented Jul 9, 2024

I greatly appreciate your excellent research.

Since the EquiformerV2-IE4-IF100-S2EFS-OC22 trained with OC22 worked well, I agree with your opinion. Could you please release an ODAC using the new version of EqV2 in the future?

Thank you for your assistance.

@zulissimeta
Copy link
Collaborator

I added a unit test here for the S2EF/IS2RE and ODAC configs. There's still some problems with the IS2RE configs:
#766

@andreadaru Are there any other configs that are breaking that we should take a look at?

Copy link

This issue has been marked as stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label Aug 18, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Sep 1, 2024
@zulissi zulissi reopened this Sep 1, 2024
@github-actions github-actions bot removed the stale label Sep 2, 2024
Copy link

github-actions bot commented Oct 2, 2024

This issue has been marked as stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working stale
Projects
None yet
Development

No branches or pull requests

7 participants