Skip to content

saturn-python-llm: pin python=3.12 (axolotl 0.16.1 transitive blocker)#474

Merged
hhuuggoo merged 1 commit into
release-2026.05.01from
hugo/llm-python-3.12
May 28, 2026
Merged

saturn-python-llm: pin python=3.12 (axolotl 0.16.1 transitive blocker)#474
hhuuggoo merged 1 commit into
release-2026.05.01from
hugo/llm-python-3.12

Conversation

@hhuuggoo
Copy link
Copy Markdown
Collaborator

The python=3.13 path from #473 fails for the LLM image because axolotl 0.16.1 unconditionally requires zstandard==0.22.0, and that wheel only ships cp310–cp312. Stepping down to python=3.12 lets the rest of axolotl 0.16.1's pin chain (torch==2.8.0, transformers==5.5.0, accelerate==1.13.0, bitsandbytes==0.49.1, datasets==4.5.0, trl==0.29.0) resolve from pre-built wheels — verified locally.

Also fixes two follow-ups that surfaced while iterating:

  • Drop auto-gptq and autoawq. auto-gptq's sdist runs import torch at build-deps phase before torch is installed, breaking the env. autoawq has the same kind of issue. Neither is referenced anywhere in saturncloud code; vllm handles GPTQ/AWQ checkpoint loading via compressed-tensors without these libs.
  • Bump pinned flash_attn wheel to v2.8.3 / cu12torch2.8 / cp312. Axolotl 0.16.1 forces torch==2.8.0, but the previously pinned flash_attn-2.8.0.post2+cu12torch2.7 wheel is ABI-incompatible with torch 2.8 (undefined symbol: _ZN3c104cuda9SetDeviceEa). v2.8.3 is also the version axolotl 0.16.1 itself targets under its flash-attn extra, so this is a closer fit overall.

Verified locally: env builds clean, all heavy imports succeed (torch, transformers, axolotl, flash_attn, vllm, peft, trl, datasets, accelerate, bitsandbytes). Unsloth's init can't fully run on a CPU-only host (no GPU), but its import path is fine.

🤖 Generated with Claude Code

…h_attn

The python=3.13 path is blocked by axolotl 0.16.1's unconditional
zstandard==0.22.0 transitive pin -- that wheel only ships cp310-cp312,
no cp313. Stepping down to python=3.12 keeps the rest of the axolotl
0.16.1 pin chain (torch==2.8.0, transformers==5.5.0, accelerate==1.13.0,
bitsandbytes==0.49.1, datasets==4.5.0, trl==0.29.0) resolvable from
pre-built wheels.

Also:

- Drop auto-gptq and autoawq. auto-gptq's sdist runs `import torch`
  at build-deps phase before torch is installed, breaking the env.
  autoawq has the same kind of issue. Neither is referenced by any
  saturncloud code; vllm handles GPTQ/AWQ checkpoint loading via
  compressed-tensors without these libs.
- Bump flash_attn to v2.8.3 with the cu12torch2.8 cp312 wheel. The
  cu12torch2.7 wheel was ABI-incompatible with torch 2.8.0 (undefined
  symbol _ZN3c104cuda9SetDeviceEa). v2.8.3 is the version axolotl
  0.16.1 itself wants under its flash-attn extra.

Verified locally: env builds cleanly, all heavy imports (torch,
transformers, axolotl, flash_attn, vllm, peft, trl, datasets,
accelerate, bitsandbytes) succeed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hhuuggoo hhuuggoo merged commit b22fa1e into release-2026.05.01 May 28, 2026
@hhuuggoo hhuuggoo deleted the hugo/llm-python-3.12 branch May 28, 2026 19:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant