Skip to main content
ESM3 Protein Language Model
License: ESM3 is open source and free for academic and commercial use under an MIT license. Please refer to the license for full terms.

This generator is open source. Any third-party models, product names, or trademarks referenced are the property of their respective owners, and Proto is not affiliated with them.


Go to Tool Page
evo-design/proto-language/proto_language/generator/esm3_generator.py
View source
Copy citation
Generator contributors
Protein sequence mutation/refinement generator using ESM3 open language model.
This generator uses the open-source ESM3 protein language model to refine existing protein sequences through iterative mutation. It masks positions according to the configured masking strategy and samples biologically plausible amino acids at those positions. The generator category is "mutation", indicating it refines proposal sequences through targeted mutations.

API Reference

ConfigESM3GeneratorConfig Source
Configuration object for ESM3Generator.This class defines configuration parameters for the ESM3 generator, which uses the open-source ESM3 protein language model to refine existing protein sequences through iterative mutation of masked positions. In Proto Language, ESM3 is registered as a mutation-category generator that edits the supplied starting sequence; the segment must carry a sequence (directly or from a prior optimizer stage).
ESM3 is the open-source version of EvolutionaryScale’s protein language model.
string
default:"esm3_sm_open_v1"
ESM-3 model variant to load.
MaskingStrategy
Controls which positions to mask for sampling. Default: random 30%.
enum
default:"single_pass"
‘single_pass’ fills all masks in one forward; ‘iterative_refinement’ uses ESM-3 batch generation.Options: single_pass, iterative_refinement
number
default:"1.0"
Scales the randomness of sampling by adjusting probability distribution sharpness.
number
default:"1.0"
Nucleus sampling threshold; 1.0 disables
integer
default:"20"
Iterative-refinement decoding steps; diminishing returns above 20
enum
default:"cosine"
Unmask schedule across rounds; ‘cosine’ fronts more commits lateOptions: cosine, linear
enum
default:"random"
Position-selection per round; ‘entropy’ commits the most-confident firstOptions: random, entropy
boolean
default:"True"
Anneal temperature toward 0 across rounds
string
default:"cuda"
GPU device to run ESM3 on (e.g. ‘cuda’ or ‘cuda:0’).
integer
default:"1"
Number of sequences to process simultaneously on GPU

Usage

python

Metadata