| | #!/bin/bash |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | export PYTHONUNBUFFERED=1 |
| | export HF_DATASETS_OFFLINE=1 |
| | export TRANSFORMERS_OFFLINE=1 |
| | export CUDA_LAUNCH_BLOCKING=1 |
| |
|
| | |
| | set -e |
| |
|
| | |
| | |
| |
|
| | |
| | if [ ! -d "venv" ]; then |
| | echo "Creating venv..." |
| | python3 -m venv venv |
| | source venv/bin/activate |
| | pip install --upgrade pip |
| | pip install -e . |
| | else |
| | source venv/bin/activate |
| | fi |
| |
|
| | |
| | MODEL_DIR="./output_chess_model" |
| | mkdir -p logs |
| |
|
| | echo "============================================" |
| | echo "Starting Chess Training Pipeline" |
| | echo "Job ID: $SLURM_JOB_ID" |
| | echo "Output Dir: $MODEL_DIR" |
| | echo "============================================" |
| |
|
| | |
| | echo "[1/2] Starting Training..." |
| | python -m src.train \ |
| | --output_dir $MODEL_DIR \ |
| | --num_train_epochs 3 \ |
| | --per_device_train_batch_size 64 \ |
| | --save_steps 2000 |
| |
|
| | |
| | echo "--------------------------------------------" |
| | echo "[2/2] Starting Evaluation..." |
| |
|
| | |
| | echo "Running legal move evaluation..." |
| | python -m src.evaluate \ |
| | --model_path "${MODEL_DIR}/final_model" \ |
| | --mode legal \ |
| | --n_positions 1000 |
| |
|
| | |
| | echo "Running win rate check vs Stockfish..." |
| | python -m src.evaluate \ |
| | --model_path "${MODEL_DIR}/final_model" \ |
| | --mode winrate \ |
| | --n_games 50 \ |
| | --stockfish_level 1 |
| |
|
| | echo "============================================" |
| | echo "Pipeline Completed!" |
| |
|