{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "3ef222e5", "metadata": {}, "outputs": [], "source": [ "import os" ] }, { "cell_type": "code", "execution_count": 3, "id": "186dcb71", "metadata": {}, "outputs": [], "source": [ "%pwd\n", "os.chdir('../')" ] }, { "cell_type": "code", "execution_count": 4, "id": "3f4eb483", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'c:\\\\order\\\\Desktop\\\\AI_Summarizer'" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%pwd" ] }, { "cell_type": "code", "execution_count": 10, "id": "b36d364e", "metadata": {}, "outputs": [], "source": [ "from dataclasses import dataclass\n", "from pathlib import Path\n", "\n", "@dataclass(frozen=True)\n", "class DataValidationConfig:\n", " root_dir : Path\n", " STATUS_FILE : str\n", " ALL_REQUIRED_FILES : list" ] }, { "cell_type": "code", "execution_count": 11, "id": "05be5b22", "metadata": {}, "outputs": [], "source": [ "from textSummarizer.constants import *\n", "from textSummarizer.utils.common import read_yaml, create_directories" ] }, { "cell_type": "code", "execution_count": 12, "id": "5d9f3fbe", "metadata": {}, "outputs": [], "source": [ "class ConfigurationManager:\n", " def __init__(\n", " self,\n", " config_filepath: str = CONFIG_FILE_PATH,\n", " params_filepath: str = PARAMS_FILE_PATH):\n", " \n", " self.config = read_yaml(config_filepath)\n", " self.params = read_yaml(params_filepath)\n", " \n", " create_directories([self.config.artifacts_root])\n", " \n", " \n", " def get_data_validation_config(self) -> DataValidationConfig:\n", " config = self.config.data_validation\n", " \n", " create_directories([config.root_dir])\n", " \n", " data_validation_config = DataValidationConfig(\n", " root_dir=config.root_dir,\n", " STATUS_FILE=config.STATUS_FILE,\n", " ALL_REQUIRED_FILES=config.ALL_REQUIRED_FILES,\n", " )\n", " \n", " return data_validation_config\n", " " ] }, { "cell_type": "code", "execution_count": 9, "id": "7cca78e6", "metadata": {}, "outputs": [], "source": [ "import os\n", "from textSummarizer.logging import logger" ] }, { "cell_type": "code", "execution_count": 13, "id": "6cd0042a", "metadata": {}, "outputs": [], "source": [ "class DataValidation:\n", " def __init__(self, config: DataValidationConfig):\n", " self.config = config\n", " \n", " \n", " \n", " def validate_all_files_exists(self) -> bool:\n", " try:\n", " validation_status = None\n", " \n", " all_files = os.listdir(os.path.join(\"artifacts\" , \"data_ingestion\" , \"samsum_dataset\"))\n", " \n", " for file in all_files:\n", " if file not in self.config.ALL_REQUIRED_FILES:\n", " validation_status = False\n", " with open(self.config.STATUS_FILE, 'w') as f:\n", " f.write(f\"Validation status: {validation_status}\")\n", " else:\n", " validation_status = True\n", " with open(self.config.STATUS_FILE, 'w') as f:\n", " f.write(f\"Validation status: {validation_status}\")\n", " \n", " return validation_status\n", " \n", " except Exception as e:\n", " raise e" ] }, { "cell_type": "code", "execution_count": 14, "id": "38fa96fd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[2025-06-26 05:05:39,842: INFO: common : yaml. file: config\\config.yaml loaded successfully. ]\n", "[2025-06-26 05:05:39,847: INFO: common : yaml. file: params.yaml loaded successfully. ]\n", "[2025-06-26 05:05:39,848: INFO: common : created directory at path : artifacts_root ]\n", "[2025-06-26 05:05:39,849: INFO: common : created directory at path : artifacts/data_validation ]\n" ] } ], "source": [ "try:\n", " config = ConfigurationManager()\n", " data_validation_config = config.get_data_validation_config()\n", " data_validation = DataValidation(data_validation_config)\n", " data_validation.validate_all_files_exists()\n", "except Exception as e:\n", " raise e" ] } ], "metadata": { "kernelspec": { "display_name": "textSummarizer", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.13" } }, "nbformat": 4, "nbformat_minor": 5 }