output_schema: Optional[Dict[str, Any]] = Field(
default=None,
description='A JSON Schema object that defines the structure of the research output. \n \n When provided,
the research response will be structured to match this schema,
ensuring a predictable and validated output shape. \n Must include a \'properties\' field,
and may optionally include \'required\' field.\n \n Example:\n\n {\n "properties": {\n "company": {\n "type": "string",\n "description": "The name of the company"\n },\n "key_metrics": {\n "type": "array",\n "description": "List of key performance metrics",\n "items": { "type": "string" }\n },\n "financial_details": {\n "type": "object",\n "description": "Detailed financial breakdown",\n "properties": {\n "operating_income": {\n "type": "number",\n "description": "Operating income for the period"\n }\n }\n }\n },\n "required": ["company"]\n }\n '
)