style: 统一代码风格并进行现代化改进
对整个代码库进行了一次全面的风格统一和现代化改进。主要变更包括:
- 将 `hasattr` 等内置函数中的字符串参数从单引号 `'` 统一为双引号 `"`。
- 采用现代类型注解,例如将 `Optional[T]` 替换为 `T | None`,`List[T]` 替换为 `list[T]` 等。
- 移除不再需要的 Python 2 兼容性声明 `# -*- coding: utf-8 -*-`。
- 清理了多余的空行、注释和未使用的导入。
- 统一了文件末尾的换行符。
- 优化了部分日志输出和字符串格式化 (`f"{e!s}"`)。
这些改动旨在提升代码的可读性、一致性和可维护性,使其更符合现代 Python 编码规范。
This commit is contained in:
committed by
Windpicker-owo
parent
1fb2ab6450
commit
cd84373828
@@ -52,7 +52,7 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
# 用户关系数据缓存
|
||||
self.user_relationships: dict[str, float] = {} # user_id -> relationship_score
|
||||
|
||||
logger.info(f"[Affinity兴趣计算器] 初始化完成:")
|
||||
logger.info("[Affinity兴趣计算器] 初始化完成:")
|
||||
logger.info(f" - 权重配置: {self.score_weights}")
|
||||
logger.info(f" - 回复阈值: {self.reply_threshold}")
|
||||
logger.info(f" - 智能匹配: {self.use_smart_matching}")
|
||||
@@ -69,9 +69,9 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
"""执行AffinityFlow风格的兴趣值计算"""
|
||||
try:
|
||||
start_time = time.time()
|
||||
message_id = getattr(message, 'message_id', '')
|
||||
content = getattr(message, 'processed_plain_text', '')
|
||||
user_id = getattr(message, 'user_info', {}).user_id if hasattr(message, 'user_info') and hasattr(message.user_info, 'user_id') else ''
|
||||
message_id = getattr(message, "message_id", "")
|
||||
content = getattr(message, "processed_plain_text", "")
|
||||
user_id = getattr(message, "user_info", {}).user_id if hasattr(message, "user_info") and hasattr(message.user_info, "user_id") else ""
|
||||
|
||||
logger.debug(f"[Affinity兴趣计算] 开始处理消息 {message_id}")
|
||||
logger.debug(f"[Affinity兴趣计算] 消息内容: {content[:50]}...")
|
||||
@@ -135,7 +135,7 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
logger.error(f"Affinity兴趣值计算失败: {e}", exc_info=True)
|
||||
return InterestCalculationResult(
|
||||
success=False,
|
||||
message_id=getattr(message, 'message_id', ''),
|
||||
message_id=getattr(message, "message_id", ""),
|
||||
interest_value=0.0,
|
||||
error_message=str(e)
|
||||
)
|
||||
@@ -206,9 +206,9 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
|
||||
def _calculate_mentioned_score(self, message: "DatabaseMessages", bot_nickname: str) -> float:
|
||||
"""计算提及分"""
|
||||
is_mentioned = getattr(message, 'is_mentioned', False)
|
||||
is_at = getattr(message, 'is_at', False)
|
||||
processed_plain_text = getattr(message, 'processed_plain_text', '')
|
||||
is_mentioned = getattr(message, "is_mentioned", False)
|
||||
is_at = getattr(message, "is_at", False)
|
||||
processed_plain_text = getattr(message, "processed_plain_text", "")
|
||||
|
||||
if is_mentioned:
|
||||
if is_at:
|
||||
@@ -238,7 +238,7 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
keywords = []
|
||||
|
||||
# 尝试从 key_words 字段提取(存储的是JSON字符串)
|
||||
key_words = getattr(message, 'key_words', '')
|
||||
key_words = getattr(message, "key_words", "")
|
||||
if key_words:
|
||||
try:
|
||||
import orjson
|
||||
@@ -250,7 +250,7 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
|
||||
# 如果没有 keywords,尝试从 key_words_lite 提取
|
||||
if not keywords:
|
||||
key_words_lite = getattr(message, 'key_words_lite', '')
|
||||
key_words_lite = getattr(message, "key_words_lite", "")
|
||||
if key_words_lite:
|
||||
try:
|
||||
import orjson
|
||||
@@ -262,7 +262,7 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
|
||||
# 如果还是没有,从消息内容中提取(降级方案)
|
||||
if not keywords:
|
||||
content = getattr(message, 'processed_plain_text', '') or ''
|
||||
content = getattr(message, "processed_plain_text", "") or ""
|
||||
keywords = self._extract_keywords_from_content(content)
|
||||
|
||||
return keywords[:15] # 返回前15个关键词
|
||||
@@ -298,4 +298,4 @@ class AffinityInterestCalculator(BaseInterestCalculator):
|
||||
self.no_reply_count = min(self.no_reply_count + 1, self.max_no_reply_count)
|
||||
|
||||
# 是否使用智能兴趣匹配(作为类属性)
|
||||
use_smart_matching = True
|
||||
use_smart_matching = True
|
||||
|
||||
@@ -107,9 +107,9 @@ class ChatterActionPlanner:
|
||||
# 直接使用消息中已计算的标志,无需重复计算兴趣值
|
||||
for message in unread_messages:
|
||||
try:
|
||||
message_interest = getattr(message, 'interest_value', 0.3)
|
||||
message_should_reply = getattr(message, 'should_reply', False)
|
||||
message_should_act = getattr(message, 'should_act', False)
|
||||
message_interest = getattr(message, "interest_value", 0.3)
|
||||
message_should_reply = getattr(message, "should_reply", False)
|
||||
message_should_act = getattr(message, "should_act", False)
|
||||
|
||||
# 确保interest_value不是None
|
||||
if message_interest is None:
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
from src.common.logger import get_logger
|
||||
from src.plugin_system.apis.plugin_register_api import register_plugin
|
||||
from src.plugin_system.base.base_plugin import BasePlugin
|
||||
from src.plugin_system.base.component_types import ComponentInfo, ComponentType, InterestCalculatorInfo
|
||||
from src.plugin_system.base.component_types import ComponentInfo
|
||||
|
||||
logger = get_logger("affinity_chatter_plugin")
|
||||
|
||||
@@ -52,4 +52,3 @@ class AffinityChatterPlugin(BasePlugin):
|
||||
|
||||
return components
|
||||
|
||||
|
||||
@@ -14,4 +14,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": True,
|
||||
"plugin_type": "action_provider",
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -13,4 +13,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": True,
|
||||
"plugin_type": "permission",
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -14,4 +14,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": True,
|
||||
"plugin_type": "plugin_management",
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -14,4 +14,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": True,
|
||||
"plugin_type": "functional"
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -65,10 +65,10 @@ class ColdStartTask(AsyncTask):
|
||||
nickname = await person_api.get_person_value(person_id, "nickname")
|
||||
user_nickname = nickname or f"用户{user_id}"
|
||||
user_info = UserInfo(platform=platform, user_id=str(user_id), user_nickname=user_nickname)
|
||||
|
||||
|
||||
# 使用 get_or_create_stream 来安全地获取或创建流
|
||||
stream = await self.chat_manager.get_or_create_stream(platform, user_info)
|
||||
|
||||
|
||||
formatted_stream_id = f"{stream.user_info.platform}:{stream.user_info.user_id}:private"
|
||||
await self.executor.execute(stream_id=formatted_stream_id, start_mode="cold_start")
|
||||
logger.info(f"【冷启动】已为用户 {chat_id} (昵称: {user_nickname}) 发送唤醒/问候消息。")
|
||||
|
||||
@@ -14,4 +14,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": "true",
|
||||
"plugin_type": "functional"
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -14,4 +14,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
"is_built_in": True,
|
||||
"plugin_type": "audio_processor",
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -13,4 +13,4 @@ __plugin_meta__ = PluginMetadata(
|
||||
extra={
|
||||
"is_built_in": True,
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user