Skip to main content

Graph-based evaluation engine for machine learning models

Project description

🚀 AI Critic 3.4.5 (Unified Evaluation Engine)

pip install ai-critic

AI Critic is a graph-based evaluation engine for machine learning models, designed to go beyond isolated metrics.

It runs a structured evaluation pipeline that analyzes multiple dimensions — performance, robustness, explainability, data quality, and structure — delivering a unified, interpretable, and actionable report.


🔥 WHAT’S NEW IN 3.4.5

🧠 Fully Unified Architecture

  • Single entry point: evaluate()
  • Single output format: report
  • Removal of fragmented and inconsistent outputs

📦 Standardized Report (JSON-first)

All results follow the same schema:

report = {
    "scores": {},        # technical scores (0–1)
    "details": {},       # raw evaluator outputs
    "risk": {},          # interpretable score (0–100)
    "summary": {},       # human-readable insights
    "suggestions": []    # recommended actions
}

👉 This makes AI Critic:

  • API-ready
  • Easy to log and persist
  • Production-ready

⚡ Improved Graph Engine

  • Dependency-aware execution (topological sort)
  • Parallel execution support
  • Deterministic evaluation order

🎯 Multi-layer Scoring System

  • Technical score (0–1) → aggregation layer
  • Risk score (0–100) → decision layer

💡 Integrated Suggestion Engine

  • Automatically generates recommendations based on model behavior

🧩 Plugin System Stabilization

  • Cleaner evaluator interface
  • Improved dependency resolution
  • Easier extension of the evaluation pipeline

⚡ QUICK START

from ai_critic import AICritic
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris

# Data
data = load_iris()
X, y = data.data, data.target

# Model
model = RandomForestClassifier().fit(X, y)

# Critic
critic = AICritic(weights={
    "performance": 1.0,
    "robustness": 1.5
})

# Evaluation
report = critic.evaluate(model, X, y, parallel=True)

# 🔹 Technical scores
print(report["scores"])

# 🔹 Risk score (0–100)
print(report["risk"])

# 🔹 Human summary
print(report["summary"])

# 🔹 Suggestions
for s in report["suggestions"]:
    print("-", s)

🧩 INTERNAL PIPELINE

evaluate()
   ↓
EvaluationGraph (nodes)
   ↓
raw_results
   ↓
ScoreAggregator (0–1)
   ↓
build_report()
   ↓
scoring.py (risk 0–100)
   ↓
summary.py (human-readable)
   ↓
SuggestionEngine

🧱 CORE COMPONENTS

1. Evaluation Graph

A DAG-based execution system:

  • Automatically resolves dependencies
  • Executes nodes in correct order
  • Enables parallel execution

Example:

performance → robustness → explainability

2. Score Aggregator

Combines evaluator outputs:

critic = AICritic(weights={
    "performance": 1.0,
    "robustness": 2.0
})

3. Evaluator Plugins

Fully extensible via plugins:

from ai_critic.plugins.base import EvaluatorPlugin
from ai_critic.plugins.registry import EvaluatorRegistry

class FairnessEvaluator(EvaluatorPlugin):
    name = "fairness"
    dependencies = ["performance"]
    weight = 1.0

    def evaluate(self, model, dataset, context=None):
        return {
            "score": 0.92,
            "verdict": "stable",
            "message": "Fairness is acceptable"
        }

EvaluatorRegistry.register(FairnessEvaluator())

4. Risk Scoring (0–100)

Transforms technical signals into decision-ready output:

report["risk"] = {
    "global_score": 78.5,
    "verdict": "usable_with_caution",
    "component_scores": {...},
    "penalties": [...]
}

5. Human Summary

High-level interpretation:

report["summary"] = {
    "executive_summary": {
        "verdict": "⚠️ Risky",
        "deploy_recommended": False
    }
}

6. Suggestion Engine

Actionable insights:

[
    "Check for data leakage",
    "Improve robustness with regularization"
]

🖥️ CLI

ai-critic --model model.pkl --data dataset.csv --target label

Output includes:

  • scores
  • risk analysis
  • summary

🧠 DESIGN PHILOSOPHY

1. Single Source of Truth

One unified data format → no inconsistencies


2. Graph-first Thinking

Evaluation is a dependency-driven pipeline, not isolated functions


3. JSON-native

Everything is ready for:

  • APIs
  • dashboards
  • logging
  • SaaS platforms

4. Actionable AI

Not just metrics — decisions:

  • Should you deploy?
  • Where is the risk?
  • What should be improved?

🔥 POSITIONING

AI Critic is not just a metrics library.

It is a:

🧠 Linting engine for machine learning models


🚀 ROADMAP

  • REST API (/evaluate)
  • Visual dashboard
  • Model telemetry
  • Continuous learning (feedback loop)
  • Global benchmarking between models

📄 LICENSE

MIT License

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

ai_critic-3.4.5.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

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

ai_critic-3.4.5-py3-none-any.whl (24.7 kB view details)

Uploaded Python 3

File details

Details for the file ai_critic-3.4.5.tar.gz.

File metadata

  • Download URL: ai_critic-3.4.5.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ai_critic-3.4.5.tar.gz
Algorithm Hash digest
SHA256 557ae08cb89f3791f2c082246d500863cb0f3088c034b9d5013ad8ae4f389baf
MD5 f9355247a2ba4768ceaa0c7ccceca10f
BLAKE2b-256 807299bbb0bdbb8908d3a9492d5ee82f204b8a7ef144cb9dbebcb32b5ac99264

See more details on using hashes here.

File details

Details for the file ai_critic-3.4.5-py3-none-any.whl.

File metadata

  • Download URL: ai_critic-3.4.5-py3-none-any.whl
  • Upload date:
  • Size: 24.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ai_critic-3.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e0cd7bc6758653b5a5e7d9a2db900272b6596e866140c6b0741519985d39f3a3
MD5 c765a5fee78241c857673048f94df597
BLAKE2b-256 fa087fa908f645168ad51ef7bc7212500d8035a407786ef504c2eedac6ae891e

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