Spaces:
Running
Running
metadata
title: DataMind Agent
emoji: π§
colorFrom: purple
colorTo: green
sdk: streamlit
sdk_version: 1.55.0
app_file: app.py
pinned: false
π§ DataMind Agent
Multi-LLM AI Data Analyst β LangChain + Streamlit
Upload any data file (CSV, Excel, JSON) and chat with your data using natural language. Choose from 7 AI providers with the latest models β use whichever API key you already have.
π€ Supported Providers & Models
π΅ Google Gemini
| Series | Models |
|---|---|
| Gemini 3 (Latest) | gemini-3.1-pro-preview Β· gemini-3-flash-preview Β· gemini-3.1-flash-lite-preview |
| Gemini 2.5 | gemini-2.5-pro Β· gemini-2.5-flash Β· gemini-2.5-flash-lite |
| Gemini 2.0 (Legacy) | gemini-2.0-flash Β· gemini-2.0-flash-lite |
| Gemini 1.5 (Legacy) | gemini-1.5-pro-002 Β· gemini-1.5-flash-002 |
π Get API key
π’ OpenAI GPT
| Series | Models |
|---|---|
| GPT-5 (Latest) | gpt-5.4-pro Β· gpt-5.4 Β· gpt-5.3-instant Β· gpt-5-mini Β· gpt-5-nano |
| o-series Reasoning | o3-deep-research Β· o3 Β· o4-mini |
| GPT-4 (Legacy) | gpt-4.1 Β· gpt-4o Β· gpt-4o-mini Β· gpt-4-turbo Β· gpt-4-0613 |
| GPT-3.5 (Legacy) | gpt-3.5-turbo-0125 |
π Get API key
π Anthropic Claude
| Series | Models |
|---|---|
| Claude 4 (Latest) | claude-opus-4-6 Β· claude-sonnet-4-6 Β· claude-haiku-4-5-20251001 |
| Claude 3.5 (Legacy) | claude-3-5-sonnet-20241022 Β· claude-3-5-haiku-20241022 |
| Claude 3 (Legacy) | claude-3-opus-20240229 Β· claude-3-sonnet-20240229 Β· claude-3-haiku-20240307 |
| Claude 2 (Legacy) | claude-2.1 Β· claude-2.0 |
π Get API key
βͺ xAI Grok
| Series | Models |
|---|---|
| Grok 4 (Latest) | grok-4.2 Β· grok-4.1-fast Β· grok-code-fast-1 |
| Grok 2 (Legacy) | grok-2-1212 Β· grok-2-mini |
π Get API key
π΄ Mistral AI
| Series | Models |
|---|---|
| Frontier (Latest) | mistral-large-2411 Β· mistral-medium-2508 Β· magistral-medium-1.2 |
| Legacy | mistral-large-2407 Β· mistral-small-2409 Β· open-mixtral-8x22b Β· open-mixtral-8x7b |
π Get API key
π΅ Meta Llama (via Together AI)
| Series | Models |
|---|---|
| Llama 4 (Latest) | llama-4-behemoth Β· llama-4-maverick Β· llama-4-scout |
| Llama 3 (Legacy) | llama-3.3-70b-instruct Β· llama-3.2-90b-vision Β· llama-3.1-405b Β· llama-3.1-70b Β· llama-3.1-8b |
| Llama 2 (Legacy) | llama-2-70b-chat Β· llama-2-13b-chat Β· llama-2-7b-chat |
π Get Together AI key
π£ Alibaba Qwen (via Together AI)
| Series | Models |
|---|---|
| Qwen 3 (Latest) | qwen-3.5-plus Β· qwen-3.5-flash Β· qwen-3-max-thinking Β· qwen3-coder-480b |
| Qwen 2 (Legacy) | qwen2.5-72b-instruct Β· qwen2.5-coder-32b Β· qwen2-72b-instruct |
| Qwen 1.5 (Legacy) | qwen1.5-110b Β· qwen1.5-72b-chat |
π Get Together AI key
π Features
| Feature | Description |
|---|---|
| π€ 7 AI Providers | Gemini Β· GPT Β· Claude Β· Grok Β· Mistral Β· Llama Β· Qwen |
| π Multi-format | CSV, Excel (.xlsx/.xls), JSON |
| π¬ Natural language Q&A | Ask anything about your data in plain English |
| π Auto visualizations | AI picks the best chart for your question |
| π¨ Custom chart builder | Full control over chart type and axes |
| π Data explorer | Filter, search, and download your data |
| π§ AI summary | Executive summary generated by your chosen LLM |
π― How to Use
- Choose a provider from the sidebar dropdown
- Select a model from the list
- Paste your API key β click Connect
- Upload your data file (CSV, Excel, or JSON)
- Explore the Dashboard, Chat, Charts, and Raw Data tabs
For Meta Llama and Alibaba Qwen, use a Together AI key instead of a direct provider key.
βοΈ Local Setup
# Install dependencies
pip install -r requirements.txt
# Run the app
streamlit run app.py
App opens at http://localhost:8501
ποΈ Project Structure
datamind-agent/
βββ app.py # Streamlit UI
βββ core_agent.py # Multi-LLM logic + visualizations
βββ requirements.txt # Dependencies
βββ sample_data.csv # Test dataset
βββ README.md # This file
ποΈ Architecture
User (Streamlit UI)
β
βΌ
app.py (UI Layer)
β
βββ core_agent.py
βββ PROVIDERS{} β 7 providers, all models, colors
βββ get_llm() β LangChain wrapper for any provider
βββ validate_llm() β Connection ping test
βββ load_file() β CSV / Excel / JSON β DataFrame
βββ profile_dataframe() β Statistical profiling
βββ ask_agent() β LLM β Answer
βββ make_plotly_chart() β Interactive visualizations
βββ ai_recommend_chart() β LLM picks best chart type
LangChain integrations:
langchain-google-genai β Gemini
langchain-openai β GPT Β· Grok Β· Llama Β· Qwen (OpenAI-compatible)
langchain-anthropic β Claude
langchain-mistralai β Mistral
Built with β€οΈ using LangChain Β· Gemini Β· GPT Β· Claude Β· Grok Β· Mistral Β· Llama Β· Qwen Β· Streamlit