• 06 86 77 49 27
  • pascal.krezel@gmail.com

Rétrosynthèse – Analyse

Explication sur la mise en oeuvre de la rétrosynthèse.

Le 14/01/26

Ce service a été obtenu en réalisant la mise en ligne des scripts de AiZynthFinder déposés sur Github (lien). Ces scripts ont été rendus accessibles et simples d’utilisation suite à une interfaçage avec des web services.
A terme, ce service sera intégré à la plateforme EMOLGINE développée par SCARTEK.

La mise en oeuvre de ce service sous SCARTEK :

Pour conteneuriser cette application, il a fallu modifier les modules à charger en version 3.11 de python. Le module onnxruntime à dû être réactualisé de la version 1.16.3 à la version 1.23.2 car il posait des problèmes de chargement .

Détails de l’erreur

(.scartek) (base) ystroppa@Precision-7920-LLL:~/spgoo/fastAPI$ docker logs 5b9c349b42a3
Traceback (most recent call last):
  File "/app/main.py", line 12, in <module>
    from aizynthYS import aizynthfinder_router
  File "/app/aizynthYS.py", line 11, in <module>
    from aizynthfinder.interfaces.aizynthcliYS import main_scartek
  File "/app/aizynthfinder/interfaces/__init__.py", line 4, in <module>
    from aizynthfinder.interfaces.aizynthapp import AiZynthApp  # noqa
  File "/app/aizynthfinder/interfaces/aizynthapp.py", line 29, in <module>
    from aizynthfinder.aizynthfinder import AiZynthFinder
  File "/app/aizynthfinder/aizynthfinder.py", line 17, in <module>
    from aizynthfinder.context.config import Configuration
  File "/app/aizynthfinder/context/config.py", line 12, in <module>
    from aizynthfinder.context.policy import ExpansionPolicy, FilterPolicy
  File "/app/aizynthfinder/context/policy/__init__.py", line 4, in <module>
    from aizynthfinder.context.policy.expansion_strategies import (
  File "/app/aizynthfinder/context/policy/expansion_strategies.py", line 16, in <module>
    from aizynthfinder.utils.models import load_model
  File "/app/aizynthfinder/utils/models.py", line 11, in <module>
    import onnxruntime
  File "/usr/local/lib/python3.10/site-packages/onnxruntime/__init__.py", line 56, in <module>
    raise import_capi_exception
  File "/usr/local/lib/python3.10/site-packages/onnxruntime/__init__.py", line 23, in <module>
    from onnxruntime.capi._pybind_state import ExecutionMode  # noqa: F401
  File "/usr/local/lib/python3.10/site-packages/onnxruntime/capi/_pybind_state.py", line 32, in <module>
    from .onnxruntime_pybind11_state import *  # noqa
ImportError: /usr/local/lib/python3.10/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-310-x86_64-linux-gnu.so: cannot enable executable stack as shared object requires: Invalid argument

De plus le code initial aizynthcli.py a été adapté pour permettre de séparer l’exécution de la rétrosynthèse du chargement du modèle IA et des base de données . Ainsi le chargement s’effectue une seule fois et les rétrosynthèses sont ainsi plus rapides.

06/02/2026

Evolution de la solution : l’objectif affiché est de constituer un savoir faire dans la rétro-synthèse en s’appuyant sur AIZFFinder ce qui consiste à apporter des explications et commentaires sur les différentes solutions de rétrosynthèses trouvées. L’interface web a évolué dans ce sens pour permettre l’enrichissement et l’ajout de commentaires des rétrosynthèse par des experts su domaine.

Deux profils d’utilisateur sont définis, utilisateur expert qui pourra définir et expliquer les rétrosynthèses et l’utilisateur tout public qui pourra les consulter.

Accès expert :

Accés tout public : édition