Add OpenAiChatOptions
- OpenAiChatOptions implements ChatOptions and exposes all OpenAi request options, except messages and stream.
- Add OpenAiChatOptions field (as defaultOptions) to OpenAiChatClient. Implement star-up/runtime options merging on chat request creation
- Add OpenAiChatOptions options field to OpenAiChatProperties. Later is set as OpenAiChatClient#defaultOptions. Use the spring.ai.openai.chat.options.* prefix to set the options.
- Add tests for properties and options merging.
- Move the OpenAiChatOptions.java out of the api package
Add OpenAiEmbeddingOptions
- Add OpenAiEmbeddingOptions class implementing the EmbeddingOptions interface.
- Add OpenAiEmbeddingClient#defaultOptions
- Add request merging with default and propmt options.
- Add OopenAiEmbeddingProperties#options field of type OpenAiEmbeddingOptions
Update OpenAI client docs
Part of the larger 'epic' issue #228