from dataclasses import dataclass from pathlib import Path from typing import List @dataclass(frozen=True) class articleLoaderConfig: file_path: Path summary_save_dir: Path @dataclass(frozen=True) class SubmittedDateConfig: start_date: str end_date: str @dataclass(frozen=True) class ArticleSearchConfig: search_terms: List[str] num_results: int date_range: SubmittedDateConfig sort_by: str sort_order: str @dataclass(frozen=True) class PlannerConfig: model_name: str @dataclass(frozen=True) class QaToolConfig: model_name: str @dataclass(frozen=True) class SolverConfig: model_name: str @dataclass(frozen=True) class PlannerParserConfig: tool_list_model: str argument_list_model: str dependency_list_model: str