A normalized LLM request passed from the runner to a provider adapter.
Summary
Types
@type t() :: %CouncilEx.Request{ max_tokens: pos_integer() | nil, member_id: atom() | nil, messages: [message()], metadata: map(), model: String.t(), parallel_tools: boolean(), parallel_tools_strategy: :collect | :fail_fast, response_schema: module() | {:json_schema, map()} | nil, round_name: atom() | nil, run_id: String.t() | nil, temperature: float() | nil, tool_choice: nil | :auto | :required | :none | String.t(), tool_concurrency_factor: float(), tool_timeout_ms: pos_integer(), tools: [module()] | nil }