from __future__ import annotations from pathlib import Path PROJECT_ROOT = Path(__file__).resolve().parents[2] MODEL_ID = "Broken_Code_Generation.1.0" BASE_MODEL_ID = "Qwen/Qwen2.5-Coder-3B-Instruct" ADAPTER_DIR = PROJECT_ROOT / "outputs" / "qwen25-coder-3b-qlora" TRAINER_STATE = ADAPTER_DIR / "checkpoint-501" / "trainer_state.json" EVAL_FILE = PROJECT_ROOT / "prepared_data" / "test.json" HUMAN_EVAL_SAMPLES = 40 GEN_TEMPERATURE = 0.2 GEN_TOP_P = 0.95 GEN_MAX_NEW_TOKENS = 1200 GEN_SEED = 42 DEFAULT_EVAL_LIMIT = 100 METRICS_OUT_DIR = PROJECT_ROOT / "outputs" / "metrics" / "broken_code_generation" FILE_TRAINING = "01_training_perplexity.json" FILE_JSON_VALIDITY = "02_json_validity.json" FILE_BLEU_ROUGE = "03_bleu_rouge.json" FILE_CODE = "04_code_metrics.json" FILE_HUMAN = "05_human_evaluation.json" FILE_APPENDIX_JSON = "appendix_full.json" FILE_APPENDIX_TXT = "appendix_full.txt"