Working setup with runnable PyTorch on Codex. (#159968)

Sample transcript: https://chatgpt.com/s/cd_68938effc1a88191ae78bc82a8cefe94

This makes use of https://github.com/pytorch/pytorch/pull/159965 to bypass doing an actual build and use nightly.

Things to improve:
- Once USE_NIGHTLY is in main can remove the patching
- We should just keep using the latest nightly, instead of a hard coded one

Signed-off-by: Edward Yang <ezyang@meta.com>
Pull Request resolved: https://github.com/pytorch/pytorch/pull/159968
Approved by: https://github.com/wdvr
This commit is contained in:
Edward Yang
2025-08-06 14:03:11 -07:00
committed by PyTorch MergeBot
parent 62bac07981
commit 9fa8ce26cf
2 changed files with 34 additions and 0 deletions

18
codex_setup.sh Executable file
View File

@ -0,0 +1,18 @@
set -ex
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
uv pip install numpy
lintrunner init
NIGHTLY_PATCH=$(curl -s https://github.com/pytorch/pytorch/commit/nightly.patch | head -n20)
COMMIT=$(grep -oE '[0-9a-f]{40}' <<< "$NIGHTLY_PATCH" | head -1)
COMMIT_DATE=$(echo "$NIGHTLY_PATCH" | grep '^Date:' | sed -E 's/Date: .*, ([0-9]+) ([A-Za-z]+) ([0-9]+) .*/\3 \2 \1/' | awk 'BEGIN{split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec", months, " "); for(i=1;i<=12;i++) month[months[i]]=sprintf("%02d",i)} {print $1 month[$2] sprintf("%02d",$3)}')
VERSION_STRING="2.9.0.dev${COMMIT_DATE}+cpu"
git rev-parse HEAD > /tmp/orig_work.txt
cp AGENTS.md /tmp
git reset --hard $COMMIT
cp /tmp/AGENTS.md .
curl https://patch-diff.githubusercontent.com/raw/pytorch/pytorch/pull/159965.diff | patch -p1
USE_NIGHTLY=$VERSION_STRING python setup.py develop
git commit -asm "Agents patch"
echo "source $PWD/.venv/bin/activate" >> ~/.bashrc