pub struct TransformerStack { /* private fields */ }Implementations§
Source§impl TransformerStack
impl TransformerStack
pub fn load(vb: VarBuilder<'_>, config: &ESM3Config) -> Result<Self>
Sourcepub fn load_geometric_encoder(
vb: VarBuilder<'_>,
config: &ESM3Config,
) -> Result<Self>
pub fn load_geometric_encoder( vb: VarBuilder<'_>, config: &ESM3Config, ) -> Result<Self>
The stack used by the ESM3 structure encoder.
Two differences from load, both read off the released
checkpoint rather than assumed: every block is geometric-only (there
are no attn.* tensors), and there is no trailing norm.weight —
the encoder’s final normalization is the identity.
Sourcepub fn forward(
&self,
x: &Tensor,
sequence_id: Option<&Tensor>,
affine: Option<&Affine3D>,
affine_mask: Option<&Tensor>,
chain_id: Option<&Tensor>,
) -> Result<(Tensor, Tensor)>
pub fn forward( &self, x: &Tensor, sequence_id: Option<&Tensor>, affine: Option<&Affine3D>, affine_mask: Option<&Tensor>, chain_id: Option<&Tensor>, ) -> Result<(Tensor, Tensor)>
Forward pass through the full ESM3 transformer stack.
x:(B, L, d_model)input embeddings.sequence_id: optional(B, L)int — per-protein bin-packing IDs.affine: optional per-residue local frames for geometric attention.affine_mask: optional(B, L)u8 — 1 where frame is valid.chain_id: optional(B, L)int — chain identity per residue.
Returns (post_norm, pre_norm) matching the Python API.
Auto Trait Implementations§
impl !RefUnwindSafe for TransformerStack
impl !Send for TransformerStack
impl !Sync for TransformerStack
impl !UnwindSafe for TransformerStack
impl Freeze for TransformerStack
impl Unpin for TransformerStack
impl UnsafeUnpin for TransformerStack
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more