Deep research api structured output

Using o3-deep-research, I need strictly structured JSON for a research report with fixed keys and nested values. The keys are set, value structures are set, but ideally the LLM would be able to choose to add new keys with the same value structure.

I’ve been using Pydantic BaseModel & turning this into a JSON schema to pass in, but deep research simply will not play nicely. Something like:

  • topic

  • sections[] → each has overview and metrics[]

  • metrics[] items: value, confidence, evidence_id

  • sources[] items: evidence_id, url, kind

  • allow optional extras the model may add - ideally it could add new sections that take the same structure.

What is the correct way to force this shape using with o3-deep-research?

2 Likes

Welcome to the community!

This model doesn’t support structured output.

image

3 Likes

Hi and welcome to the community!

I don’t think o3-deep-research is the best fit, even if it could return structured outputs.

You could use deep research to gather sources, then let another model generate the JSON you need. GPT-5-pro should handle that part well, though it is more expensive.

Hope this helps!

1 Like