Skip to main content

Serial Alice Agent

Verifiable energy and compute attestation agent for AI workloads. Issues Ed25519-signed certificates of energy consumption, anchored on Polygon.

Install

# From the self-hosted zip (no PyPI, no GitHub auth required):
pip install https://api.serialalice.pt/agent/download/linux

# Or download first:
curl -L https://api.serialalice.pt/agent/download/linux -o serial-alice-agent.zip
pip install serial-alice-agent.zip

# With NVIDIA GPU telemetry:
pip install "serial-alice-agent.zip[gpu]"

Quick start

export SA_AGENT_API_KEY=sa_live_...   # from https://app.serialalice.pt

serial-alice-agent status             # verify API connectivity
serial-alice-agent discover           # list detected hardware
serial-alice-agent run --job-name my-training -- python train.py

Run without installing

unzip serial-alice-agent.zip
cd serial-alice-agent
pip install requests pyyaml psutil cryptography   # core deps
python -m agent.cli status

Configuration

# agent.yaml
api_url: https://api.serialalice.pt
api_key: ${SA_AGENT_API_KEY}
measurement_interval_s: 10
hardware:
  gpu: auto
  cpu: true

Pre-registered experiments (baseline vs treatment)

serial-alice-agent experiment run --protocol experiment.yaml --out ./exp-out --evaluate

Runs a comparative experiment end to end: pre-registers the claim (signed, anchored), executes warm-ups (discarded), then every repetition in a seeded randomized order, applies each arm's treatment (sm_clock_lock_mhz, mem_clock_lock_mhz, power_limit_w), OBSERVES whether it took effect, samples GPU power on the same monotonic clock as the workload, restores clocks and power limit after every run (and on any error), and submits each repetition with its raw files and signed summary. With --evaluate it issues the outcome certificate and saves bundle.json + artifacts/ for offline verification. See agent/experiment/example_protocol.yaml.

An arm's treatment can also be a third-party controller process (external_controller, e.g. GPU Optimizer's ghost_switch.py): the protocol pins the file (and the files it imports) by sha256 — checked before pre-registration and before every repetition — and the pre-registration names it. Per repetition the executor starts the declared command, waits its warm-up, runs the workload, stops it with the declared signal, and binds its log and output files. The controller's OWN output decides whether it acted (declared checks such as actions_taken >= 1); a repetition where it did not is still submitted and makes the outcome INVALID. See agent/experiment/example_protocol_ghost_switch.yaml.

What it will not do: submit a failed run with invented data (it becomes visible attrition), hide a treatment that did not take effect (the outcome becomes INVALID), or present --simulate rehearsals as hardware measurements (they are submitted as operator-declared). Clock/power actuation needs root/admin and nvidia-smi; the NVIDIA backend reads through pynvml (pip install serial-alice-agent[gpu]).

Metadata

Release files for serial-alice-agent 1.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for serial-alice-agent 1.3.0
File Size Uploaded Provenance Actions
serial_alice_agent-1.3.0.tar.gz 459.6 kB Without provenance Details for serial_alice_agent-1.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for serial-alice-agent 1.3.0
File Interpreter ABI Platform Actions
serial_alice_agent-1.3.0-py3-none-any.whl Python 3 none any Details for serial_alice_agent-1.3.0-py3-none-any.whl

Total release size: 1.0 MB

Release files / serial_alice_agent-1.3.0.tar.gz

Download URL serial_alice_agent-1.3.0.tar.gz
Size 459.6 kB
Tags Source
SHA-256 checksum
How to use checksums
07998e309e16a211317ef8f8944a9e68f74792d3879d62bcf9b72f1d0d79fc4f
BLAKE2b-256 checksum
How to use checksums
9dce893642037f93784197ed7d803fede89b1245ed7fcf0ce84ca9e98846ba99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / serial_alice_agent-1.3.0-py3-none-any.whl

Download URL serial_alice_agent-1.3.0-py3-none-any.whl
Size 554.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
60ac37665f8593b448c3b714c8144af63af76e0bff279943c65c043b901c1ee0
BLAKE2b-256 checksum
How to use checksums
cce6389225c09a7dd3a0513f94d01fc201a7d846066efde6a7845cd04bc97eea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Security for serial-alice-agent 1.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page