Skip to content

Commit c3d97b0

Browse files
author
Löffler, Hannes
committed
sync with internal AZ verion 4.5.11
1 parent f814377 commit c3d97b0

134 files changed

Lines changed: 2663 additions & 737 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# example dotenv file
22

33
# make the scoring components in contrib/ available
4-
PYTHONPATH=/location/to/REINVENT4/contrib
4+
#PYTHONPATH=/location/to/REINVENT4/contrib

.gitattributes

Lines changed: 0 additions & 2 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 209 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,214 @@ This follows the guideline on [keep a changelog](https://keepachangelog.com/)
1010
- CAZP scoring component
1111

1212

13+
## [4.5.11] 2024-11-18
14+
15+
### Changed
16+
17+
- Convert float nan and infs to valid json format before remote reporting
18+
19+
20+
## [4.5.10] 2024-11-16
21+
22+
### Added
23+
24+
- optional tautomer canonicalisation in data pipeline
25+
26+
27+
## [4.5.9] 2024-11-07
28+
29+
### Fixed
30+
31+
- read configuration file from stdin
32+
33+
34+
## [4.5.8] 2024-11-07
35+
36+
### Changed
37+
38+
- refactor of top level code
39+
40+
41+
## [4.5.7] 2024-11-07
42+
43+
### Fixed
44+
45+
- check if DF is set
46+
47+
48+
## [4.5.6] 2024-11-05
49+
50+
### Added
51+
52+
- YAML configuration file reader
53+
54+
55+
## [4.5.5] 2024-11-05
56+
57+
### Added
58+
59+
- Logging of configuration file absolute path
60+
61+
### Changed
62+
63+
- Automatic configuration file format detection
64+
65+
66+
## [4.5.4] 2024-10-28
67+
68+
### Added
69+
70+
- Exponential decay transform
71+
72+
### Fixed
73+
74+
- Ambiguity in parsing optional parameters with multiple endpoints and multiple optional parameters
75+
76+
77+
## [4.5.3] 2024-10-23
78+
79+
### Added
80+
81+
- component-level parameters for scoring components
82+
83+
84+
## [4.5.2] 2024-10-23
85+
86+
### Added
87+
88+
- executable module: can run `python -m reinvent`
89+
90+
91+
## [4.5.1] 2024-10-23
92+
93+
### Added
94+
95+
- SIGUSR1 for controlled termination
96+
97+
98+
## [4.5.0] 2024-10-08
99+
100+
### Added
101+
102+
- PepInvent in Sampling and Staged learning mode with example toml config provided
103+
- PepInvent prior
104+
105+
106+
## [4.4.37] 2024-10-07
107+
108+
### Fixed
109+
110+
- Atom map number removal for Libinvent sampling dropped SMILES
111+
112+
113+
## [4.4.36] 2024-09-27
114+
115+
### Added
116+
117+
- Stage number for JSON to remote monitor
118+
119+
### Changed
120+
121+
- Relaxed dependencies
122+
123+
124+
## [4.4.35] 2024-09-26
125+
126+
### Added
127+
128+
- Terminate staged learning on SIGTERM and check if running in multiprocessing environment
129+
130+
### Changed
131+
132+
- ValueError for all scoring components such that the staged learning handler can handle failing components
133+
134+
135+
## [4.4.34] 2024-09-16
136+
137+
### Fixed
138+
139+
- SMILES in DF memory were wrongly computed
140+
141+
142+
## [4.4.33] 2024-09-14
143+
144+
### Fixed
145+
146+
- run-qsartuna.py: convert ndarray to list to make it JSON serializble
147+
148+
149+
## [4.4.32] 2024-09-13
150+
151+
### Fixed
152+
153+
- PMI component: check for embedding failure in RDKit's conformer generator
154+
155+
156+
## [4.4.31] 2024-09-13
157+
158+
### Fixed
159+
160+
- Dockstream component wrongly quoted the SMILES string
161+
- Diversity filter setup in config was ignored
162+
163+
164+
## [4.4.30] 2024-09-12
165+
166+
### Fixed
167+
168+
- Fixed config reading bug for DF
169+
170+
171+
## [4.4.29] 2024-09-05
172+
173+
### Changed
174+
175+
- Changed Molformer sampling valid and unique from percentage to fraction on tensorboard
176+
177+
178+
## [4.4.28] 2024-08-29
179+
180+
### Fixed
181+
182+
- Fixed incorrect tanimoto similarity log in Mol2Mol sampling mode
183+
184+
185+
## [4.4.27] 2024-07-23
186+
187+
### Fixed
188+
189+
- Corrected typo in Libinvent report
190+
191+
192+
## [4.4.26] 2024-07-21
193+
194+
### Fixed
195+
196+
- Report for sampling returned np.array which is incompatibile with JSON serialization
197+
198+
199+
## [4.4.25] 2024-07-19
200+
201+
### Fixed
202+
203+
- Allowed responder as an optional input in scoring input validation
204+
205+
206+
## [4.4.24] 2024-07-19
207+
208+
### Fixed
209+
210+
- Fixed remote for Libinvent
211+
- Batchsize defaults to 1 for TL
212+
213+
214+
## [4.4.23] 2024-07-18
215+
216+
### Fixed
217+
218+
- Added temperature parameter in Sampling and RL config validation
219+
220+
13221
## [4.4.22] 2024-07-10
14222

15223
### Fixed
@@ -314,7 +522,7 @@ Various code improvements.
314522

315523
### Added
316524

317-
- Stages can now defined their own diversity filters. Global filter always overwrites stage settings. Currently no mechanism to carry over DF from previous stage, use single stage runs.
525+
- Stages can now define their own diversity filters. Global filter always overwrites stage settings. Currently no mechanism to carry over DF from previous stage, use single stage runs.
318526

319527

320528
## [4.3.11] 2024-04-30

NEWS.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,23 @@
1+
New in REINVENT 4.5
2+
===================
3+
4+
For details see CHANGELOG.md.
5+
6+
* PepINVENT: transformer (SMILES) based peptide generator and prior model
7+
* Temperature factor parameter (transformer generators) for sampling and RL
8+
* Support script run-qsartuna.py to play QSARtuna models in external environment
9+
* Component-level parameters for scoring components
10+
* Renamed Qptuna scoring component to [QSARtuna](https://github.com/MolecularAI/QSARtuna)
11+
* Staged learning terminates on SIGTERM (Ctrl-C) and writes out checkpoint file
12+
* SIGUSR1 for graceful termination of staged learning runs
13+
* Relaxed dependencies to accomodate install of other software in same environment e.g. QSARtuna
14+
* Updated some dependencies e.g. PyTorch (now at version 2.4.1)
15+
* New notebook in contrib demoing docking with DockStream and OpenEye
16+
* YAML configuration file reader
17+
* Configuration file format is automatically detected from filename extension
18+
* Various code improvements and fixes
19+
20+
121
New in REINVENT 4.4
222
===================
323

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,9 @@ Unit and Integration Tests
146146
--------------------------
147147
148148
This is primarily for developers and admins/users who wish to ensure that the
149-
installation works. The information here is not relevant to the
150-
practical use of REINVENT. Please refer to _Basic Usage_ for instructions on
151-
how to use the `reinvent` command.
149+
installation works. The information here is not relevant to the practical use
150+
of REINVENT. Please refer to _Basic Usage_ for instructions on how to use the
151+
`reinvent` command.
152152
153153
The REINVENT project uses the `pytest` framework for its tests. Before you run
154154
them you first have to create a configuration file for the tests.

configs/json/scoring.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
{
22
"run_type": "scoring",
3-
"output_csv": "scoring.csv",
43
"json_out_config": "_scoring.json",
54
"parameters": {
6-
"smiles_file": "compounds.smi"
5+
"smiles_file": "compounds.smi",
6+
"output_csv": "scoring.csv"
77
},
88
"scoring": {
99
"type": "geometric_mean",

configs/toml/pepinvent.smi

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Example peptide file for REINVENT4 PepInvent
2+
#
3+
# One masked peptide with CHUCKLES representation per line
4+
# ? for mask
5+
6+
?|N[C@@H](CO)C(=O)|?|N[C@@H](Cc1ccc(O)cc1)C(=O)|N(C)[C@@H]([C@@H](C)O)C(=O)|N[C@H](Cc1c[nH]cn1)C(=O)|N[C@@H](CC(=O)N)C2(=O)

configs/toml/sampling.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@ model_file = "priors/reinvent.prior"
3030
#temperature = 1.0 # temperature in multinomial sampling
3131
#tb_logdir = "tb_logs" # name of the TensorBoard logging directory
3232

33+
## Pepinvent
34+
#model_file = "priors/pepinvent.prior"
35+
#smiles_file = "pepinvent.smi"
36+
#sample_strategy = "beamsearch" # multinomial or beamsearch (deterministic)
37+
#temperature = 1.0 # temperature in multinomial sampling
38+
#tb_logdir = "tb_logs" # name of the TensorBoard logging directory
39+
3340
output_file = 'sampling.csv' # sampled SMILES and NLL in CSV format
3441

3542
num_smiles = 157 # number of SMILES to be sampled, 1 per input SMILES

configs/toml/staged_learning.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,13 @@ agent_file = "priors/reinvent.prior"
4545
#sample_strategy = "multinomial" # multinomial or beamsearch (deterministic)
4646
#distance_threshold = 100
4747

48+
## Pepinvent
49+
#prior_file = "priors/pepinvent.prior"
50+
#agent_file = "priors/pepinvent.prior"
51+
#smiles_file = "pepinvent.smi"
52+
#sample_strategy = "multinomial" # multinomial or beamsearch (deterministic)
53+
#distance_threshold = 100
54+
4855
batch_size = 64 # network
4956

5057
unique_sequences = true # if true remove all duplicates raw sequences in each step

contrib/tests/reinvent_plugins/unit_tests/components/test_comp_unwanted_substructures.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
import numpy as np
44

5-
from reinvent_plugins.components.comp_unwanted_substructures import Parameters
6-
from reinvent_plugins.components.comp_unwanted_substructures import UnwantedSubstructures
5+
from reinvent_plugins.components.RDKit_extra.comp_unwanted_substructures import Parameters
6+
from reinvent_plugins.components.RDKit_extra.comp_unwanted_substructures import UnwantedSubstructures
77

88
SMILIES = [
99
"CC1=C(C=C(C=C1)N2C(=O)C(=C(N2)C)N=NC3=CC=CC(=C3O)C4=CC(=CC=C4)C(=O)O)C", # Eltrombopag

0 commit comments

Comments
 (0)