MCPcopy
hub / github.com/openai/openai-python / _process_response_data

Method _process_response_data

src/openai/_base_client.py:656–678  ·  view source on GitHub ↗
(
        self,
        *,
        data: object,
        cast_to: type[ResponseT],
        response: httpx.Response,
    )

Source from the content-addressed store, hash-verified

654 return request.headers.get(RAW_RESPONSE_HEADER) == "stream" # type: ignore[no-any-return]
655
656 def _process_response_data(
657 self,
658 *,
659 data: object,
660 cast_to: type[ResponseT],
661 response: httpx.Response,
662 ) -> ResponseT:
663 if data is None:
664 return cast(ResponseT, None)
665
666 if cast_to is object:
667 return cast(ResponseT, data)
668
669 try:
670 if inspect.isclass(cast_to) and issubclass(cast_to, ModelBuilderProtocol):
671 return cast(ResponseT, cast_to.build(response=response, data=data))
672
673 if self._strict_response_validation:
674 return cast(ResponseT, validate_type(type_=cast_to, value=data))
675
676 return cast(ResponseT, construct_type(type_=cast_to, value=data))
677 except pydantic.ValidationError as err:
678 raise APIResponseValidationError(response=response, body=data) from err
679
680 @property
681 def qs(self) -> Querystring:

Callers 2

_parseMethod · 0.80
_parseMethod · 0.80

Calls 4

validate_typeFunction · 0.85
construct_typeFunction · 0.85
buildMethod · 0.80

Tested by

no test coverage detected