fix:再度优化关系Prompt

This commit is contained in:
SengokuCola
2025-04-29 19:47:47 +08:00
parent 58ff4ea765
commit c5811381bc
2 changed files with 30 additions and 13 deletions

View File

@@ -108,7 +108,7 @@ def init_prompt():
Prompt( Prompt(
""" """
{memory_prompt} {memory_prompt}
{relation_prompt_all} {relation_prompt}
{prompt_info} {prompt_info}
{schedule_prompt} {schedule_prompt}
{chat_target} {chat_target}
@@ -373,7 +373,6 @@ class PromptBuilder:
prompt = await global_prompt_manager.format_prompt( prompt = await global_prompt_manager.format_prompt(
"reasoning_prompt_main", "reasoning_prompt_main",
relation_prompt_all=await global_prompt_manager.get_prompt_async("relationship_prompt"),
relation_prompt=relation_prompt, relation_prompt=relation_prompt,
sender_name=sender_name, sender_name=sender_name,
memory_prompt=memory_prompt, memory_prompt=memory_prompt,

View File

@@ -4,6 +4,7 @@ import math
from bson.decimal128 import Decimal128 from bson.decimal128 import Decimal128
from .person_info import person_info_manager from .person_info import person_info_manager
import time import time
import random
# import re # import re
# import traceback # import traceback
@@ -282,17 +283,34 @@ class RelationshipManager:
person_name = await person_info_manager.get_value(person_id, "person_name") person_name = await person_info_manager.get_value(person_id, "person_name")
relationship_value = await person_info_manager.get_value(person_id, "relationship_value") relationship_value = await person_info_manager.get_value(person_id, "relationship_value")
level_num = self.calculate_level_num(relationship_value) level_num = self.calculate_level_num(relationship_value)
relationship_level = ["厌恶", "冷漠以对", "认识", "友好对待", "喜欢", "暧昧"]
relation_prompt2_list = [
"忽视的回应",
"冷淡回复",
"保持理性",
"愿意回复",
"积极回复",
"友善和包容的回复",
]
return f"{relationship_level[level_num]}{person_name},打算{relation_prompt2_list[level_num]}\n" if level_num == 0 or level_num == 5:
relationship_level = ["厌恶", "冷漠以对", "认识", "友好对待", "喜欢", "暧昧"]
relation_prompt2_list = [
"忽视的回应",
"冷淡回复",
"保持理性",
"愿意回复",
"积极回复",
"友善和包容的回复",
]
return f"{relationship_level[level_num]}{person_name},打算{relation_prompt2_list[level_num]}\n"
elif level_num == 2:
return ""
else:
if random.random() < 0.5:
relationship_level = ["厌恶", "冷漠以对", "认识", "友好对待", "喜欢", "暧昧"]
relation_prompt2_list = [
"忽视的回应",
"冷淡回复",
"保持理性",
"愿意回复",
"积极回复",
"友善和包容的回复",
]
return f"{relationship_level[level_num]}{person_name},打算{relation_prompt2_list[level_num]}\n"
else:
return ""
@staticmethod @staticmethod
def calculate_level_num(relationship_value) -> int: def calculate_level_num(relationship_value) -> int: