Diffusers documentation

RFD4ProteinaTransformer

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

RFD4ProteinaTransformer

Le débruiteur de RFD4-Proteína. Il prédit les vitesses pour les deux modalités que l'échantillonneur intègre — les positions CA du squelette et les latents locaux par jeton — à partir de tenseurs moléculaires préparés. Les entrées sont des tenseurs nommés ainsi qu'un mappage de conditionnement dont le contenu est sélectionné par la configuration du point de contrôle ; l'analyse de la structure est en dehors de cette classe.

from diffusers import RFD4ProteinaTransformer

transformer = RFD4ProteinaTransformer.from_pretrained(
    "nvidia/RFD4-Proteina-Diffusers", subfolder="transformer"
)

RFD4ProteinaTransformer

classe diffusers.RFD4ProteinaTransformer

< >

( nlayers: int = 14token_dim: int = 768nheads: int = 12dim_cond: int = 256pair_repr_dim: int = 384latent_dim: int = 32token_type_emb_dim: int = 32cath_emb_dim: int = 32t_emb_dim: int = 256seq_sep_dim: int = 64xt_pair_dist_dim: int = 30xt_pair_dist_min: float = 0.1xt_pair_dist_max: float = 3.0feats_seq: tuple[str, ...] = ('xt_bb_ca', 'xt_local_latents', 'token_type', 'sequence_probabilities', 'cond_a37coors_nm', 'cond_a37coors_internal_nm', 'rasa_binned', 'secondary_structure', 'hbond_modernized', 'pistack', 'pication', 'saltbridge', 'hydrophobic', 'metal_coord', 'na_ss_state', 'hotspot', 'atom_charge', 'atomic_element', 'coord_group_seq', 'chirality', 'chain_centroid_xyz')feats_cond_seq: tuple[str, ...] = ('time_emb_bb_ca', 'time_emb_local_latents', 'cath_code', 'recycle_remaining')feats_pair_repr: tuple[str, ...] = ('xt_bb_ca_pair_dists', 'bond_mask', 'bond_order', 'is_aromatic', 'index_group_pair', 'molecule_idx_pair', 'molecule_entity_pair', 'token_bond_path_length', 'canonical_polymer_ordering', 'na_ss_pair')feats_pair_cond: tuple[str, ...] = ('time_emb_bb_ca', 'time_emb_local_latents')update_pair_repr_every_n: int = 2tri_mult_c: int = 256num_sequence_classes: int = 147num_token_types: int = 7recycle_conditioning_dim: int = 1 )

Paramètres

  • nlayers (int, par défaut 14) — Nombre de couches du tronc.
  • token_dim (int, par défaut 768) — Largeur de la représentation des jetons.
  • nheads (int, par défaut 12) — Têtes d'attention par couche.
  • dim_cond (int, par défaut 256) — Largeur du vecteur de conditionnement (temps, index de recyclage, étiquette CATH).
  • pair_repr_dim (int, par défaut 384) — Largeur de la représentation des paires.
  • latent_dim (int, par défaut 32) — Largeur du latent local par jeton.
  • token_type_emb_dim (int, par défaut 32) — Largeur de l'incorporation de type de jeton.
  • cath_emb_dim (int, par défaut 32) — Largeur de chaque embedding de classe/architecture/topologie CATH.
  • t_emb_dim (int, par défaut 256) — Largeur de l'encodage temporel sinusoïdal.
  • seq_sep_dim (int, par défaut 64) — Nombre de classes de longueur de chemin de liaison.
  • xt_pair_dist_dim (int, par défaut 30) — Nombre de classes de distance par paires pour le backbone.
  • xt_pair_dist_min (float, par défaut 0.1), xt_pair_dist_max (float, par défaut 3.0) — Plage de distance entre paires, en nanomètres.
  • feats_seq, feats_cond_seq, feats_pair_repr, feats_pair_cond (list[str]) — Noms des caractéristiques projetées dans les entrées de jeton, de conditionnement, de paire et de conditionnement de paire.
  • update_pair_repr_every_n (int, par défaut 2) — Fréquence à laquelle la représentation des paires est mise à jour à partir des jetons entre les couches.
  • tri_mult_c (int, par défaut 256) — Largeur cachée de la multiplication triangulaire dans ces mises à jour.
  • num_token_types (int, par défaut 7) — Taille du vocabulaire des types de jetons : protéine, ARN, ADN, atomisé, inconnu, glycan et acide aminé non canonique.
  • recycle_conditioning_dim (int, par défaut 1) — Largeur du one-hot recycle_remaining, lorsque cette fonction est dans feats_cond_seq.
  • num_sequence_classes (int, par défaut 147) — Taille du vocabulaire de résidus prédit par la lecture de séquence.

