Files
qwen3-6-lora/.gitignore
T
aleleba 363648fb5f Phase 6.4.21: version the LoRA #2 adapter (Penpot design capability)
171 steps (901 examples / 16 grad-accum * 3 epochs, ceil-rounded, not the
168 the plan estimated with floor), trained decoupled on spark against
the merged bf16 checkpoint that already has LoRA #1 folded in. No OOM,
no aborts: train_runtime 24370s (~6h46m, within the ~7.3h projection),
eval_loss 0.6306, peak CUDA 74.58GB, trainable% 0.1220 (matches phase 3
exactly).

adapter_config.json confirms the guarded hyperparameters: use_rslora
and use_dora both false, lora_bias false, modules_to_save null, r=32,
lora_alpha=64 -- the combination 20_merge_lora.py's scaling math
depends on.

Weights never touched the worktree: OUTPUT_DIR was
/workspace/ft-models/lora-adapter-penpot on spark (outside the
worktree, root-owned by the training container), copied out via
`docker exec cat` piped to a non-root file and verified by matching
sha256 (79167dfa...) before landing here. Intermediate checkpoint-*/
directories stay on spark; only the final adapter is versioned, same
as phase 3's out/lora-adapter/, which this leaves untouched.

.gitignore was missing the negation lines for out/lora-adapter-penpot/
despite already documenting that the final adapter should be
committed -- added the same two exceptions that out/lora-adapter/ has.
2026-07-31 12:43:45 +00:00

31 lines
934 B
Plaintext

data/raw/*
!data/raw/.gitkeep
!data/raw/replay.jsonl
!data/raw/sanitized/
!data/raw/seeds/
data/raw/.secrets_map.json
out/*.safetensors
out/lora-adapter/checkpoint-*/
*.safetensors
*.bin
*.pt
!out/lora-adapter/adapter_model.safetensors
!out/lora-adapter/training_args.bin
!out/lora-adapter-penpot/adapter_model.safetensors
!out/lora-adapter-penpot/training_args.bin
__pycache__/
*.pyc
.ipynb_checkpoints/
.env
.worktrees/
# Fase 6: checkpoints intermedios del LoRA #2. El adapter final
# (out/lora-adapter-penpot/adapter_model.safetensors, ~169 MB) SI se commitea, igual que el de
# la Fase 3; los checkpoint-*/ del Trainer son decenas de GB y viven solo en spark.
out/lora-adapter-penpot/checkpoint-*/
out/*/checkpoint-*/
# Partes intermedias del corpus de seeds: se concatenan a data/raw/seeds/penpot.jsonl, que es
# el artefacto versionado. Mantener las partes sueltas invita a editar la copia equivocada.
data/raw/seeds/_parts/