Skip to main content

Post-quantum AI decision attestation for AutoGen, LlamaIndex, and any Python AI pipeline

Project description

autogen-rubric

One line. Every AI decision attested.

Post-quantum attestation for OpenAI, Anthropic, LlamaIndex, LangChain, AutoGen, CrewAI, and more — anchored permanently to Hedera Consensus Service. Built for EU AI Act Article 12 compliance.

pip install autogen-rubric

Get a free API key

https://rubric-protocol.com/developers

Takes 10 seconds. Key is shown instantly — no waiting for email.

Get a free API key

https://rubric-protocol.com/developers

Takes 10 seconds. Key is shown instantly — no waiting for email.

⚠️ Critical: /v1/attest vs /v1/tiered-attest

Endpoint Tier Required Behavior Cost
/v1/attest Enterprise only Writes directly to Hedera Consensus Service HBAR per call
/v1/tiered-attest Developer+ Merkle batching (1,000,000:1 compression) Minimal

Use /v1/tiered-attest for all development and high-volume workloads. /v1/attest is a direct HCS write. Unguarded use drained 1,000 HBAR in 12 hours. Hard rate limit: 60 req/min. If you are unsure which to use: use /v1/tiered-attest.

Auto-Instrumentation

Add one line at app startup. Every AI decision is attested automatically.

import autogen_rubric as rubric

rubric.instrument(
    api_key="your-rubric-api-key",
    pipeline_id="my-ai-app",
)

# Everything below is now attested automatically
# OpenAI, Anthropic, LlamaIndex, LangChain, AutoGen, CrewAI...

Rubric detects which frameworks are installed and patches them at the framework level. Every LLM call, every agent decision, every tool use is cryptographically signed, Merkle-aggregated, and anchored to Hedera Consensus Service.

Get a free API key at rubric-protocol.com.

What instrument() does

  • Detects installed frameworks automatically
  • Patches each at the class level — no per-call code required
  • Submits attestations asynchronously — zero latency impact
  • Stores payload keys to ./rubric_keys/ by default (configurable)
  • Returns an Instrumentation object for status and shutdown

Supported Frameworks

# Auto-detects and instruments any of:
# openai, anthropic, langchain, llama_index,
# autogen, crewai, haystack, semantic_kernel,
# langgraph, dspy

Configuration

rubric.instrument(
    api_key="your-rubric-api-key",
    pipeline_id="loan-underwriting",
    node="eu",
    enterprise=True,
    payload_key_dir="/secure/keys",
    on_payload_key=my_vault_store,
    background_queue=True,
    flush_interval=5.0,
)

Payload Key Storage

Every attestation is encrypted with a customer-held AES-256-GCM key. The key is returned once and never stored by Rubric. By default keys are written to ./rubric_keys/{attestation_id}.key

For production, provide a custom handler:

def store_in_vault(attestation_id, payload_key):
    my_secrets_manager.store(f"rubric:{attestation_id}", payload_key)

rubric.instrument(api_key="...", on_payload_key=store_in_vault)

Never log the payload key. Never store it next to the attestation record.

Explicit Attestation

For custom inference layers or fine-grained control:

from autogen_rubric import RubricClient

client = RubricClient(api_key="your-key", enterprise=True, background_queue=True)

result = client.attest(
    agent_id="custom-model-v2",
    output="Application approved. Confidence: 0.94.",
    confidence=0.94,
    pipeline_id="loan-underwriting",
)

EU AI Act Article 12

Every attested decision receives:

  • ML-DSA-65 post-quantum signature (NIST FIPS 204)
  • Merkle inclusion in a SHA3-256 forest
  • HCS consensus timestamp from an independent network
  • Poseidon2 ZK inclusion proof (customer-retrievable)
  • AES-256-GCM encrypted payload (customer-held key)

The audit trail is independently verifiable without Rubric involvement.

Links

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

autogen_rubric-1.6.1.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

autogen_rubric-1.6.1-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file autogen_rubric-1.6.1.tar.gz.

File metadata

  • Download URL: autogen_rubric-1.6.1.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for autogen_rubric-1.6.1.tar.gz
Algorithm Hash digest
SHA256 60ebfcc6a5d2ddcd4dc4e3f610bcd200983b124a04c54096c384c67a7a115886
MD5 e8227247b7d944522a6ef4dcf5e8a49d
BLAKE2b-256 ebde405d46019f71b608668f314f0b9ad14596e119d6fa75b74547c7348a5811

See more details on using hashes here.

File details

Details for the file autogen_rubric-1.6.1-py3-none-any.whl.

File metadata

  • Download URL: autogen_rubric-1.6.1-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for autogen_rubric-1.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 21fd5101792903b2bdcb9773dd42d35caf00634c81c796bc3228731946d7c6ff
MD5 fe4aa0db69a22687e62e4f8350ac9c23
BLAKE2b-256 ba3424aa5882c609b0c791d024b5bacd1f11207e4cf495c0f9f79d3bb4bf6c82

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