Summary
The release appears to be internally inconsistent. The distilled causal student net (with atten_backend="i4") hard-depends on NATTEN, and the code requires natten>=0.21.5 for the causal varlen API. However, the official install instructions pin torch 2.7 + natten 0.21.0, which does not provide that API. The versions of NATTEN that do ship the API (0.21.5+) only publish prebuilt wheels for torch>=2.8. As a result, there is no combination that satisfies the constraints out of the box.
Details
- The causal student net architecture (
atten_backend="i4") is tied to NATTEN.
- The code path uses the causal varlen API, which requires
natten>=0.21.5.
- The official installation instructions pin torch 2.7 + natten 0.21.0.
natten 0.21.0 does not include the causal varlen API, so the pinned stack fails at runtime/import.
- NATTEN
0.21.5+ (which contains the required API) only provides prebuilt wheels for torch>=2.8, so it is incompatible with the pinned torch 2.7.
The contradiction
| Requirement |
Source |
Conflict |
natten>=0.21.5 (causal varlen API) |
code / atten_backend="i4" |
Not met by pinned natten 0.21.0 |
torch 2.7 + natten 0.21.0 |
official install instructions |
Lacks the required API |
natten>=0.21.5 prebuilt wheels |
NATTEN release channel |
Only built for torch>=2.8, conflicts with pinned torch 2.7 |
Questions / Requested fix
- What is the intended, working version combination for running the causal student net with
atten_backend="i4"?
- Should the official install instructions be updated to
torch>=2.8 together with natten>=0.21.5?
- Alternatively, is there a supported way to build
natten>=0.21.5 from source against torch 2.7, or a fallback backend that avoids the causal varlen API requirement?
Could you please clarify the correct, self-consistent dependency set? Thanks!
Summary
The release appears to be internally inconsistent. The distilled causal student net (with
atten_backend="i4") hard-depends on NATTEN, and the code requiresnatten>=0.21.5for the causal varlen API. However, the official install instructions pintorch 2.7 + natten 0.21.0, which does not provide that API. The versions of NATTEN that do ship the API (0.21.5+) only publish prebuilt wheels fortorch>=2.8. As a result, there is no combination that satisfies the constraints out of the box.Details
atten_backend="i4") is tied to NATTEN.natten>=0.21.5.natten 0.21.0does not include the causal varlen API, so the pinned stack fails at runtime/import.0.21.5+(which contains the required API) only provides prebuilt wheels for torch>=2.8, so it is incompatible with the pinned torch 2.7.The contradiction
natten>=0.21.5(causal varlen API)atten_backend="i4"natten 0.21.0torch 2.7 + natten 0.21.0natten>=0.21.5prebuilt wheelstorch>=2.8, conflicts with pinned torch 2.7Questions / Requested fix
atten_backend="i4"?torch>=2.8together withnatten>=0.21.5?natten>=0.21.5from source against torch 2.7, or a fallback backend that avoids the causal varlen API requirement?Could you please clarify the correct, self-consistent dependency set? Thanks!