Skip to main content

Data Science Agent

The AI data scientist that shows its work.

Ask questions about CSV files and databases in natural language. DSA runs SQL, statistics, machine learning, and visualization, then returns reproducible artifacts with claim-level evidence.

Quickstart · See it in action · Case studies · Evaluation · Docs · Roadmap

CI CodeQL PyPI Python License GitHub stars


Data Science Agent — Ask your data. Verify the answer.

Why DSA?

Most AI data-analysis tools stop at the answer.

Data Science Agent is built to preserve the path from a claim back to the computation and dataset that produced it.

Question
   ↓
Executed analysis
   ↓
Evidence
   ↓
Claim
   ↓
Reproducible report

That means an analysis can be inspected, audited, reproduced, and challenged instead of accepted on confidence alone.

If an AI makes a data-science claim, you should be able to inspect how it got there.


⚡ 60-second quickstart

Install:

pip install jack-data-science-agent

Run the built-in demo:

dsa demo

Analyze your own data:

dsa analyze sales.csv \
  --task "Which factors explain revenue, and are the effects statistically significant?"

Python 3.12+ is required.

A successful run produces more than chat output:

analysis run
├── report.md
├── experiment.json
├── evidence_graph.json
├── analysis.ipynb
└── reproduce.sh
Artifact Purpose
report.md Human-readable findings
experiment.json Structured run metadata
evidence_graph.json Claim → evidence → computation lineage
analysis.ipynb Inspectable notebook representation
reproduce.sh Re-run the analysis

See it in action

Data Science Agent terminal demo: profile, plan, execute, build evidence, check claims, and generate a reproducible report

Question → profile → plan → tools → evidence → critic → reproducible report.

Start with 3 flagship workflows

Workflow Ask DSA What it demonstrates
Sales analytics What drives revenue across regions and categories? SQL + statistics → evidence → reproducible report
Time-series forecasting What are the next 30 values, and how well does the baseline forecast perform? Forecasting, holdout evaluation, reproducibility, and visible failure recovery
ML classification Can DSA train, evaluate, and explain an imbalanced classifier? Model evaluation + feature importance inside the same provenance trail

Browse all 8 verified case studies →

These are verified repository workflows intended to show product behavior and evidence artifacts. They are not presented as independent real-LLM leaderboard results.


What makes DSA different?

1. Claim-level evidence

Supported findings can be connected to the analysis that produced them:

Claim
└── statistical result
    └── executed tool
        └── parameters
            └── dataset SHA-256

2. Reproducibility by default

DSA records run metadata and reproduction artifacts instead of treating the final prose answer as the only output.

3. Evidence-aware critique

A critic stage checks whether conclusions go beyond available evidence. For example, causal language can be rejected when the underlying analysis only supports correlation.

4. Real data-science tools

Core workflows can coordinate:

  • dataset profiling and exploratory analysis
  • SQL with DuckDB
  • statistical testing
  • regression and classification
  • forecasting and feature importance
  • visualization
  • report generation

5. One runtime, multiple interfaces

Surface Entry point
CLI dsa <command>
Python SDK from data_science_agent import Agent
REST API FastAPI
Streaming Server-Sent Events
MCP MCP server
Jupyter %load_ext dsa_jupyter
VS Code Dataset explorer + analysis replay
Plugins Custom data-science tools

Python SDK

import asyncio
from data_science_agent import Agent

async def main():
    result = await Agent().analyze(
        "sales.csv",
        "Which region drives the most revenue, and is the trend statistically significant?",
    )

    print(result.report_markdown)

asyncio.run(main())

Inspect evidence programmatically:

for evidence in result.evidence:
    print(evidence.claim)
    print(evidence.source_id)
    print(evidence.result)

Case study gallery

The repository includes verified end-to-end examples across business analytics, churn, forecasting, marketing, finance, public statistics, data quality, and classification.

Browse the Case Study Gallery →

A useful way to evaluate DSA is to start with the question you would ask about your own dataset, then inspect the generated report and evidence trail.


Evaluation

