FannyFa-Model-V1 / config.py
FannyFa's picture
Upload 16 files
3eecd6b verified
Raw History Blame Contribute Delete
2.16 kB
import os
import torch
from pathlib import Path
BASE_DIR = Path.cwd()
DIRECTORIES = {
"models": "models",
"data": "data",
"checkpoints": "checkpoints",
"logs": "logs",
"cache": "cache",
"temp": "temp",
"exports": "exports",
"backups": "backups",
"plots": "plots",
"history": "history",
"tests": "tests",
"adapters": "adapters",
"results": "results",
"configs": "configs",
"vocab": "vocab",
"tokenizers": "tokenizers",
"datasets": "datasets",
"notebooks": "notebooks",
"scripts": "scripts",
}
for dir_name, dir_path in DIRECTORIES.items():
Path(dir_path).mkdir(exist_ok=True)
LOG_DIR = DIRECTORIES["logs"]
CACHE_DIR = DIRECTORIES["cache"]
DATA_DIR = DIRECTORIES["data"]
TEMP_DIR = DIRECTORIES["temp"]
MODEL_DIR = DIRECTORIES["models"]
CHECKPOINT_DIR = DIRECTORIES["checkpoints"]
EXPORT_DIR = DIRECTORIES["exports"]
PLOT_DIR = DIRECTORIES["plots"]
CONFIG_FILE = "config.json"
CHAT_HISTORY_FILE = "chat_history.json"
CONFIG_BACKUP_FILE = "config_backup.json"
TRAINING_STATE_FILE = "training_state.pkl"
METADATA_FILE = "metadata.json"
PERFORMANCE_FILE = "performance.json"
ERROR_LOG_FILE = "error.log"
TRAINING_LOG_FILE = "training.log"
CHAT_LOG_FILE = "chat.log"
SYSTEM_LOG_FILE = "system.log"
EVAL_LOG_FILE = "eval.log"
TEST_LOG_FILE = "test.log"
DEBUG_LOG_FILE = "debug.log"
DEFAULT_MEMORY_LIMIT_GB = 32.0 if torch.cuda.is_available() else 16.0
DEFAULT_SEQ_LEN = 512
DEFAULT_BATCH_SIZE = 2
DEFAULT_LEARNING_RATE = 5e-5
DEFAULT_EPOCHS = 3
DEFAULT_WARMUP_RATIO = 0.1
MAX_CONTEXT_TOKENS = 2048
MAX_GENERATION_TOKENS = 256
SAFETY_BUFFER_TOKENS = 50
TEMPERATURE_DEFAULT = 0.7
TOP_P_DEFAULT = 0.9
TOP_K_DEFAULT = 40
REPETITION_PENALTY_DEFAULT = 1.15
NO_REPEAT_NGRAM_SIZE_DEFAULT = 3
SUPPORTED_FORMATS = ('.txt', '.json', '.jsonl', '.csv', '.parquet', '.arrow', '.tsv', '.json.gz', '.jsonl.gz')
STREAMING_FORMATS = ('.txt', '.jsonl', '.csv', '.parquet', '.tsv')
CONVERSATION_FORMATS = ('.txt', '.json', '.jsonl', '.csv')
DEFAULT_MODEL = "Qwen/Qwen2.5-1.5B-Instruct"
FALLBACK_MODEL = "gpt2"
PROGRESS_UPDATE_INTERVAL = 0.5
LOG_INTERVAL = 10
SAVE_INTERVAL = 100
EVAL_INTERVAL = 50