spring-ai
spring-ai copied to clipboard
An Application Framework for AI Engineering
## Motivation @markpollack and @tzolov, maybe you are interested in the new `MarkdownDocumentReader`, which can read structured Markdown documents. As @markpollack wrote in #105, it could be valuable. I agree....
**Expected Behavior** I want to make a list of messages that have different MessageTypes. Making AbstractMessage not abstract or making a class that extends AbstractMessage that has a constructor with...
Bug fix for #595 * `BeanOutputConverter` - replace all Windows line separation with \n. * `BeanOutputConverterTest` - explicitly check line separation using \n. * Introduce `TextBlockAssertion` that asserts text blocks...
There are separate boot starters for chat and embedding. To be consistent in the starters across the project, these two starters should be merged into a single boot starter for...
Please do a quick search on GitHub issues first, there might be already a duplicate issue for the one you are about to create. If the bug is trivial, just...
**Bug description** The ***OpenAiChatModel*** method ****stream**** calls the ****chatCompletionStream**** inside the ****execute**** of the ***RetryTemplate***: ``` `public Flux stream(Prompt prompt) { OpenAiApi.ChatCompletionRequest request = this.createRequest(prompt, true); return (Flux)this.retryTemplate.execute((ctx) -> {...
**Bug description** It seems like the timeout settings not working for class Anthropic3ChatBedrockApi, **Environment** Spring AI 1.0.0-M1, Java 17, **Steps to reproduce** 1 Set the read timeout to 10 minutes...
Fix BedrockAnthropic3ChatModel handle AnthropicChatResponse out of bounds exception when response content is empty. see: https://github.com/spring-projects/spring-ai/issues/757
**Bug description** The `ChatClient` API makes it possible to pass system and user messages via the `system()` and `user()` clauses. In that case, the final `List` passed to the `Prompt`...