mirror of https://github.com/Mai-with-u/MaiBot.git
完成回复概率增强器实现逻辑
parent
7917191101
commit
ad770cec84
|
|
@ -82,12 +82,12 @@ class BotConfig:
|
|||
chinese_typo_word_replace_rate: float = 0.02 # 整词替换概率
|
||||
|
||||
reply_possibility_enhance_enable: bool = True # 是否启用回复可能性增强
|
||||
minumum_group_reply_possibility = 0 # 最低群组回复可能性
|
||||
minumum_friend_reply_possibility = 0.5 # 最低好友回复可能性
|
||||
max_group_reply_possibility = 1.0 # 最大回复可能性
|
||||
max_friend_reply_possibility = 1.0 # 最大回复可能性
|
||||
group_reply_possibility_enhance = 0 # 群组回复可能性增强
|
||||
friend_reply_possibility_enhance = 0 # 好友回复可能性增强
|
||||
min_group_reply_possibility: float = 0.0 # 最低群组回复可能性
|
||||
min_friend_reply_possibility: float = 0.5 # 最低好友回复可能性
|
||||
max_group_reply_possibility: float = 1.0 # 最大回复可能性
|
||||
max_friend_reply_possibility: float = 1.0 # 最大回复可能性
|
||||
group_reply_possibility_enhance: float = 0.0 # 群组回复可能性增强
|
||||
friend_reply_possibility_enhance: float = 0.0 # 好友回复可能性增强
|
||||
|
||||
# 默认人设
|
||||
PROMPT_PERSONALITY = [
|
||||
|
|
@ -354,13 +354,13 @@ class BotConfig:
|
|||
def reply_possibility_enhance(parent: dict):
|
||||
reply_possibility_enhance_config = parent["reply_possibility_enhance"]
|
||||
config.reply_possibility_enhance_enable = reply_possibility_enhance_config.get(
|
||||
"enable", config.reply_possibility_enhance_config_enable
|
||||
"enable", config.reply_possibility_enhance_enable
|
||||
)
|
||||
config.minumum_group_reply_possibility = reply_possibility_enhance_config.get(
|
||||
"minumum_group_reply_possibility", config.minumum_group_reply_possibility
|
||||
config.min_group_reply_possibility = reply_possibility_enhance_config.get(
|
||||
"min_group_reply_possibility", config.min_group_reply_possibility
|
||||
)
|
||||
config.minumum_friend_reply_possibility = reply_possibility_enhance_config.get(
|
||||
"minumum_friend_reply_possibility", config.minumum_friend_reply_possibility
|
||||
config.min_group_reply_possibility = reply_possibility_enhance_config.get(
|
||||
"min_group_reply_possibility", config.min_group_reply_possibility
|
||||
)
|
||||
config.max_group_reply_possibility = reply_possibility_enhance_config.get(
|
||||
"max_group_reply_possibility", config.max_group_reply_possibility
|
||||
|
|
@ -369,10 +369,10 @@ class BotConfig:
|
|||
"max_friend_reply_possibility", config.max_friend_reply_possibility
|
||||
)
|
||||
config.group_reply_possibility_enhance = reply_possibility_enhance_config.get(
|
||||
"group_reply_possibility_enhance", config.group_reply_possibility_enhance
|
||||
"group_reply_possibility_enhance", config.group_reply_possibility_enhance
|
||||
)
|
||||
config.friend_reply_possibility_enhance = reply_possibility_enhance_config.get(
|
||||
"friend_reply_possibility_enhance", config.friend_reply_possibility_enhance
|
||||
"friend_reply_possibility_enhance", config.friend_reply_possibility_enhance
|
||||
)
|
||||
|
||||
# 版本表达式:>=1.0.0,<2.0.0
|
||||
|
|
|
|||
|
|
@ -70,6 +70,24 @@ class WillingManager:
|
|||
|
||||
reply_probability = max((current_willing - 0.45) * 2, 0)
|
||||
|
||||
# 回复意愿增强器
|
||||
if global_config.reply_possibility_enhance_enable:
|
||||
logger.debug("回复意愿增强器激活")
|
||||
# 群聊
|
||||
if chat_stream.group_info and chat_stream.group_info.group_id:
|
||||
reply_probability += global_config.group_reply_possibility_enhance
|
||||
reply_probability = min(reply_probability, global_config.max_group_reply_possibility)
|
||||
reply_probability = max(reply_probability, global_config.min_group_reply_possibility)
|
||||
logger.debug(f"群聊回复意愿增强: {reply_probability}")
|
||||
|
||||
# 私聊
|
||||
else:
|
||||
reply_probability += global_config.friend_reply_possibility_enhance
|
||||
reply_probability = min(reply_probability, global_config.max_friend_reply_possibility)
|
||||
reply_probability = max(reply_probability, global_config.min_friend_reply_possibility)
|
||||
logger.debug(f"私聊回复意愿增强: {reply_probability}")
|
||||
|
||||
|
||||
# 检查群组权限(如果是群聊)
|
||||
if chat_stream.group_info:
|
||||
if chat_stream.group_info.group_id in config.talk_frequency_down_groups:
|
||||
|
|
|
|||
|
|
@ -109,9 +109,10 @@ enable_debug_output = false # 是否启用调试输出
|
|||
enable_friend_chat = false # 是否启用好友聊天
|
||||
|
||||
[reply_possibility_enhance]
|
||||
# 若果开启此项,最终回复概率=原始回复概率+回复可能性增强,并被限制在max和min之间
|
||||
enable = true # 是否启用回复可能性增强
|
||||
minumum_group_reply_possibility = 0 # 最低群组回复可能性
|
||||
minumum_friend_reply_possibility = 0.5 # 最低好友回复可能性
|
||||
min_group_reply_possibility = 0 # 最低群组回复可能性
|
||||
min_friend_reply_possibility = 0.5 # 最低好友回复可能性
|
||||
max_group_reply_possibility = 1.0 # 最大回复可能性
|
||||
max_friend_reply_possibility = 1.0 # 最大回复可能性
|
||||
group_reply_possibility_enhance = 0 # 群组回复可能性增强
|
||||
|
|
|
|||
Loading…
Reference in New Issue