Skip to main content

An AI-powered data analysis agent for intelligent data insights and visualization

Project description

dxel: AI-Powered Data Analysis Agent

dxel is an extensible Python package designed to automate and enhance data analysis workflows using Large Language Models (LLMs) and agent-based orchestration. It enables users to interact with their data, generate insights, and visualize results through natural language queries and intelligent agents.

Project Overview

Key Capabilities:

  • LLM-powered data analysis and summarization
  • Automated data exploration and visualization
  • Agent-based orchestration for complex workflows
  • Extensible architecture for custom agents and LLMs
  • Integration with Gemini and other LLM providers

Typical Use Cases:

  • Rapid data exploration and summary generation
  • Automated report creation
  • Interactive data querying and visualization
  • Building custom data agents for business intelligence

How It Works:

  1. Users provide a dataset and a natural language query.
  2. dxel agents interpret the query, analyze the data, and return results or visualizations.
  3. LLMs (like Gemini) are used for reasoning, summarization, and generating code or explanations.

The package is modular, allowing you to add new agents, LLM integrations, or utilities as needed.

Note:

  1. The current version only supports the Gemini LLM API.

Prerequisites

  • Python 3.11+
  • Install dxel:
    pip install dxel
    
  • Set your GOOGLE_API_KEY as an environment variable for Gemini LLM access.
  • Place your dataset (e.g., Titanic-Dataset.csv) in notebook_io/data_agent/input/

Demo Notebook: Step-by-Step Walkthrough

  1. Import Required Libraries and dxel Modules
    • Import standard Python libraries (os, sys, pandas, numpy, etc.)
  • Import dxel modules:
    from dxel.utils.llm_agent.agent import Agent
    from dxel.utils.llm.gemini import Gemini
    from dxel.datascience.agent import DataAnalystAgent
    
  1. Set Data Path and API Key

    • Define the path to your dataset (e.g., Titanic-Dataset.csv):
      data_loc = 'notebook_io/data_agent/input/Titanic-Dataset.csv'
      
    • Load your Google Gemini API key from environment variables:
      api_key = os.getenv('GOOGLE_API_KEY')
      
  2. Initialize Gemini LLM and DataAnalystAgent

    • Create a Gemini LLM client:
      gemini_llm = Gemini(api_key=api_key)
      
    • Initialize the DataAnalystAgent with your data and API key:
      data_analyst_agent = DataAnalystAgent(data_loc, api_key)
      
  3. Run Data Analysis Queries

    • Get column information:

      data_analyst_agent.think('tell me all columns')
      
    • Below is the output generated by above query.

    • Columns Output

    • Get distribution of the age column:

      o = data_analyst_agent.think('give me distribution of age column')
      
    • Below is a sample output image generated by the DataAnalystAgent for the age column distribution:

    • Age Column Distribution

Features Demonstrated

  • LLM-powered data analysis
  • Data summarization and column insights
  • Distribution queries

For more details, see the demo notebook.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dxel-0.1.0b2.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dxel-0.1.0b2-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

Details for the file dxel-0.1.0b2.tar.gz.

File metadata

  • Download URL: dxel-0.1.0b2.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dxel-0.1.0b2.tar.gz
Algorithm Hash digest
SHA256 aa6d1a7119ec5e684353e538a6bdd48a1a7246d58c0433609d49fb0c4db1b175
MD5 842104625b4c14d8b751a62d83cb9068
BLAKE2b-256 932c5186a9507ddb32cc0475978d146e1109aa93fbc574ef9ce69d364d8d65b0

See more details on using hashes here.

File details

Details for the file dxel-0.1.0b2-py3-none-any.whl.

File metadata

  • Download URL: dxel-0.1.0b2-py3-none-any.whl
  • Upload date:
  • Size: 26.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dxel-0.1.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 70c7f9a8dd1898145b983f9dba60e545795cbfe2433e87f14a82296b9d59dcad
MD5 da483451ce3510ba77598d92c23c40b2
BLAKE2b-256 df21a87733daa8e7eaad73be7b291eef4f675a600e214fd85d3a5841c6ec9e1c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page