-record(runtime_config, { provider :: fun((list(pig_protocol@message:message()), list(pig_protocol@tool_definition:tool_definition())) -> {ok, pig_protocol@inference:inference_result()} | {error, pig_protocol@error:ai_error()}), tools :: pig@tool:tool_registry(), hooks :: list(pig@hooks:hooks()), dispatcher :: gleam@erlang@process:subject(pig@obs@dispatcher:dispatcher_message()), model :: binary(), max_iterations :: integer() }).