schrodinger.application.matsci.flywheel.ldmol.text_encoder module

ONNX-based text encoder for MolT5.

class schrodinger.application.matsci.flywheel.ldmol.text_encoder.MolT5TextEncoder(device='cpu', logger=None)

Bases: BaseModel

MolT5 text encoder using ONNX Runtime.

Replaces transformers.T5EncoderModel to eliminate the external dependency. Model is loaded lazily on first use.

__init__(device='cpu', logger=None)
Parameters:
  • device (str) – Device for inference

  • logger – Logger instance for debug output

ensureModelLoaded()

Load ONNX encoder model on first use.

encode(descriptions)

Encode text descriptions into latent embeddings.

Parameters:

descriptions (list(str)) – Text descriptions

Return type:

tuple(numpy.ndarray, numpy.ndarray)

Returns:

encoder_outputs and attention_mask