healer-666/My-Academic-Data-Agent

Academic-Data-Agent is a research-oriented agent system for structured tabular data.

196

stars

78

commits

Python

primary language

Aug 12, 2026

updated

README

🔬 Academic-Data-Agent

English | 简体中文

Upload data, ask a question, and receive a report whose results can be checked.

🧭 Overview · ✨ Features · ⚡ Quick Start · 📊 Evaluation · 🗂️ Structure

🔎 Overview

Academic-Data-Agent helps you analyze spreadsheet data without assembling the whole workflow by hand. Upload a file, describe what you want to learn, and the system produces a structured report with charts and conclusions.

The report is designed for review, not just reading. Supported charts and conclusions can be opened to inspect the data used, the calculation process, and the evidence behind the result. Previous reports stay in the sidebar so you can reopen, continue asking questions, or export them later.

It is designed for:

Use caseWhat it supports
📈 General data analysisUpload a csv / xls / xlsx file and ask for cleaning, statistics, comparisons, charts, or a written summary
🧩 Mathematical modelingUpload a problem statement and one or more data files, review the detected tables, and receive a case-inspired analysis plan for confirmation
🔍 Result checkingOpen a chart or supported conclusion to see which data and calculation steps produced it
📚 Reference materialsBrowse general local materials and reviewed competition cases in one resource library
💬 Previous reportsReopen earlier analyses, continue asking questions, and export reports as Markdown or PDF

✨ Features

FeaturePurpose
💬 Ask in natural languageDescribe the analysis goal instead of writing a complete analysis script yourself
📊 Reports with chartsReceive a structured report containing the important findings, methods, limitations, and figures
🔍 Check results in placeUse the menu on a chart or conclusion to enlarge it, locate its data, review how it was produced, or download it
🧩 Prepare modeling workReview multiple tables and their relationships before accepting a suggested modeling plan
📚 Learn from reviewed casesSee relevant historical cases, why they were selected, and which ideas may be useful for the current problem
🕘 Continue previous workOpen a past report directly from the sidebar without starting the analysis again
📤 Export reportsDownload the final report as Markdown or PDF
🔐 Configure your own modelSave and test a compatible model connection from the Web workspace before running an analysis

🧭 Workflow

Configure and test a model connection once
      ↓
Choose general analysis or mathematical modeling
      ↓
Upload the requested files and describe your goal
      ↓
Review the detected data or suggested plan when prompted
      ↓
Start the analysis and wait for the report
      ↓
Check important results in the report and export when ready

⚡ Quick Start

1. Install dependencies

Clone the repository, then install the Python and Web workspace dependencies:

You need Python 3.10 or newer, plus Node.js and npm.

git clone https://github.com/healer-666/Academic-Data-Agent.git
cd Academic-Data-Agent
pip install -r requirements.txt
cd frontend
npm install
cd ..

2. Configure a model

If you plan to use the Web workspace, you can skip the .env file: complete Step 4, open Model Settings, and enter:

  • the model name;
  • the service Base URL;
  • your API key;
  • the request timeout.

Click Test connection before starting an analysis. You only need to do this again when the model connection changes.

If you prefer an environment file, create .env in the repository root:

LLM_MODEL_ID=your_model
LLM_BASE_URL=https://your-llm-endpoint
LLM_API_KEY=your_api_key
LLM_TIMEOUT=120

Do not commit .env or share your API key.

3. Run from CLI

This step is optional. Use it when you prefer the command line:

python main.py --data data/simple_data.xlsx --query "Summarize the main patterns and verify the important differences."

4. Launch the Web workspace

For most users, this is the recommended way to use the project:

cd frontend
npm run build
cd ..
python web_app.py --host 127.0.0.1 --port 8010

Open http://127.0.0.1:8010 in your browser.

After opening the page:

  1. Check the model status in the top-right corner.
  2. Choose General data analysis or Mathematical modeling.
  3. Upload the requested files and enter your question.
  4. Review any data package or analysis plan shown by the system.
  5. Start the analysis, then inspect or export the generated report.

