A normalised inference response.
:text is the concatenated assistant text. :tool_calls holds any tool
calls the model wants the runtime to execute (empty when the model just
replied with text). :usage carries token accounting when the provider
reports it; :raw keeps the provider's original payload for debugging.
Summary
Types
@type usage() :: %{ optional(:input_tokens) => non_neg_integer(), optional(:output_tokens) => non_neg_integer(), optional(:total_tokens) => non_neg_integer() }