Skip to content

Commit 2b1904e

Browse files
Code clean up (#708)
1 parent 43bd041 commit 2b1904e

1 file changed

Lines changed: 9 additions & 30 deletions

File tree

‎src/bespokelabs/curator/request_processor/online/openai_online_request_processor.py‎

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
import json
33
import os
44
import time
5-
from typing import TypeVar
65

76
import aiohttp
87
import litellm
@@ -22,39 +21,29 @@
2221
from bespokelabs.curator.types.generic_request import GenericRequest
2322
from bespokelabs.curator.types.generic_response import GenericResponse, _TokenUsage
2423

25-
T = TypeVar("T")
26-
2724
_DEFAULT_OPENAI_URL: str = "https://api.openai.com/v1/chat/completions"
2825

2926
_OPENAI_ALLOWED_IMAGE_SIZE_MB = 20
3027

3128

3229
async def _handle_longlive_response(response: aiohttp.ClientResponse):
33-
content_lines = []
3430
content_buffer = ""
3531

3632
async for line in response.content:
3733
line_str = line.decode("utf-8").strip()
34+
if line_str:
35+
content_buffer += line_str
3836

39-
if not line_str:
40-
continue
41-
42-
content_buffer += line_str
43-
content_lines.append(line_str)
44-
45-
if not content_lines:
37+
if not content_buffer:
4638
return {
4739
"error": "Received an empty response from the API. Some providers, "
4840
"such as DeepSeek, may disconnect after 30 minutes of inactivity, which can result in missing responses."
4941
}
5042

5143
try:
5244
return json.loads(content_buffer)
53-
except json.JSONDecodeError:
54-
try:
55-
return json.loads("".join(content_lines))
56-
except json.JSONDecodeError as e:
57-
raise ValueError(f"Failed to parse API response: {e}\nRaw response: {content_buffer}") from e
45+
except json.JSONDecodeError as e:
46+
raise ValueError(f"Failed to parse API response: {e}\nRaw response: {content_buffer}") from e
5847

5948

6049
async def fetch_response(session, *, url, headers, payload, timeout, longlived_response=False):
@@ -269,10 +258,7 @@ def _multimodal_prompt_supported(self) -> bool:
269258
return True
270259

271260
def create_api_specific_request_online(self, generic_request: GenericRequest) -> dict:
272-
"""Create an OpenAI-specific request from a generic request.
273-
274-
Delegates to the mixin implementation.
275-
"""
261+
"""Create an OpenAI-specific request from a generic request."""
276262
return OpenAIRequestMixin.create_api_specific_request_online(self, generic_request)
277263

278264
async def call_single_request(
@@ -345,13 +331,6 @@ async def call_single_request(
345331
finish_reason=finish_reason,
346332
)
347333

348-
def get_token_encoding(self) -> str:
349-
"""Get the token encoding name for a given model."""
350-
if self.config.model.startswith("gpt-4"):
351-
name = "cl100k_base"
352-
elif self.config.model.startswith("gpt-3.5"):
353-
name = "cl100k_base"
354-
else:
355-
name = "cl100k_base" # Default to cl100k_base
356-
357-
return tiktoken.get_encoding(name)
334+
def get_token_encoding(self):
335+
"""Get the token encoding for the model."""
336+
return tiktoken.get_encoding("cl100k_base")

0 commit comments

Comments
 (0)