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 claim-level evidence, a reproducible report, and the artifacts needed to inspect how each conclusion was produced.

Try Live Demo · Product Tour · 60-second quickstart · Install from PyPI · Case studies · Evaluation · Docs · v4.3.0

PyPI Latest release Python License


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

For analysts, researchers, and ML engineers who need answers they can inspect, audit, reproduce, and challenge.

Live browser demo: upload a dataset and run DSA · Static artifact tour: browse verified runs


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

Hosted browser demo

The verified public demo is available at data-science-agent-web.vercel.app. It runs the Next.js web interface on Vercel and the FastAPI analysis service on Render.

The demo supports the core product flow:

Upload CSV / Excel
      ↓
Inspect dataset
      ↓
Ask a natural-language question
      ↓
Planner selects analysis tools
      ↓
Statistics / ML / visualization execute
      ↓
Evidence is verified
      ↓
Validation + report

A useful smoke-test question is:

Explain which features are most important for revenue, test whether the main associations are statistically significant, assess the impact of campaign_group on the outcome, and clearly distinguish association from causation. Include a visualization.

The hosted preview intentionally runs in deterministic heuristic/offline mode, so it does not require or expose a model API key. The public Render instance uses ephemeral local storage: uploaded datasets and generated artifacts are temporary and may disappear after a restart or redeploy, so re-upload the dataset if it is no longer listed. A free instance may also need a short cold-start period after inactivity.

See Hosted Demo Deployment for the deployment topology, environment variables, and limitations.

Where DSA fits

You are... DSA helps you...
Analyst move from a natural-language question to SQL, statistics, plots, and an auditable report
Researcher preserve dataset hashes, evidence lineage, and reproduction artifacts alongside conclusions
ML engineer / data scientist run regression, classification, forecasting, and evaluation inside one inspectable workflow

See it in action

Interactive path: Try the live hosted demo →

Artifact-only path: Open the verified Product Tour →

The Product Tour is a static view of repository artifacts from verified DSA runs. It does not accept uploads or pretend to be a live hosted model/API service. The live demo is separate and is explicitly labeled as a temporary public preview.

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. Causal language can be rejected when the underlying analysis only supports association.

4. Statistical and modeling guardrails

The current analysis path can select semantic outcome/treatment columns, run significance tests, encode categorical features for RandomForest importance, exclude exact target copies from feature importance, and preserve an explicit association-vs-causation boundary.

5. Real data-science tools

Core workflows can coordinate:

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

6. 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)

Evaluation

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

The repository 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.


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"]

Hosted demo topology:

flowchart LR
    U["Browser"] --> W["Next.js · Vercel"]
    W --> A["FastAPI · Render"]
    A --> D["Temporary dataset storage"]
    A --> T["DSA tools"]
    T --> R["Evidence + report"]

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.

Live Demo · Product Tour · Get Started · Case Studies · Evaluation · Roadmap · Contribute

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

Metadata

Release files for jack-data-science-agent 4.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jack-data-science-agent 4.3.3
File Size Uploaded Provenance Actions
jack_data_science_agent-4.3.3.tar.gz 1.8 MB With provenance Details for jack_data_science_agent-4.3.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for jack-data-science-agent 4.3.3
File Interpreter ABI Platform Actions
jack_data_science_agent-4.3.3-py3-none-any.whl Python 3 none any Details for jack_data_science_agent-4.3.3-py3-none-any.whl

Total release size: 2.0 MB

Release files / jack_data_science_agent-4.3.3.tar.gz

Download URL jack_data_science_agent-4.3.3.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
13790e9e1dbd42e411edfc54a91492604e9289060b08fb0e4d98c80ac0571a04
BLAKE2b-256 checksum
How to use checksums
923da2cfe9881e9f7ed0eeefdbc792880b39a6dc58606e4a0163566c92c18d4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.

Transparency log

Release files / jack_data_science_agent-4.3.3-py3-none-any.whl

Download URL jack_data_science_agent-4.3.3-py3-none-any.whl
Size 185.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0738b64e7e88d24c85cf40a07ed5a82d99f1d0570176101afb77e52b4936493a
BLAKE2b-256 checksum
How to use checksums
23d86a6002a329576430a72e128246508ec0c57c8e1f5aa774db0056b0869ff4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.

Transparency log

Security for jack-data-science-agent 4.3.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for jack_data_science_agent-4.3.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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