게시판바둑 on-policy 학습: 대국 로그를 KataGo 라벨로 바꾸기예제 소스

예제 소스

바둑 on-policy 학습: 대국 로그를 KataGo 라벨로 바꾸기 · 파일 169개

pass_study_chain.sh

#!/usr/bin/env bash
# 휴리스틱(흑) vs R5(백) 무제한 대국 → SQLite/서버 jsonl로 PASS 원인 기록 →
# 대국 국면 KataGo 라벨 데이터 → R5 기반 LoRA 추가 학습.
#   bash scripts/pass_study_chain.sh [out_dir] [games]
set -euo pipefail
cd "$(dirname "$0")/.."
OUT="${1:-logs/heuristic_r5_sqlite_nolimit_20261007}"
GAMES="${2:-20}"
PY=.venv/bin/python
mkdir -p "$OUT"
log() { echo "[chain $(date '+%F %T')] $*" | tee -a "$OUT/CHAIN.log"; }

log "대국 시작 games=$GAMES out=$OUT"
rc=0
$PY scripts/monitor_mariago_web_play.py --ws-url ws://127.0.0.1:9320 --games "$GAMES" \
  --max-moves 0 --pass-recheck --katago-judge --timeout-s 240 --sleep-s 2 --out-dir "$OUT" \
  >>"$OUT/monitor.log" 2>&1 || rc=$?
log "대국 종료 rc=$rc"

$PY scripts/pass_study_report.py --db "$OUT/matches.sqlite" --out "$OUT/PASS_REPORT.md" >>"$OUT/CHAIN.log" 2>&1 || log "리포트 실패"

log "데이터 생성 (KataGo 라벨)"
$PY -m vlm_server.dataset_onpolicy --db "$OUT/matches.sqlite" --out sft_data/onpolicy_v1 \
  >>"$OUT/dataset.log" 2>&1
log "데이터 완료: $(cat sft_data/onpolicy_v1/stats.json | tr -d '\n' | cut -c1-400)"

log "학습 시작 (운영 VLM 중지 → 끝나면 재기동, 어댑터 교체 없음)"
rc=0
$PY scripts/train_ladder_lora.py --shape onpolicy --stop-vlm --shape-n 1200 \
  --base vlm_models/lora_mix_qwen_r5 --out vlm_models/lora_onpolicy_qwen_v1 \
  >>"$OUT/train.log" 2>&1 || rc=$?
log "학습 종료 rc=$rc — logs/onpolicy/TRAIN_STATUS.md"