Sentence-Translator / src /tests /test_sentence_translator.py
VashuTheGreat2's picture
Upload folder using huggingface_hub
b758d48 verified
Raw
History Blame Contribute Delete
2.42 kB
import asyncio
import sys
import os
# Add project root to path such that no error world come src not found
sys.path.append(os.getcwd())
from src.logger import logging
from src.exception import MyException
from src.pipelines.Data_Ingestion_Pipeline import DataIngestionPipeline
from src.pipelines.Data_Validation_Pipeline import DataValidationPipeline
from src.pipelines.Data_Transformation_Pipeline import DataTransformationPipeline
from src.pipelines.Model_Training_Pipeline import ModelTrainingPipeline
async def run_pipeline():
try:
logging.info("Starting the full training pipeline test")
# Data Ingestion
logging.info("--- Data Ingestion Phase ---")
ingestion_pipeline = DataIngestionPipeline()
data_ingestion_artifact = await ingestion_pipeline.initiate_data_ingestion()
logging.info(f"Data ingestion completed: {data_ingestion_artifact}")
# Data Validation
logging.info("--- Data Validation Phase ---")
validation_pipeline = DataValidationPipeline()
data_validation_artifact = await validation_pipeline.initiate_data_validation(
data_ingestion_artifact=data_ingestion_artifact
)
logging.info(f"Data validation completed: {data_validation_artifact}")
# Data Transformation
logging.info("--- Data Transformation Phase ---")
transformation_pipeline = DataTransformationPipeline()
data_transformation_artifact = await transformation_pipeline.initiate_data_transformation(
data_ingestion_artifact=data_ingestion_artifact
)
logging.info(f"Data transformation completed: {data_transformation_artifact}")
# Model Training
logging.info("--- Model Training Phase ---")
training_pipeline = ModelTrainingPipeline()
model_trainer_artifact = await training_pipeline.initiate_model_training(
data_transformation_artifact=data_transformation_artifact
)
logging.info(f"Model training completed: {model_trainer_artifact}")
logging.info("Full training pipeline test completed successfully")
print("\nPipeline execution successful!")
print(f"Final Artifact: {model_trainer_artifact}")
except Exception as e:
logging.exception("Error occurred in pipeline test")
raise MyException(e, sys)
if __name__ == "__main__":
asyncio.run(run_pipeline())