# `LlmComposer.ProvidersRunner`
[🔗](https://github.com/doofinder/llm_composer/blob/master/lib/llm_composer/providers_runner.ex#L1)

Handles provider execution logic including fallback strategies, routing,
and error handling for multiple provider configurations.

# `messages`

```elixir
@type messages() :: [LlmComposer.Message.t()]
```

# `run`

```elixir
@spec run(messages(), LlmComposer.Settings.t(), LlmComposer.Message.t()) ::
  {:ok, any()} | {:error, term()}
```

Runs provider execution with fallback support for multiple providers.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
