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.2.tar.gz (768.3 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.2-py3-none-any.whl (743.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: openfinops-0.1.2.tar.gz
  • Upload date:
  • Size: 768.3 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.2.tar.gz
Algorithm Hash digest
SHA256 ed309bb7a033d76cd0871476ee9f11e4d8653fc945540e87e9ea400f90333d45
MD5 67ff4d0e572c93cf724e62907138e676
BLAKE2b-256 e855b710d2b063d91e173fffb402bcbcbd4151f1cb0f864f93acbab33e912ac4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: openfinops-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 75bf08afafb61d51277bd9e9a89318a8406a9305955c363f41c17f5f854b02e2
MD5 7443f8dcb47416a852c5222f00bbc0a6
BLAKE2b-256 a63a02a7187acef311c3e6e13e8980eb194d126ed564ea617307bf52fa8ccfd7

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