Diffusers documentation
RFD4ProteinaAutoencoder
RFD4ProteinaAutoencoder
O autoencoder de RFD4-Proteína. encode mapeia as coordenadas atom36 para latentes locais por token, e decode converte latentes e posições do backbone de volta para a estrutura atom37 e identidades de resíduos. Ele é registrado no pipeline como vae.
from diffusers import RFD4ProteinaAutoencoder
vae = RFD4ProteinaAutoencoder.from_pretrained("nvidia/RFD4-Proteina-Diffusers", subfolder="vae")RFD4ProteinaAutoencoder
classe diffusers.RFD4ProteinaAutoencoder
< source >( atom37_mask: Sequenceallowed_residue_types: Sequencelatent_dim: int = 32n_residue_types: int = 147num_token_types: int = 7nlayers: int = 12token_dim: int = 768nheads: int = 12dim_cond: int = 128pair_repr_dim: int = 256token_type_emb_dim: int = 32encoder_feats_seq: tuple = ('token_type', 'x1_a37coors_nm', 'x1_a37coors_nm_rel', 'chain_idx_seq', 'incident_bond_type_counts', 'atom37_element_charge_embedding')decoder_feats_seq: tuple = ('ca_coors_nm', 'z_latent_seq', 'token_type', 'cond_residue_type') )
Parâmetros
- latent_dim (
int, padrão32) — Largura do latente local por token. - n_residue_types (
int, padrão147) — Tamanho do vocabulário de resíduos. - 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. - allowed_residue_types (
list[list[bool]]) — tabela de classes de resíduos ((num_token_types, n_residue_types)) para as quais cada tipo de token pode ser decodificado. - nlayers (
int, padrão12) — Camadas do tronco em cada um dos codificador e decodificador. - 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ão128) — Largura do vetor de condicionamento (não utilizado, zero). - pair_repr_dim (
int, padrão256) — Largura dos pares com que as camadas do tronco são construídas. O autoencoder publicado não usa viés de par, portanto este parâmetro não retém parâmetros. - token_type_emb_dim (
int, padrão32) — Largura do embedding de tipo de token. - encoder_feats_seq, decoder_feats_seq (
list[str]) — Recursos projetados para as entradas do codificador e do decodificador. - atom37_mask (
list[list[bool]]) — Slots válidos de atom37 para cada tipo de resíduo, com forma(n_residue_types, 37).
Codificador molecular em pares e decodificador atom37.
As coordenadas fornecidas a e retornadas por este modelo estão em nanômetros.
encode
< source >( coords_nm: Tensorpadding_mask: Tensortoken_type: typing.Optional[torch.Tensor] = Noneatom37_mask: typing.Optional[torch.Tensor] = Noneconditioning: dict[str, typing.Any] | None = Nonegenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonereturn_dict: bool = True ) → RFD4ProteinaEncoderOutput or tuple
Parâmetros
- coords_nm (
torch.Tensor) — coordenadas do atom37 em nanômetros,(batch, tokens, 37, 3). - 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. - generator (
torch.Generatoroulist[torch.Generator], opcional) — Um gerador por linha do lote para amostras latentes estocásticas independentes. Sem um, a amostragem é extraída do fluxo global. - return_dict (
bool, padrãoTrue) — Retorna uma saída tipada ou uma tupla de seus campos.
Retorna
RFD4ProteinaEncoderOutput ou tuple
Tensores latentes, de média e de escala logarítmica com forma (batch, tokens, latent_dim).
Codifique as coordenadas preparadas e as condições em latentes locais por token amostrados.
decode
< source >( z_latent: Tensorca_coors_nm: Tensorpadding_mask: Tensortoken_type: typing.Optional[torch.Tensor] = Noneatom37_mask: typing.Optional[torch.Tensor] = Noneconditioning: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → RFD4ProteinaDecoderOutput or tuple
Parâmetros
- z_latent (
torch.Tensor) — latentes locais por token,(batch, tokens, latent_dim). - ca_coors_nm (
torch.Tensor) — posições CA do backbone em nanômetros,(batch, tokens, 3). - 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. A condição de sequência é lida daqui. - return_dict (
bool, padrãoTrue) — Retorna uma saída tipada ou uma tupla de seus campos.
Retorna
RFD4ProteinaDecoderOutput ou tuple
Coordenadas (batch, tokens, 37, 3) em nanômetros, tipos de resíduos
(batch, tokens), máscara de emissão (batch, tokens) e máscara de átomos (batch, tokens, 37). As coordenadas dos átomos não emitidos são zero.
Decodifique os latentes por token e as posições do backbone para a estrutura atom37.
forward
< source >( z_latent: Tensorca_coors_nm: Tensorpadding_mask: Tensortoken_type: typing.Optional[torch.Tensor] = Noneatom37_mask: typing.Optional[torch.Tensor] = Noneconditioning: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → RFD4ProteinaDecoderOutput or tuple
Parâmetros
- z_latent (
torch.Tensor) — latentes locais por token,(batch, tokens, latent_dim). - ca_coors_nm (
torch.Tensor) — posições CA do backbone em nanômetros,(batch, tokens, 3). - 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. - return_dict (
bool, padrãoTrue) — Retorna uma saída tipada ou uma tupla de seus campos.
Retorna
RFD4ProteinaDecoderOutput ou tuple
Coordenadas decodificadas, tipos de resíduos e máscaras de átomo/emissão.
Decodifica os latentes por token e as posições do backbone; equivalente a chamar decode().
RFD4ProteinaEncoderOutput
classe diffusers.models.autoencoders.autoencoder_rfd4_proteina.RFD4ProteinaEncoderOutput
< source >( latent: Tensormean: typing.Optional[torch.Tensor] = Nonelog_scale: typing.Optional[torch.Tensor] = None )
Parâmetros latentes amostrados e gaussianos, cada um com a forma (batch, tokens, latent_dim).
RFD4ProteinaDecoderOutput
classe diffusers.models.autoencoders.autoencoder_rfd4_proteina.RFD4ProteinaDecoderOutput
< source >( coordinates: Tensorresidue_type: typing.Optional[torch.Tensor] = Noneemit_mask: typing.Optional[torch.Tensor] = Noneatom_mask: typing.Optional[torch.Tensor] = None )
Parâmetros
- coordinates (
torch.Tensor) — Coordenadas(batch, tokens, 37, 3)em nanômetros; átomos não emitidos são zero. - residue_type (
torch.Tensor) — Índices do vocabulário de resíduos com forma(batch, tokens). - emit_mask (
torch.Tensor) — Máscara booleana de tokens emitidos com forma(batch, tokens). - atom_mask (
torch.Tensor) — Máscara booleana de átomos válidos com forma(batch, tokens, 37).
Coordenadas moleculares decodificadas e topologia discreta de atom37.