Introduction to Chroma
Chroma is an innovative generative model designed to aid in the programming and creation of proteins. Protein design is complicated due to the complexity of protein space. Chroma addresses this challenge by representing protein design problems through composable building blocks from which diverse, full-protein structures can be automatically created.
Understanding Chroma
Chroma functions as both a joint model of structure and sequence, supporting tasks such as generating sequences from given backbones, packing side-chains, and scoring designs. This is achieved through protein conditioners that allow designers to apply a variety of constraints, such as symmetry, shape, and neural network predictions. Users can even create their own custom conditioners using a simple API.
Key Technologies
Chroma uses advanced techniques in its modeling:
- Diffusion modeling: For efficient sampling of structures.
- Equivariant graph neural networks and conditional random fields: To generate complex structures quickly and efficiently, even on standard hardware.
Getting Started with Chroma
To begin using Chroma, one can access pre-configured Colab notebooks that illustrate its capabilities:
- Chroma Quickstart: Demonstrates basic features like protein generation.
- Chroma API Tutorial: Shows how to conduct protein input/output, sampling, and configuration.
- Chroma Conditioner API Tutorial: Offers insights into creating new conditioners.
Additionally, Chroma can be installed via PyPi or GitHub for more direct usage and local development.
Protein Sampling
Chroma supports both unconditional and conditional sampling of proteins:
- Unconditional Monomer: Generate a protein with a specified number of amino acids using simple code.
- Unconditional Complex: Sample complex protein chains with varying lengths.
- Conditional Complex: Customize protein generation using specific design objectives like symmetry and advanced hyperparameters.
Effective Design
Chroma's joint model enhances sequence and structure generation:
- Robust Design: By tuning the diffusion augmentation, Chroma provides a flexible approach to design proteins, improving one-shot refolding and maintaining structural integrity.
- Design A La Carte: Redesign and modify existing protein systems through Chroma's powerful design network.
Programmable Design via Conditioners
Chroma offers a programmable framework with its Conditioner class, allowing for design under diverse conditions and objectives:
- Multiple pre-defined conditioners are available for various purposes, including controlling substructure and symmetry.
- The system facilitates customization via composable state transformations to suit complex design requirements.
Creating Custom Conditioners
Developing new conditioners is simplified through the Conditioner API, where users can create functions that modify protein states and energies.
Licensing and Acknowledgement
Chroma is licensed under the Apache License 2.0, and the model weights are freely available for academic and non-profit use under specific terms. The development of Chroma involved substantial contributions from a dedicated team at Generate Biomedicines.
Citation
For academic use, users are encouraged to cite the work from its Nature publication to acknowledge the contributions of the team involved in creating Chroma.