Skip to content

Commit cacefd3

Browse files
Jonathan Harrisonclaude
andcommitted
Fix HF Jobs training wrapper script path resolution
Previous job failed with FileNotFoundError because wrapper was looking for train_hf_job.py in /data/ instead of /data/training/ Changes: - Updated train_hf_job_with_deps.py to search multiple paths - Added better error handling and path detection - Now tries: /data/training/, /workspace/training/, ./training/ New job ID: 6a0fedd0e3c0b51e1ca5d298 Status: RUNNING Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 5a27999 commit cacefd3

2 files changed

Lines changed: 38 additions & 9 deletions

File tree

hf_job_info.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"job_id": "6a0fed3cb33ece92698c00ff",
2+
"job_id": "6a0fedd0e3c0b51e1ca5d298",
33
"status": "JobStatus(stage='RUNNING', message=None)",
4-
"url": "https://huggingface.co/jobs/Raiff1982/6a0fed3cb33ece92698c00ff",
4+
"url": "https://huggingface.co/jobs/Raiff1982/6a0fedd0e3c0b51e1ca5d298",
55
"repo": "Raiff1982/codette-lora-adapters",
66
"base_model": "Raiff1982/codette-llama-3.1-8b-merged",
77
"dataset": "constraint_tracking.jsonl",

training/train_hf_job_with_deps.py

Lines changed: 36 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def setup_environment():
4242
print(f"\nWARNING: Installation had issues")
4343
print(f"stderr: {result.stderr[:500]}")
4444
else:
45-
print("\n✓ All packages installed successfully!")
45+
print("\nAll packages installed successfully!")
4646

4747
# Verify critical imports
4848
print("\nVerifying imports...")
@@ -51,9 +51,9 @@ def setup_environment():
5151
import transformers
5252
import peft
5353
import datasets
54-
print("All critical imports successful!")
54+
print("All critical imports successful!")
5555
except ImportError as e:
56-
print(f"Import verification failed: {e}")
56+
print(f"Import verification failed: {e}")
5757
sys.exit(1)
5858

5959
if __name__ == "__main__":
@@ -65,9 +65,38 @@ def setup_environment():
6565
print("Starting Constraint-Tracker LoRA Training")
6666
print("=" * 60 + "\n")
6767

68-
# Import and run training script
69-
import json
70-
os.environ.get("HF_TOKEN") # Verify token is set
68+
# Verify HF token
69+
hf_token = os.environ.get("HF_TOKEN")
70+
if not hf_token:
71+
print("ERROR: HF_TOKEN environment variable not set")
72+
sys.exit(1)
73+
74+
# Read and execute the training script directly
75+
# In HF Jobs, the script is in /data/training/train_hf_job.py
76+
script_paths = [
77+
"/data/training/train_hf_job.py",
78+
"/workspace/training/train_hf_job.py",
79+
"./training/train_hf_job.py",
80+
]
81+
82+
script_content = None
83+
script_path = None
84+
85+
for path in script_paths:
86+
try:
87+
with open(path, 'r') as f:
88+
script_content = f.read()
89+
script_path = path
90+
print(f"Found training script: {script_path}\n")
91+
break
92+
except FileNotFoundError:
93+
continue
94+
95+
if script_content is None:
96+
print(f"ERROR: Could not find training script in any of:")
97+
for path in script_paths:
98+
print(f" - {path}")
99+
sys.exit(1)
71100

72101
# Execute the training script
73-
exec(open(__file__.replace("train_hf_job_with_deps.py", "train_hf_job.py")).read())
102+
exec(script_content)

0 commit comments

Comments
 (0)