Recursively generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
completion_cost_details is the per-category USD breakdown of completion_cost.
Categories mirror completion_token_details. Returned only when the COMPLETION_COST_DETAILS field is requested.
raw maps each category name to its estimated USD cost.