or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/rdkit@2024.9.x
tile.json

tessl/pypi-rdkit

tessl install tessl/pypi-rdkit@2024.9.0

Platform wheels for RDKit - a comprehensive cheminformatics and machine-learning library with Python bindings

Agent Success

Agent success rate when using this tile

89%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.01x

Baseline

Agent success rate without this tile

88%

task.mdevals/scenario-4/

Molecular Similarity Analyzer

A Python tool that compares molecular structures and identifies similar compounds using chemical fingerprinting.

Capabilities

Input Validation

  • Raises a ValueError when given an empty list of molecules @test
  • Raises a ValueError when given an invalid SMILES string @test

Similarity Comparison

  • Computes pairwise similarity between two molecules from their SMILES representations @test
  • Returns a similarity score between 0.0 and 1.0 for identical molecules returning 1.0 @test
  • Returns a similarity score between 0.0 and 1.0 for completely different molecules returning a value less than 0.5 @test

Finding Similar Compounds

  • Given a query molecule and a list of candidate molecules, identifies all candidates above a specified similarity threshold @test
  • Returns results sorted by similarity score in descending order @test
  • Handles a threshold of 1.0 by returning only exact matches @test

Implementation

@generates

API

def compute_similarity(smiles1: str, smiles2: str) -> float:
    """
    Compute the similarity between two molecules represented as SMILES strings.

    Args:
        smiles1: SMILES string of the first molecule
        smiles2: SMILES string of the second molecule

    Returns:
        A similarity score between 0.0 (completely different) and 1.0 (identical)

    Raises:
        ValueError: If either SMILES string is invalid
    """
    pass


def find_similar_molecules(query_smiles: str, candidate_smiles: list[str], threshold: float = 0.7) -> list[tuple[str, float]]:
    """
    Find molecules similar to a query molecule from a list of candidates.

    Args:
        query_smiles: SMILES string of the query molecule
        candidate_smiles: List of SMILES strings representing candidate molecules
        threshold: Minimum similarity score (0.0 to 1.0) for a match (default: 0.7)

    Returns:
        List of tuples (smiles, similarity_score) for candidates above threshold,
        sorted by similarity score in descending order

    Raises:
        ValueError: If the query SMILES is invalid or candidate list is empty
    """
    pass

Dependencies { .dependencies }

rdkit { .dependency }

Provides cheminformatics capabilities for molecular manipulation and analysis.