Denoiseur de vitesse RFD4 avec modalités backbone appariées et latentes locales.

Le modèle s’exécute dans son propre dtype : chargez-le avec dtype=torch.bfloat16 pour une inférence en précision réduite. L’état d’échantillonnage transmis à forward reste en float32 ; les embeddings de caractéristiques sont calculés en float32 et convertis à la projection d’entrée.

forward

< >

( bb_ca: Tensorlocal_latents: Tensorbb_ca_time: Tensorlocal_latents_time: Tensorpadding_mask: Tensortoken_type: typing.Optional[torch.Tensor] = Noneatom37_mask: typing.Optional[torch.Tensor] = Noneconditioning: dict[str, typing.Any] | None = Nonerecycle_depth: int = 0attention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → RFD4ProteinaTransformerOutput or tuple

Paramètres

  • bb_ca (torch.Tensor) — Coordonnées bruitées du squelette (batch, tokens, 3) en nanomètres.
  • local_latents (torch.Tensor) — Latents locaux bruités (batch, tokens, latent_dim).
  • bb_ca_time (torch.Tensor) — (batch,) temps du backbone dans [0, 1].
  • local_latents_time (torch.Tensor) — (batch,) temps latent local dans [0, 1].
  • padding_mask (torch.Tensor) — (batch, tokens), vrai là où un jeton est réel plutôt que du bourrage.
  • token_type (torch.Tensor, facultatif) — codes de type de jeton (batch, tokens).
  • atom37_mask (torch.Tensor, facultatif) — (batch, tokens, 37), vrai là où un emplacement d'atome est utilisé.
  • conditioning (dict[str, Any], facultatif) — Les tenseurs de topologie et de conditionnement restants, sous les clés émises par le préprocesseur. Les clés lues sont fixées par les feats_seq, feats_cond_seq, feats_pair_repr et feats_pair_cond du point de contrôle ; si une clé demandée par une fonctionnalité configurée est absente, cette fonctionnalité reste non conditionnée plutôt que de lever une exception.
  • recycle_depth (int, par défaut 0) — Nombre de passages du tronc ; zéro exécute toujours un passage.
  • attention_kwargs (dict, facultatif) — Seul scale est lu, en tant que l'échelle LoRA pour cet appel.
  • return_dict (bool, par défaut True) — Retourne une sortie typée, ou un tuple de champs non nuls.

Retourne

RFD4ProteinaTransformerOutput ou tuple

Vitesses du backbone/latentes locales et logits de séquence/insertion optionnels, avant l'intégration du planificateur.

Prédire les vitesses à partir de tenseurs moléculaires préparés sans avancer le sampleur.

RFD4ProteinaTransformerOutput

classe diffusers.models.transformers.transformer_rfd4_proteina.RFD4ProteinaTransformerOutput

< >

( backbone: Tensorlocal_latents: typing.Optional[torch.Tensor] = Nonesequence_logits: typing.Optional[torch.Tensor] = Noneinsertion_logits: typing.Optional[torch.Tensor] = None )

Paramètres

  • backbone (torch.Tensor) — Vitesse de forme (batch, tokens, 3), en nanomètres par unité de temps.
  • local_latents (torch.Tensor) — Vitesse latente de forme (batch, tokens, latent_dim).
  • sequence_logits (torch.Tensor, facultatif) — Logits des résidus de forme (batch, tokens, 147).
  • insertion_logits (torch.Tensor, facultatif) — Logits d'attribution d'insertion de forme (batch, tokens, tokens).

Prédictions du débruiteur avant l'intégration du planificateur.

Update on GitHub