🧰 Common Options

OptionMeaning
--dataInput table path
--output-dirOutput directory
--queryUser analysis question
--quality-modeChoose a quick draft, a balanced standard report, or a more thoroughly reviewed publication report
--latency-modeLet the system balance speed and quality, or explicitly prefer one of them
--vision-review-modeTurn visual chart review off, on, or let the system decide

🧪 Python API

Python users can call the analysis workflow directly:

import sys
from pathlib import Path

sys.path.insert(0, "src")
from data_analysis_agent.agent_runner import run_analysis

result = run_analysis(
    Path("data/simple_data.xlsx"),
    query="Summarize the main patterns and verify the important differences.",
    quality_mode="standard",
)

print(result.report_path)
print(result.workflow_complete)

Each run is saved under outputs/run_*/. This folder contains the report, cleaned data, generated charts, and the information required to review the results later.

📊 Evaluation

These are local reproduction results, not official leaderboard submissions, official rankings, or SOTA claims. You do not need these benchmark datasets for normal use.

BenchmarkSettingMetricResult
Local regression seed_v510 tasksaccepted10/10
DABench closed-form dev257 tasksofficial-style accuracy85.60%-85.94%
DABench closed-form dev257 taskscompatible exact match87.16%
DataSciBench full local reproduction222 tasksofficial CR66.27%
DataSciBench clean ablation full60 tasksofficial CR53.12%

Detailed reports:

🗂️ Structure

.
├── data/                      # Example data and bundled competition cases
├── docs/                      # User guides and evaluation reports
├── frontend/                  # Web workspace
├── memory/                    # Local materials and saved experience
├── outputs/                   # Generated reports, charts, and analysis files
├── main.py                    # Command-line start
└── web_app.py                 # Web workspace start

📚 Documentation


Focused on data-analysis agents that run real code, leave evidence, and make results easier to review.

Contributors

healer-666

78 commits

healer-666/My-Academic-Data-Agent

Academic-Data-Agent is a research-oriented agent system for structured tabular data.

196

stars

78

commits

Python

primary language

Aug 12, 2026

updated

README

🔬 Academic-Data-Agent

English | 简体中文

Upload data, ask a question, and receive a report whose results can be checked.

🧭 Overview · ✨ Features · ⚡ Quick Start · 📊 Evaluation · 🗂️ Structure

🔎 Overview

Academic-Data-Agent helps you analyze spreadsheet data without assembling the whole workflow by hand. Upload a file, describe what you want to learn, and the system produces a structured report with charts and conclusions.

The report is designed for review, not just reading. Supported charts and conclusions can be opened to inspect the data used, the calculation process, and the evidence behind the result. Previous reports stay in the sidebar so you can reopen, continue asking questions, or export them later.

It is designed for:

Use caseWhat it supports
📈 General data analysisUpload a csv / xls / xlsx file and ask for cleaning, statistics, comparisons, charts, or a written summary
🧩 Mathematical modelingUpload a problem statement and one or more data files, review the detected tables, and receive a case-inspired analysis plan for confirmation
🔍 Result checkingOpen a chart or supported conclusion to see which data and calculation steps produced it
📚 Reference materialsBrowse general local materials and reviewed competition cases in one resource library
💬 Previous reportsReopen earlier analyses, continue asking questions, and export reports as Markdown or PDF

✨ Features

FeaturePurpose
💬 Ask in natural languageDescribe the analysis goal instead of writing a complete analysis script yourself
📊 Reports with chartsReceive a structured report containing the important findings, methods, limitations, and figures
🔍 Check results in placeUse the menu on a chart or conclusion to enlarge it, locate its data, review how it was produced, or download it
🧩 Prepare modeling workReview multiple tables and their relationships before accepting a suggested modeling plan
📚 Learn from reviewed casesSee relevant historical cases, why they were selected, and which ideas may be useful for the current problem
🕘 Continue previous workOpen a past report directly from the sidebar without starting the analysis again
📤 Export reportsDownload the final report as Markdown or PDF
🔐 Configure your own modelSave and test a compatible model connection from the Web workspace before running an analysis

