• Stefy Lanza (nextime / spora )'s avatar
    longcat: the training venv needs 3.12+, not the inference venv's 3.10 (v0.2.56) · f0d8f6f4
    Stefy Lanza (nextime / spora ) authored
    The new diagnostics earned their keep immediately. Last run said only "returned
    non-zero exit status 1"; this one said:
    
      ERROR: Could not find a version that satisfies the requirement simpletuner
             (from versions: none)
      ERROR: No matching distribution found for simpletuner
    
    which reads like the package does not exist. It does. The line above it is the
    real one: "Ignored the following versions that require a different python
    version: … Requires-Python >=3.12,<3.14". SimpleTuner 4.9.3 needs >=3.12,<3.15,
    pip was being run under 3.10, so every release was filtered out and the remainder
    was none.
    
    My error. The 3.10 pin belongs to the INFERENCE venv — torch 2.6+cu124,
    transformers 4.41, numpy 1.26 — and I applied it to the training venv, which wants
    the opposite. They are separate venvs precisely because their requirements
    conflict; sharing an interpreter finder was the bug.
    
    ensure_train_built now picks an interpreter SimpleTuner can install into: a
    configured longcat.train_python, else this process's own (3.13, which satisfies
    >=3.12,<3.15), else python3.13/3.12 on PATH. So the training venv — unlike the
    inference one — needs nothing bundled and nothing provisioned. The manual
    instructions in the non-auto branch said python3.10 too; they now say 3.12+.
    
    Also renamed _py310_env to _clean_py_env, since it now guards a 3.13 child as well
    as the 3.10 one.
    
    The venv itself WAS created this time, so the earlier "No module named
    'encodings'" did not recur — whether the stripped environment fixed it or it was
    transient, I still cannot say.
    
    17 tests, including that ensure_train_built never reaches for the 3.10 finder.
    Co-Authored-By: 's avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_0182DhR1eFNPQyGmDrpHbedY
    f0d8f6f4
config.py 101 KB