11.08.2024 Wir freuen uns, eine neue Funktion, Ligandenenergieminimierung, ankündigen zu können, die jetzt in unserer neuesten Version verfügbar ist. Entdecken Sie außerdem unser neues Tool, Druggpt_min_multi.py, das speziell für die effiziente Energieminimierung mehrerer Liganden entwickelt wurde.
30.07.2024 Alle Nasslaborvalidierungen wurden abgeschlossen und bestätigen, dass DrugGPT über Fähigkeiten zur Ligandenoptimierung verfügt.
16.05.2024 Nasslaborexperimente bestätigen die Fähigkeit von Druggpt, Liganden mit neuen Gerüsten von Grund auf zu entwerfen und vorhandene Liganden wiederzuverwenden. Die Ligandenoptimierung wird noch evaluiert. Bleiben Sie dran für weitere Updates!
16.05.2024 Die Version wurde auf Druggpt_v1.2 aktualisiert und verfügt über neue Funktionen zur Kontrolle der Atomanzahl. Aufgrund von Kompatibilitätsproblemen wurde die Webui entfernt.
03.04.2024 Version wurde auf Druggpt_v1.1 aktualisiert, um die Stabilität zu verbessern und eine Web-Benutzeroberfläche hinzuzufügen. Zukünftige Versionen werden eine Kontrolle der Atomanzahl in Molekülen ermöglichen. Bleiben Sie dran.
31.03.2024 Nach sorgfältiger Überlegung plane ich, neue Repositorys mit den Namen Druggpt_toolbox und Druggpt_train zu erstellen, um Nachbearbeitungstool-Skripte bzw. Trainingsskripte zu speichern. Dieses Repositorium sollte sich in erster Linie auf die Generierung von Arzneimittelkandidatenmolekülen konzentrieren.
31.03.2024 Ich habe beschlossen, einen Zweig namens Druggpt_v1.0 für die aktuelle Version zu erstellen, da es sich um eine stabile Version handelt. Anschließend werde ich den Code weiter aktualisieren.
18.01.2024 Dieses Projekt wird derzeit experimentell evaluiert, um seinen tatsächlichen Wert in der Arzneimittelforschung zu bestätigen. Bitte folgen Sie uns weiterhin!
DrugGPT stellt eine Ligandendesignstrategie vor, die auf dem autoregressiven Modell GPT basiert und sich auf die Erforschung des chemischen Weltraums und die Entdeckung von Liganden für bestimmte Proteine konzentriert. Deep-Learning-Sprachmodelle haben in verschiedenen Bereichen, einschließlich Proteindesign und biomedizinischer Textanalyse, erhebliches Potenzial gezeigt und bieten starke Unterstützung für den Vorschlag von DrugGPT.
In dieser Studie verwenden wir das DrugGPT-Modell, um eine beträchtliche Menge an Protein-Ligand-Bindungsdaten zu erlernen, mit dem Ziel, neue Moleküle zu entdecken, die an spezifische Proteine binden können. Diese Strategie verbessert nicht nur die Effizienz des Ligandendesigns erheblich, sondern bietet auch einen schnellen und effektiven Weg für den Arzneimittelentwicklungsprozess und eröffnet neue Möglichkeiten für den pharmazeutischen Bereich
git clone https://github.com/LIYUESEN/druggpt.git
cd druggpt
Oder Sie können einfach auf Code>ZIP herunterladen klicken, um dieses Repo herunterzuladen.
conda create -n druggpt python=3.7
conda activate druggpt
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
pip install datasets transformers scipy scikit-learn psutil
conda install conda-forge/label/cf202003::openbabel
Verwenden Sie Drug_generator.py
Erforderliche Parameter:
-p
| --pro_seq
: Geben Sie eine Protein-Aminosäuresequenz ein.
-f
| --fasta
: Geben Sie eine FASTA-Datei ein.
Es sollte nur eines von -p und -f angegeben werden.
-l
| --ligand_prompt
: Geben Sie eine Liganden-Eingabeaufforderung ein.
-e
| --empty_input
: Direktgenerierungsmodus aktivieren.
-n
| --number
: Mindestens wie viele Moleküle erzeugt werden.
-d
| --device
: Zu verwendendes Hardwaregerät. Der Standardwert ist „cuda“.
-o
| --output
: Ausgabeverzeichnis für generierte Moleküle. Der Standardwert ist „./ligand_output/“.
-b
| --batch_size
: Wie viele Moleküle pro Batch generiert werden. Versuchen Sie, diesen Wert zu reduzieren, wenn Sie wenig RAM haben. Der Standardwert ist 16.
-t
| --temperature
: Passt die Zufälligkeit der Textgenerierung an; Höhere Werte führen zu vielfältigeren Ergebnissen. Der Standardwert ist 1,0.
--top_k
: Die Anzahl der Token mit der höchsten Wahrscheinlichkeit, die für die Top-k-Stichprobe berücksichtigt werden sollen. Standardmäßig ist 9.
--top_p
: Der kumulative Wahrscheinlichkeitsschwellenwert (0,0–1,0) für die Top-p-(Kern-)Probenahme. Es definiert die minimale Teilmenge von Token, die für die Zufallsstichprobe berücksichtigt werden sollen. Der Standardwert ist 0,9.
--min_atoms
: Mindestanzahl an Nicht-H-Atomen, die für die Erzeugung zulässig sind. Der Standardwert ist „Keine“.
--max_atoms
: Maximale Anzahl an Nicht-H-Atomen, die zur Erzeugung zugelassen sind. Der Standardwert ist 35.
--no_limit
: Deaktiviert die standardmäßige maximale Atomgrenze.
Wenn das
-l
| Wenn die Option--ligand_prompt
verwendet wird, werden die Parameter--max_atoms
und--min_atoms
ignoriert.
Wenn Sie eine Protein-FASTA-Datei eingeben möchten
python drug_generator.py -f bcl2.fasta -n 50
Wenn Sie die Aminosäuresequenz des Proteins eingeben möchten
python drug_generator.py -p MAKQPSDVSSECDREGRQLQPAERPPQLRPGAPTSLQTEPQGNPEGNHGGEGDSCPHGSPQGPLAPPASPGPFATRSPLFIFMRRSSLLSRSSSGYFSFDTDRSPAPMSCDKSTQTPSPPCQAFNHYLSAMASMRQAEPADMRPEIWIAQELRRIGDEFNAYYARRVFLNNYQAAEDHPRMVILRLLRYIVRLVWRMH -n 50
Wenn Sie eine Eingabeaufforderung für den Liganden bereitstellen möchten
python drug_generator.py -f bcl2.fasta -l COc1ccc(cc1)C(=O) -n 50
Hinweis: Wenn Sie in einer Linux-Umgebung arbeiten, müssen Sie die Eingabeaufforderung des Liganden in einfache Anführungszeichen ('') setzen.
python drug_generator.py -f bcl2.fasta -l ' COc1ccc(cc1)C(=O) ' -n 50
DrugGPT: Eine GPT-basierte Strategie zur Entwicklung potenzieller Liganden, die auf bestimmte Proteine abzielen
Yuesen Li, Chengyi Gao, Xin Song, Xiangyu Wang, Yungang Xu, Suxia Han
bioRxiv 2023.06.29.543848; doi: https://doi.org/10.1101/2023.06.29.543848
GNU General Public License v3.0