Spaces:
Sleeping
Sleeping
|
Download README.md from BonusLockSMith/csv-insights: direct link, hf CLI and curl.
- Browser
- Download file 2.22 kB
-
https://huggingface.co/spaces/BonusLockSMith/csv-insights/resolve/main/README.md
- Command line
-
hf download hf://spaces/BonusLockSMith/csv-insights/README.md
-
curl -L -o README.md https://huggingface.co/spaces/BonusLockSMith/csv-insights/resolve/main/README.md
2.22 kB
metadata
title: CSV to Insights Analyst
emoji: π
colorFrom: gray
colorTo: red
sdk: docker
app_port: 7860
pinned: false
CSV β Insights Analyst π
Upload a CSV β get auto-generated charts + a plain-English briefing you can trust.
Project #12 of the "30 AI Projects in 15 Days" build-in-public challenge. Focus: code execution + a data agent (vs. #11's long-running service).
Honest by construction
The AI never invents a number. A deterministic pandas pass computes every statistic and chart; the model only turns that computed profile into prose. Units the model tries to guess (mm, Β°C, β¦) are stripped β they aren't in your file. Same grounded discipline as the #10 RAG app.
What it does
- Profile β shape, dtypes, missing %, numeric summaries, top categories, correlations, outliers, date-range detection, and plain-language data-quality flags.
- Charts β trend-over-time, correlation heatmap, distributions, and category bars (GritAI design system).
- Findings β a short, plain-English briefing grounded only in the computed numbers, with follow-up questions the data could answer next.
How it works
profiler.pyβ computes the full structured profile (pandas). The source of every number.charts.pyβ matplotlib charts from the profile, returned as inline base64 PNGs.narrator.pyβ turns the profile into prose. Local Ollama by default (free/private); Claude optional. A deterministic post-pass strips any units the model added.app.pyβ Flask UI: upload or try the sample, 12 MB cap, data handled in-memory (never persisted).
Two tiers
- This hosted demo narrates via Claude-haiku (charts + stats are 100% local pandas).
- GritAI Studio (paid) runs the whole thing β narrative included β on your own local GPU fleet: free per-analysis, fully private, nothing leaves your network.
Run locally
pip install -r requirements.txt
python app.py # http://127.0.0.1:7860
# Backend: set INSIGHTS_LLM_BACKEND=ollama (default, local) or =claude (set ANTHROPIC_API_KEY)
Built by Robert Lucyk Β· GritAI Solutions Β· part of the 30-in-15 challenge.