This commit is contained in:
minecraft1024a
2025-10-18 11:11:05 +08:00
parent 39e672a1d5
commit 8c97774465
14 changed files with 85 additions and 86 deletions

View File

@@ -615,15 +615,15 @@ class BaseAction(ABC):
"""
# 尝试从不同的实例属性中获取聊天内容
# 优先级_activation_chat_content > action_data['chat_content'] > ""
# 1. 如果有专门设置的激活用聊天内容(由 ActionModifier 设置)
if hasattr(self, '_activation_chat_content'):
return getattr(self, '_activation_chat_content', "")
if hasattr(self, "_activation_chat_content"):
return getattr(self, "_activation_chat_content", "")
# 2. 尝试从 action_data 中获取
if hasattr(self, 'action_data') and isinstance(self.action_data, dict):
return self.action_data.get('chat_content', "")
if hasattr(self, "action_data") and isinstance(self.action_data, dict):
return self.action_data.get("chat_content", "")
# 3. 默认返回空字符串
return ""
@@ -729,7 +729,7 @@ class BaseAction(ABC):
# 自动获取聊天内容
chat_content = self._get_chat_content()
search_text = chat_content
if not case_sensitive:
search_text = search_text.lower()
@@ -786,7 +786,7 @@ class BaseAction(ABC):
try:
# 自动获取聊天内容
chat_content = self._get_chat_content()
# 如果没有提供 LLM 模型,创建一个默认的
if llm_judge_model is None:
from src.config.config import model_config

View File

@@ -143,7 +143,7 @@ class ActionInfo(ComponentInfo):
) # 动作参数与描述,例如 {"param1": "描述1", "param2": "描述2"}
action_require: list[str] = field(default_factory=list) # 动作需求说明
associated_types: list[str] = field(default_factory=list) # 关联的消息类型
# ==================================================================================
# 激活类型相关字段(已废弃,建议使用 go_activate() 方法)
# 保留这些字段是为了向后兼容BaseAction.go_activate() 的默认实现会使用这些字段
@@ -155,7 +155,7 @@ class ActionInfo(ComponentInfo):
llm_judge_prompt: str = "" # 已废弃,建议在 go_activate() 中使用 _llm_judge_activation()
activation_keywords: list[str] = field(default_factory=list) # 已废弃,建议在 go_activate() 中使用 _keyword_match()
keyword_case_sensitive: bool = False # 已废弃
# 模式和并行设置
mode_enable: ChatMode = ChatMode.ALL
parallel_action: bool = False