Input and Results

class RetrosynthesisParameters(max_depth=None, max_nb_iterations=None, early_stopping_score=None, early_stopping_timeout=None, intermediate_smiles=None, cc_providers=None, cc_max_price_per_g=None, cc_max_delivery_days=None, cc_catalog=None, cc_extra_compounds_smiles=None, remove_chirality=None, name_reactions_only=None, name_reactions_exclude=None, name_reactions_at_least=None)

Parameters for a retrosynthesis

Parameters
  • max_depth (Optional[int]) – Maximum route depth

  • max_nb_iterations (Optional[int]) – Maximum number of steps

  • early_stopping_score (Optional[float]) – Score threshold to stop the retrosynthesis of a SMILES

  • early_stopping_timeout (Optional[float]) – Timeout to stop the retrosynthesis of a SMILES in minutes

  • intermediate_smiles (Optional[List[str]]) – Desired intermediate products (as a list of SMILES). This will force our models to only find routes which have at least one of these molecules as an intermediate product. This helps guide the process through reactions or molecules you already own or have expertise with for example.

  • cc_providers (Optional[List[str]]) – List of desired commercial compounds providers. An empty list select them all

  • cc_max_price_per_g (Optional[float]) – Maximum price per gramme for a commercial compound

  • cc_max_delivery_days (Optional[int]) – Maximum delivery time in day. A null value select them all

  • cc_catalog (Optional[List[iktos.spaya.model.Catalog]]) – Select the type of compounds (building block or screening). A null value select them all

  • cc_extra_compounds_smiles (Optional[List[str]]) – A list of smiles to add as commercial compounds

  • remove_chirality (Optional[bool]) – When True, remove the chirality from all inputs

  • name_reactions_only (Optional[List[str]]) – List of allowed name reactions

  • name_reactions_exclude (Optional[List[str]]) – List of excluded name reactions

  • name_reactions_at_least (Optional[List[str]]) – List of mandatory name reactions

equal_no_timing(other)
Parameters

other (iktos.spaya.model.RetrosynthesisParameters) – other parameters to compare with

Returns

True if all parameters others than timing restriction are equal

Return type

bool

to_dict()
Returns

A dictionary for serialization

Return type

Dict

class StatusCode(value)

SMILES retrosynthesis status

DONE = 'DONE'

The SMILES is finished

ERROR = 'ERROR'

Something went wrong

INVALID_SMILES = 'INVALID SMILES'

The SMILES is not valid

KILLED = 'KILLED'

The retrosynthesis was stopped for maintenance

NOT_SENT = 'NOT_SENT'

The SMILES is still not sent to spaya

QUEUE_FULL = 'QUEUE_FULL'

Too many SMILES are waiting in queue

QUOTA_EXCEEDED = 'QUOTA_EXCEEDED'

Your retrosynthesis quota has been exceeded

RUNNING = 'RUNNING'

The SMILES is being processed

SUBMITTED = 'SUBMITTED'

The SMILES is in queue

property can_be_retried
Returns

True if a SMILES is finished but can be submited again

Return type

bool

property is_finished
Returns

True if a SMILES is no longer being processed by the algorithm

Return type

bool

property need_retry
Returns

True if a SMILES is not started and must be submited again

Return type

bool

class RetrosynthesisResult

Retrosynthesis output

Return type

None

from_dict(obj)

Update this object with new information

Parameters

obj (Dict[str, Any]) – New information

Return type

RetrosynthesisResult

property is_finished

Check the retrosynthesis status

Returns

True if this result is final

Return type

bool

nb_steps

The number of steps counts the depth of the tree which corresponds to the longest linear sequence of the considered route. The number of steps is returned only when a retrosynthesis is DONE with one or more routes

progress

SMILES retrosynthesis progress (as percentage)

rscore

The RScore is a metric provided by the Spaya algorithms, related to the probability of a disconnection and consequently to the confidence the algorithm has on this disconnection/route. The RScore is returned only when a retrosynthesis is DONE with one or more routes

status

SMILES retrosynthesis status

class Status(queue_size=None)

Current Spaya API status

Parameters

queue_size (Optional[int]) – number of job waiting to be processed

Return type

None

from_dict(data)

Complete this status with new value

Parameters

data (Dict[str, Any]) – a dictionnary to be parsed

Returns

The current object

Return type

Status

class Route

A route computed by Spaya

Return type

None

from_dict(data)

Complete this status with new value

Parameters

data (Dict[str, Any]) – a dictionnary to be parsed

Returns

The current object

Return type

Route

nb_steps

The number of steps counts the depth of the tree which corresponds to the longest linear sequence of the considered route.

root_smiles()
Returns

The root of the tree, the first SMILES in the tree

Return type

Optional[str]

rscore

The RScore is a metric provided by the Spaya algorithms, related to the probability of a disconnection and consequently to the confidence the algorithm has on this disconnection/route.

tree

The route for a SMILES

tree_leaf()
Returns

All the leaf of this Route

Return type

List[str]

class CommercialCompound

A route computed by Spaya

Return type

None

cas

CAS number for this compound

catalog

The type of compounds (building block / screening / virtual).

chemical_name

Name of the chemical

delivery_date_max_day

Maximum delivery time in day

delivery_date_min_day

Minimum delivery time in day

description

Extra informations from the provider

from_dict(data)

Complete this status with new value

Parameters

data (Dict[str, Any]) – a dictionnary to be parsed

Returns

The current object

Return type

CommercialCompound

packaging_g

Size of the packaging in gramme

price_per_g

Price per gramme

provider

Name of the provider

purity

Purity of the compounds

reference

Literature reference

smiles

The molecule represented as a SMILES.

url

Link to get the compounds