|
""" |
|
μΆμ² μμ€ν
λ©μΈ μ€ν μ€ν¬λ¦½νΈ |
|
μ΄κΈ° νμ΅ λλ μΆκ° νμ΅μ μ€ννλ μ§μ
μ |
|
""" |
|
|
|
import os |
|
import sys |
|
import argparse |
|
from datetime import datetime |
|
|
|
|
|
current_dir = os.path.dirname(os.path.abspath(__file__)) |
|
sys.path.append(current_dir) |
|
|
|
|
|
try: |
|
from initial_training import run_initial_training |
|
from incremental_training import run_incremental_training |
|
except ImportError: |
|
|
|
try: |
|
from scripts.initial_training import run_initial_training |
|
from scripts.incremental_training import run_incremental_training |
|
except ImportError: |
|
print("β μ€λ₯: initial_training λλ incremental_training λͺ¨λμ μ°Ύμ μ μμ΅λλ€.") |
|
print("νλ‘μ νΈ κ΅¬μ‘°λ₯Ό νμΈν΄μ£ΌμΈμ.") |
|
sys.exit(1) |
|
|
|
|
|
def main(): |
|
"""λ©μΈ ν¨μ: λͺ
λ Ήν μΈμλ₯Ό νμ±νκ³ μ μ ν νμ΅ λͺ¨λ μ€ν""" |
|
parser = argparse.ArgumentParser(description='μΆμ² μμ€ν
νμ΅ μ€ν¬λ¦½νΈ') |
|
parser.add_argument('--mode', type=str, choices=['initial', 'incremental'], default='incremental', |
|
help='νμ΅ λͺ¨λ: initial (μ΄κΈ° νμ΅) λλ incremental (μΆκ° νμ΅)') |
|
parser.add_argument('--window', type=int, default=30, |
|
help='μΆκ° νμ΅ μ μ μ§ν λ°μ΄ν°μ μΌμ (κΈ°λ³Έκ°: 30μΌ)') |
|
args = parser.parse_args() |
|
|
|
|
|
if not os.getenv("HF_API_TOKEN"): |
|
print("β μ€λ₯: νκ²½ λ³μ HF_API_TOKENμ΄ μ€μ λμ§ μμμ΅λλ€.") |
|
print(" Hugging Face API ν ν°μ νκ²½ λ³μλ‘ μ€μ ν΄μ£ΌμΈμ.") |
|
return 1 |
|
|
|
|
|
print(f"π
μ€ν μκ°: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}") |
|
|
|
|
|
if args.mode == 'initial': |
|
print("π μ΄κΈ° νμ΅ λͺ¨λλ‘ μ€νν©λλ€.") |
|
success = run_initial_training() |
|
else: |
|
print(f"π μΆκ° νμ΅ λͺ¨λλ‘ μ€νν©λλ€. (μλμ° ν¬κΈ°: {args.window}μΌ)") |
|
success = run_incremental_training(args.window) |
|
|
|
|
|
if success: |
|
print("β
νμ΅μ΄ μ±κ³΅μ μΌλ‘ μλ£λμμ΅λλ€. νλ‘κ·Έλ¨μ μ’
λ£ν©λλ€.") |
|
sys.exit(0) |
|
else: |
|
print("β νμ΅ μ€ μ€λ₯κ° λ°μνμ΅λλ€. νλ‘κ·Έλ¨μ μ’
λ£ν©λλ€.") |
|
sys.exit(1) |
|
|
|
if __name__ == "__main__": |
|
sys.exit(main()) |