🛠️ fix: Completion Edge Cases & Improve Error Handling UX #3968
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Closes #3966
BaseClient
class to handle different types of completion responses, including string arrays for parameter-based endpoints.OpenAIClient
to properly handle cases where the chat completion response has no choices or undefined messages.OpenAIClient
to return intermediate replies as strings when availableINVALID_REQUEST
to theErrorTypes
enum in the data provider package.abortMiddleware
, setting a custom error message for better clarity.INVALID_REQUEST
error type, providing a more informative message to users.Testing
Attempt to reproduce #3966 after these changes, observe a more informative error message instead of an empty response
Checklist