Diffusers documentation

RFD4ProteinaAutoencoder

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

RFD4ProteinaAutoencoder

RFD4-Proteínaのオートエンコーダーです。encodeはatom37座標をトークンごとのローカル潜在変数にマッピングし、decodeは潜在変数とバックボーン位置をatom37構造および残基の同一性に戻します。パイプライン内ではvaeとして登録されています。

from diffusers import RFD4ProteinaAutoencoder

vae = RFD4ProteinaAutoencoder.from_pretrained("nvidia/RFD4-Proteina-Diffusers", subfolder="vae")

RFD4ProteinaAutoencoder

class diffusers.RFD4ProteinaAutoencoder

< >

( 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') )

パラメータ

  • latent_dim (int、デフォルトは32) — トークンごとのローカル潜在変数の幅。
  • n_residue_types (int、デフォルトは147) — 残基の語彙サイズ。
  • num_token_types (int、デフォルトは 7) — トークンタイプ語彙のサイズ: protein、RNA、DNA、atomized、unknown、glycan、および非標準アミノ酸。
  • allowed_residue_types (list[list[bool]]) — 各トークンタイプがデコード可能な残基クラスを示す(num_token_types, n_residue_types)のテーブル
  • nlayers (int、デフォルトは 12) — エンコーダーとデコーダーそれぞれの Trunk レイヤー数。
  • token_dim (int、デフォルトは768) — トークン表現の幅。
  • nheads (int, デフォルトは 12) — 各レイヤーあたりのアテンションヘッド数。
  • dim_cond (int、デフォルトは 128) — 条件付けベクトル(未使用、ゼロ)の幅。
  • pair_repr_dim (int、デフォルトは 256) — トランク層を構築する際に使用されるペアの幅です。公開されている autoencoder はペアのバイアスを使用していないため、このパラメータには重みが含まれません。
  • token_type_emb_dim (int、デフォルトは32) — トークンタイプ埋め込みの幅。
  • encoder_feats_seq, decoder_feats_seq (list[str]) — エンコーダーおよびデコーダーの入力に射影された特徴量。
  • atom37_mask (list[list[bool]]) — 各残基タイプにおける有効な atom37 スロット。形状は (n_residue_types, 37) です。

ペアリングされた分子エンコーダーとatom37デコーダー。

このモデルに渡される座標および返される座標は、ナノメートル単位です。

encode

< >

( 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

パラメータ

  • coords_nm (torch.Tensor) — ナノメートル単位の atom37 座標。(batch, tokens, 37, 3)
  • padding_mask (torch.Tensor) — (batch, tokens)。トークンがパディングではなく実データであることを示すマスク。
  • token_type (torch.Tensor, 任意) — (batch, tokens) のトークンタイプコード。
  • atom37_mask (torch.Tensor, 任意) — (batch, tokens, 37)。アトムスロットが使用されている箇所が true になります。
  • conditioning (dict[str, Any]、省略可) — プリプロセッサが出力するキーの下にある、残りのトポロジーおよび条件付けテンソル。
  • generator (torch.Generator または list[torch.Generator]、省略可) — 独立した確率的潜在サンプルのために、バッチの各行ごとに1つのジェネレーターを使用します。指定しない場合、サンプリングはグローバルストリームから行われます。
  • return_dict (bool、デフォルトは True) — 型付きの出力を返すか、そのフィールドのタプルを返すかを指定します。

戻り値

RFD4ProteinaEncoderOutput または tuple

(batch, tokens, latent_dim) の形状を持つ、潜在変数、平均、および対数スケールのテンソル。

準備された座標と条件付けを、サンプリングされたトークンごとのローカル潜在変数にエンコードします。

decode

< >

( 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

パラメータ

  • z_latent (torch.Tensor) — (batch, tokens, latent_dim) のトークンごとのローカル潜在変数。
  • ca_coors_nm (torch.Tensor) — (batch, tokens, 3) ナノメートル単位で表された backbone の CA 原子の座標。
  • padding_mask (torch.Tensor) — (batch, tokens)。トークンがパディングではなく実データであることを示すマスク。
  • token_type (torch.Tensor, 任意) — (batch, tokens) のトークンタイプコード。
  • atom37_mask (torch.Tensor, 任意) — (batch, tokens, 37)。アトムスロットが使用されている箇所が true になります。
  • conditioning (dict[str, Any]、省略可) — プリプロセッサが出力するキーの下にある、残りのトポロジーおよび条件付けテンソルです。シーケンス条件はここから読み取られます。
  • return_dict (bool、デフォルトは True) — 型付きの出力を返すか、そのフィールドのタプルを返すかを指定します。

戻り値

RFD4ProteinaDecoderOutput または tuple

(batch, tokens, 37, 3) のナノメートル単位の座標、残基タイプ (batch, tokens)、エミッションマスク (batch, tokens)、およびアトムマスク (batch, tokens, 37)。エミッションされないアトムの座標はゼロです。

per-token latentsとbackbone positionsをデコードして、atom37構造に変換します。

forward

< >

( 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

パラメータ

  • z_latent (torch.Tensor) — (batch, tokens, latent_dim) のトークンごとのローカル潜在変数。
  • ca_coors_nm (torch.Tensor) — (batch, tokens, 3) ナノメートル単位で表された backbone の CA 原子の座標。
  • padding_mask (torch.Tensor) — (batch, tokens)。トークンがパディングではなく実データであることを示すマスク。
  • token_type (torch.Tensor, 任意) — (batch, tokens) のトークンタイプコード。
  • atom37_mask (torch.Tensor, 任意) — (batch, tokens, 37)。アトムスロットが使用されている箇所が true になります。
  • conditioning (dict[str, Any]、省略可) — 残りのトポロジーおよび条件付けテンソル。
  • return_dict (bool、デフォルトは True) — 型付きの出力を返すか、そのフィールドのタプルを返すかを指定します。

戻り値

RFD4ProteinaDecoderOutput または tuple

デコードされた座標、残基タイプ、およびアトム/エミットマスク。

トークンごとの潜在変数とバックボーン位置をデコードします。decode()を呼び出すのと同じです。

RFD4ProteinaEncoderOutput

class diffusers.models.autoencoders.autoencoder_rfd4_proteina.RFD4ProteinaEncoderOutput

< >

( latent: Tensormean: typing.Optional[torch.Tensor] = Nonelog_scale: typing.Optional[torch.Tensor] = None )

パラメータ

  • latent (torch.Tensor) — サンプル mean + noise * exp(log_scale)。出力された latent トークンの外部はゼロ。
  • mean (torch.Tensor) — ガウシアン平均。出力された潜在トークンの外部ではゼロです。
  • log_scale (torch.Tensor) — 対数標準偏差。出力された潜在トークンの外部はゼロです。

(batch, tokens, latent_dim) の形状を持つ、サンプリングされた潜在変数とガウス分布のパラメータです。

RFD4ProteinaDecoderOutput

class diffusers.models.autoencoders.autoencoder_rfd4_proteina.RFD4ProteinaDecoderOutput

< >

( coordinates: Tensorresidue_type: typing.Optional[torch.Tensor] = Noneemit_mask: typing.Optional[torch.Tensor] = Noneatom_mask: typing.Optional[torch.Tensor] = None )

パラメータ

  • coordinates (torch.Tensor) — ナノメートル単位の座標 (batch, tokens, 37, 3)。出力されない原子はゼロです。
  • residue_type (torch.Tensor) — 形状が(batch, tokens)の残基語彙インデックス。
  • emit_mask (torch.Tensor) — 形状が(batch, tokens)の、出力トークンのブール値マスク。
  • atom_mask (torch.Tensor) — 形状が(batch, tokens, 37)の、有効なアトムのブールマスク。

デコードされた分子座標および離散的なatom37トポロジー。

Update on GitHub