Added support for AzureOpenAiAgent in tools
# What does this PR do?
Implements a new class AzureOpenAiAgent derived from Agent in transformer agents.

Fixes #23324

- [ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
- [x] Did you read the [contributor guideline](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md#start-contributing-pull-requests),
      Pull Request section?
- [x] Was this discussed/approved via a Github issue or the [forum](https://discuss.huggingface.co/)? Please add a link
      to it if that's the case.
- [x] Did you make sure to update the documentation with your changes? Here are the
      [documentation guidelines](https://github.com/huggingface/transformers/tree/main/docs), and
      [here are tips on formatting docstrings](https://github.com/huggingface/transformers/tree/main/docs#writing-source-documentation).
- [ ] Did you write any new necessary tests?
The docs for this PR live [here](https://moon-ci-docs.huggingface.co/docs/transformers/pr_23355). All of your documentation changes will be reflected on that endpoint.<|||||>Awesome that you are contributing.
In my opinion, rather than having a separate AzureOpenAiAgent adding the options and API calls in the OpenAiAgent would be preferrable, so it is only configuration of parameters to switch to Azure. Not my call, but my preference. <|||||>cc @sgugger <|||||>Ah actually I see two arguments are renamed. Maybe have this be a subclass of `OpenAiAgent` to avoid rewriting every method and just rewrites `_completion_generate` and `_chat_generate`?<|||||>DeploymentId is named arbitrarily and does not let you directly derive the model type from it unless you do additional requests to look it up.
The underlying Python OpenAI SDK has a way of differentiating between Azure OpenAI and OpenAI's own deployment. In my opinion it would make sense to align the API style and expose what the API exposes in a similar fashion. <|||||>> The underlying Python OpenAI SDK has a way of differentiating between Azure OpenAI and OpenAI's own deployment. In my opinion it would make sense to align the API style and expose what the API exposes in a similar fashion.

If it's easily doable, then yes let's aim for that!<|||||>This issue has been automatically marked as stale because it has not had recent activity. If you think this still needs to be addressed please comment on this thread.

Please note that issues that do not follow the [contributing guidelines](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md) are likely to be ignored.