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.2.0.tar.gz (124.2 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.2.0-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: attest_ai-0.2.0.tar.gz
  • Upload date:
  • Size: 124.2 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.2.0.tar.gz
Algorithm Hash digest
SHA256 2d82ec4fc2590933e3f376d4a09d0c19a01910cf97c8e45dfa067da9b73a2da4
MD5 a41555172ea2a46cfca470e97007af3b
BLAKE2b-256 f722f6f75162793fa6e8c90865b22324d2891ad8c1d04e23c91874295109f42c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: attest_ai-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 26.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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b129f66ecae2a8caad49aae153114d9fc0d32a4cd23b61eb55007d9811acf12
MD5 b039e927f873de0074e6fbd2b0da745c
BLAKE2b-256 c70a7e61a1d5c6f4dd016a442202826c20c62e9cbb4b9cfae7529ba0760a18ea

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