mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-12-24 13:28:13 +08:00
[BugFix] Compatible with asynchronous functions (#5378)
* [BugFix] fix data_processor asyn bug * fix bug
This commit is contained in:
@@ -150,12 +150,20 @@ class ChatResponseProcessor:
|
||||
image_output["outputs"]["num_image_tokens"] = count_tokens(all_tokens)
|
||||
yield image_output
|
||||
|
||||
self.data_processor.process_response_dict(
|
||||
response_dict=request_output,
|
||||
stream=stream,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
if inspect.iscoroutinefunction(self.data_processor.process_response_dict):
|
||||
await self.data_processor.process_response_dict(
|
||||
response_dict=request_output,
|
||||
stream=stream,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
else:
|
||||
self.data_processor.process_response_dict(
|
||||
response_dict=request_output,
|
||||
stream=stream,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
text = {"type": "text", "text": request_output["outputs"]["text"]}
|
||||
request_output["outputs"]["multipart"] = [text]
|
||||
yield request_output
|
||||
@@ -171,12 +179,20 @@ class ChatResponseProcessor:
|
||||
num_image_tokens = 0
|
||||
for part in self._multipart_buffer:
|
||||
if part["decode_type"] == 0:
|
||||
self.data_processor.process_response_dict(
|
||||
response_dict=part["request_output"],
|
||||
stream=False,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
if inspect.iscoroutinefunction(self.data_processor.process_response_dict):
|
||||
await self.data_processor.process_response_dict(
|
||||
response_dict=part["request_output"],
|
||||
stream=False,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
else:
|
||||
self.data_processor.process_response_dict(
|
||||
response_dict=request_output,
|
||||
stream=stream,
|
||||
enable_thinking=enable_thinking,
|
||||
include_stop_str_in_output=include_stop_str_in_output,
|
||||
)
|
||||
text = {"type": "text", "text": part["request_output"]["outputs"]["text"]}
|
||||
multipart.append(text)
|
||||
elif part["decode_type"] == 1:
|
||||
|
||||
Reference in New Issue
Block a user