Diffusers documentation
RFD4ProteinaTransformer
RFD4ProteinaTransformer
Денойзер RFD4-Proteína. Он предсказывает скорости для двух модальностей, которые интегрирует сэмплер, — позиции CA каркаса и локальные латенты для каждого токена — на основе подготовленных молекулярных тензоров. Входы представляют собой именованные тензоры и отображение условий, содержимое которого определяется конфигурацией чекпоинта; парсинг структуры не входит в обязанности этого класса.
from diffusers import RFD4ProteinaTransformer
transformer = RFD4ProteinaTransformer.from_pretrained(
"nvidia/RFD4-Proteina-Diffusers", subfolder="transformer"
)RFD4ProteinaTransformer
класс 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 )
Параметры
- nlayers (
int, по умолчанию14) — Количество слоёв ствольной части. - token_dim (
int, по умолчанию768) — Ширина представления токена. - nheads (
int, по умолчанию12) — Количество головок внимания на слой. - dim_cond (
int, по умолчанию256) — Ширина вектора условий (время, индекс повторного использования, метка CATH). - pair_repr_dim (
int, по умолчанию384) — ширина представления пары. - latent_dim (
int, по умолчанию32) — Ширина локального латентного представления для каждого токена. - token_type_emb_dim (
int, по умолчанию32) — Ширина эмбеддинга типа токена. - cath_emb_dim (
int, по умолчанию32) — Ширина каждого эмбеддинга класса/архитектуры/топологии CATH. - t_emb_dim (
int, по умолчанию256) — ширина синусоидального эмбеддинга времени. - seq_sep_dim (
int, по умолчанию64) — Количество интервалов длины пути связи. - xt_pair_dist_dim (
int, по умолчанию30) — Количество бинов парных расстояний в backbone. - xt_pair_dist_min (
float, по умолчанию0.1), xt_pair_dist_max (float, по умолчанию3.0) — Диапазон расстояний между парами в нанометрах. - feats_seq, feats_cond_seq, feats_pair_repr, feats_pair_cond (
list[str]) — Имена признаков, проецируемых во входные токены, условия, пары и пары-условия. - update_pair_repr_every_n (
int, по умолчанию2) — Как часто представление пары обновляется на основе токенов между слоями. - tri_mult_c (
int, по умолчанию256) — Скрытая ширина треугольного умножения в этих обновлениях. - num_token_types (
int, по умолчанию7) — Размер словаря типов токенов: белок, РНК, ДНК, атомизированный, неизвестный, гликан и неканоническая аминокислота. - recycle_conditioning_dim (
int, по умолчанию1) — ширина one-hotrecycle_remaining, если эта особенность входит вfeats_cond_seq. - num_sequence_classes (
int, по умолчанию147) — Размер словаря остатков, который предсказывает выходная последовательность.
Шумоподавитель скорости RFD4 с парным бэкбоном и локально-латентными модальностями.
Модель работает в собственном dtype: загружайте её с dtype=torch.bfloat16 для инференса с пониженной точностью. Состояние выборки, передаваемое в forward, остаётся в float32; эмбеддинги признаков вычисляются в float32 и приводятся к типу на входной проекции.
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
Параметры
- bb_ca (
torch.Tensor) — Координаты шумного бэкбона(batch, tokens, 3)в нанометрах. - local_latents (
torch.Tensor) — Зашумленные локальные латенты(batch, tokens, latent_dim). - bb_ca_time (
torch.Tensor) —(batch,)время бэкбона в диапазоне [0, 1]. - local_latents_time (
torch.Tensor) —(batch,)локальное латентное время в диапазоне [0, 1]. - padding_mask (
torch.Tensor) —(batch, tokens), true там, где токен является реальным, а не заполнителем. - token_type (
torch.Tensor, необязательный) — коды типов токенов(batch, tokens). - atom37_mask (
torch.Tensor, необязательный) —(batch, tokens, 37), true там, где используется слот атома. - conditioning (
dict[str, Any], необязательный) — Остальные тензоры топологии и условий, под ключами, которые выдаёт препроцессор. Какие из них читаются, определяется поfeats_seq,feats_cond_seq,feats_pair_reprиfeats_pair_condв контрольной точке; если ключ, запрошенный настроенной функцией, отсутствует, эта функция остаётся без условий, а не вызывает ошибку. - recycle_depth (
int, по умолчанию0) — Количество проходов по стволу; значение ноль всё равно выполняет один проход. - attention_kwargs (
dict, необязательный) — Извлекается толькоscale, который используется как масштаб LoRA для этого вызова. - return_dict (
bool, по умолчаниюTrue) — возвращает типизированный вывод или кортеж полей, отличных от None.
Возвращает
RFD4ProteinaTransformerOutput или tuple
Скорости backbone/локальных латентов и необязательные логиты последовательности/вставки, до интеграции с планировщиком.
Предсказывайте скорости из подготовленных молекулярных тензоров без продвижения сэмплера.
RFD4ProteinaTransformerOutput
класс 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 )
Параметры
- backbone (
torch.Tensor) — Скорость каркаса формы(batch, tokens, 3), в нанометрах за единицу времени. - local_latents (
torch.Tensor) — Скорость латентов с формой(batch, tokens, latent_dim). - sequence_logits (
torch.Tensor, необязательный) — Логиты остатков с формой(batch, tokens, 147). - insertion_logits (
torch.Tensor, необязательный) — Логиты присваивания вставки формы(batch, tokens, tokens).
Прогнозы денуайзера до интеграции планировщика.