Skip to main content

Test framework for AI agents

Project description

attest-ai

Test framework for AI agents. Deterministic assertions (schema validation, cost constraints, trace ordering, content matching) over agent execution traces.

Install

pip install attest-ai

With LLM provider support:

pip install attest-ai[openai]      # OpenAI
pip install attest-ai[anthropic]   # Anthropic
pip install attest-ai[gemini]      # Google Gemini
pip install attest-ai[ollama]      # Ollama (local)
pip install attest-ai[all]         # All providers

Quick start

import attest
from attest import expect

result = attest.AgentResult(
    trace=trace,  # captured from your agent
    assertion_results=[],
)

# Layer 1: Schema validation
expect(result).output_matches_schema({"type": "object", "required": ["refund_id"]})

# Layer 2: Cost & performance constraints
expect(result).cost_under(0.05)
expect(result).latency_under(5000)

# Layer 3: Trace structure
expect(result).tools_called_in_order(["lookup_order", "process_refund"])
expect(result).no_tool_loops(max_iterations=3)

# Layer 4: Content assertions
expect(result).output_contains("refund")
expect(result).output_not_contains("sorry")

Pytest integration

Attest registers as a pytest plugin automatically:

pytest tests/ --attest-engine=/path/to/attest-engine

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

attest_ai-0.4.0.tar.gz (397.9 kB view details)

Uploaded Source

Built Distribution

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

attest_ai-0.4.0-py3-none-any.whl (51.4 kB view details)

Uploaded Python 3

File details

Details for the file attest_ai-0.4.0.tar.gz.

File metadata

  • Download URL: attest_ai-0.4.0.tar.gz
  • Upload date:
  • Size: 397.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for attest_ai-0.4.0.tar.gz
Algorithm Hash digest
SHA256 b9a9ea8f4f830da91c5e2fb60e3f930445cddf170992ca0b2fa244acf66112ae
MD5 905b0a05d63aa895008be00d408f9139
BLAKE2b-256 85c5dab3a2ed600835f0041f152981140fefb74f366a9646375e88105416bc09

See more details on using hashes here.

File details

Details for the file attest_ai-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: attest_ai-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 51.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for attest_ai-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5ee96cb97e0c3732d334719727852d254abd1da5cea81cc88c2ac1014aed502d
MD5 b84894602c7d2dd8dd29ffb85cbe6062
BLAKE2b-256 4581b265041246130989797687f2913c6f4f08d813ed9136895795ef6a9545fe

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