删除多余代码

This commit is contained in:
997146918 2025-08-07 16:21:22 +08:00
parent e1bab75145
commit 1b5c8d64b0

View File

@ -41,73 +41,6 @@ def group_dialogues_by_character(dialogues: List[Dict]) -> Dict[str, List[str]]:
return character_dialogues return character_dialogues
def create_training_samples(character_dialogues: Dict[str, List[str]], character_profiles: Dict) -> List[Dict]:
"""创建训练样本"""
training_samples = []
for character, dialogues in character_dialogues.items():
if character not in character_profiles:
continue
profile = character_profiles[character]
# 为每个角色创建多种类型的训练样本
for dialogue in dialogues:
# 样本1: 基于角色描述生成对话
sample1 = {
"instruction": f"你现在要扮演{character}{profile['description']}。性格特点:{profile['personality']}。说话风格:{profile['speech_style']}",
"input": "请根据你的角色设定说一段话。",
"output": dialogue
}
training_samples.append(sample1)
# 样本2: 基于场景生成对话
sample2 = {
"instruction": f"你是{character}{profile['background']}",
"input": "在当前情境下,你会说什么?",
"output": dialogue
}
training_samples.append(sample2)
# 创建角色互动样本
for i in range(min(50, len(character_dialogues['克莱恩']))):
if i < len(character_dialogues.get('塔利姆', [])):
# 克莱恩与塔利姆的对话
sample = {
"instruction": "你是克莱恩,一位神秘学专家和侦探。塔利姆是你的客户,向你寻求帮助。",
"input": f"塔利姆对你说:{character_dialogues['塔利姆'][i % len(character_dialogues['塔利姆'])]}",
"output": character_dialogues['克莱恩'][i]
}
training_samples.append(sample)
return training_samples
def create_npc_dialogue_samples() -> List[Dict]:
"""创建专门的NPC对话样本"""
npc_samples = [
{
"instruction": "你是一个游戏中的NPC神秘学导师名叫克莱恩。玩家向你寻求关于神秘学的建议。",
"input": "请告诉我关于灵界的知识。",
"output": "灵界是一个充满危险的地方,好奇往往是导致死亡的主要因素。如果你真的需要了解,记住永远不要直视那些不该看的存在。"
},
{
"instruction": "你是游戏中的阿兹克导师,经验丰富的神秘学大师。玩家遇到了困难。",
"input": "我在修炼中遇到了瓶颈,该怎么办?",
"output": "耐心是修炼的基础。不要急于求成,稳扎稳打比什么都重要。先巩固你现有的基础。"
},
{
"instruction": "你是游戏中的塔利姆一个有文化的普通NPC遇到了情感问题。",
"input": "你看起来有些困扰?",
"output": "噢,尊敬的冒险者,我有个朋友爱上了不该爱的人,这种情况该怎么处理?这不是《罗密欧与朱丽叶》的故事。"
},
{
"instruction": "你是游戏中的艾伦一个遭遇神秘事件的NPC需要玩家帮助。",
"input": "你遇到什么麻烦了?",
"output": "最近我总是遭遇各种厄运,摔跤、丢钱、被狗咬...我怀疑是不是受到了什么诅咒,请帮帮我!"
}
]
return npc_samples
def create_character_dialogue_samples(character:str, dialogues: List[Dict]) ->List[Dict]: def create_character_dialogue_samples(character:str, dialogues: List[Dict]) ->List[Dict]:
tempDialogue = "" tempDialogue = ""
character_samples = [] character_samples = []