{"id":49178606,"url":"https://github.com/PaccMann/paccmann_generator","last_synced_at":"2026-05-09T07:01:25.383Z","repository":{"id":40976532,"uuid":"219584883","full_name":"PaccMann/paccmann_generator","owner":"PaccMann","description":"Generative models for transcriptomic-driven or protein-driven molecular design (PaccMann^RL).","archived":false,"fork":false,"pushed_at":"2024-05-22T20:36:24.000Z","size":1363,"stargazers_count":11,"open_issues_count":0,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-08-28T11:34:04.370Z","etag":null,"topics":["deep-reinforcement-learning","drug-discovery","generative-model","molecule-generation","vae"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaccMann.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-11-04T19:55:40.000Z","updated_at":"2024-12-21T18:25:24.000Z","dependencies_parsed_at":"2025-04-10T19:12:05.097Z","dependency_job_id":"7f85d652-f670-4a72-aa1c-9ecc41019a53","html_url":"https://github.com/PaccMann/paccmann_generator","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/PaccMann/paccmann_generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Fpaccmann_generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Fpaccmann_generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Fpaccmann_generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Fpaccmann_generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaccMann","download_url":"https://codeload.github.com/PaccMann/paccmann_generator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Fpaccmann_generator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32810381,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-reinforcement-learning","drug-discovery","generative-model","molecule-generation","vae"],"created_at":"2026-04-23T00:00:40.604Z","updated_at":"2026-05-09T07:01:25.355Z","avatar_url":"https://github.com/PaccMann.png","language":"Python","funding_links":[],"categories":["Machine Learning Tasks and Models"],"sub_categories":["Drug Discovery"],"readme":"[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Build status](https://github.com/PaccMann/paccmann_generator/actions/workflows/build.yml/badge.svg)](https://github.com/PaccMann/paccmann_generator/actions/workflows/build.yml)\n# paccmann_generator\n\nMultimodal generative models for PaccMann\u003csup\u003eRL\u003c/sup\u003e.\n\n`paccmann_generator` is a package for conditional molecular design, with examples of molecule generation against gene expression profiles or protein targets.\nFor example, see our papers:\n- [_PaccMann\u003csup\u003eRL\u003c/sup\u003e: De novo generation of hit-like anticancer molecules from transcriptomic data via reinforcement learning_](https://www.cell.com/iscience/fulltext/S2589-0042(21)00237-6) (_iScience_, 2021). In there, we use methods from deep reinforcement learning to bias a molecular generator to produce molecules that exhibit low IC50 against certain cell lines (code in this repo).\n- [Data-driven molecular design for discovery and synthesis of novel ligands: a case study on SARS-CoV-2](https://iopscience.iop.org/article/10.1088/2632-2153/abe808) (_Machine Learning: Science and Technology_, 2021). In there, we use the same principle to bias a molecular generator to produce molecules that have high binding affinity against certain protein targets (code in this repo).\n\n![Graphical abstract](https://github.com/PaccMann/paccmann_generator/blob/master/assets/overview.png \"Graphical abstract\")\n\n\n## Installation\n\nThe library itself has few dependencies (see [setup.py](setup.py)) with loose requirements.\nTo run the example training script we provide environment files under `examples/`.\n\nCreate a conda environment:\n\n```sh\nconda env create -f examples/IC50/conda.yml\n```\n\nActivate the environment:\n\n```sh\nconda activate paccmann_generator\n```\n\nInstall in editable mode for development:\n\n```sh\ngit checkout 0.0.1  # Needed only for IC50 example (for affinity example skip this line)\npip install -e .\n```\n\n## Example usage\n\nIn the `examples/IC50` directory is a training script [train_paccmann_rl.py](./examples/IC50/train_paccmann_rl.py) that makes use of `paccmann_generator`.\n\n```console\n(paccmann_generator) $ python examples/IC50/train_paccmann_rl.py -h\nusage: train_paccmann_rl.py [-h]\n                            mol_model_path omics_model_path ic50_model_path\n                            smiles_language_path omics_data_path params_path\n                            model_name site\n\nPaccMann^RL training script\n\npositional arguments:\n  mol_model_path        Path to chemistry model\n  omics_model_path      Path to omics model\n  ic50_model_path       Path to pretrained ic50 model\n  smiles_language_path  Path to SMILES language object\n  omics_data_path       Omics data path to condition generation\n  params_path           Model params json file directory\n  model_name            Name for the trained model.\n  site                  Name of the cancer site for conditioning.\n\noptional arguments:\n  -h, --help            show this help message and exit\n```\n\n`params_filepath` could point to [examples/IC50/example_params.json](examples/IC50/example_params.json), examples for other files can be downloaded from [here](https://ibm.box.com/v/paccmann-pytoda-data).\n\n## References\n\nIf you use `paccmann_generator` in your projects, please cite the following:\n\n```bib\n@article{born2021datadriven,\n  author = {Born, Jannis and Manica, Matteo and Cadow, Joris and Markert, Greta and Mill, Nil Adell and Filipavicius, Modestas and Janakarajan, Nikita and Cardinale, Antonio and Laino, Teodoro and {Rodr{\\'{i}}guez Mart{\\'{i}}nez}, Mar{\\'{i}}a},\n  doi = {10.1088/2632-2153/abe808},\n  issn = {2632-2153},\n  journal = {Machine Learning: Science and Technology},\n  number = {2},\n  pages = {025024},\n  title = {{Data-driven molecular design for discovery and synthesis of novel ligands: a case study on SARS-CoV-2}},\n  url = {https://iopscience.iop.org/article/10.1088/2632-2153/abe808},\n  volume = {2},\n  year = {2021}\n}\n\n@article{born2021paccmannrl,\n  title = {PaccMann\\textsuperscript{RL}: De novo generation of hit-like anticancer molecules from transcriptomic data via reinforcement learning},\n  journal = {iScience},\n  volume = {24},\n  number = {4},\n  pages = {102269},\n  year = {2021},\n  issn = {2589-0042},\n  doi = {https://doi.org/10.1016/j.isci.2021.102269},\n  url = {https://www.cell.com/iscience/fulltext/S2589-0042(21)00237-6},\n  author = {Born, Jannis and Manica, Matteo and Oskooei, Ali and Cadow, Joris and Markert, Greta and {Rodr{\\'{i}}guez Mart{\\'{i}}nez}, Mar{\\'{i}}a}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPaccMann%2Fpaccmann_generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPaccMann%2Fpaccmann_generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPaccMann%2Fpaccmann_generator/lists"}