├── .flake8 ├── .gitignore ├── .mypy.ini ├── .pre-commit-config.yaml ├── LICENSE ├── README.md ├── configs ├── dev_deconly_diffusion_tfmer.yml └── dev_smiles_diffusion.yml ├── data ├── .gitignore ├── building_blocks │ ├── .gitignore │ └── README.md ├── chembl_filtered_1k.txt ├── enamine_smiles_1k.txt ├── rxn_templates │ └── comprehensive.txt └── trained_weights │ └── .gitignore ├── env.yml ├── experiments ├── crossover.py ├── decode.py ├── graphga_opt.py ├── graphga_sf_opt.py └── mutate.py ├── pyproject.toml ├── requirements.txt ├── scripts ├── decoder_inference.py ├── molopt.py ├── preprocess.py ├── sample.py ├── sample_naive.py ├── train.py └── unarchive_wizard.py ├── setup.py └── synformer ├── __init__.py ├── chem ├── __init__.py ├── base.py ├── featurize.py ├── fpindex.py ├── matrix.py ├── mol.py ├── reaction.py ├── smiles_vocab.txt └── stack.py ├── data ├── __init__.py ├── collate.py ├── common.py └── projection_dataset_new.py ├── models ├── __init__.py ├── classifier_head.py ├── decoder.py ├── diffusion.py ├── encoder │ ├── __init__.py │ ├── base.py │ ├── graph.py │ └── smiles.py ├── fingerprint_head │ ├── __init__.py │ ├── ar.py │ ├── base.py │ ├── diffusion.py │ └── multi.py ├── synformer.py ├── transformer │ ├── __init__.py │ ├── gradient_checkpointing.py │ ├── graph_transformer.py │ ├── positional_encoding.py │ └── rotary_embedding.py └── wrapper.py ├── molopt ├── __init__.py ├── __main__.py ├── model.py ├── oracle.py └── replay.py ├── sampler ├── __init__.py └── analog │ ├── __init__.py │ ├── cli.py │ ├── parallel.py │ └── state_pool.py └── utils ├── __init__.py ├── crypt.py ├── image.py ├── misc.py ├── tqdm_joblib.py ├── train.py └── vc.py /.flake8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/.flake8 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/.gitignore -------------------------------------------------------------------------------- /.mypy.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/.mypy.ini -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/README.md -------------------------------------------------------------------------------- /configs/dev_deconly_diffusion_tfmer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/configs/dev_deconly_diffusion_tfmer.yml -------------------------------------------------------------------------------- /configs/dev_smiles_diffusion.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/configs/dev_smiles_diffusion.yml -------------------------------------------------------------------------------- /data/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/data/.gitignore -------------------------------------------------------------------------------- /data/building_blocks/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | !README.md 4 | -------------------------------------------------------------------------------- /data/building_blocks/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/data/building_blocks/README.md -------------------------------------------------------------------------------- /data/chembl_filtered_1k.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/data/chembl_filtered_1k.txt -------------------------------------------------------------------------------- /data/enamine_smiles_1k.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/data/enamine_smiles_1k.txt -------------------------------------------------------------------------------- /data/rxn_templates/comprehensive.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/data/rxn_templates/comprehensive.txt -------------------------------------------------------------------------------- /data/trained_weights/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /env.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/env.yml -------------------------------------------------------------------------------- /experiments/crossover.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/experiments/crossover.py -------------------------------------------------------------------------------- /experiments/decode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/experiments/decode.py -------------------------------------------------------------------------------- /experiments/graphga_opt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/experiments/graphga_opt.py -------------------------------------------------------------------------------- /experiments/graphga_sf_opt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/experiments/graphga_sf_opt.py -------------------------------------------------------------------------------- /experiments/mutate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/experiments/mutate.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/decoder_inference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/decoder_inference.py -------------------------------------------------------------------------------- /scripts/molopt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/molopt.py -------------------------------------------------------------------------------- /scripts/preprocess.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/preprocess.py -------------------------------------------------------------------------------- /scripts/sample.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/sample.py -------------------------------------------------------------------------------- /scripts/sample_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/sample_naive.py -------------------------------------------------------------------------------- /scripts/train.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/train.py -------------------------------------------------------------------------------- /scripts/unarchive_wizard.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/scripts/unarchive_wizard.py -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/setup.py -------------------------------------------------------------------------------- /synformer/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "0.1.3" 2 | -------------------------------------------------------------------------------- /synformer/chem/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/__init__.py -------------------------------------------------------------------------------- /synformer/chem/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/base.py -------------------------------------------------------------------------------- /synformer/chem/featurize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/featurize.py -------------------------------------------------------------------------------- /synformer/chem/fpindex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/fpindex.py -------------------------------------------------------------------------------- /synformer/chem/matrix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/matrix.py -------------------------------------------------------------------------------- /synformer/chem/mol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/mol.py -------------------------------------------------------------------------------- /synformer/chem/reaction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/reaction.py -------------------------------------------------------------------------------- /synformer/chem/smiles_vocab.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/smiles_vocab.txt -------------------------------------------------------------------------------- /synformer/chem/stack.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/chem/stack.py -------------------------------------------------------------------------------- /synformer/data/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/data/collate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/data/collate.py -------------------------------------------------------------------------------- /synformer/data/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/data/common.py -------------------------------------------------------------------------------- /synformer/data/projection_dataset_new.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/data/projection_dataset_new.py -------------------------------------------------------------------------------- /synformer/models/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/models/classifier_head.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/classifier_head.py -------------------------------------------------------------------------------- /synformer/models/decoder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/decoder.py -------------------------------------------------------------------------------- /synformer/models/diffusion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/diffusion.py -------------------------------------------------------------------------------- /synformer/models/encoder/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/encoder/__init__.py -------------------------------------------------------------------------------- /synformer/models/encoder/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/encoder/base.py -------------------------------------------------------------------------------- /synformer/models/encoder/graph.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/encoder/graph.py -------------------------------------------------------------------------------- /synformer/models/encoder/smiles.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/encoder/smiles.py -------------------------------------------------------------------------------- /synformer/models/fingerprint_head/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/fingerprint_head/__init__.py -------------------------------------------------------------------------------- /synformer/models/fingerprint_head/ar.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/fingerprint_head/ar.py -------------------------------------------------------------------------------- /synformer/models/fingerprint_head/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/fingerprint_head/base.py -------------------------------------------------------------------------------- /synformer/models/fingerprint_head/diffusion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/fingerprint_head/diffusion.py -------------------------------------------------------------------------------- /synformer/models/fingerprint_head/multi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/fingerprint_head/multi.py -------------------------------------------------------------------------------- /synformer/models/synformer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/synformer.py -------------------------------------------------------------------------------- /synformer/models/transformer/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/models/transformer/gradient_checkpointing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/transformer/gradient_checkpointing.py -------------------------------------------------------------------------------- /synformer/models/transformer/graph_transformer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/transformer/graph_transformer.py -------------------------------------------------------------------------------- /synformer/models/transformer/positional_encoding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/transformer/positional_encoding.py -------------------------------------------------------------------------------- /synformer/models/transformer/rotary_embedding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/transformer/rotary_embedding.py -------------------------------------------------------------------------------- /synformer/models/wrapper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/models/wrapper.py -------------------------------------------------------------------------------- /synformer/molopt/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/molopt/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/molopt/__main__.py -------------------------------------------------------------------------------- /synformer/molopt/model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/molopt/model.py -------------------------------------------------------------------------------- /synformer/molopt/oracle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/molopt/oracle.py -------------------------------------------------------------------------------- /synformer/molopt/replay.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/molopt/replay.py -------------------------------------------------------------------------------- /synformer/sampler/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/sampler/analog/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/sampler/analog/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/sampler/analog/cli.py -------------------------------------------------------------------------------- /synformer/sampler/analog/parallel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/sampler/analog/parallel.py -------------------------------------------------------------------------------- /synformer/sampler/analog/state_pool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/sampler/analog/state_pool.py -------------------------------------------------------------------------------- /synformer/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /synformer/utils/crypt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/crypt.py -------------------------------------------------------------------------------- /synformer/utils/image.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/image.py -------------------------------------------------------------------------------- /synformer/utils/misc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/misc.py -------------------------------------------------------------------------------- /synformer/utils/tqdm_joblib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/tqdm_joblib.py -------------------------------------------------------------------------------- /synformer/utils/train.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/train.py -------------------------------------------------------------------------------- /synformer/utils/vc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenhao-gao/synformer/HEAD/synformer/utils/vc.py --------------------------------------------------------------------------------