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.1.tar.gz (767.4 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.1-py3-none-any.whl (741.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: openfinops-0.1.1.tar.gz
  • Upload date:
  • Size: 767.4 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.1.tar.gz
Algorithm Hash digest
SHA256 86a63c9eb1af70390372d7e339524e3aa9e258275d3123683edf430f92f7c737
MD5 08644e7704524d12ef9f0ddf340a0d4d
BLAKE2b-256 8d4b944b54d99a116514c3ac40e578ae6cce6a105e5712ffb862f48d5b8161a2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: openfinops-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 741.8 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 46a4ccdea934c1162aa15e84f56bbcf4d6aa2b3646168ab7ddb8567d12290e9b
MD5 dc91485a65c32aec5894afe7fd70e02b
BLAKE2b-256 12856b007c533f1f2e96ef5e035e57c5af1d92e90db38e5902966f3c8a9a8fbd

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