chore: 显式返回None

This commit is contained in:
春河晴
2025-04-21 14:42:33 +09:00
parent 1dd3c62c55
commit 13e05adf80
8 changed files with 35 additions and 24 deletions

View File

@@ -105,3 +105,4 @@ class Individuality:
return self.personality.agreeableness return self.personality.agreeableness
elif factor == "neuroticism": elif factor == "neuroticism":
return self.personality.neuroticism return self.personality.neuroticism
return None

View File

@@ -180,6 +180,7 @@ class Conversation:
"time": datetime.datetime.now().strftime("%H:%M:%S"), "time": datetime.datetime.now().strftime("%H:%M:%S"),
} }
) )
return None
elif action == "fetch_knowledge": elif action == "fetch_knowledge":
self.waiter.wait_accumulated_time = 0 self.waiter.wait_accumulated_time = 0
@@ -193,28 +194,35 @@ class Conversation:
if knowledge: if knowledge:
if topic not in self.conversation_info.knowledge_list: if topic not in self.conversation_info.knowledge_list:
self.conversation_info.knowledge_list.append({"topic": topic, "knowledge": knowledge}) self.conversation_info.knowledge_list.append({"topic": topic, "knowledge": knowledge})
return None
else: else:
self.conversation_info.knowledge_list[topic] += knowledge self.conversation_info.knowledge_list[topic] += knowledge
return None
return None
elif action == "rethink_goal": elif action == "rethink_goal":
self.waiter.wait_accumulated_time = 0 self.waiter.wait_accumulated_time = 0
self.state = ConversationState.RETHINKING self.state = ConversationState.RETHINKING
await self.goal_analyzer.analyze_goal(conversation_info, observation_info) await self.goal_analyzer.analyze_goal(conversation_info, observation_info)
return None
elif action == "listening": elif action == "listening":
self.state = ConversationState.LISTENING self.state = ConversationState.LISTENING
logger.info("倾听对方发言...") logger.info("倾听对方发言...")
await self.waiter.wait_listening(conversation_info) await self.waiter.wait_listening(conversation_info)
return None
elif action == "end_conversation": elif action == "end_conversation":
self.should_continue = False self.should_continue = False
logger.info("决定结束对话...") logger.info("决定结束对话...")
return None
else: # wait else: # wait
self.state = ConversationState.WAITING self.state = ConversationState.WAITING
logger.info("等待更多信息...") logger.info("等待更多信息...")
await self.waiter.wait(self.conversation_info) await self.waiter.wait(self.conversation_info)
return None
async def _send_timeout_message(self): async def _send_timeout_message(self):
"""发送超时结束消息""" """发送超时结束消息"""

View File

@@ -1,14 +1,13 @@
import time import time
from dataclasses import dataclass from dataclasses import dataclass
from typing import Dict, List, Optional from typing import Dict, List, Optional, Union
import urllib3 import urllib3
from .utils_image import image_manager
from ..message.message_base import Seg, UserInfo, BaseMessageInfo, MessageBase
from .chat_stream import ChatStream
from src.common.logger import get_module_logger from src.common.logger import get_module_logger
from .chat_stream import ChatStream
from .utils_image import image_manager
from ..message.message_base import Seg, UserInfo, BaseMessageInfo, MessageBase
logger = get_module_logger("chat_message") logger = get_module_logger("chat_message")
@@ -207,7 +206,7 @@ class MessageProcessBase(Message):
# 处理单个消息段 # 处理单个消息段
return await self._process_single_segment(segment) return await self._process_single_segment(segment)
async def _process_single_segment(self, seg: Seg) -> str: async def _process_single_segment(self, seg: Seg) -> Union[str, None]:
"""处理单个消息段 """处理单个消息段
Args: Args:
@@ -233,6 +232,7 @@ class MessageProcessBase(Message):
elif seg.type == "reply": elif seg.type == "reply":
if self.reply and hasattr(self.reply, "processed_plain_text"): if self.reply and hasattr(self.reply, "processed_plain_text"):
return f"[回复:{self.reply.processed_plain_text}]" return f"[回复:{self.reply.processed_plain_text}]"
return None
else: else:
return f"[{seg.type}:{str(seg.data)}]" return f"[{seg.type}:{str(seg.data)}]"
except Exception as e: except Exception as e:

View File

