dash  by agno-agi

Self-learning data agent for grounded insights

Created 1 month ago
1,772 stars

Top 23.9% on SourcePulse

GitHubView on GitHub
Project Summary

A self-learning data agent, agno-agi/dash, addresses the challenge of generating accurate and meaningful answers from data by grounding responses in six layers of context. Inspired by OpenAI's internal data agent, it targets users who need reliable insights from complex datasets, overcoming the limitations of raw LLMs in understanding schemas, business rules, and learning from errors. Dash provides actionable intelligence, improving with every query without requiring model retraining.

How It Works

Dash employs a sophisticated approach centered on six distinct layers of context: Table Usage (schema, columns), Human Annotations (metrics, business rules), Query Patterns (proven SQL), Institutional Knowledge (docs, wikis), Learnings (error patterns), and Runtime Context (live schema). It retrieves relevant context via hybrid search and generates SQL grounded in existing, validated patterns. The core innovation is a "gpu-poor continuous learning" loop that automatically diagnoses query failures, saves fixes as "Learnings," and prevents repetition, thereby enhancing accuracy over time without traditional fine-tuning.

Quick Start & Requirements

  • Primary install/run command: Clone the repository, set OPENAI_API_KEY in an .env file (or via export), and run docker compose up -d --build. Load sample data and knowledge using docker exec -it dash-api python -m dash.scripts.load_data and docker exec -it dash-api python -m dash.scripts.load_knowledge.
  • Non-default prerequisites: Requires an OPENAI_API_KEY. Docker is used for setup.
  • Verification: Access http://localhost:8000/docs to confirm the application is running. Connect to the Web UI at os.agno.com by adding http://localhost:8000 as a local source.
  • Links: os.agno.com (Web UI), http://localhost:8000/docs (API docs).

Highlighted Details

  • Grounds answers in six layers of context for enhanced accuracy and relevance.
  • Features a "gpu-poor continuous learning" loop that improves without retraining or fine-tuning.
  • Focuses on delivering "Insights, Not Just Rows" by reasoning about answer usefulness.
  • Learns from query failures and saves fixes as "Learnings" to prevent future errors.

Maintenance & Community

  • Community: A Discord server is linked for community interaction.
  • Inspiration: The project draws inspiration from OpenAI's in-house data agent and an earlier architecture detailed in "Self-Improving SQL Agent."

Licensing & Compatibility

  • License type: The provided README does not explicitly state the project's license.
  • Compatibility notes: No specific compatibility notes for commercial use or closed-source linking are mentioned.

Limitations & Caveats

The project's license is not specified in the README, posing a significant adoption blocker for due diligence. It requires an OPENAI_API_KEY, making it dependent on OpenAI's services and associated costs. The "Institutional Knowledge" layer mentions an optional "MCP" component, suggesting potential external dependencies or setup complexities for full functionality.

Health Check
Last Commit

3 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
4
Issues (30d)
1
Star History
158 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.