Diffusers documentation
RFD4ProteinaTransformer
RFD4ProteinaTransformer
O denoiser de RFD4-Proteína. Ele prevê velocidades para as duas modalidades que o sampler integra — posições CA do backbone e latentes locais por token — a partir de tensores moleculares preparados. As entradas são tensores nomeados mais um mapeamento de condicionamento cujo conteúdo é selecionado pela configuração do checkpoint; a análise da estrutura está fora desta classe.
from diffusers import RFD4ProteinaTransformer
transformer = RFD4ProteinaTransformer.from_pretrained(
"nvidia/RFD4-Proteina-Diffusers", subfolder="transformer"
)RFD4ProteinaTransformer
classe diffusers.RFD4ProteinaTransformer
< source >( 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 = ('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 = ('time_emb_bb_ca', 'time_emb_local_latents', 'cath_code', 'recycle_remaining')feats_pair_repr: tuple = ('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 = ('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 )
Parâmetros
- nlayers (
int, padrão14) — Número de camadas do tronco. - token_dim (
int, padrão768) — Largura da representação do token. - nheads (
int, padrão12) — Cabeças de atenção por camada. - dim_cond (
int, padrão256) — Largura do vetor de condicionamento (tempo, índice de reciclagem, rótulo CATH). - pair_repr_dim (
int, padrão384) — Largura da representação de pares. - latent_dim (
int, padrão32) — Largura do latente local por token. - token_type_emb_dim (
int, padrão32) — Largura do embedding de tipo de token. - cath_emb_dim (
int, padrão32) — Largura de cada incorporação de classe/arquitetura/topologia CATH. - t_emb_dim (
int, padrão256) — Largura do embedding sinusoidal de tempo. - seq_sep_dim (
int, padrão64) — Número de bins de comprimento de caminho de ligação. - xt_pair_dist_dim (
int, padrão30) — Número de bins de distância de pares do backbone. - xt_pair_dist_min (
float, padrão0.1), xt_pair_dist_max (float, padrão3.0) — Intervalo de distância entre pares em nanômetros. - feats_seq, feats_cond_seq, feats_pair_repr, feats_pair_cond (
list[str]) — Nomes dos recursos projetados nas entradas de token, condicionamento, par e par-condicionamento. - update_pair_repr_every_n (
int, padrão2) — Com que frequência a representação do par é atualizada a partir dos tokens entre as camadas. - tri_mult_c (
int, padrão256) — Largura oculta da multiplicação triangular nessas atualizações. - num_token_types (
int, padrão7) — Tamanho do vocabulário de tipos de token: proteína, RNA, DNA, atomizado, desconhecido, glicano e aminoácido não canônico. - recycle_conditioning_dim (
int, padrão1) — Largura do one-hotrecycle_remaining, quando esse recurso está emfeats_cond_seq. - num_sequence_classes (
int, padrão147) — Tamanho do vocabulário de resíduos que a leitura da sequência prevê.
Denoiser de velocidade RFD4 com modalidades de backbone pareado e latente local.
O modelo é executado em seu próprio dtype: carregue-o com dtype=torch.bfloat16 para inferência de precisão reduzida. O estado de amostragem passado para forward permanece em float32; os embeddings de recursos são calculados em float32 e convertidos na projeção de entrada.
forward
< source >( 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
Parâmetros
- bb_ca (
torch.Tensor) — Coordenadas ruidosas do backbone(batch, tokens, 3)em nanômetros. - local_latents (
torch.Tensor) — Latentes locais com ruído(batch, tokens, latent_dim). - bb_ca_time (
torch.Tensor) —(batch,)tempo do backbone em [0, 1]. - local_latents_time (
torch.Tensor) —(batch,)tempo local latente em [0, 1]. - padding_mask (
torch.Tensor) —(batch, tokens), verdadeiro onde um token é real e não preenchimento. - token_type (
torch.Tensor, opcional) — códigos de tipo de token(batch, tokens). - atom37_mask (
torch.Tensor, opcional) —(batch, tokens, 37), verdadeiro onde um slot de átomo é utilizado. - conditioning (
dict[str, Any], opcional) — Os tensores restantes de topologia e condicionamento, sob as chaves emitidas pelo pré-processador. Quais deles são lidos é fixado pelofeats_seq,feats_cond_seq,feats_pair_reprefeats_pair_conddo checkpoint; uma chave solicitada por um recurso configurado, mas ausente, deixa esse recurso sem condicionamento em vez de levantar um erro. - recycle_depth (
int, padrão0) — Número de passagens do tronco; zero ainda executa uma passagem. - attention_kwargs (
dict, opcional) — Apenasscaleé lido, como a escala LoRA para esta chamada. - return_dict (
bool, padrãoTrue) — Retorna uma saída tipada ou uma tupla de campos não-None.
Retorna
RFD4ProteinaTransformerOutput ou tuple
Velocidades do backbone/latente local e logits opcionais de sequência/inserção, antes da integração do agendador.
Preveja velocidades a partir de tensores moleculares preparados sem avançar o amostrador.
RFD4ProteinaTransformerOutput
classe diffusers.models.transformers.transformer_rfd4_proteina.RFD4ProteinaTransformerOutput
< source >( backbone: Tensorlocal_latents: typing.Optional[torch.Tensor] = Nonesequence_logits: typing.Optional[torch.Tensor] = Noneinsertion_logits: typing.Optional[torch.Tensor] = None )
Parâmetros
- backbone (
torch.Tensor) — Velocidade do backbone com forma(batch, tokens, 3), em nanômetros por unidade de tempo. - local_latents (
torch.Tensor) — Velocidade latente com forma(batch, tokens, latent_dim). - sequence_logits (
torch.Tensor, opcional) — Logits de resíduos com forma(batch, tokens, 147). - insertion_logits (
torch.Tensor, opcional) — Logits de atribuição de inserção com forma(batch, tokens, tokens).
Previsões do denoiser antes da integração do agendador.