Esm Tools

Configuration File: esm_tools.json Tool Type: Local Tools Count: 4

This page contains all tools defined in the esm_tools.json configuration file.

Available Tools

ESM_fold_protein (Type: ESMTool)

Predict protein 3D structure from sequence using ESM3, returning pTM (predicted TM-score), per-re…

ESM_fold_protein tool specification

Tool Information:

  • Name: ESM_fold_protein

  • Type: ESMTool

  • Description: Predict protein 3D structure from sequence using ESM3, returning pTM (predicted TM-score), per-residue pLDDT confidence scores, and backbone atom coordinates. ESM3 performs structure generation via iterative structure track decoding. pTM > 0.7 indicates confident prediction. Coordinates are (L, 37, 3) backbone atom positions in Angstroms (standard 37-atom representation). Use for: rapid structure prediction, confidence-based filtering, structure-guided design. Prerequisites: pip install esm; set ESM_API_KEY (from https://forge.evolutionaryscale.ai).

Parameters:

  • operation (string) (required) Operation type

  • sequence (string) (required) Protein amino acid sequence in single-letter code to fold (e.g. ‘MKTAYIAKQRQISFVKSHFSRQ’).

  • model (string) (optional) ESM3 model to use for structure prediction.

  • num_steps (integer) (optional) Number of iterative structure decoding steps (default: 8). More steps may improve accuracy.

Example Usage:

query = {
    "name": "ESM_fold_protein",
    "arguments": {
        "operation": "example_value",
        "sequence": "example_value"
    }
}
result = tu.run(query)

ESM_generate_protein_sequence (Type: ESMTool)

Generate or complete a protein sequence using ESM3, EvolutionaryScale’s generative protein langua…

ESM_generate_protein_sequence tool specification

Tool Information:

  • Name: ESM_generate_protein_sequence

  • Type: ESMTool

  • Description: Generate or complete a protein sequence using ESM3, EvolutionaryScale’s generative protein language model. Provide a prompt_sequence with ‘_’ characters marking positions to generate (masked positions), and ESM3 will fill them in via iterative masked language modeling. Can generate entire sequences from scratch (all ‘_’) or complete partial sequences. Use for: protein engineering, de novo protein design, completing truncated sequences, exploring sequence space around a template. Prerequisites: pip install esm; set ESM_API_KEY (from https://forge.evolutionaryscale.ai). Example: ‘MKTAY_____QRQIS’ generates 5 residues in the masked region.

Parameters:

  • operation (string) (required) Operation type

  • prompt_sequence (string) (required) Protein sequence template with ‘_’ at positions to generate. Use standard amino acid letters for fixed positions and ‘_’ for masked/generated positions. Example: ‘MKTAY_____QRQISFVK’ generates 5 residues in the middle.

  • model (string) (optional) ESM3 model to use for generation.

  • num_steps (integer) (optional) Number of iterative decoding steps (default: 8). More steps = slower but potentially better quality.

  • temperature (number) (optional) Sampling temperature (default: 1.0). Lower values (0.1-0.5) produce more conservative sequences; higher values (1.0-2.0) more diverse.

Example Usage:

query = {
    "name": "ESM_generate_protein_sequence",
    "arguments": {
        "operation": "example_value",
        "prompt_sequence": "example_value"
    }
}
result = tu.run(query)

ESM_get_protein_embedding (Type: ESMTool)

Get protein sequence embeddings from EvolutionaryScale ESMC (ESM Cambrian) models via the Forge A…

ESM_get_protein_embedding tool specification

Tool Information:

  • Name: ESM_get_protein_embedding

  • Type: ESMTool

  • Description: Get protein sequence embeddings from EvolutionaryScale ESMC (ESM Cambrian) models via the Forge API. Returns a mean-pooled embedding vector (320-dim for esmc-300m, 1152-dim for esmc-600m) representing the entire protein, and optionally per-residue embeddings. ESMC is a fast, high-quality protein language model suitable for downstream tasks: similarity search, clustering, property prediction. Prerequisites: pip install esm; set ESM_API_KEY environment variable (token from https://forge.evolutionaryscale.ai). Use for: encoding protein sequences for ML, computing protein-protein similarity, featurizing sequences.

Parameters:

  • operation (string) (required) Operation type

  • sequence (string) (required) Protein amino acid sequence in single-letter code (e.g. ‘MKTAYIAKQRQISFVKSHFSRQ’). Standard 20 amino acids; avoid gaps or non-standard characters.

  • model (string) (optional) ESMC model to use. ‘esmc-300m-2024-12’ (faster, 300M params) or ‘esmc-600m-2024-12’ (more accurate, 600M params).

  • return_per_residue (boolean) (optional) If true, also return per-residue embedding vectors (one vector per amino acid). Default false to reduce response size.

Example Usage:

query = {
    "name": "ESM_get_protein_embedding",
    "arguments": {
        "operation": "example_value",
        "sequence": "example_value"
    }
}
result = tu.run(query)

ESM_score_sequence (Type: ESMTool)

Score a protein sequence using ESMC logits to compute per-residue log-probabilities and mean pseu…

ESM_score_sequence tool specification

Tool Information:

  • Name: ESM_score_sequence

  • Type: ESMTool

  • Description: Score a protein sequence using ESMC logits to compute per-residue log-probabilities and mean pseudo-log-likelihood. Higher (less negative) mean log-probability indicates the sequence is more natural/likely according to the model’s learned protein distribution. Use for: evaluating mutant fitness, comparing sequence variants, identifying low-confidence residues. Mean log-probability near 0 is highest confidence; values below -4 suggest unusual or low-quality residues. Prerequisites: pip install esm; set ESM_API_KEY (from https://forge.evolutionaryscale.ai).

Parameters:

  • operation (string) (required) Operation type

  • sequence (string) (required) Protein amino acid sequence in single-letter code to score (e.g. ‘MKTAYIAKQRQISFVKSHFSRQ’).

  • model (string) (optional) ESMC model to use for scoring.

Example Usage:

query = {
    "name": "ESM_score_sequence",
    "arguments": {
        "operation": "example_value",
        "sequence": "example_value"
    }
}
result = tu.run(query)