# `LLMDB.Enrich.AzureWireProtocol`
[🔗](https://github.com/agentjido/llm_db/blob/main/lib/llm_db/enrich/azure_wire_protocol.ex#L1)

Wire protocol enrichment using Azure AI Foundry inference task metadata.

Fetches model catalog data from Azure AI Foundry's public API and uses
the `inferenceTasks` field to determine which wire protocol each Azure
model supports (openai_responses, openai_completion, anthropic_messages).

Only enriches models from Azure providers since models.dev already syncs
model data but lacks wire protocol information for Azure's model catalog.

- `pull/1` fetches the Azure catalog and caches locally
- `build_lookup/0` reads cached data and builds a model -> wire_protocol map
- `enrich_models/1` applies wire protocol to Azure models using the lookup

# `build_lookup`

```elixir
@spec build_lookup() :: %{required(String.t()) =&gt; atom()}
```

# `enrich_models`

```elixir
@spec enrich_models([map()]) :: [map()]
```

# `pull`

```elixir
@spec pull(map()) :: :noop | {:ok, String.t()} | {:error, term()}
```

---

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