Releases: pixerwar/datasetdoctor
Release list
v0.1.1 — terminal CLI
Dataset Doctor 0.1.1
This release makes Dataset Doctor usable without the web UI — straight from
the terminal and in CI.
Terminal CLI
# Quality/risk report (summary, or --json)
python -m dataset_insight analyze data.csv --category topic
# CI gate: exit 1 when the risk level is at or above the threshold
python -m dataset_insight analyze data.csv --fail-on medium_high
# Convert + export to a training format (optional train/val split)
python -m dataset_insight export data.csv --format chatml -o out.jsonl --split 0.1analyzeprints an ASCII summary (risk, diversity, balance, size, and cleaning- PII + imbalance signals) or full JSON with
--json.
- PII + imbalance signals) or full JSON with
--fail-on <low|medium|medium_high|high>exits non-zero so you can gate a
pipeline on dataset quality.exportreuses every export format with an optional stratified split.- Structured files auto-detect common
instruction/outputcolumn names. - Runs fully offline; never starts the server or touches the database.
Also in this release
- Demo abuse protection (opt-in, env-gated) — per-IP rate limit and a dataset
cap with oldest-first eviction for the public demo. - Internal: format→parser maps shared between the API and CLI via a new
formats.py(no behavior change).
Full report of everything the tool does: see the
README. Changelog:
CHANGELOG.md.
Full Changelog: v0.1.0...v0.1.1
v0.1.0 — first public release
Dataset Doctor 0.1.0 — first public release
A health check for your fine-tuning datasets. Upload a file, get a quality/risk
report, and fix the problems before you train — all locally, your data never
leaves your machine.
🔗 Try the live demo — no install, no signup: https://dataset-doctor-production.up.railway.app
(the Upload screen ships three sample datasets so you can see a full report in one click)
What it does
- 7 input formats — CSV, JSONL/JSON, XLSX, TXT, Markdown, PDF, DOCX. Combine
several files into one dataset. - Quality & risk report — diversity, category balance, size adequacy, a
training-time estimate, and a composite risk level with plain-language reasons. - Semantic map — a 2D projection of your samples (TF-IDF or offline model2vec
embeddings, no torch) so you can see clusters and outliers. - Clean step, one click per fix:
- Near-duplicate detection + quality lint
- PII / secret scan (emails, phones, Luhn-checked cards, IPs, API keys) — redact
in place or drop the samples, fully offline - Local class-imbalance fix — downsample the dominant category, no synthetic data
- Export to ChatML / OpenAI / Alpaca / ShareGPT / prompt-completion, with an
optional stratified train/val split. - Persistent & self-hostable — SQLite-backed, restart-safe, single-Dockerfile deploy.
Run it yourself
git clone https://github.com/pixerwar/datasetdoctor
cd datasetdoctor
python -m venv .venv && .venv/Scripts/python.exe -m pip install -r requirements.txt
.venv/Scripts/python.exe -m uvicorn dataset_insight.api.main:app --reload
# then, in frontend/: npm install && npm run devSee the README for the full
guide and the CHANGELOG
for details.
The hosted demo is a shared, unauthenticated, ephemeral instance — don't upload
real sensitive data there. Self-host for the privacy guarantee.