Skip to main content

Open Source FinOps Platform for AI/ML Cost Observability and Optimization

Project description

๐ŸŒŸ OpenFinOps

Open Source FinOps Platform for AI/ML Cost Observability and Optimization

License Python PyPI version PyPI downloads Total downloads PRs Welcome

๐ŸŽฏ Overview

OpenFinOps is a comprehensive, open-source platform for tracking, analyzing, and optimizing costs across AI/ML infrastructure and operations. It provides real-time visibility into:

  • LLM Training Costs - Track GPU utilization, training jobs, and compute expenses
  • RAG Pipeline Monitoring - Monitor vector databases, embeddings, and retrieval costs
  • Multi-Cloud Cost Tracking - Unified view across AWS, Azure, GCP
  • AI API Usage - Track OpenAI, Anthropic, and other LLM API costs
  • Executive Dashboards - Role-based views for CFO, COO, Infrastructure Leaders
  • Cost Attribution - Per-model, per-team, per-project cost breakdown
  • AI-Powered Optimization - Intelligent recommendations for cost savings

โœจ Key Features

๐Ÿ“Š Comprehensive Observability

  • Real-time Monitoring: Live metrics for all AI/ML operations
  • Multi-Cloud Support: AWS, Azure, GCP telemetry integration
  • LLM Training Tracking: GPU utilization, loss curves, cost per epoch
  • RAG Analytics: Document processing, embedding generation, retrieval accuracy
  • API Cost Tracking: OpenAI, Anthropic, and custom API endpoints

๐Ÿ’ฐ FinOps Intelligence

  • Cost Observatory: Centralized cost tracking and analysis
  • Cost Attribution: Per-model, per-project, per-team breakdowns
  • Budget Management: Set budgets, track spending, get alerts
  • Optimization Recommendations: AI-powered cost-saving suggestions
  • Trend Analysis: Historical cost patterns and forecasting

๐Ÿ“ˆ Professional Visualizations

  • VizlyChart: Built-in visualization library for charts and graphs
  • Executive Dashboards: Role-based dashboards (CFO, COO, Infrastructure)
  • Real-time Charts: Live updating metrics and KPIs
  • Custom Reports: Generate and export custom cost reports

๐Ÿ” Enterprise-Grade Security

  • Role-Based Access Control (RBAC): Fine-grained permissions
  • IAM Integration: Identity and access management system
  • Audit Logging: Complete audit trail for all operations
  • Secure API: Authentication and authorization built-in

๐Ÿš€ Easy Deployment

  • Docker Support: Containerized deployment ready
  • Kubernetes Ready: Helm charts for K8s deployment
  • Cloud-Native: Deploy on any cloud provider
  • On-Premise: Run in your own datacenter

๐Ÿ—๏ธ Architecture

openfinops/
โ”œโ”€โ”€ observability/          # Core observability platform
โ”‚   โ”œโ”€โ”€ observability_hub.py        # Central monitoring hub
โ”‚   โ”œโ”€โ”€ llm_observability.py        # LLM training & RAG monitoring
โ”‚   โ”œโ”€โ”€ finops_dashboards.py        # FinOps dashboards
โ”‚   โ”œโ”€โ”€ cost_observatory.py         # Cost tracking
โ”‚   โ”œโ”€โ”€ cost_reporting.py           # Cost reporting
โ”‚   โ”œโ”€โ”€ ai_recommendations.py       # AI-powered optimization
โ”‚   โ””โ”€โ”€ alerting_engine.py          # Intelligent alerting
โ”‚
โ”œโ”€โ”€ vizlychart/             # Visualization library
โ”‚   โ”œโ”€โ”€ charts/                     # Chart implementations
โ”‚   โ”œโ”€โ”€ rendering/                  # Rendering engine
โ”‚   โ””โ”€โ”€ core/                       # Core utilities
โ”‚
โ”œโ”€โ”€ dashboard/              # Role-based dashboards
โ”‚   โ”œโ”€โ”€ cfo_dashboard.py            # CFO financial view
โ”‚   โ”œโ”€โ”€ coo_dashboard.py            # COO operations view
โ”‚   โ”œโ”€โ”€ infrastructure_leader_dashboard.py
โ”‚   โ””โ”€โ”€ iam_system.py               # Access control
โ”‚
โ””โ”€โ”€ agents/                 # Cloud telemetry agents
    โ”œโ”€โ”€ aws_telemetry_agent.py
    โ”œโ”€โ”€ azure_telemetry_agent.py
    โ”œโ”€โ”€ gcp_telemetry_agent.py
    โ””โ”€โ”€ generic_telemetry_agent.py

๐Ÿš€ Quick Start

Installation

# Install from source
git clone https://github.com/openfinops/openfinops.git
cd openfinops
pip install -e .

# Or with all features
pip install -e ".[all]"

# Or specific cloud providers
pip install -e ".[aws,azure,gcp]"

Basic Usage