@@ -2,7 +2,7 @@ import random
import time import time
import re import re
from collections import Counter from collections import Counter
from typing import Dict, List from typing import Dict, List, Optional
import jieba import jieba
import numpy as np import numpy as np
@@ -688,7 +688,7 @@ def count_messages_between(start_time: float, end_time: float, stream_id: str) -
return 0, 0 return 0, 0
def translate_timestamp_to_human_readable(timestamp: float, mode: str = "normal") -> str: def translate_timestamp_to_human_readable(timestamp: float, mode: str = "normal") -> Optional[str]:
"""将时间戳转换为人类可读的时间格式 """将时间戳转换为人类可读的时间格式
Args: Args:
@@ -716,6 +716,7 @@ def translate_timestamp_to_human_readable(timestamp: float, mode: str = "normal"
return f"{int(diff / 86400)}天前:\n" return f"{int(diff / 86400)}天前:\n"
else: else:
return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timestamp)) + ":\n" return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timestamp)) + ":\n"
return None
def parse_text_timestamps(text: str, mode: str = "normal") -> str: def parse_text_timestamps(text: str, mode: str = "normal") -> str:

View File

@@ -1,25 +1,26 @@
import time import time
from random import random
import traceback import traceback
from typing import List from random import random
from ...memory_system.Hippocampus import HippocampusManager from typing import List, Optional
from ...moods.moods import MoodManager
from ....config.config import global_config from src.common.logger import get_module_logger, CHAT_STYLE_CONFIG, LogConfig
from ...chat.emoji_manager import emoji_manager from src.plugins.respon_info_catcher.info_catcher import info_catcher_manager
from .reasoning_generator import ResponseGenerator from .reasoning_generator import ResponseGenerator
from ...chat.chat_stream import chat_manager
from ...chat.emoji_manager import emoji_manager
from ...chat.message import MessageSending, MessageRecv, MessageThinking, MessageSet from ...chat.message import MessageSending, MessageRecv, MessageThinking, MessageSet
from ...chat.message_buffer import message_buffer
from ...chat.messagesender import message_manager from ...chat.messagesender import message_manager
from ...storage.storage import MessageStorage
from ...chat.utils import is_mentioned_bot_in_message from ...chat.utils import is_mentioned_bot_in_message
from ...chat.utils_image import image_path_to_base64 from ...chat.utils_image import image_path_to_base64
from ...willing.willing_manager import willing_manager from ...memory_system.Hippocampus import HippocampusManager
from ...message import UserInfo, Seg from ...message import UserInfo, Seg
from src.common.logger import get_module_logger, CHAT_STYLE_CONFIG, LogConfig from ...moods.moods import MoodManager
from ...chat.chat_stream import chat_manager
from ...person_info.relationship_manager import relationship_manager from ...person_info.relationship_manager import relationship_manager
from ...chat.message_buffer import message_buffer from ...storage.storage import MessageStorage
from src.plugins.respon_info_catcher.info_catcher import info_catcher_manager
from ...utils.timer_calculater import Timer from ...utils.timer_calculater import Timer
from ...willing.willing_manager import willing_manager
from ....config.config import global_config
# 定义日志配置 # 定义日志配置
chat_config = LogConfig( chat_config = LogConfig(
@@ -61,7 +62,7 @@ class ReasoningChat:
return thinking_id return thinking_id
@staticmethod @staticmethod
async def _send_response_messages(message, chat, response_set: List[str], thinking_id) -> MessageSending: async def _send_response_messages(message, chat, response_set: List[str], thinking_id) -> Optional[MessageSending]:
"""发送回复消息""" """发送回复消息"""
container = message_manager.get_container(chat.stream_id) container = message_manager.get_container(chat.stream_id)
thinking_message = None thinking_message = None
@@ -74,7 +75,7 @@ class ReasoningChat:
if not thinking_message: if not thinking_message:
logger.warning("未找到对应的思考消息,可能已超时被移除") logger.warning("未找到对应的思考消息,可能已超时被移除")
return return None
thinking_start_time = thinking_message.thinking_start_time thinking_start_time = thinking_message.thinking_start_time
message_set = MessageSet(chat, thinking_id) message_set = MessageSet(chat, thinking_id)

View File

@@ -12,7 +12,6 @@ class Seg:
- 对于 text 类型data 是字符串 - 对于 text 类型data 是字符串
- 对于 image 类型data 是 base64 字符串 - 对于 image 类型data 是 base64 字符串
- 对于 seglist 类型data 是 Seg 列表 - 对于 seglist 类型data 是 Seg 列表
translated_data: 经过翻译处理的数据(可选)
""" """
type: str type: str

View File

@@ -169,7 +169,7 @@ class PersonInfoManager:
"""给某个用户取名""" """给某个用户取名"""
if not person_id: if not person_id:
logger.debug("取名失败person_id不能为空") logger.debug("取名失败person_id不能为空")
return return None
old_name = await self.get_value(person_id, "person_name") old_name = await self.get_value(person_id, "person_name")
old_reason = await self.get_value(person_id, "name_reason") old_reason = await self.get_value(person_id, "name_reason")

View File

@@ -134,3 +134,4 @@ def main():
heartbeat_thread.start() heartbeat_thread.start()
return heartbeat_thread # 返回线程对象,便于外部控制 return heartbeat_thread # 返回线程对象,便于外部控制
return None