perf: disable long message processing as default (#1670)

This commit is contained in:
Junyan Qin (Chin)
2025-09-17 17:09:12 +08:00
committed by GitHub
parent 1a13a41168
commit c8ffc79077
4 changed files with 17 additions and 4 deletions

View File

@@ -21,10 +21,15 @@ class LongTextProcessStage(stage.PipelineStage):
- resp_message_chain
"""
strategy_impl: strategy.LongTextStrategy
strategy_impl: strategy.LongTextStrategy | None
async def initialize(self, pipeline_config: dict):
config = pipeline_config['output']['long-text-processing']
if config['strategy'] == 'none':
self.strategy_impl = None
return
if config['strategy'] == 'image':
use_font = config['font-path']
try:
@@ -67,6 +72,10 @@ class LongTextProcessStage(stage.PipelineStage):
await self.strategy_impl.initialize()
async def process(self, query: pipeline_query.Query, stage_inst_name: str) -> entities.StageProcessResult:
if self.strategy_impl is None:
self.ap.logger.debug('Long message processing strategy is not set, skip long message processing.')
return entities.StageProcessResult(result_type=entities.ResultType.CONTINUE, new_query=query)
# 检查是否包含非 Plain 组件
contains_non_plain = False

View File

@@ -26,7 +26,7 @@ class ForwardComponentStrategy(strategy_model.LongTextStrategy):
platform_message.ForwardMessageNode(
sender_id=query.adapter.bot_account_id,
sender_name='User',
message_chain=platform_message.MessageChain([message]),
message_chain=platform_message.MessageChain([platform_message.Plain(text=message)]),
)
]

View File

@@ -83,7 +83,7 @@
"output": {
"long-text-processing": {
"threshold": 1000,
"strategy": "forward",
"strategy": "none",
"font-path": ""
},
"force-delay": {

View File

@@ -27,7 +27,7 @@ stages:
zh_Hans: 长文本的处理策略
type: select
required: true
default: forward
default: none
options:
- name: forward
label:
@@ -37,6 +37,10 @@ stages:
label:
en_US: Convert to Image
zh_Hans: 转换为图片
- name: none
label:
en_US: None
zh_Hans: 不处理
- name: font-path
label:
en_US: Font Path