Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add proper retry implementation for OpenAiChatModel streaming #1193

Open
tzolov opened this issue Aug 8, 2024 · 3 comments
Open

Add proper retry implementation for OpenAiChatModel streaming #1193

tzolov opened this issue Aug 8, 2024 · 3 comments

Comments

@tzolov
Copy link
Contributor

tzolov commented Aug 8, 2024

No description provided.

@tzolov tzolov added this to the 1.0.0-M2 milestone Aug 8, 2024
@markpollack markpollack modified the milestones: 1.0.0-M2, 1.0.0-RC1 Sep 4, 2024
@csterwa
Copy link

csterwa commented Sep 9, 2024

@tzolov does the PR referenced here resolve the retry implementation enhancement?

@ThomasVitale
Copy link
Contributor

Adding some context to this issue: a RetryTemplate is used to add retry capabilities to the blocking model calls. At first, the same strategy was used for the streaming calls. After realising that it wasn't working as expected in a reactive stream, the usage of RetryTemplate streaming calls has been removed. In this issue, we would need to come up with a design for a retry feature to adopt in all streaming implementations across the different model providers.

@apappascs
Copy link
Contributor

Hi @ThomasVitale , @tzolov

I've been working on a potential solution for adding retry logic to the ChatModel streaming functionality. To illustrate the approach, I’ve created a branch with the necessary changes main...apappascs:spring-ai:retry-implementation-openai-chatmodel-streaming

Would an implementation like this make sense for the project? I’d love to get feedback and refine the approach further if necessary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants