-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Open
Labels
Description
Confirm this is an issue with the Python library and not an underlying OpenAI API
- This is an issue with the Python libraryTo pick up a draggable item, press the space bar. While dragging, use the arrow keys to move the item. Press space again to drop the item in its new position, or press escape to cancel.
Describe the bug
The issue is that the base_url
in the OpenAI
client enforces a trailing slash whereas setting the module openai.base_url
does not enforce.
This is 100% reproducible and while it can be worked around, the inconsistency in clients causes issues in scripts that use both clients.
To Reproduce
- Create a module client and use a
base_url
without a trailing slash. See error with URL for completions - Create an OpenAIClient and use a
base_url
without a trailing slash. See no erros.
Code snippets
This works
client = openai.OpenAI(
api_key=my_key,
base_url="https://myllmserver.com/api/v1"
)
print(client.completions.create(
model="mistralai/Mistral-7B-Instruct-v0.2",
prompt="test"
))
This does not:
openai.base_url="https://myllmserver.com/api/v1"
openai.api_key=my_key
print(openai.completions.create(
model="mistralai/Mistral-7B-Instruct-v0.2",
prompt="test"
))
Error:
https://myllmserver.com/api/v1completions "HTTP/1.1 404 Not Found"
OS
macOS
Python version
Python v3.12
Library version
openai v1.23.6
Metadata
Metadata
Assignees
Labels
Type
Projects
Milestone
Relationships
Development
Select code repository
Activity
rattrayalex commentedon May 13, 2024
Thanks for reporting, @dramdass. I'm not sure we'd prioritize a fix here, but we'd likely accept a contribution that updates the module client to match the non-module client.
dramdass commentedon May 14, 2024
The right fix seems to be in
src/__init__.py
but the comment says# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
. I could't find a relevant place in the schema here https://github.com/openai/openai-openapi/tree/master to generate it. Can I add the fix manually intosrc/__init__.py
?rattrayalex commentedon May 25, 2024
Yes, that would be the correct location.
Fix inconsistent base_url behavior in module client and OpenAIClient
fix(responses): correct reasoning output type (#1373)