fix:优化人格prompt提取
This commit is contained in:
@@ -3,6 +3,7 @@ from typing import Dict, List
|
||||
import os
|
||||
import json
|
||||
from pathlib import Path
|
||||
import random
|
||||
|
||||
@dataclass
|
||||
class Personality:
|
||||
@@ -116,4 +117,29 @@ class Personality:
|
||||
instance = cls.get_instance()
|
||||
for key, value in data.items():
|
||||
setattr(instance, key, value)
|
||||
return instance
|
||||
return instance
|
||||
|
||||
def get_prompt(self,x_person,level):
|
||||
# 开始构建prompt
|
||||
if x_person == 2:
|
||||
prompt_personality = "你"
|
||||
elif x_person == 1:
|
||||
prompt_personality = "我"
|
||||
else:
|
||||
prompt_personality = "他"
|
||||
#person
|
||||
|
||||
prompt_personality += self.personality_core
|
||||
|
||||
if level == 2:
|
||||
personality_sides = self.personality_sides
|
||||
random.shuffle(personality_sides)
|
||||
prompt_personality += f",{personality_sides[0]}"
|
||||
elif level == 3:
|
||||
personality_sides = self.personality_sides
|
||||
for side in personality_sides:
|
||||
prompt_personality += f",{side}"
|
||||
|
||||
prompt_personality += "。"
|
||||
|
||||
return prompt_personality
|
||||
|
||||
Reference in New Issue
Block a user