# `HuggingfaceClient.Inference.Config`
[🔗](https://github.com/huggingface/huggingface_client/blob/v0.1.0/lib/huggingface_client/inference/config.ex#L1)

Runtime configuration for the inference layer.

Reads from `Application` env (set in `config/*.exs`) with sensible defaults.
All URLs are overridable in tests via `Application.put_env/3`.

# `all_providers`

```elixir
@spec all_providers() :: [String.t()]
```

Returns a list of all known provider IDs.

# `hub_url`

```elixir
@spec hub_url() :: String.t()
```

Returns the base HuggingFace Hub URL.

Reads from `:hf_hub_url` application env (distinct from `:hub_url` used by
`Hub.Client` and overridden in test config). Falls back to `HF_ENDPOINT`
env var, then the hard-coded default.

# `provider_base_url`

```elixir
@spec provider_base_url(String.t()) :: String.t()
```

Returns the direct API base URL for a given provider ID.

Falls back to the router URL for unknown providers.

# `router_url`

```elixir
@spec router_url() :: String.t()
```

Returns the HuggingFace inference router URL.

# `user_agent`

```elixir
@spec user_agent() :: String.t()
```

Returns the `User-Agent` string sent with all inference requests.

---

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