import asyncio
from cascadeflow import CascadeAgent, ModelConfig
agent = CascadeAgent(models=[
ModelConfig(name="gpt-4o-mini", provider="openai", cost=0.000375),
ModelConfig(name="gpt-4o", provider="openai", cost=0.00625),
])
queries = [
"What's the capital of France?", # Simple — draft model handles
"Explain quantum computing", # Medium — may escalate
"Write a Python function to sort a list", # Code — domain routing
]
async def main():
total_cost = 0
baseline_cost = 0
for query in queries:
result = await agent.run(query)
total_cost += result.total_cost
baseline_cost += result.total_cost if result.model_used == "gpt-4o" else result.total_cost * (0.00625 / 0.000375)
print(f"Query: {query[:40]}...")
print(f" Model: {result.model_used}")
print(f" Cost: ${result.total_cost:.6f}")
print()
savings = (1 - total_cost / baseline_cost) * 100 if baseline_cost > 0 else 0
print(f"Total cost: ${total_cost:.6f}")
print(f"Savings: {savings:.0f}%")
asyncio.run(main())