Skip to content

Releases: Biohub/esm

v3.2.3

Choose a tag to compare

@ebetica ebetica released this 14 Oct 20:07
23b084b

Release Notes - ESM 3.2.3

  • bugfix: added chain ids to MolecularComplex
  • bugfix: use biotite for mmcif conversion in MolecularComplex
  • bugfix: updated sequence filtering in esm/utils/msa/filter_sequences.py for better handling of edge cases

v3.2.2.post2

Choose a tag to compare

@ebetica ebetica released this 22 Sep 17:50
3e109e2

All-Atom Molecular Complex Support

  • Added fold_all_atom() method to handle structure prediction for complexes containing proteins, nucleic acids (DNA/RNA), and ligands
  • Introduced MolecularComplex and MolecularComplexResult classes for representing multi-molecule systems
  • New StructurePredictionInput builder for constructing complex molecular inputs

MSA Improvements

  • Refactored MSA handling with new dedicated MSA class in esm.utils.msa
  • Added FastMSA for optimized MSA operations
  • Implemented sequence filtering utilities including greedy selection and hhfilter integration
  • Support for removing insertions from sequences

SDK Enhancements

  • Added SequentialDataclass base class for improved dataclass operations
  • Enhanced retry mechanism with better error handling and callback support
  • Fixed pLDDT expansion for chain breaks in protein structures
  • Added mean_hidden_state support for ESMC forward passes
  • Improved tensor serialization and handling throughout the SDK

Bug Fixes

  • Fixed pLDDT array length mismatch when chain breaks are present
  • Corrected logits tensor handling to avoid unnecessary byte conversions
  • Fixed retry decorator to properly handle exceptions and return values
  • Updated mean embedding/hidden state handling in generation trimming

Documentation Updates

  • Updated Forge API URLs in tutorial notebooks (removed /console suffix)
  • Standardized token prompt messages across notebooks

v3.2.2

Choose a tag to compare

@ebetica ebetica released this 15 Sep 17:09
7454c3d

Release Notes

Documentation

  • Added comprehensive Available Models section to README with tables for:
    • ESM3 Family models (flagship, published, and experimental variants)
    • ESM C models with specifications
  • Updated notebook examples with improved import organization

API & SDK Enhancements

  • Experimental Guided Generation with Constraints: New ESM3GuidedDecodingWithConstraints class supporting:
    • Constraint-based protein generation using Modified Differential Method of Multipliers
    • Multiple constraint types (GREATER_EQUAL, LESS_EQUAL, EQUAL)
    • Trajectory visualization for constrained optimization
  • Enhanced LogitsConfig and LogitsOutput with mean embedding support
  • Improved PDB export functionality to match expected behavior
  • Added confidence scores to protein complex chains

Bug Fixes & Improvements

  • Fixed Flash Attention import handling for better compatibility
  • Improved error handling in Forge client with proper exception propagation
  • Enhanced potential_sequence_of_concern parameter handling (now optional)
  • Removed unnecessary DSSP annotation from default protein chain conversion
  • Improved oxygen inference in PDB string generation

Examples & Tutorials

  • Updated guided generation tutorial with constraint-based examples
  • Added visualization for constraint optimization trajectories
  • Improved code examples with better formatting and organization

v3.2.1.post1

Choose a tag to compare

@ebetica ebetica released this 18 Aug 18:09
9abce48

Changelog v3.2.1.post1

Changes

  • Documentation: Updated README table of contents for better navigation
  • Code Quality: Removed unused imports to clean up codebase
  • SDK Updates: Various improvements and bug fixes to the ESM SDK
  • Tutorials: Updated cookbook tutorials with latest examples
  • Dependencies: Updated pixi.lock with latest dependency versions

Bug Fixes

  • Cleaned up unused imports in forge.py
  • Minor fixes and improvements across various SDK modules
  • Fix a formatting error leading to SDK errors for .post1 release.

Documentation

  • Improved README structure and table of contents
  • Updated tutorial notebooks with current best practices

This is a maintenance release focused on code quality improvements, documentation updates, and minor SDK enhancements.

v3.2.0

Choose a tag to compare

@cmishra cmishra released this 04 Apr 01:03

Updates:

  • Upgraded biotite version so we're not restricted to numpy < 2.0. this required removing the to_npz / to_npz_string functions (an internal biotite format they no longer support)
  • Added MSA support
  • Added a globularity function so it's easy to calculate
  • Fixed a bug where Inf SASA was encoded as -1, will now be encoded as 1000.

v3.1.6

Choose a tag to compare

@ebetica ebetica released this 13 Mar 15:19
3e7acde
  • gfp notebook updated to use a max num_steps of 20 instead of 229
  • updated docstring for batch executor

v3.1.5

Choose a tag to compare

@cmishra cmishra released this 05 Mar 20:53
c6b8c34

We had a few changes:

  • extended the pyproject.toml to be pixi-compliant for folks using pixi
  • bugfix to the gfp_design.ipynb in the tutorial
  • updated cookbook/snippets/esmc.py to include examples of how to call esmc via forge
  • updated the default for num_steps in GenerationConfig

v3.1.3

Choose a tag to compare

@tina-z-jia tina-z-jia released this 16 Jan 19:00
1b3e080

Main changes:

  1. Tutorials have been reorganized to be completed in a step-by-step fashion. We added a new tutorial for using ESM C to get protein embeddings.
  2. Layer number specification is required when requesting hidden_states of ESM C 6B.
  3. SASA track in forward_and_sample API is fixed.

v3.1.2

Choose a tag to compare

@tina-z-jia tina-z-jia released this 19 Dec 20:56
5a1f457

In this release, we made two changes:

  1. Brought Flash Attention and Triton Rotary embedding to the ESM C model
  2. Updated forge client to enable the return of ESM C's binary serialized hidden states. (note this the return of ESM3 hidden states are not supported).

v3.1.1

Choose a tag to compare

@tina-z-jia tina-z-jia released this 06 Dec 19:40
8127b99

In this release, we made three changes:

  1. Updated ESM C tokenizer to no longer depend on ESM3. So now you can use ESM C without having to accept the ESM3 license.
  2. Updated the transformer class so it returns hidden states.
  3. Pined transformers version to be <4.47.0 to prevent a tokenizer issue. If you are currently seeing tokenizer issues, try reinstalling the new release.