Download src/data/data_validation.py from TUD-DCC/jAI_HF: direct link, hf CLI and curl.
- Browser
- Download file 2.19 kB
-
https://huggingface.co/TUD-DCC/jAI_HF/resolve/refs%2Fpr%2F1/src/data/data_validation.py
- Command line
-
hf download hf://TUD-DCC/jAI_HF@refs/pr/1/src/data/data_validation.py
-
curl -L -o data_validation.py https://huggingface.co/TUD-DCC/jAI_HF/resolve/refs%2Fpr%2F1/src/data/data_validation.py
2.19 kB
| import great_expectations as ge | |
| from great_expectations.core.batch import BatchRequest | |
| from great_expectations.checkpoint import SimpleCheckpoint | |
| from great_expectations.exceptions import DataContextError | |
| """ | |
| **IMPORTANT** | |
| This file is meant to be run as an end-2-end test command. | |
| It is an example and might require changes to suit your data and use case. | |
| Please refer to the `example-project` branch of the Cookiecutter-MLOps project for a complete working example – | |
| https://dagshub.com/DagsHub/Cookiecutter-MLOps/src/example-project | |
| """ | |
| context = ge.data_context.DataContext() | |
| batch_request = { | |
| "datasource_name": "{{fill in datasource name}}", | |
| "data_connector_name": "default_inferred_data_connector_name", | |
| "data_asset_name": "{{fill in names of files that have tests}}", # Define the data files that should be tested | |
| "limit": 1000, | |
| } | |
| # Feel free to change the name of your suite here. Renaming this will not remove the other one. | |
| expectation_suite_name = "{{fill in your test suite name}}" | |
| try: | |
| suite = context.get_expectation_suite(expectation_suite_name=expectation_suite_name) | |
| print( | |
| f'Loaded ExpectationSuite "{suite.expectation_suite_name}" containing {len(suite.expectations)} expectations' | |
| ) | |
| except DataContextError: | |
| suite = context.create_expectation_suite( | |
| expectation_suite_name=expectation_suite_name | |
| ) | |
| print(f'Created ExpectationSuite "{suite.expectation_suite_name}".') | |
| validator = context.get_validator( | |
| batch_request=BatchRequest(**batch_request), | |
| expectation_suite_name=expectation_suite_name, | |
| ) | |
| checkpoint_config = { | |
| "class_name": "SimpleCheckpoint", | |
| "validations": [ | |
| { | |
| "batch_request": batch_request, | |
| "expectation_suite_name": expectation_suite_name, | |
| } | |
| ], | |
| } | |
| checkpoint = SimpleCheckpoint( | |
| f"{validator.active_batch_definition.data_asset_name}_{expectation_suite_name}", | |
| context, | |
| **checkpoint_config, | |
| ) | |
| checkpoint_result = checkpoint.run() | |
| context.build_data_docs() | |
| validation_result_identifier = checkpoint_result.list_validation_result_identifiers()[0] | |
| context.open_data_docs(resource_identifier=validation_result_identifier) | |