Skip to content

About

Document-to-dataset AI app powered by Carter 1.0, with Docling extraction, deterministic source grounding, validation, and JSON/CSV export.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Dataset Forge

Dataset Forge

Turn documents into validated, source-grounded AI datasets.

Version Python Frontend License

Dataset Forge is a local, single-page document-to-dataset application. It transforms one PDF, DOCX, or TXT document into a packaged AI dataset using Docling extraction and Techie custom agentic agents. V1 is PoC release ready—it is not a hosted SaaS or production-certified service.

What Dataset Forge V1 does

  1. Upload one PDF, DOCX, or TXT document.
  2. Extract and normalize it: Docling for PDF/DOCX, direct UTF-8/CP1252 extraction for TXT.
  3. Analyze the document structure and accept a natural-language dataset request.
  4. Plan bounded generation batches and generate structured records through Techie custom agentic agents.
  5. Author the canonical dataset as structured JSON, then validate schema, source references, evidence, grounding, duplicates, and quality.
  6. Run one bounded, advisory AI quality review; at most one model-authored revision is allowed globally.
  7. Export JSON or a deterministic CSV derived from the accepted canonical JSON, then download a ZIP package.

Design principles

  • Canonical JSON is the source of truth; CSV is never separately AI-generated.
  • A provider completion is not a validation success. Every final record needs verified evidence from the uploaded source.
  • Batch-local source aliases are canonicalized before global assembly, preventing cross-batch provenance leaks.
  • Deterministic validation is authoritative; the AI reviewer is advisory.
  • No chain-of-thought is stored, and production generation has no placeholder fallback.

Architecture

Document
  -> Docling / TXT extractor
  -> Canonical extraction + generation planner
  -> Techie custom agentic agents
  -> Canonical Dataset JSON
  -> Schema + evidence + grounding validation
  -> Bounded AI quality review
  -> JSON / deterministic CSV + ZIP package

Technology

Area Stack
Frontend React, TypeScript, Vite, Tailwind CSS, Lucide
Backend Python, FastAPI, Pydantic, Docling
AI Techie custom agentic agents
Testing pytest, Vitest, Playwright acceptance coverage

Run locally

Prerequisites: Python 3.11 (the existing project setup), Node.js with npm, and your own Techie-compatible agent backend. Provider credentials stay on the backend.

Clone the repository, then set up the backend:

cd backend
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
Copy-Item .env.example .env

Set your own values in backend/.env—never commit this file:

APP_ENVIRONMENT=development
FRONTEND_ORIGIN=http://localhost:5173
MAX_UPLOAD_SIZE=26214400
OUTPUT_DIRECTORY=app/outputs
TEMP_UPLOAD_DIRECTORY=app/uploads
RUNPOD_ENDPOINT_ID=YOUR_TECHIE_ENDPOINT_ID
RUNPOD_API_KEY=YOUR_TECHIE_API_KEY_HERE
RUNPOD_MODEL=YOUR_CONFIGURED_TECHIE_MODEL_IDENTIFIER
RUNPOD_MAX_MODEL_LEN=YOUR_CONFIGURED_MAX_MODEL_LEN
QUALITY_VALIDATOR_MODE=same_model
PUBLIC_RESEARCH_ENABLED=false
RUNPOD_POLL_INTERVAL_SECONDS=1
RUNPOD_QUEUE_TIMEOUT_SECONDS=300
RUNPOD_EXECUTION_TIMEOUT_SECONDS=600
RUNPOD_RECORDS_PER_BATCH=4
MAX_DATASET_RECORDS=20

Start the backend:

python -m uvicorn app.main:app --host 127.0.0.1 --port 8000

In another terminal, start the frontend:

cd frontend
npm install
Copy-Item .env.example .env
npm run dev -- --host 127.0.0.1 --port 5173

Open http://127.0.0.1:5173. FastAPI documentation is available at http://127.0.0.1:8000/docs.

Use the app

Upload a document, describe the dataset you want, select JSON or CSV, and generate. Follow extraction, generation, validation, and review progress in the UI; inspect the resulting metrics; then download the ZIP.

Output package

dataset-forge-output.zip
├── dataset.json (or dataset.csv)
├── metadata.json
├── validation-report.json
├── quality-review.json
├── README.txt
├── manifest.json
└── generation_manifest.json

Grounding and batching

Dataset Forge verifies evidence excerpts against the exact extracted source units provided during generation and requires every accepted record to satisfy the source/evidence grounding contract. This validates grounding to the uploaded document; it is not universal external fact-checking.

Large documents are partitioned into bounded batches. Provider-visible, batch-local aliases are resolved to canonical extraction IDs before assembly, so provenance remains safe across batches.

Security, privacy, and limitations

Your Techie backend credentials remain backend-only, and .env is ignored. When bounded extracted context is enough, original binaries are not sent wholesale. No chain-of-thought is persisted and public research is disabled by default. Every clone must use its own Techie credentials.

V1 accepts one source document per generation and has no authentication, account history, durable job database, distributed queue, or high-availability deployment. Jobs are process-local, one provider/model is configured, and scanned-only PDF OCR support is limited. This is a PoC release-ready application, not a production-certified service.

Tests

cd backend
python -m pytest -q
cd ..\frontend
npm test
npm run typecheck
npm run build

The deterministic suite uses mocked provider transport and does not make real RunPod calls by default. Final release verification: backend 65 passed (4 Docling deprecation warnings); frontend 3 passed, typecheck and production build passed. Details are recorded in the publication record.

Engineering history

License

Dataset Forge is source-available under the Dataset Forge Community License 1.0. Personal, educational, research, nonprofit, and qualifying small-business use is permitted. Organizations with combined annual gross revenue of US $250,000 or more need a commercial license. See commercial licensing.

The Dataset Forge name and logo are project branding; this license does not grant trademark rights.

Commercial licensing

Organizations outside the Community License's permitted-use limits can contact the repository owner through GitHub Issues or Discussions for commercial licensing. Do not post security vulnerabilities or credentials in public issues; see SECURITY.md.

About

Document-to-dataset AI app powered by Carter 1.0, with Docling extraction, deterministic source grounding, validation, and JSON/CSV export.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages