mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-05 00:33:03 +08:00
[Fix]fix empty prompt_token_ids,update the parser's triggering condit… (#2891)
This commit is contained in:
@@ -111,6 +111,8 @@ class ErnieProcessor(BaseDataProcessor):
|
||||
else:
|
||||
request.prompt_token_ids = self.messages2ids(request.to_dict())
|
||||
|
||||
if len(request.prompt_token_ids) == 0:
|
||||
raise ValueError("Invalid input: prompt_token_ids must be a non-empty sequence of token IDs")
|
||||
if max_model_len is not None and len(request.prompt_token_ids) > max_model_len:
|
||||
request.prompt_token_ids = request.prompt_token_ids[: max_model_len - 1]
|
||||
if request.get("max_tokens") is None:
|
||||
@@ -160,7 +162,9 @@ class ErnieProcessor(BaseDataProcessor):
|
||||
req_id = request.get("request_id", None)
|
||||
data_processor_logger.info(f"req_id:{req_id}, tokens:{tokens}, token_ids: {token_ids}")
|
||||
else:
|
||||
request["prompt_token_ids"] = self.messages2ids(request)
|
||||
request['prompt_token_ids'] = self.messages2ids(request)
|
||||
if len(request['prompt_token_ids']) == 0:
|
||||
raise ValueError("Invalid input: prompt_token_ids must be a non-empty sequence of token IDs")
|
||||
|
||||
# truncate prompts that exceed the length limit
|
||||
if max_model_len is not None and len(request["prompt_token_ids"]) > max_model_len:
|
||||
@@ -184,7 +188,6 @@ class ErnieProcessor(BaseDataProcessor):
|
||||
Returns:
|
||||
Dict: response contain text fields
|
||||
"""
|
||||
|
||||
req_id = response_dict.request_id
|
||||
token_ids = response_dict.outputs.token_ids
|
||||
|
||||
@@ -228,6 +231,7 @@ class ErnieProcessor(BaseDataProcessor):
|
||||
Returns:
|
||||
Dict: response contain text fields
|
||||
"""
|
||||
enable_thinking = kwargs.get("enable_thinking")
|
||||
token_ids = response_dict["outputs"]["token_ids"]
|
||||
is_end = response_dict["finished"]
|
||||
req_id = response_dict["request_id"]
|
||||
@@ -237,8 +241,9 @@ class ErnieProcessor(BaseDataProcessor):
|
||||
delta_text, _, previous_texts = self.ids2tokens(token_ids, req_id)
|
||||
if is_end:
|
||||
full_text = previous_texts + delta_text
|
||||
if self.reasoning_parser:
|
||||
reasoning_content, text = self.reasoning_parser.extract_reasoning_content(full_text, response_dict)
|
||||
if enable_thinking and self.reasoning_parser:
|
||||
reasoning_content, text = self.reasoning_parser.extract_reasoning_content(
|
||||
full_text, response_dict)
|
||||
response_dict["outputs"]["text"] = text
|
||||
response_dict["outputs"]["reasoning_content"] = reasoning_content
|
||||
else:
|
||||
|
Reference in New Issue
Block a user