🧭 Workflow

Configure and test a model connection once
      ↓
Choose general analysis or mathematical modeling
      ↓
Upload the requested files and describe your goal
      ↓
Review the detected data or suggested plan when prompted
      ↓
Start the analysis and wait for the report
      ↓
Check important results in the report and export when ready

⚡ Quick Start

1. Install dependencies

Clone the repository, then install the Python and Web workspace dependencies:

You need Python 3.10 or newer, plus Node.js and npm.

git clone https://github.com/healer-666/Academic-Data-Agent.git
cd Academic-Data-Agent
pip install -r requirements.txt
cd frontend
npm install
cd ..

2. Configure a model

If you plan to use the Web workspace, you can skip the .env file: complete Step 4, open Model Settings, and enter:

  • the model name;
  • the service Base URL;
  • your API key;
  • the request timeout.

Click Test connection before starting an analysis. You only need to do this again when the model connection changes.

If you prefer an environment file, create .env in the repository root:

LLM_MODEL_ID=your_model
LLM_BASE_URL=https://your-llm-endpoint
LLM_API_KEY=your_api_key
LLM_TIMEOUT=120

Do not commit .env or share your API key.

3. Run from CLI

This step is optional. Use it when you prefer the command line:

python main.py --data data/simple_data.xlsx --query "Summarize the main patterns and verify the important differences."

4. Launch the Web workspace

For most users, this is the recommended way to use the project:

cd frontend
npm run build
cd ..
python web_app.py --host 127.0.0.1 --port 8010

Open http://127.0.0.1:8010 in your browser.

After opening the page:

  1. Check the model status in the top-right corner.
  2. Choose General data analysis or Mathematical modeling.
  3. Upload the requested files and enter your question.
  4. Review any data package or analysis plan shown by the system.
  5. Start the analysis, then inspect or export the generated report.

🧰 Common Options

OptionMeaning
--dataInput table path
--output-dirOutput directory
--queryUser analysis question
--quality-modeChoose a quick draft, a balanced standard report, or a more thoroughly reviewed publication report
--latency-modeLet the system balance speed and quality, or explicitly prefer one of them
--vision-review-modeTurn visual chart review off, on, or let the system decide

🧪 Python API

Python users can call the analysis workflow directly:

import sys
from pathlib import Path

sys.path.insert(0, "src")
from data_analysis_agent.agent_runner import run_analysis

result = run_analysis(
    Path("data/simple_data.xlsx"),
    query="Summarize the main patterns and verify the important differences.",
    quality_mode="standard",
)

print(result.report_path)
print(result.workflow_complete)

Each run is saved under outputs/run_*/. This folder contains the report, cleaned data, generated charts, and the information required to review the results later.

📊 Evaluation

These are local reproduction results, not official leaderboard submissions, official rankings, or SOTA claims. You do not need these benchmark datasets for normal use.

BenchmarkSettingMetricResult
Local regression seed_v510 tasksaccepted10/10
DABench closed-form dev257 tasksofficial-style accuracy85.60%-85.94%
DABench closed-form dev257 taskscompatible exact match87.16%
DataSciBench full local reproduction222 tasksofficial CR66.27%
DataSciBench clean ablation full60 tasksofficial CR53.12%

Detailed reports:

🗂️ Structure

.
├── data/                      # Example data and bundled competition cases
├── docs/                      # User guides and evaluation reports
├── frontend/                  # Web workspace
├── memory/                    # Local materials and saved experience
├── outputs/                   # Generated reports, charts, and analysis files
├── main.py                    # Command-line start
└── web_app.py                 # Web workspace start

📚 Documentation


Focused on data-analysis agents that run real code, leave evidence, and make results easier to review.

Contributors

healer-666

78 commits

Languages

Python

78.1%

JavaScript

9.6%

Jupyter Notebook

5.2%

CSS

5.0%

HTML

2.0%