mirror of
https://github.com/microsoft/SkillOpt.git
synced 2026-07-03 14:02:58 +08:00
- Rename teacher -> optimizer, student -> target across all code, configs, docs, prompts - CLI: --teacher_model -> --optimizer_model, --student_model -> --target_model - Remove best_skill files, keep only initial skills - Fix slow update gate (force write into skill) - Fix SLOW_UPDATE marker stripping - Remove deep_reflect and meta_reflect mechanisms - Update .env.example with export prefix and azure_cli docs - Add endpoint empty validation in azure_openai.py Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
61 lines
2.3 KiB
Bash
Executable File
61 lines
2.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# ──────────────────────────────────────────────────────────────────────────────
|
|
# SkillOpt — ALFWorld training launch script
|
|
#
|
|
# Prerequisites:
|
|
# pip install -e ".[alfworld]"
|
|
# pip install alfworld[full] && alfworld-download
|
|
#
|
|
# Usage:
|
|
# bash scripts/run_alfworld.sh
|
|
# bash scripts/run_alfworld.sh --num_epochs 2 --edit_budget 6
|
|
# bash scripts/run_alfworld.sh --split_dir /path/to/alfworld_split
|
|
# ──────────────────────────────────────────────────────────────────────────────
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
PROJECT_ROOT="$(dirname "${SCRIPT_DIR}")"
|
|
|
|
export PYTHONPATH="${PROJECT_ROOT}:${PYTHONPATH:-}"
|
|
|
|
# ALFWorld data — uses ~/.cache/alfworld by default
|
|
export ALFWORLD_DATA="${ALFWORLD_DATA:-${HOME}/.cache/alfworld}"
|
|
|
|
if [ ! -d "${ALFWORLD_DATA}/json_2.1.1" ]; then
|
|
echo "ERROR: ALFWorld data not found at ${ALFWORLD_DATA}/json_2.1.1"
|
|
echo ""
|
|
echo "To download ALFWorld data, run:"
|
|
echo " pip install alfworld[full]"
|
|
echo " alfworld-download"
|
|
echo ""
|
|
echo "Or set ALFWORLD_DATA to the directory containing json_2.1.1/"
|
|
exit 1
|
|
fi
|
|
|
|
OPTIMIZER_MODEL="${OPTIMIZER_MODEL:-gpt-5.5}"
|
|
TARGET_MODEL="${TARGET_MODEL:-gpt-5.5}"
|
|
|
|
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
|
DEFAULT_OUT_ROOT="${PROJECT_ROOT}/outputs/skillopt_alfworld_${TARGET_MODEL}_${TIMESTAMP}"
|
|
|
|
echo "============================================================"
|
|
echo " SkillOpt — ALFWorld Training"
|
|
echo "============================================================"
|
|
echo " Optimizer: ${OPTIMIZER_MODEL}"
|
|
echo " Target: ${TARGET_MODEL}"
|
|
echo " ALFWORLD_DATA: ${ALFWORLD_DATA}"
|
|
echo " Output: ${DEFAULT_OUT_ROOT}"
|
|
echo "============================================================"
|
|
|
|
cd "${PROJECT_ROOT}"
|
|
|
|
python scripts/train.py \
|
|
--config configs/alfworld/default.yaml \
|
|
--optimizer_model "${OPTIMIZER_MODEL}" \
|
|
--target_model "${TARGET_MODEL}" \
|
|
--out_root "${DEFAULT_OUT_ROOT}" \
|
|
"$@"
|
|
|
|
echo ""
|
|
echo "Done! Results saved to: ${DEFAULT_OUT_ROOT}"
|