Strip vendored Triton kernels + set_kernel_backend selector from esmfold2
Transformers loads fused kernels from the Hub via the `kernels` library
(@use_kernel_forward_from_hub / register_kernel_mapping), not by vendoring
Triton in a model dir. Remove the fork's bespoke acceleration stack and
leave a single pure-PyTorch path; fused ops can return later via a Hub
kernels repo as an opt-in follow-up.
Removed:
- src/transformers/models/esmfold2/kernels/ (8 Triton files, ~3.3k LOC).
- The shared `set_kernel_backend` selector across the module tree, which
drove BOTH backends: "fused" (vendored Triton) and "cuequivariance"
(external lib). Both gone — the cueq import block and BACKEND_*/
_VALID_BACKENDS/_fused_active/_cueq_active helpers with them.
- Per-module fused/cueq branches and now-dead helpers (_can_use_*,
_fused_trimul_with_residual, split_kernel_weights, _kernel_flow_direction,
Transition._swiglu_pre_w3/_addmm_residual, DropoutResidual fused impl).
- The vestigial no-op set_kernel_backend hooks in distributed/utils.py and
modeling_esmfold2_experimental.py.
Kept intact: the independent `set_chunk_size` memory knob, and the optional
flash-attn / transformer_engine guards.
Verified: both modeling modules import; CPU smoke test runs AttentionPairBias,
TriangleMultiplicativeUpdate (both orientations), Transition (chunked ==
unchunked), DropoutResidual, and FoldingTrunk end-to-end on the pure-PyTorch
path. No new ruff errors introduced (9 pre-existing fork lint items remain for
the later `make style` pass).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>