# `Gemini.Utils.ResourceNames`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.15.0/lib/gemini/utils/resource_names.ex#L1)

Utilities for normalizing Google Cloud resource names for Gemini/Vertex AI.

# `cached_contents_path`

```elixir
@spec cached_contents_path(keyword()) :: String.t()
```

Build the base cachedContents collection path for the active auth strategy.

# `normalize_cache_model_name`

```elixir
@spec normalize_cache_model_name(
  String.t(),
  keyword()
) :: String.t()
```

Normalize a cache model name for the active auth strategy.

- Gemini: ensures `models/` prefix.
- Vertex: expands to `projects/{project}/locations/{location}/publishers/google/models/{model}`.

# `normalize_cached_content_name`

```elixir
@spec normalize_cached_content_name(
  String.t(),
  keyword()
) :: String.t()
```

Normalize cached content names for the active auth strategy.

- Gemini: ensures `cachedContents/` prefix.
- Vertex: expands short names to `projects/{project}/locations/{location}/cachedContents/{id}`.

---

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