DSA is developed against versioned benchmark suites rather than relying only on hand-picked demos.

The repository currently contains deterministic benchmark and evaluator-validation results, including frozen task suites and reproducibility checks. These results are useful for regression testing and validating the evaluation harness, but they should not be interpreted as an independent comparison of real LLM model quality unless the run identifies a real model/provider and reproducible configuration.

The current public result registry includes a stub/small validation run. It is intentionally labeled as such so test-harness scores are not confused with real-model performance.

Next evaluation gate: run the merged credentialed four-way real-model smoke workflow, review all raw artifacts for reproducibility, and only then prepare any full-catalog comparative result for publication.


Architecture

flowchart LR
    A["Natural-language question"] --> B["Planner"]
    B --> C["Data-science tools"]
    C --> D["SQL / Statistics / ML / Visualization"]
    D --> E["Evidence graph"]
    E --> F["Critic"]
    F --> G["Evidence-backed report"]
    G --> H["Reproduction artifacts"]

The runtime uses a LangGraph-based orchestration layer over typed data-science tools, with local-first data operations built around Python, DuckDB, Polars, SciPy, scikit-learn, and Matplotlib.


DSA vs. typical AI data analysis

Capability Chat-with-data tools Generic coding agents Data Science Agent
Natural-language analysis
SQL / statistics / ML
Autonomous workflow Limited
Dataset hashing
Claim-level evidence
Evidence graph
Reproduction bundle Limited Limited
Evidence-aware critic
MCP interface Varies Varies
Plugin runtime Varies Varies

DSA is not intended to be only another natural-language interface to a dataframe.

Its focus is verifiable, reproducible AI data science.


Documentation

Start here:


Development

git clone https://github.com/Jackxiaozhiren/data-science-agent.git
cd data-science-agent
uv sync --dev
uv run dsa demo
uv run pytest

Static checks:

uv run ruff check .
uv run mypy .

Contributing

Contributions are welcome, especially:

  • real-model benchmark baselines
  • reproducibility failures
  • new datasets and benchmark tasks
  • statistical validation improvements
  • data-science tools and plugins
  • case studies and documentation

New contributor? Start with the good first issue queue.

See CONTRIBUTING.md, ROADMAP.md, and CODE_OF_CONDUCT.md.


Citation, security, and license


Ask. Analyze. Verify. Reproduce.

Get Started · Case Studies · Evaluation · Roadmap · Contribute

⭐ If reproducible AI data analysis is useful to you, consider starring the project.

Download files

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

Source Distribution

jack_data_science_agent-4.3.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

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

jack_data_science_agent-4.3.0-py3-none-any.whl (176.3 kB view details)

Uploaded Python 3

File details

Details for the file jack_data_science_agent-4.3.0.tar.gz.

File metadata

  • Download URL: jack_data_science_agent-4.3.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for jack_data_science_agent-4.3.0.tar.gz
Algorithm Hash digest
SHA256 31ca4d0c35b040608d2835b5ed83f6d76fe296e3505003d7ede3e9934ff96267
MD5 c9a78ba081d02af0bb734dbba42d2db0
BLAKE2b-256 358fcb869c71c80579ffe9fa235172cb83885fbaa57a413c4f9ed008b1df1e4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for jack_data_science_agent-4.3.0.tar.gz:

Publisher: publish.yml on Jackxiaozhiren/data-science-agent

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jack_data_science_agent-4.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jack_data_science_agent-4.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c7064fa29fd6667bfdab17dd25e2680e1541cc17b74a42310caa9e2467bbeca3
MD5 ad693efaf3e68b859af8a6e2af17dd0e
BLAKE2b-256 645de2f43ff30f87a7b293d2203eef8765293731a0cb05ac531821da9bbf77f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for jack_data_science_agent-4.3.0-py3-none-any.whl:

Publisher: publish.yml on Jackxiaozhiren/data-science-agent

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

4.3.2

2 files

4.3.1

2 files

This release

4.3.0 This release

2 files

4.2.10

2 files

4.2.5

2 files

4.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page