vanishingradient commited on
Commit
dfbd12e
·
verified ·
1 Parent(s): 176c299

Add kaggle/train_grpo.py

Browse files
Files changed (1) hide show
  1. kaggle/train_grpo.py +16 -11
kaggle/train_grpo.py CHANGED
@@ -47,15 +47,8 @@ def _truncate_preview(obj: Any, n: int = 400) -> str:
47
 
48
 
49
  def _ensure_package() -> None:
 
50
  _vlog("bootstrap.ensure_package.begin")
51
- try:
52
- import deepagents_rl # noqa: F401
53
-
54
- _vlog("bootstrap.ensure_package.already_importable")
55
- return
56
- except ImportError:
57
- _vlog("bootstrap.ensure_package.download_from_hf")
58
-
59
  token = os.environ.get("HF_TOKEN")
60
  if not token:
61
  raise RuntimeError("HF_TOKEN required to download deepagents_rl sources")
@@ -63,6 +56,7 @@ def _ensure_package() -> None:
63
  from huggingface_hub import snapshot_download
64
 
65
  root = Path("/kaggle/working/deepagents_rl_src")
 
66
  snapshot_download(
67
  repo_id=os.getenv("HF_REPO_ID", "vanishingradient/deepagents-rl-coding"),
68
  repo_type="model",
@@ -72,11 +66,22 @@ def _ensure_package() -> None:
72
  force_download=True,
73
  )
74
  pkg_parent = root / "src"
75
- if str(pkg_parent) not in sys.path:
76
- sys.path.insert(0, str(pkg_parent))
 
 
 
 
 
77
  import deepagents_rl # noqa: F401
 
78
 
79
- _vlog("bootstrap.ensure_package.done", path=str(pkg_parent))
 
 
 
 
 
80
 
81
 
82
  # ---------------------------------------------------------------------------
 
47
 
48
 
49
  def _ensure_package() -> None:
50
+ """Always refresh deepagents_rl from HF so Kaggle never runs a stale copy."""
51
  _vlog("bootstrap.ensure_package.begin")
 
 
 
 
 
 
 
 
52
  token = os.environ.get("HF_TOKEN")
53
  if not token:
54
  raise RuntimeError("HF_TOKEN required to download deepagents_rl sources")
 
56
  from huggingface_hub import snapshot_download
57
 
58
  root = Path("/kaggle/working/deepagents_rl_src")
59
+ _vlog("bootstrap.ensure_package.download_from_hf", local_dir=str(root))
60
  snapshot_download(
61
  repo_id=os.getenv("HF_REPO_ID", "vanishingradient/deepagents-rl-coding"),
62
  repo_type="model",
 
66
  force_download=True,
67
  )
68
  pkg_parent = root / "src"
69
+ # Prefer the freshly downloaded tree over any earlier import.
70
+ while str(pkg_parent) in sys.path:
71
+ sys.path.remove(str(pkg_parent))
72
+ sys.path.insert(0, str(pkg_parent))
73
+ for mod in list(sys.modules):
74
+ if mod == "deepagents_rl" or mod.startswith("deepagents_rl."):
75
+ del sys.modules[mod]
76
  import deepagents_rl # noqa: F401
77
+ from deepagents_rl.train import swe_env as _swe_env
78
 
79
+ _vlog(
80
+ "bootstrap.ensure_package.done",
81
+ path=str(pkg_parent),
82
+ swe_env=str(Path(_swe_env.__file__).resolve()),
83
+ has_phantom_alias=hasattr(_swe_env, "_PHANTOM_DIRS"),
84
+ )
85
 
86
 
87
  # ---------------------------------------------------------------------------