- Clean the AzureOpenAiChatClient and add support for StreamingChatClient.
- Streamline the AzureOpenAiEmbeddingClient.
- Move the AzureOpenAiChatClient and AzureOpenAiEmbeddingClient to top org.sf.ai.azure.opoenai package.
- Add ITs for AzureOpenAiChatClient and AzureOpenAiEmbeddingClient
- Fix the AzureOpenAiAutoConfiguration
- Split property file into AzureOpienAiConnectionProperties, AzureOpenAiChatProperties
and AzureOpenAiEmbeddingProperties.
- Add ITs for the auto-configuration
- Add improve package structure
- Add README docs
- fix failing test
- update to use Azure Deployment for CI
The OpenAiApi, returns the HTTP headers that can be intropsect for metadata
with the help of OpenAiResponseHeaderExtractor.
No need for http interception nor for joining by ID.
- fix all class names with AiClient or AiStreamingClient name prefixes.
- fix all variables or method name prefixes.
- fix the javadocs, readmes and refference documentation.
Add OllamOptions that can be used as a builder (withX) and spring propererites (e.g. getX/setX).
- prvides strongly typed properties.
- the 'OllamaOptsion#toMap()' converts the options into Map<String, Object>.
- Add OllamaEmbeddingAutoConfiguraiton#options property of type OllamaOptions.
- Add OllamaChatAutoConfiguraiton#options property of type OllamaOptions.
- Factor out the baseUrl property into a standalone OllamConnectionProperties shared
between the Chat and Embedding autoconfigurations.
- Fix affected unit/IT tests.
- Implement a native client (OllamaApi) to leverage chat/streaming and embedding endpoints.
- Add a OllamaChatClient implementing the ChatClinet and StreamingChatClinet interfaces.
- Add a OllamaEmbedding clinent that impl. the EmbeddingClinet interface.
- Add AutoConfiguraitons with properties for the chat and the embedding clients.
- Add unit and ITs for the OllamaApi, OllamaChatClient, OllamaEmbeddingClient, and related auto-configuraitons.
- Remove the old ollama impl. classes and tests.
- minor fixes to the bedrok test methods names.
- OpenAiApi's ObjectMapper is configured to DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES = false
- Use Java Predicate for the SSE_DONE condition used by the takeUntil and filter for the Flux stream.
- Add retryTemplate to OpenAI Chat Client. Make OpenAiApi toleratant to uknown response fields.
- Add spring-ai-bedrock project with support for Cohere, Llama2, Ai21 Jurassic 2, Titan and Anthropic LLM models.
- Add native API clients for CohereChat CohereEmbedding , Llama2Chat, JurassicChat, TitanChat and TitanEmbedding models, supporting both single shot and streaming completions (for the models that allows it)
- Add ITs tests for the native API clients.
- Implement Chat (AiClient) and ChatStreaming (AiStreamingClient) and EmbeddingClients (according to the models’ support for those) for Cohere, Llama2, and Anthropica. Titan and Jurassic2 are WIP.
- Add ITs for the ChatClient, ChatStreamingClient and EmbeddingClient implementations.
- Add Spring Boot Auto-configurations with flexible properties for the Llama2, Anthropic and Cohere modes + ITs
- Add Spring Boot Starter configurations for all Bedrock models.
- Add README documentations for all models.
- Add BedrockAi APIs AOT hints
- Add Ai21Jurassic2ChatBedrockApi, TitanEmbeddingBedrockApi, TitanChatBedrockApi
- Add TitanChatBedrockApi
Resolves#66
- Added autoconfiguration for Redis vector store
- Added spring boot starter for Redis vector store
- Supports portable metadata filter expressions
Fixes#11