from upsonic import Agent, Task
from pydantic import BaseModel
class AnalysisResult(BaseModel):
summary: str
confidence: float
recommendations: list[str]
key_metrics: dict[str, float]
# Create agent
agent = Agent(model="anthropic/claude-sonnet-4-5")
# Task with structured response
task = Task(
description="Analyze the current state of electric vehicle market and provide structured results",
response_format=AnalysisResult
)
# Execute and access structured result
result = agent.print_do(task)
print(f"Summary: {result.summary}")
print(f"Confidence: {result.confidence}")
print(f"Recommendations: {result.recommendations}")
print(f"Key Metrics: {result.key_metrics}")