Skip to main content

A private, local LLM-powered data dictionary parser and entity mapper with automated cleaning.

Project description

dd-parser-cleaner: AI-Driven Data Preparation & Documentation

A specialized framework for automating data preparation documentation and preparing datasets for machine learning through AI-driven metadata discovery.

🌍 The Big Picture

KMDS is an initiative focused on developing documented, maintainable data science and ML projects using open-source tools and knowledge graphs. The kmds-data-helper was the first step in this journey—automatically building knowledge graphs from standard repository structures.

dd-parser-cleaner is a further refinement of this ecosystem. It targets data preparation, historically the most difficult and detail-loaded segment of any data science project. This tool provides:

  1. An AI-driven framework to generate comprehensive cleaning documentation.
  2. An agent-driven interface for developing datasets for ML featurization and analytics.

By capturing metadata during the cleaning phase, we create the foundation upon which future featurization logic is built.

📚 Methodological Foundation

The development of dd-parser-cleaner is grounded in a careful review of relevant data science literature. Its diagnostic and cleaning logic incorporates key principles from foundational texts, such as Dorian Pyle’s Data Preparation for Data Mining. By treating data as an "Information Assay" rather than a static table, we focus on evaluating the predictive utility and structural integrity of the dataset.

� Status & Roadmap

  • Current State: dd-parser-cleaner is feature-complete (v0.4.2).
  • Short Term: We will be releasing public examples of dataset migrations shortly.
  • Future: Development of specialized featurization modules for ML and analytics projects will begin once the migration examples are public.

Actual Implementation

For a concrete, end-to-end implementation, see:

📑 Documentation Strategy (Agent-First)

This project uses a Markdown-Native documentation architecture rather than traditional external sites.

  • Why? Keeping technical guides and design contracts as Markdown within the repo allows AI Agents (like your Migration Assistant) to "read" the documentation and provide better code suggestions.
  • Where to look: Human users should consult the documents/ directory for methodology, and USER_GUIDE.md for quick-start instructions.

🛠️ Technical Constraints

  • Offline First: Optimized for batch processing without external streaming dependencies.
  • Deterministic: Ensures that running the same config on the same data yields the same results.
  • Privacy-Centric: All processing and LLM grounding (via local models) stay within your local environment.

Core Capability Matrix

Capability Operational Impact
AI Recommendations Saves Hours: Replaces manual data profiling with LLM-generated cleaning_recommendations.md.
Clean Bucket Policy De-risks Models: Prevents "ghost" data and undocumented noise from leaking into ML training sets.
Handshake Protocol Audit-Ready: Creates a formal, documented bridge between Raw Data and Logic Implementation.
Agent Interface AI-Native: Designed for AI Assistants to autonomously implement complex, vectorized domain logic.
Metadata Discovery API Faster Featurization: Programmatic access to semantic tags (Geographic, Risk, Financial) for ML pipelines.

🚀 The 12-Step Operational Recipe

The core value of this framework is the reduction of messy data prep into a predictable, 12-step sequence. This workflow moves you from raw, undocumented data to a high-integrity analytical baseline:

  1. Install: pip install dd-parser-cleaner
  2. Initialize: Run init-workspace to build the KMDS directory structure.
  3. Locate: Run location-helper for placement guidance - where to put the data files and documents?
  4. Populate: Move source files to data/, data_dictionary/, and documents/.
  5. Bootstrap: Run bootstrap-config to generate a provisional_config.yaml. (Save as config.yaml).
  6. Classify: Run classify-entities to synchronize metadata and tag entities.
  7. Clean: Run clean-dataset --action full to execute the diagnostic pipeline.
  8. Handshake: Review the parser_cleaner_handshake.md for schema verification.
  9. Baseline: Review the Null Profile to understand raw data conditions.
  10. Recommendations: Review cleaning_recommendations.md for AI-driven insights.
  11. Access: Use the example notebook to load the "Clean Baseline" dataset.
  12. Modify: Implement domain-specific cleaning/featurization in your notebook.

⚙️ Installation

Standard Installation (CLI Only)

pip install dd-parser-cleaner

Installation with Notebook Support (Migration Assistant)

pip install "dd-parser-cleaner[notebook]"

🚀 Quick Start

1. Bootstrap Your Workspace

Initialize and configure your project without writing a single line of YAML:

uv run init-workspace ./my_project
# ... move your CSV files to ./my_project/data/ ...
uv run bootstrap-config ./my_project

2. Classification (The Handshake)

Synchronize metadata and execute semantic classification:

classify-entities

2. Cleaning (The Pipeline)

Run the cleaner to apply types, filters, and transformations grounded in the parser's metadata:

uv run clean-dataset --action full --workspace ./tests

For detailed documentation and custom logic implementation, see the documents/ directory and USER_GUIDE.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dd_parser_cleaner-0.4.9.tar.gz (1.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dd_parser_cleaner-0.4.9-py3-none-any.whl (61.8 kB view details)

Uploaded Python 3

File details

Details for the file dd_parser_cleaner-0.4.9.tar.gz.

File metadata

  • Download URL: dd_parser_cleaner-0.4.9.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dd_parser_cleaner-0.4.9.tar.gz
Algorithm Hash digest
SHA256 194782383df91e7c75b19a58f74c34b2ad2feb6224d754db88091bd87755818f
MD5 d26fb04b4391cb57b25ec9fa01083862
BLAKE2b-256 a315ddd67f3faf899b57e21b0cba7c3ab07e744732909b8bd5c45a0a26a8272a

See more details on using hashes here.

File details

Details for the file dd_parser_cleaner-0.4.9-py3-none-any.whl.

File metadata

  • Download URL: dd_parser_cleaner-0.4.9-py3-none-any.whl
  • Upload date:
  • Size: 61.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dd_parser_cleaner-0.4.9-py3-none-any.whl
Algorithm Hash digest
SHA256 3ddee2c4a6b4721b2e3a5c02983dffb87c267ecbbd8861f78de294c111148c8c
MD5 396e626e700010b057adcf41604eac7a
BLAKE2b-256 1dedb8f6b90b02d1061741d832f3a1ac7fd80e8a9c8f0b69829b9ad874d89fc5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page