# `Obscura.LLM`
[🔗](https://github.com/hfiguera/obscura/blob/v0.2.0/lib/obscura/llm.ex#L1)

Provider-independent LLM message redaction and rehydration helpers.

# `redact_messages`

```elixir
@spec redact_messages(
  [map()],
  keyword()
) :: {:ok, [map()], GenServer.server()} | {:error, term()}
```

Redacts configured message roles with vault-backed pseudonymization.

# `rehydrate_messages`

```elixir
@spec rehydrate_messages(
  [map()],
  keyword()
) :: {:ok, [map()]} | {:error, term()}
```

Rehydrates message content fields.

# `rehydrate_response`

```elixir
@spec rehydrate_response(
  String.t(),
  keyword()
) :: {:ok, String.t()} | {:error, term()}
```

Rehydrates one LLM provider response string.

---

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