@@ -725,32 +725,30 @@ def _new_sync_chat_completion(f: "Any", *args: "Any", **kwargs: "Any") -> "Any":
725725
726726 model = kwargs .get ("model" )
727727
728+ # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/completions.py#L585
729+ is_streaming_response = kwargs .get ("stream" , False ) or False
730+
728731 if has_span_streaming_enabled (client .options ):
729732 span = sentry_sdk .traces .start_span (
730733 name = f"chat { model } " ,
731734 attributes = {
732735 "sentry.op" : consts .OP .GEN_AI_CHAT ,
733736 "sentry.origin" : OpenAIIntegration .origin ,
737+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
738+ SPANDATA .GEN_AI_RESPONSE_STREAMING : is_streaming_response ,
734739 },
735740 )
736741
737- set_on_span = span .set_attribute
738742 else :
739743 span = get_start_span_function ()(
740744 op = consts .OP .GEN_AI_CHAT ,
741745 name = f"chat { model } " ,
742746 origin = OpenAIIntegration .origin ,
743747 )
748+ span .__enter__ ()
744749
745- set_on_span = span .set_data
746-
747- span .__enter__ ()
748-
749- set_on_span (SPANDATA .GEN_AI_SYSTEM , "openai" )
750-
751- # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/completions.py#L585
752- is_streaming_response = kwargs .get ("stream" , False ) or False
753- set_on_span (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
750+ span .set_data (SPANDATA .GEN_AI_SYSTEM , "openai" )
751+ span .set_data (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
754752
755753 _set_completions_api_input_data (span , kwargs , integration )
756754
@@ -808,32 +806,29 @@ async def _new_async_chat_completion(f: "Any", *args: "Any", **kwargs: "Any") ->
808806
809807 model = kwargs .get ("model" )
810808
809+ # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/completions.py#L585
810+ is_streaming_response = kwargs .get ("stream" , False ) or False
811+
811812 if has_span_streaming_enabled (client .options ):
812813 span = sentry_sdk .traces .start_span (
813814 name = f"chat { model } " ,
814815 attributes = {
815816 "sentry.op" : consts .OP .GEN_AI_CHAT ,
816817 "sentry.origin" : OpenAIIntegration .origin ,
818+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
819+ SPANDATA .GEN_AI_RESPONSE_STREAMING : is_streaming_response ,
817820 },
818821 )
819-
820- set_on_span = span .set_attribute
821822 else :
822823 span = get_start_span_function ()(
823824 op = consts .OP .GEN_AI_CHAT ,
824825 name = f"chat { model } " ,
825826 origin = OpenAIIntegration .origin ,
826827 )
828+ span .__enter__ ()
827829
828- set_on_span = span .set_data
829-
830- span .__enter__ ()
831-
832- set_on_span (SPANDATA .GEN_AI_SYSTEM , "openai" )
833-
834- # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/completions.py#L585
835- is_streaming_response = kwargs .get ("stream" , False ) or False
836- set_on_span (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
830+ span .set_data (SPANDATA .GEN_AI_SYSTEM , "openai" )
831+ span .set_data (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
837832
838833 _set_completions_api_input_data (span , kwargs , integration )
839834
@@ -1237,9 +1232,9 @@ def _new_sync_embeddings_create(f: "Any", *args: "Any", **kwargs: "Any") -> "Any
12371232 attributes = {
12381233 "sentry.op" : consts .OP .GEN_AI_EMBEDDINGS ,
12391234 "sentry.origin" : OpenAIIntegration .origin ,
1235+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
12401236 },
12411237 ) as span :
1242- span .set_attribute (SPANDATA .GEN_AI_SYSTEM , "openai" )
12431238 _set_embeddings_input_data (span , kwargs , integration )
12441239
12451240 try :
@@ -1295,9 +1290,9 @@ async def _new_async_embeddings_create(
12951290 attributes = {
12961291 "sentry.op" : consts .OP .GEN_AI_EMBEDDINGS ,
12971292 "sentry.origin" : OpenAIIntegration .origin ,
1293+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
12981294 },
12991295 ) as span :
1300- span .set_attribute (SPANDATA .GEN_AI_SYSTEM , "openai" )
13011296 _set_embeddings_input_data (span , kwargs , integration )
13021297
13031298 try :
@@ -1369,32 +1364,29 @@ def _new_sync_responses_create(f: "Any", *args: "Any", **kwargs: "Any") -> "Any"
13691364
13701365 model = kwargs .get ("model" )
13711366
1367+ # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/responses/responses.py#L940
1368+ is_streaming_response = kwargs .get ("stream" , False ) or False
1369+
13721370 if has_span_streaming_enabled (client .options ):
13731371 span = sentry_sdk .traces .start_span (
13741372 name = f"responses { model } " ,
13751373 attributes = {
13761374 "sentry.op" : consts .OP .GEN_AI_RESPONSES ,
13771375 "sentry.origin" : OpenAIIntegration .origin ,
1376+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
1377+ SPANDATA .GEN_AI_RESPONSE_STREAMING : is_streaming_response ,
13781378 },
13791379 )
1380-
1381- set_on_span = span .set_attribute
13821380 else :
13831381 span = get_start_span_function ()(
13841382 op = consts .OP .GEN_AI_RESPONSES ,
13851383 name = f"responses { model } " ,
13861384 origin = OpenAIIntegration .origin ,
13871385 )
1386+ span .__enter__ ()
13881387
1389- set_on_span = span .set_data
1390-
1391- span .__enter__ ()
1392-
1393- set_on_span (SPANDATA .GEN_AI_SYSTEM , "openai" )
1394-
1395- # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/responses/responses.py#L940
1396- is_streaming_response = kwargs .get ("stream" , False ) or False
1397- set_on_span (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
1388+ span .set_data (SPANDATA .GEN_AI_SYSTEM , "openai" )
1389+ span .set_data (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
13981390
13991391 _set_responses_api_input_data (span , kwargs , integration )
14001392
@@ -1442,32 +1434,29 @@ async def _new_async_responses_create(f: "Any", *args: "Any", **kwargs: "Any") -
14421434
14431435 model = kwargs .get ("model" )
14441436
1437+ # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/responses/responses.py#L940
1438+ is_streaming_response = kwargs .get ("stream" , False ) or False
1439+
14451440 if has_span_streaming_enabled (client .options ):
14461441 span = sentry_sdk .traces .start_span (
14471442 name = f"responses { model } " ,
14481443 attributes = {
14491444 "sentry.op" : consts .OP .GEN_AI_RESPONSES ,
14501445 "sentry.origin" : OpenAIIntegration .origin ,
1446+ SPANDATA .GEN_AI_SYSTEM : "openai" ,
1447+ SPANDATA .GEN_AI_RESPONSE_STREAMING : is_streaming_response ,
14511448 },
14521449 )
1453-
1454- set_on_span = span .set_attribute
14551450 else :
14561451 span = get_start_span_function ()(
14571452 op = consts .OP .GEN_AI_RESPONSES ,
14581453 name = f"responses { model } " ,
14591454 origin = OpenAIIntegration .origin ,
14601455 )
1456+ span .__enter__ ()
14611457
1462- set_on_span = span .set_data
1463-
1464- span .__enter__ ()
1465-
1466- set_on_span (SPANDATA .GEN_AI_SYSTEM , "openai" )
1467-
1468- # Same bool handling as in https://github.com/openai/openai-python/blob/acd0c54d8a68efeedde0e5b4e6c310eef1ce7867/src/openai/resources/responses/responses.py#L940
1469- is_streaming_response = kwargs .get ("stream" , False ) or False
1470- set_on_span (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
1458+ span .set_data (SPANDATA .GEN_AI_SYSTEM , "openai" )
1459+ span .set_data (SPANDATA .GEN_AI_RESPONSE_STREAMING , is_streaming_response )
14711460
14721461 _set_responses_api_input_data (span , kwargs , integration )
14731462
0 commit comments