[Bugfix] Fix OpenAI authentication header formatting #99
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.
Description
Fixes authentication errors when using OpenAI-compatible API providers/routers like LiteLLM. The Authorization header was incorrectly sending a dictionary representation instead of the API key string.
Issue: In
openai_user.py,get_credentials()returns{"api_key": "sk-..."}but was used directly in an f-string, resulting in:instead of:
Fix: Use
auth_provider.get_headers()which properly formats the Authorization header.PR Type / Label
/kind bug
Related Issue
N/A - Bug discovered during manual testing with LiteLLM endpoint
Changes
openai_user.py: Useget_headers()instead of manually constructing Authorization headertest_openai_user.py: Addedget_headers()mock to test fixtureCorrectness Tests
tests/user/test_openai_user.pyChecklist
git pull origin main)make checkto ensure code is properly formatted and passes all lint checksmake testto verify test coverage (~90% required)Additional Information
This fix ensures compatibility with any OpenAI-compatible API endpoint, not just the official OpenAI API.