from openfinops.observability import ObservabilityHub
from openfinops.observability import LLMObservabilityHub

# Initialize observability
hub = ObservabilityHub()
llm_hub = LLMObservabilityHub()

# Register training cluster
llm_hub.register_training_cluster(
    cluster_name="gpu-cluster-1",
    nodes=["node-1", "node-2"]
)

# Track training metrics
llm_hub.track_training_metrics(
    model_id="gpt-custom",
    epoch=1,
    step=100,
    loss=0.5,
    gpu_memory_usage=8000
)

# Get cost summary
cost_summary = hub.get_cost_summary()
print(f"Total spend: ${cost_summary['total']}")

Running the Dashboard

# Start the web dashboard
openfinops-dashboard

# Or with custom port
openfinops-dashboard --port 8080

# Access at http://localhost:8080

๐Ÿ“š Documentation

๐ŸŽฏ Use Cases

For Engineering Teams

  • Monitor LLM training job costs in real-time
  • Track GPU utilization and optimize resource allocation
  • Debug cost anomalies and inefficiencies
  • Set up alerts for budget overruns

For Finance Teams

  • Get complete visibility into AI/ML spending
  • Track cost attribution by team, project, or model
  • Generate reports for stakeholders
  • Forecast future AI infrastructure costs

For Leadership

  • Executive dashboards with key metrics
  • ROI analysis for AI initiatives
  • Budget vs. actual spending tracking
  • Strategic cost optimization recommendations

๐ŸŒ Multi-Cloud Support

OpenFinOps supports telemetry from:

  • AWS: CloudWatch metrics, Cost Explorer, EC2, SageMaker
  • Azure: Azure Monitor, Cost Management, Azure ML
  • GCP: Cloud Monitoring, Cloud Billing, Vertex AI
  • AI Platforms: OpenAI, Anthropic, Hugging Face, Custom APIs

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

# Clone the repository
git clone https://github.com/openfinops/openfinops.git
cd openfinops

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

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

# Run tests
pytest

# Format code
black src/ tests/
ruff check src/ tests/

๐Ÿ“Š Roadmap

  • Kubernetes operator for auto-scaling based on cost
  • Integration with Prometheus and Grafana
  • Support for more AI platforms (Cohere, AI21, etc.)
  • Advanced anomaly detection with ML models
  • Mobile app for cost monitoring
  • Slack/Teams integration for alerts
  • Custom webhook support
  • Cost allocation tagging system

๐Ÿ“„ License

OpenFinOps is licensed under the Apache License 2.0. See LICENSE for details.

๐Ÿ™ Acknowledgments

OpenFinOps is built with inspiration from the FinOps Foundation principles and best practices from the cloud cost optimization community.

๐Ÿ“ Citing OpenFinOps

If you use OpenFinOps in your research, please cite it using the following references:

BibTeX

@software{openfinops2024,
  title = {{OpenFinOps}: Open Source FinOps Platform for AI/ML Cost Observability and Optimization},
  author = {Murugan, Durai and {OpenFinOps Contributors}},
  year = {2024},
  month = {10},
  version = {0.1.0},
  url = {https://github.com/rdmurugan/OpenFinOps},
  license = {Apache-2.0},
  keywords = {finops, cost-optimization, observability, ai-ml, cloud-cost, llm-monitoring}
}


## ๐Ÿ“ž Support

- **GitHub Issues**: [Report bugs or request features](https://github.com/openfinops/openfinops/issues)
- **Discussions**: [Community discussions](https://github.com/openfinops/openfinops/discussions)
- **Email**: durai@infinidatum.net

## โญ Star Us!

If you find OpenFinOps useful, please consider giving us a star on GitHub! It helps the project grow and reach more users.

---

**Made with โค๏ธ by the OpenFinOps community**

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

openfinops-0.1.3.tar.gz (768.2 kB view details)

Uploaded Source

Built Distribution

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

openfinops-0.1.3-py3-none-any.whl (743.4 kB view details)

Uploaded Python 3

File details

Details for the file openfinops-0.1.3.tar.gz.

File metadata

  • Download URL: openfinops-0.1.3.tar.gz
  • Upload date:
  • Size: 768.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for openfinops-0.1.3.tar.gz
Algorithm Hash digest
SHA256 bc6275d88c473d22161d7f78711e27cac9757571b6407ae1ac5eb21be87618e9
MD5 cc3f6bd8e604013e53339d8e3330f1f0
BLAKE2b-256 81bcd0dcc275995ae9ff66fdf89b7824cdf358f90044e2bd01bd73ee6caad598

See more details on using hashes here.

File details

Details for the file openfinops-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: openfinops-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 743.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for openfinops-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e0f5eefa1c27a205428fd8b0ddf4dd3ad7f82e153869701e6af25c4a513063ea
MD5 03a7fa2256e86a1e7f2eb13cf642039c
BLAKE2b-256 e6bea7c11f6b91e85f0b96287c2100edf32fe80f8929f2fba7493187a42dedab

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