Skip to content

feroz2017/data-interpreter

Repository files navigation

Data Interpreter

A general-purpose, open-source tool for analyzing structured data streams (logs, metrics, time-series) with LLM-powered insights. Understand what's happening in your data through intelligent pattern detection, anomaly identification, and natural language explanations.

Features

  • 🔍 Multi-Format Support: Analyze logs, metrics, time-series, and custom structured data
  • 🤖 LLM-Powered Insights: Get natural language explanations using Qwen2.5-7B-Instruct (4-bit MLX)
  • 📊 Pattern Detection: Automatically identify patterns and trends
  • ⚠️ Anomaly Detection: Spot unusual behavior in your data
  • 🔌 Plugin Architecture: Extensible design for custom parsers and analyzers
  • 🚀 Multiple Interfaces: REST API, Python SDK, and CLI
  • 🐳 Docker Ready: Easy deployment with containers

Quick Start

Installation

pip install -e .

Basic Usage

Python SDK:

from data_interpreter import DataInterpreter

interpreter = DataInterpreter(config="configs/default.yaml")
results = interpreter.analyze("data/logs/app.log")
insights = interpreter.get_insights(results)
print(insights)

CLI:

data-interpreter analyze data/logs/app.log --output insights.json
data-interpreter query "Why did errors spike at 3pm?"

REST API:

# Start server
data-interpreter serve

# Analyze data
curl -X POST http://localhost:8000/analyze \
  -H "Content-Type: application/json" \
  -d '{"source": "data/logs/app.log", "analysis_type": "anomaly"}'

Documentation

See docs/ for detailed documentation:

Development

# Install development dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Run with coverage
pytest --cov=data_interpreter --cov-report=html

License

MIT License - see LICENSE for details

Contributing

Contributions welcome! See CONTRIBUTING.md for guidelines.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages