Home
BlogCareers

Product

Featured Story

The Adaptive Data API and Python SDK

·

Apr 09, 2026

·

3min read

In February, we launched Adaptive Data to bring data optimization techniques typically reserved for frontier labs to everyday builders. The platform analyzes your data's structure and learns how to adapt and optimize in the data space across 242 languages. Early deployments have averaged an 82% improvement in data quality.

Until now, all of that lived behind a UI. Today we're bringing it to code.

We're also launching a full developer documentation site alongside the API, covering authentication, endpoints, SDK reference, and guides for every step of the workflow below.

The Full Adaption Lifecycle. Through Code

The Adaptive Data API and Python SDK give developers programmatic access to the full data lifecycle. Upload, preprocess, adapt, evaluate, and export, everything the platform does, your code can too. Whether you're iterating in a notebook or running a hundred jobs in a CI pipeline, the workflow is the same: a few calls, a few minutes, and your data comes back remastered. From raw file to adapted output, the API handles it whether you run it once in a notebook or a thousand times in a pipeline.

import os
import time

from adaption import Adaption

client = Adaption(api_key=os.environ["ADAPTION_API_KEY"])

upload = client.datasets.upload_file("dataset.csv")

while True:
    status = client.datasets.get_status(upload.dataset_id)
    if status.row_count is not None:
        break
    time.sleep(2)

job = client.datasets.run(
    upload.dataset_id,
    column_mapping={"prompt": "original_prompt"},
    job_specification={"max_rows": 1000},
)

print(f"Launched — estimated time: ~{job.estimated_minutes} min, {job.estimated_credits_consumed} credits")
client.datasets.wait_for_completion(upload.dataset_id, timeout=3600)

dataset = client.datasets.get(upload.dataset_id)
if dataset.evaluation_summary:
    print(f"Quality: {dataset.evaluation_summary.grade_before} → {dataset.evaluation_summary.grade_after}")
    if dataset.evaluation_summary.improvement_percent:
        print(f"Improvement: {dataset.evaluation_summary.improvement_percent:.0f}%")


url = client.datasets.download(upload.dataset_id)
print(f"Download: {url}")

How it Works

Ingest. Upload files in JSONL, CSV, or Parquet, or import directly from Hugging Face and Kaggle. No reformatting, no conversion scripts.

Preprocess and review. The system automatically infers your data's structure and metadata: column types, suggested mappings, and an initial quality profile. Review what was detected, adjust what needs adjusting, and confirm before anything runs.

Adapt. Our house recipe automatically configures the best solution for your dataset. Select from a library of optimized recipes: deduplication, prompt rephrasing, reasoning trace generation, and more. Configure them for your dataset. The system shows you the estimated cost before committing. No surprises.

Review results. As adaption completes, review evaluation metrics alongside sample outputs. See what changed, how quality shifted, and whether the results match your expectations before moving forward.

Download. Export the adapted dataset in your preferred format for integration into training pipelines, evaluation harnesses, or wherever your data needs to go next.

Get Started

Adaptive Data is available now. Install the SDK, run the script above against your own dataset, and see the quality improvement for yourself. The docs will get you from API key to first adapted dataset in minutes.

Author

Sudip Roy, Co-founder

Date

Apr 09, 2026