Spaces:
Sleeping
Sleeping
# modules/config_loader.py | |
import json | |
from pathlib import Path | |
from utils.logger import log | |
class ConfigLoader: | |
def __init__(self, config_dir: Path = Path("./config")): | |
self.config_dir = config_dir | |
self.cities = {} | |
self.personas = {} | |
self.interests = {} | |
try: | |
self._load_all() | |
log.info("✅ 所有配置文件加载成功") | |
except Exception as e: | |
log.error(f"❌ 配置文件加载失败: {e}", exc_info=True) | |
raise | |
def _load_all(self): | |
# 加载城市 | |
with open(self.config_dir / "cities.json", 'r', encoding='utf-8') as f: | |
cities_data = json.load(f) | |
for city in cities_data['cities']: | |
for alias in [city['name']] + city.get('aliases', []): | |
self.cities[alias.lower()] = city | |
# 加载 personas | |
with open(self.config_dir / "personas.json", 'r', encoding='utf-8') as f: | |
self.personas = json.load(f)['personas'] | |
# 加载兴趣 | |
with open(self.config_dir / "interests.json", 'r', encoding='utf-8') as f: | |
self.interests = json.load(f)['interests'] | |