Two related bugs caused Azure OpenAI to pass validation but fail in actual use:
1. validate-model/route.ts used createOpenAI for Azure, while ai-providers.ts
uses createAzure. These differ in URL construction and authentication headers
(api-key vs Authorization: Bearer), so validation did not test the real code
path. Switch to createAzure for consistency.
2. In ai-providers.ts, when a user provided their own API key without a custom
base URL, resourceName was unconditionally set to undefined. This left
createAzure with no endpoint information, resulting in resource not found.
resourceName is an endpoint component, not a credential, so it is safe to
fall back to AZURE_RESOURCE_NAME from the environment whenever no baseURL is
available.