AEP-native execution layer for AI agents - spans, costs, budget enforcement
Project description
aceteam-aep
AEP-native execution layer for AI agents. Direct provider SDKs and AEP protocol compliance (spans, costs, budget enforcement).
Installation
pip install aceteam-aep
# Or with all providers:
pip install aceteam-aep[all]
Quick Start
from aceteam_aep import create_client, run_agent_loop, ChatMessage, tool
# Create a client
client = create_client("gpt-4o", api_key="sk-...")
# Define tools
@tool
def calculator(expression: str) -> str:
"""Evaluate a math expression."""
return str(eval(expression))
# Run agent loop
result = await run_agent_loop(
client,
[ChatMessage(role="user", content="What is 2+2?")],
tools=[calculator],
system_prompt="You are a helpful assistant.",
)
AEP Compliance
Every execution through run_agent_loop can produce AEP-compliant output:
from aceteam_aep import SpanTracker, CostTracker, BudgetEnforcer
tracker = SpanTracker()
costs = CostTracker(entity="org:my-org")
budget = BudgetEnforcer(total="10.00")
result = await run_agent_loop(
client, messages,
span_tracker=tracker,
cost_tracker=costs,
budget=budget,
)
# Access AEP data
print(tracker.get_spans()) # Execution trace
print(costs.get_cost_tree()) # Hierarchical costs
print(budget.state.remaining()) # Budget remaining
Streaming
from aceteam_aep import run_agent_loop_stream
async for event in run_agent_loop_stream(client, messages, tools=tools):
if event.type == "chunk":
print(event.data["text"], end="")
elif event.type == "tool_call_start":
print(f"\nCalling {event.data['name']}...")
elif event.type == "cost":
print(f"\nCost: ${event.data['compute_cost']}")
Providers
- OpenAI (GPT-4o, o1, o3, etc.)
- Anthropic (Claude Opus, Sonnet, Haiku)
- Google (Gemini 2.5, 3.0)
- xAI (Grok)
- Ollama (local models)
- OpenAI-compatible (SambaNova, TheAgentic, DeepSeek)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aceteam_aep-0.3.0.tar.gz
(78.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aceteam_aep-0.3.0.tar.gz.
File metadata
- Download URL: aceteam_aep-0.3.0.tar.gz
- Upload date:
- Size: 78.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.23
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
821a2bf1a284a1eaeb4586ac675a2e3cdff5f1c503cd0dd119272887353e3225
|
|
| MD5 |
47d9b88609a6688e5807c88fa41cc367
|
|
| BLAKE2b-256 |
6f347dae0e57d16dffb6c43831a3a5273223d5c96057d62b17210d3361e4f13a
|
File details
Details for the file aceteam_aep-0.3.0-py3-none-any.whl.
File metadata
- Download URL: aceteam_aep-0.3.0-py3-none-any.whl
- Upload date:
- Size: 36.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.23
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bea24eb39e484a815f6cfcfecd3129640fe87a9cc4b599b3319812290072118
|
|
| MD5 |
e628362e31d04d73f7d6af90516667b1
|
|
| BLAKE2b-256 |
6d7ad6a4ce44a9e39d84dc668e7bb9d5c19e9da2d90d9e21470fd1f803ea2ddb
|