saturn-python-llm: pin python=3.12 (axolotl 0.16.1 transitive blocker)#474
Merged
Conversation
…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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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 topython=3.12lets 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:
auto-gptqandautoawq.auto-gptq's sdist runsimport torchat build-deps phase before torch is installed, breaking the env.autoawqhas the same kind of issue. Neither is referenced anywhere in saturncloud code; vllm handles GPTQ/AWQ checkpoint loading viacompressed-tensorswithout these libs.flash_attnwheel to v2.8.3 / cu12torch2.8 / cp312. Axolotl 0.16.1 forcestorch==2.8.0, but the previously pinnedflash_attn-2.8.0.post2+cu12torch2.7wheel is ABI-incompatible with torch 2.8 (undefined symbol: _ZN3c104cuda9SetDeviceEa). v2.8.3 is also the version axolotl 0.16.1 itself targets under itsflash-attnextra, 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