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.
- 🔍 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
pip install -e .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"}'See docs/ for detailed documentation:
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Run with coverage
pytest --cov=data_interpreter --cov-report=htmlMIT License - see LICENSE for details
Contributions welcome! See CONTRIBUTING.md for guidelines.