Recent Releases of torchani
torchani - TorchANI 2.6
This release constitutes an overhaul of the library, making it more modular and performant. There are a few backwards incompatible code changes, but most code will run with no changes.
Please consult the documentation for a comprehensive overview of the changes and new features, which include:
- Adding arbitrary analytic potentials to models
- Built in implementations of DFT-D3, GFN2-xTB repulsion, and other potentials
- Flexible model constructor for experimenting with different NN architectures
- Customizable AEV terms and cutoff functions
- Modular neighborlists for use with any model, including an accelerated $O(N)$ cell list and a Verlet list.
- Improved defaults of all models that make the PES smoother and better representative of the atomization limit
torchani.datasets, to manipulate, create, and pre-batch ANI datasets- Optimized CUAEV extension
- Optimized ensemble inference with BmmEnsemble
- Parallel calculations over elements using MultiNetParallel (MNP)
@IgnacioJPickering @yueyericardo, @khuddzu @nterrel
- Python
Published by IgnacioJPickering 7 months ago
torchani - 2.2.4
What's Changed
- Set C++17 for latest pytorch versions. Add flags for CUDA 12 and 11.8 by @RaulPPelaez in https://github.com/aiqm/torchani/pull/641
New Contributors
- @RaulPPelaez made their first contribution in https://github.com/aiqm/torchani/pull/641
Full Changelog: https://github.com/aiqm/torchani/compare/2.2.3...2.2.4
- Python
Published by yueyericardo over 2 years ago
torchani - 2.2.3
What's Changed
- Fix cuaev build on CUDA 11.5 and latest torch by @zasdfgbnm in https://github.com/aiqm/torchani/pull/603
- Create CITATION by @zasdfgbnm in https://github.com/aiqm/torchani/pull/608
- Use torch.div instead of // by @RMeli in https://github.com/aiqm/torchani/pull/615
- add keyword arguments to testAEVComputer by @rschireman in https://github.com/aiqm/torchani/pull/619
- Fixed: symeig deprication by @kfir4444 in https://github.com/aiqm/torchani/pull/627
New Contributors
- @rschireman made their first contribution in https://github.com/aiqm/torchani/pull/619
- @kfir4444 made their first contribution in https://github.com/aiqm/torchani/pull/627
Full Changelog: https://github.com/aiqm/torchani/compare/2.2.2...2.2.3
- Python
Published by yueyericardo almost 3 years ago
torchani - TorchANI 2.2
unique_consecutiveis now supported by TorchScript, so the workaround for it is removed from TorchANI (#471)- Added missing dependency
requests(#486) torchani.datanow allow using custom padding values (#489)- Updated TorchANI paper information (#494, #506)
- Remove Python 2.7 style
super, this is known to have issues on some Python build (#496) - Fix
torchani.datafor returningspecieswith wrong dtype (#502) - Fixes the uninstall of
pip(#500) - Source tarballs will also be distributed to PyPI (#508)
- Improvements on unit tests and other maintainability related issue (#487, #488, #490, #491, #493, #495)
- Python
Published by zasdfgbnm over 5 years ago
torchani - TorchANI 2.1.1
Highlights:
- TorchANI paper is submitted to JCIM (#465, #469)
- ANI2x model is added as a built-in model for inference. (#480)
- Due to the size limit of PyPI, ANI1ccx and ANI2x models are moved to a separate repository. They will be automatically downloaded at the first time of use.
Other changes:
- Switch to PyTorch implementation of AdamW (#464)
- Data API improvements (#463, #475)
- BuiltinNet is refactored (#474, #473, #476)
- SpeciesConverter device fix (#461, #462)
- Documentation improvements (#479, #478)
- Fix flake8 (#466)
- Python
Published by farhadrgh over 5 years ago
torchani - TorchANI 2.1
Edit: This release is not in PyPI because it exceeds the maximum file size limit of PyPI. We will make a new release 2.1.1 to remove models outside TorchANI. Models will be automatically downloaded when used for the first time
Highlights:
- TorchANI paper is submitted to JCIM (#465, #469)
- ANI2x model is added as a built-in model for inference. (#480)
Other changes:
- Switch to PyTorch implementation of AdamW (#464)
- Data API improvements (#463, #475)
- BuiltinNet is refactored (#474, #473, #476)
- SpeciesConverter device fix (#461, #462)
- Documentation improvements (#479, #478)
- Fix flake8 (#466)
- Python
Published by farhadrgh over 5 years ago
torchani - TorchANI 2.0
- The dataset API
torchani.datahas been rewritten. In the new dataset API, we no longer split batches into chunks. Splitting batches into chunks was an optimization to an old implementation ofAEVComputer, and it has become a deoptimization. (#428, #405, #404, #456, #434, #433, #432, #431). AEVComputerperformance improvements and bug fixes (#451, #449, #447, #440, #438, #437, #436, #429, #420, #419, #418, #446)- Documentation improvements (#460, #442, #425)
- Improvements on vibrational analysis (#427, #413)
- Improve the handle of units (#422)
- Bug fixes in ASE interface (#426, #417, #409)
- Improvements in tool scripts (#412, #411, #410, #435, #453, #430)
- Python
Published by farhadrgh almost 6 years ago
torchani - TorchANI 1.2
*Please update your PyTorch to latest nightly build!*
Changes
- Add support for indexing species with periodic table element index. (#396, #399)
- To convert from the periodic table index to the 0, 1, 2, 3, ... index, checkout
torchani.SpeciesConverter(#396) - To switch to the periodic table index for builtin models, set the argument
periodic_table_index=Truewhen constructing. (#399)
- To convert from the periodic table index to the 0, 1, 2, 3, ... index, checkout
- Submodules of
ANIModelcan now have a name. To use this feature, pass anOrderedDictinstead of alistto its constructor. (#398) torchani.utils.hessianis now supported by JIT. (#397)- Documentation improvements (#400, #401, #402)
- Python
Published by zasdfgbnm over 6 years ago
torchani - TorchANI 1.1
*Please update your PyTorch to latest nightly build!*
Highlights
- Python 2 support is removed (#370, #390)
- Ignite helper is removed (#354, #364)
- AEV cacher is removed (#361)
EnergyShifternow always use float64 as datatype (#338, #347)- The API for the ASE interface has been simplified (#386)
Python 3
Previously we were supporting Python 2, which limits the language feature we could use. Now PyTorch has started dropping Python 2 support on their nightly builds. So TorchANI also dropped Python 2 support, which enables lots of new language features to improve our code quality:
- Use @ operator for matrix multiplication (#371)
- Type annotation is now in Python 3 style (#372, #373, #374, #375)
TorchScript Support
In TorchANI 1.0, we added TorchScript support. But due to bugs/lacking features in PyTorch, we had to make many workarounds, which introduce some problems. PyTorch has improved a lot since then, so we remove some of the workarounds to make TorchANI great again:
- Ensemble size is no longer hardcoded to 8 (#352)
- enumerate is now correctly supported by JIT (#358)
- Tensor factories like new_zeros are now correctly supported by JIT (#353, #362)
- Subclassing ModuleList is now supported by JIT (#385)
- Bugs on the type inference of torch.arange is now fixed (#357)
- __constants__ is deprecated by torch.jit (#378)
Bug Fixes and Miscellaneous Improves
- Fix bugs on CUDA support (#341, #350)
- Fix bug in discarding outlier energy conformers (#334, #340)
- Mention what unit is used in docs (#389)
- Fix the homepage URL in PyPI page (#363)
- Modules now return a named tuple instead of a tuple (#380)
- Support
nanas a value in NeuroChem parser (#383) - Remove warning on don't use conda to install PyTorch, because this is no longer a problem (#366)
- Allow passing
pbcandcelltotorchani.nn.Sequential(#386) - Code for analytical stress calculation has been improved (#387)
- Use
torch.triu_indicesto simplify code (#367, #368)
- Python
Published by zasdfgbnm over 6 years ago
torchani - TorchANI 1.0.1
This is just a dummy release that triggers deployment. See for https://github.com/aiqm/torchani/releases/tag/1.0 changelog.
- Python
Published by zasdfgbnm over 6 years ago
torchani - TorchANI 1.0
- TorchScript compatibility has been added to export TorchANI models through
torch.jit. Users can now use C++ API for deployments. (#303, #305, #306, #307, #308, #326, #327). - Some APIs are changed due to the compatibility issue with TorchScript:
AEVComputerinput is changed,cellandpbcare now keyword arguments. (#303)Ensembleis now hardcoded to have a size of 8. (#307)torchani.nn.Sequentialis added to include type annotations for JIT. (#307)
- An example of how the models can be exported using PyTorch JIT has been provided (#328).
- All the unit tests and checks have been moved to GitHub Actions. (#309, #310, #313, #314, #317, #318, #319, #322, #323, #324)
- Added a script for profiling the training on NVIDIA GPUs using Nsight System (#325)
- Bug fixed in the dimensions of
self_energiesfor a dataset containing only one element (#302)
- Python
Published by farhadrgh over 6 years ago
torchani - TorchANI 0.9
- The package name of PyTorch has changed from
torch-nightlytotorch, we update it respectively (#295, #294) - Add new experimental
dataAPI that has much less memory usage and much better performance (#284, #299) - Example files now reproduce NeuroChem results after taking out the outlier energy conformers (#287)
- Accelerate angular AEV computation and reduce memory cost (#290)
- Remove all large files and stop using
git-lfs(#289)
- Python
Published by farhadrgh over 6 years ago
torchani - TorchANI 0.8
- Support PyTorch new
torch.booldatatype. (#278) Warning: Boolean tensor is a breaking change introduced in PyTorch, TorchANI has to be updated to run on the latest PyTorch, otherwise it will produce wrong results. - Improve TorchANI to be more close to NeuroChem. Update examples respectively. Also, provide helper functions. (#283, #282, #280, #279, #275, #261, #259, #255, #245, #263)
- Add example for energy/force training. (#249, #240, #238, #233)
- Bug fixed in AdamW implementation. (#261)
- Dataset related API has changed, see the new API doc for detail. Its implementations are also improved. (#230, #231, #232, #236, #237, #250, #257, #272)
- Builtin models API has changed, and implementation improved. (#252, #266)
- Fix a bug of not having
torchani.datawhenigniteis not installed. (#256)
- Python
Published by farhadrgh over 6 years ago
torchani - TorchANI 0.7
- Experimental support for weight decay (#223)
- Add example of training ANI models by manually writing training loops that has the same configuration as NeuroChem (#224)
- Use
torch.utils.tensorboardto replace tensorboardX (#224) h5pyandpytorch-ignite-nightlyare removed from dependencies, so that inference-only application do not need to install them (#224)MAEvsMaxAEare clarified in NeuroChem trainer (#225)- Support mode computation in
vibrational_analysis(#228)
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.6
- Fix bug of analytical stress of PBC (#221)
- Add support for analytical hessian and vibrational analysis (#222)
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.5
- Fix a bug on PBC (#214)
- Add support for analytical stress (#218)
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.4.2
- Fix ase interface on GPU (#212)
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.4.1
- Further performance improvements (#202, #204, #205, #206,#207)
- Use a stable API
torch.unique_consecutiveto replace the temporary unique in most recent nightly PyTorch (#209)
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.4
- Rewrite AEVComputer to improve performance and reduce memory usage (#197)
Note that this release use a very new PyTorch operator torch.repeat_interleave and a very new temporary API torch._unique_dim2_temporary_will_remove_soon. Please make sure you update your nightly PyTorch before updating TorchANI. New version of TorchANI will be released when torch._unique_dim2_temporary_will_remove_soon is removed to make sure TorchANI always work with latest nightly PyTorch.
- Python
Published by zasdfgbnm almost 7 years ago
torchani - TorchANI 0.3.1
- Inference on Python 2.7 (#171 , #172)
- Python
Published by zasdfgbnm about 7 years ago
torchani - TorchANI 0.3
- Added ANI-1ccx model. (https://github.com/aiqm/torchani/pull/167)
- Added model zoo API. (https://github.com/aiqm/torchani/pull/169)
- Python
Published by zasdfgbnm about 7 years ago
torchani - TorchANI 0.2.2
- Fix a bug of ASE interface giving zero forces when box size is 0 (#165)
- Some fixes on Windows (#161)
- Fix docs about installation (#163)
- Python
Published by zasdfgbnm about 7 years ago
torchani - TorchANI 0.2.1
Basically same as 0.2 Use bdist to deploy to PYPI to reduce package size
- Python
Published by zasdfgbnm about 7 years ago
torchani - TorchANI 0.2
- ASE interface
- YAML constructor for NeuroChem Trainer
- Version tag
torchani.__version__
- Python
Published by zasdfgbnm about 7 years ago
torchani - First release of TorchANI
This is the first release of TorchANI
- Python
Published by zasdfgbnm about 7 years ago