CHGNet scorer implementation #8
Conversation
|
Hi, Thanks for creating this PR. The time and effort you put into developing the I understand your concerns about the current ZMQ-based approach. However, this project intentionally avoids dependencies on specific scorers like ALIGNN, CHGNet, and others. The core focus of this repository is on the development and enhancement of the CrystaLLM model itself, rather than on facilitating specific integrations with other models. Moreover, we want to maintain simplicity, and avoid the complexities of managing inter-dependencies and potential conflicts amongst various dependencies that might be introduced by incorporating these other models. Instead, we provide an interface for representing the scorer ( While we might not merge this PR into the main project for the reasons stated above, we encourage you to maintain your fork with the Best regards, |
update CHGNet typo
Hi,
I was bothered by the ZMQ option for connecting with an external scorer because it is kinda slow and unreliable on the supercomputer cluster. I have implemented a new scorer called
CHGNetScorerin_scorer.py. This is designed for the case that 2 GPUs are available in the same node. It also works if the scorer is hosted on CPU. The idea is basically to setup two different devices: CrystaLLM oncudaand CHGNetScorer oncuda:1. Worker CPU is used for the output transfer.For more details about CHGNet, please see here. From Matbench Discovery, CHGNet is a better ML model than ALIGNN. I'm more familiar with CHGNet than MACE. MACE is an even better option. That being said, I will implement a MACEScorer shortly.
I tested this feature using a LiFeF3 example. The truncated output is attached below:
template_6.yaml
Oh, I also updated the code to support the latest Pytorch (v2024.3.1).
Please take a look! Open for discussions!
Best,
Kian