DataForge is a hackathon prototype for AI Engineer Singapore 2026. It demonstrates an intelligent dataset repair loop for ML engineers: load a dataset, evaluate its quality, fix missing labels, likely mislabels, duplicate images, and class imbalance, re-evaluate, and export a cleaner labeled dataset before training a model.
The demo focuses on an animal image classification dataset with intentional imbalance, missing labels, mislabeled samples, and duplicate images.
- Seeded demo dataset with class imbalance, missing labels, mislabeled samples, and duplicates
- Dashboard-style workflow for dataset upload, evaluation, label completion, relabeling, deduplication, balancing, re-evaluation, and export
- Before/after quality metrics for label completeness, consistency, duplication, balance, and overall quality
- Human review queues for suggested label completions, label corrections, and duplicate removals
- Balancing plan with class weights, sampling recommendations, and export metadata
- Dataset explorer with class, label status, issue, and duplicate filters
- Event log that simulates the live pipeline from baseline evaluation to cleaned export
DataForge is not a model training platform. The core idea is to improve dataset readiness before training begins.
Instead of claiming model accuracy gains, the demo proves a cleaner loop:
- Detect measurable dataset quality issues.
- Explain the gaps in terms a training team can act on.
- Approve label completions, label corrections, and duplicate removals.
- Create a balancing plan and cleaned dataset manifest.
- Re-evaluate the labelized, deduplicated, and balanced dataset.
- Show the before/after quality delta.
- Next.js App Router
- React
- TypeScript
- CSS
- Convex for realtime pipeline state
- OpenAI Responses API for GPT-5.5 repair-plan generation
- Seeded local demo data and deterministic fallback adapters
Install dependencies:
npm installRun the development server:
npm run devBuild for production:
npm run buildStart the production build:
npm run start- Open the app in the browser.
- Click Load demo animal dataset.
- Click Analyze dataset.
- Watch the pipeline progress through evaluation, labelization, deduplication, balancing, re-evaluation, and export.
- Review the quality score improvement, label repair counts, duplicate removals, and class distribution changes.
The current prototype should work without provider keys by falling back to deterministic demo data. Local Convex uses the checked-in defaults below:
CONVEX_DEPLOYMENT=anonymous:anonymous-AIESG-May2026
NEXT_PUBLIC_CONVEX_URL=http://127.0.0.1:3210
NEXT_PUBLIC_CONVEX_SITE_URL=http://127.0.0.1:3211
ADAPTION_API_KEY=
ADAPTION_LABS_BASE_URL=https://api.adaptionlabs.ai
OPENAI_API_KEY=
OPENAI_MODEL=gpt-5.5
FAL_KEY=Keep real provider keys only in .env.local. Do not commit secrets to .env.example.
The quality report flow calls POST /api/quality-report. That server route sends the training intent, class distribution, label issues, duplicate issues, balancing plan, and baseline metrics to GPT-5.5 using the OpenAI Responses API with a structured schema.
GPT-5.5 returns:
- measured findings based on the provided evaluation snapshot
- suggested label completions and corrections
- duplicate and balancing recommendations
- post-repair summary text and next steps
If the OpenAI request fails or OPENAI_API_KEY is missing, the app falls back to the deterministic demo report.
app/page.tsxcontains the main interactive dashboard.styles.csscontains the visual system and responsive styling.PROJECT_CONTEXT.mdcontains the product specification.
This repo is currently a polished frontend MVP/mock demo. Full provider integrations, uploaded dataset parsing, and real export bundle generation are planned extension points.