diff --git a/config/bot_config.toml b/config/bot_config.toml index 003628432..0c1a68fa9 100644 --- a/config/bot_config.toml +++ b/config/bot_config.toml @@ -6,6 +6,7 @@ nickname = "麦麦" min_text_length = 2 # 与麦麦聊天时麦麦只会回答文本大于等于此数的消息 max_context_size = 15 # 麦麦获得的上下文数量,超出数量后自动丢弃 emoji_chance = 0.2 # 麦麦使用表情包的概率 +ban_words = ["打胶"] [emoji] check_interval = 120 # 检查表情包的时间间隔 diff --git a/src/plugins/chat/bot.py b/src/plugins/chat/bot.py index 6fb9b7d3a..1bfdaa76a 100644 --- a/src/plugins/chat/bot.py +++ b/src/plugins/chat/bot.py @@ -94,6 +94,13 @@ class ChatBot: plain_text=event.get_plaintext(), reply_message=event.reply, ) + + # 过滤词 + for word in global_config.ban_words: + if word in message.detailed_plain_text: + print(f"\033[1;32m[{current_time}][{message.group_name}]{message.user_nickname}:\033[0m {message.processed_plain_text}") + print(f"\033[1;32m[过滤词识别]\033[0m 消息中含有{word},filtered") + return current_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(message.time)) diff --git a/src/plugins/chat/config.py b/src/plugins/chat/config.py index 240e11f4f..c5a57388c 100644 --- a/src/plugins/chat/config.py +++ b/src/plugins/chat/config.py @@ -31,12 +31,15 @@ class BotConfig: build_memory_interval: int = 60 # 记忆构建间隔(秒) EMOJI_CHECK_INTERVAL: int = 120 # 表情包检查间隔(分钟) EMOJI_REGISTER_INTERVAL: int = 10 # 表情包注册间隔(分钟) + + ban_words: list[str] = [] #违禁词 # 模型配置 llm_reasoning: Dict[str, str] = field(default_factory=lambda: {}) llm_reasoning_minor: Dict[str, str] = field(default_factory=lambda: {}) llm_normal: Dict[str, str] = field(default_factory=lambda: {}) llm_normal_minor: Dict[str, str] = field(default_factory=lambda: {}) + embedding: Dict[str, str] = field(default_factory=lambda: {}) vlm: Dict[str, str] = field(default_factory=lambda: {}) API_USING: str = "siliconflow" # 使用的API @@ -126,7 +129,8 @@ class BotConfig: config.MIN_TEXT_LENGTH = msg_config.get("min_text_length", config.MIN_TEXT_LENGTH) config.MAX_CONTEXT_SIZE = msg_config.get("max_context_size", config.MAX_CONTEXT_SIZE) config.emoji_chance = msg_config.get("emoji_chance", config.emoji_chance) - + config.ban_words=msg_config.get("banwords",config.ban_words) + if "memory" in toml_dict: memory_config = toml_dict["memory"] config.build_memory_interval = memory_config.get("build_memory_interval", config.build_memory_interval)