Skip to content

Commit ba941ef

Browse files
authored
fix(openai): handle NoneType responses gracefully (#972)
1 parent 51b55c2 commit ba941ef

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

langfuse/openai.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,9 @@ def get_response_for_chat():
495495

496496

497497
def _get_langfuse_data_from_default_response(resource: OpenAiDefinition, response):
498+
if response is None:
499+
return None, "<NoneType response returned from OpenAI>", None
500+
498501
model = response.get("model", None) or None
499502

500503
completion = None
@@ -558,7 +561,9 @@ def _wrap(open_ai_resource: OpenAiDefinition, initialize, wrapped, args, kwargs)
558561
else:
559562
model, completion, usage = _get_langfuse_data_from_default_response(
560563
open_ai_resource,
561-
openai_response.__dict__ if _is_openai_v1() else openai_response,
564+
(openai_response and openai_response.__dict__)
565+
if _is_openai_v1()
566+
else openai_response,
562567
)
563568
generation.update(
564569
model=model, output=completion, end_time=_get_timestamp(), usage=usage
@@ -609,7 +614,9 @@ async def _wrap_async(
609614
else:
610615
model, completion, usage = _get_langfuse_data_from_default_response(
611616
open_ai_resource,
612-
openai_response.__dict__ if _is_openai_v1() else openai_response,
617+
(openai_response and openai_response.__dict__)
618+
if _is_openai_v1()
619+
else openai_response,
613620
)
614621
generation.update(
615622
model=model,

0 commit comments

Comments
 (0)