-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Closed
Labels
bugSomething isn't workingSomething isn't workingfixed in v1Issues addressed by the v1 betaIssues addressed by the v1 beta
Description
Describe the bug
When I tried to list the events for my fine tune job through the Python API with streaming I get a correct response without error. However when I specify stream=True, this results in an exception being raised and crashing my application, even though the response was clearly received. Looking at the traceback, I can see that the response was received but failed to be parsed into JSON by openai.
Here's a traceback for the exception that I see:
Traceback (most recent call last):
File "venv_py3105/lib/python3.10/site-packages/openai/api_requestor.py", line 677, in _interpret_response_line
data = json.loads(rbody)
File "/Users/yun.kim/.pyenv/versions/3.10.5/lib/python3.10/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/Users/yun.kim/.pyenv/versions/3.10.5/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/Users/yun.kim/.pyenv/versions/3.10.5/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
The above exception was the direct cause of the following exception:
File "openai_demo.py", line 216, in fine_tune_list_events
resp = openai.FineTune.list_events(
File "venv_py3105/lib/python3.10/site-packages/openai/api_resources/abstract/nested_resource_class_methods.py", line 123, in list_nested_resources
return getattr(cls, resource_request_method)("get", url, **params)
File "venv_py3105/lib/python3.10/site-packages/openai/api_resources/abstract/nested_resource_class_methods.py", line 44, in nested_resource_request
response, _, api_key = requestor.request(
File "venv_py3105/lib/python3.10/site-packages/openai/api_requestor.py", line 230, in request
resp, got_stream = self._interpret_response(result, stream)
File "venv_py3105/lib/python3.10/site-packages/openai/api_requestor.py", line 624, in _interpret_response
self._interpret_response_line(
File "venv_py3105/lib/python3.10/site-packages/openai/api_requestor.py", line 680, in _interpret_response_line
raise error.APIError(
openai.error.APIError: HTTP code 200 from API (data: {"object": "fine-tune-event", "level": "info", "message": "Created fine-tune: ft-XXXXXXX", "created_at": 1684155377}
data: {"object": "fine-tune-event", "level": "info", "message": "Fine-tune costs $X.XX", "created_at": 1684155451}
data: {"object": "fine-tune-event", "level": "info", "message": "Fine-tune enqueued. Queue number: 1", "created_at": 1684155452}
data: {"object": "fine-tune-event", "level": "info", "message": "Fine-tune is in the queue. Queue number: 0", "created_at": 1684155452}
data: {"object": "fine-tune-event", "level": "info", "message": "Fine-tune started", "created_at": 1684155503}
data: {"object": "fine-tune-event", "level": "info", "message": "Completed epoch 1/4", "created_at": 1684155598}
data: {"object": "fine-tune-event", "level": "info", "message": "Completed epoch 2/4", "created_at": 1684155603}
data: {"object": "fine-tune-event", "level": "info", "message": "Completed epoch 3/4", "created_at": 1684155607}
data: {"object": "fine-tune-event", "level": "info", "message": "Completed epoch 4/4", "created_at": 1684155615}
data: {"object": "fine-tune-event", "level": "info", "message": "Uploaded model: davinci:ft-XXXXXXX-2023-05-15-13-00-56", "created_at": 1684155656}
data: {"object": "fine-tune-event", "level": "info", "message": "Uploaded result file: file-XXXXXXX", "created_at": 1684155658}
data: {"object": "fine-tune-event", "level": "info", "message": "Fine-tune succeeded", "created_at": 1684155658}
data: [DONE]
)
To Reproduce
I am using Python 3.10.5 with openai==0.27.6.
Here is my application code:
resp = openai.FineTune.list_events(
"ft-XXXXX", # fine tune job ID
api_key=os.getenv("OPENAI_API_KEY"),
stream=True
)Code snippets
No response
OS
macOS
Python version
Python 3.10.5
Library version
v0.27.6
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingfixed in v1Issues addressed by the v1 betaIssues addressed by the v1 beta