Skip to main content

Graph-based evaluation engine for machine learning models

Project description

🚀 AI Critic 3.4.0 (Unified Edition)

pip install ai-critic

AI Critic é um motor de avaliação de modelos de machine learning baseado em grafo, projetado para ir além de métricas isoladas.

Ele executa um pipeline estruturado que analisa múltiplas dimensões do modelo — performance, robustez, explainability, dados e estrutura — e entrega um relatório unificado, interpretável e acionável.


🔥 O QUE MUDOU NA 4.0

🧠 Arquitetura Unificada

  • Um único pipeline central (evaluate())
  • Um único formato de saída (report)
  • Eliminação de múltiplos formatos inconsistentes

📦 Report Padronizado (JSON-first)

Todos os resultados seguem o mesmo schema:

report = {
    "scores": {},        # score técnico (0–1)
    "details": {},       # outputs dos nodes
    "risk": {},          # score interpretável (0–100)
    "summary": {},       # interpretação humana
    "suggestions": []    # ações recomendadas
}

👉 Isso torna o sistema:

  • API-ready
  • fácil de salvar/logar
  • pronto para produção

⚡ Graph Engine Melhorado

  • Execução baseada em dependências reais (topological sort)
  • Suporte a execução paralela

🎯 Sistema de Scoring em Camadas

  • Score técnico (0–1) → agregador
  • Score interpretável (0–100) → risk scoring

💡 Suggestion Engine Integrado

  • Recomendações automáticas baseadas no comportamento do modelo

⚡ QUICK START

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

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

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

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

# Avaliação
report = critic.evaluate(model, X, y, parallel=True)

# 🔹 Scores técnicos
print(report["scores"])

# 🔹 Score de risco (0–100)
print(report["risk"])

# 🔹 Resumo humano
print(report["summary"])

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

🧩 PIPELINE INTERNO

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

🧱 COMPONENTES PRINCIPAIS

1. Evaluation Graph

Sistema baseado em DAG (Directed Acyclic Graph):

  • Resolve dependências automaticamente
  • Executa nós na ordem correta
  • Permite paralelização

Exemplo:

performance → robustness → explainability

2. Score Aggregator

Combina scores dos evaluators:

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

3. Evaluator Plugins

Extensível 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)

Transforma sinais técnicos em diagnóstico interpretável:

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

5. Human Summary

Resumo de alto nível:

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

6. Suggestion Engine

Sugestões automáticas:

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

🖥️ CLI

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

Saída:

  • scores
  • risco
  • resumo

🧠 FILOSOFIA DE DESIGN

1. Single Source of Truth

Um único formato de dados → evita inconsistência


2. Graph-first Thinking

Avaliação como pipeline dependente, não funções isoladas


3. JSON-native

Tudo pronto para:

  • APIs
  • dashboards
  • logs
  • SaaS

4. Actionable AI

Não só métricas — decisões:

  • “deploy ou não?”
  • “onde está o risco?”
  • “o que corrigir?”

🔥 POSICIONAMENTO

AI Critic não é só uma lib de métricas.

É um:

🧠 Linting engine para modelos de machine learning


🚀 ROADMAP (PRÓXIMO NÍVEL)

  • API REST (/evaluate)
  • Dashboard visual
  • Telemetria de modelos
  • Aprendizado contínuo (feedback loop)
  • Benchmark global entre modelos

💬 RESUMO

Você transformou o projeto em:

✅ pipeline unificado ✅ arquitetura escalável ✅ pronto para produto ✅ pronto para SaaS


Se quiser, posso agora te ajudar a transformar isso em:

👉 landing page estilo startup 👉 README que viraliza no GitHub 👉 ou pitch para investidores

Só falar 👍

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ai_critic-3.4.1.tar.gz
  • Upload date:
  • Size: 19.9 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.1.tar.gz
Algorithm Hash digest
SHA256 f66cca2d5b3b01f21dde740998c171d4361a29d7cd0997f2d710273ee1f16052
MD5 620666a7db60b78876d133a492207123
BLAKE2b-256 d384e932ec6da89bbb0b3a088f96e662a6829276cab0daf207ee74a1b256a64c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ai_critic-3.4.1-py3-none-any.whl
  • Upload date:
  • Size: 24.9 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4db48888807d3476449463345e7f360bdb22979f3bae8cfc774fafa6a98e7c55
MD5 1d04d1bb5858422ffff043fcf693348f
BLAKE2b-256 55e8ba19d0081ac12dcc91ad95228f47d327c41b1eda7652ded3a82f7a470e9f

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