fix:修正系数,正确处理reply——to,优化s4u的prompt

This commit is contained in:
SengokuCola
2025-07-16 12:06:24 +08:00
parent bafeb3f25c
commit e2ce6a14f4
5 changed files with 36 additions and 21 deletions

View File

@@ -29,8 +29,6 @@ def register_plugin(cls):
return cls
def register_event_plugin(cls, *args, **kwargs):
from src.plugin_system.core.events_manager import events_manager
from src.plugin_system.base.component_types import EventType
"""事件插件注册装饰器

View File

@@ -50,6 +50,7 @@ async def _send_to_target(
display_message: str = "",
typing: bool = False,
reply_to: str = "",
reply_to_platform_id: str = "",
storage_message: bool = True,
show_log: bool = True,
) -> bool:
@@ -110,6 +111,7 @@ async def _send_to_target(
is_head=True,
is_emoji=(message_type == "emoji"),
thinking_start_time=current_time,
reply_to = reply_to_platform_id
)
# 发送消息
@@ -279,6 +281,7 @@ async def text_to_stream(
stream_id: str,
typing: bool = False,
reply_to: str = "",
reply_to_platform_id: str = "",
storage_message: bool = True,
) -> bool:
"""向指定流发送文本消息
@@ -293,7 +296,7 @@ async def text_to_stream(
Returns:
bool: 是否发送成功
"""
return await _send_to_target("text", text, stream_id, "", typing, reply_to, storage_message)
return await _send_to_target("text", text, stream_id, "", typing, reply_to, reply_to_platform_id, storage_message)
async def emoji_to_stream(emoji_base64: str, stream_id: str, storage_message: bool = True) -> bool:

View File

@@ -199,7 +199,7 @@ class BaseAction(ABC):
logger.error(f"{self.log_prefix} 等待新消息时发生错误: {e}")
return False, f"等待新消息失败: {str(e)}"
async def send_text(self, content: str, reply_to: str = "", typing: bool = False) -> bool:
async def send_text(self, content: str, reply_to: str = "", reply_to_platform_id: str = "", typing: bool = False) -> bool:
"""发送文本消息
Args:
@@ -213,7 +213,13 @@ class BaseAction(ABC):
logger.error(f"{self.log_prefix} 缺少聊天ID")
return False
return await send_api.text_to_stream(text=content, stream_id=self.chat_id, reply_to=reply_to, typing=typing)
return await send_api.text_to_stream(
text=content,
stream_id=self.chat_id,
reply_to=reply_to,
reply_to_platform_id=reply_to_platform_id,
typing=typing,
)
async def send_emoji(self, emoji_base64: str) -> bool:
"""发送表情包