From 9a681a51f88d243abe750033665732ccfc9bcd6e Mon Sep 17 00:00:00 2001 From: bridge Date: Sat, 20 Dec 2025 18:08:04 +0800 Subject: [PATCH] refactor prompt template --- README.md | 1 - src/classes/ai.py | 1 + static/templates/ai.txt | 2 +- static/templates/conversation.txt | 2 +- static/templates/story_dual.txt | 2 +- static/templates/story_single.txt | 2 +- 6 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 005cbd3..6916ab6 100644 --- a/README.md +++ b/README.md @@ -139,7 +139,6 @@ - ✅ 对话小剧场 - ✅ 小剧场不同文字风格 - ✅ 一次性选择(如是否要切换功法) -- [ ] NPC观测空间设计 ### 🏛️ 世界背景系统 - [ ] 背景故事框架 diff --git a/src/classes/ai.py b/src/classes/ai.py index ef2e217..61ab9ce 100644 --- a/src/classes/ai.py +++ b/src/classes/ai.py @@ -78,6 +78,7 @@ class LLMAI(AI): avatar_info = avatar.get_expanded_info(co_region_avatars=observed) info = { + "avatar_name": avatar.name, "avatar_info": avatar_info, "world_info": world_info, "general_action_infos": general_action_infos, diff --git a/static/templates/ai.txt b/static/templates/ai.txt index f29f6ea..ab46f26 100644 --- a/static/templates/ai.txt +++ b/static/templates/ai.txt @@ -10,7 +10,7 @@ 注意,只返回json格式结果。 格式为: {{ - AvatarName: {{ + {avatar_name}: {{ "avatar_thinking": ... // 从角色角度,以第一人称视角,简单清晰的描述想法 "short_term_objective": ..., // 角色接下来一段时间的短期目标 "action_name_params_pairs": list[Tuple[action_name, action_params]] // 一次性决定未来的5~10个动作,按顺序执行 diff --git a/static/templates/conversation.txt b/static/templates/conversation.txt index c7c2b54..db450a7 100644 --- a/static/templates/conversation.txt +++ b/static/templates/conversation.txt @@ -16,7 +16,7 @@ {{ "{avatar_name_2}": {{ "thinking": ..., // 简单思考对话如何进行 - "conversation_content": ... // 对话双方均为第三人称视角的对话,100~300字,有来有回的多轮对话。 + "conversation_content": ... // 对包含神态、动作描写的第三人称小说有来有回的多轮对话片段,100~300字。 "analyze_relation": ... // 分析是否应该有关系的取消或者新增 "new_relation": ... // 如果你认为可以让两者产生某种身份关系,则返回关系的中文名,否则返回空str。注意这是{avatar_name_2}相对于{avatar_name_1}的身份。 "cancel_relation": ... // 可选,如果你认为可以让两者取消某种身份关系,则返回关系的中文名,否则返回空str。注意这是{avatar_name_2}相对于{avatar_name_1}的身份。 diff --git a/static/templates/story_dual.txt b/static/templates/story_dual.txt index 5f6fc9e..1e3e5bc 100644 --- a/static/templates/story_dual.txt +++ b/static/templates/story_dual.txt @@ -1,4 +1,4 @@ -你是一个故事讲述者,这是一个仙侠世界,你需要把一个事件扩展为一个约200~250字的小故事,并根据事件发展和双方性格,决定两人是否会有关系的变化。 +你是一个故事讲述者,这是一个仙侠世界,你需要把一个事件扩展为一个约200~500字的小故事,并根据事件发展和双方性格,决定两人是否会有关系的变化。 你需要进行决策的NPC的dict[AvatarName, info]为 {avatar_infos} diff --git a/static/templates/story_single.txt b/static/templates/story_single.txt index 49303d5..6917c90 100644 --- a/static/templates/story_single.txt +++ b/static/templates/story_single.txt @@ -1,4 +1,4 @@ -你是一个故事讲述者,这是一个仙侠世界,你需要把一个事件扩展为一个约200~250字的小故事。 +你是一个故事讲述者,这是一个仙侠世界,你需要把一个事件扩展为一个约200~500字的小故事。 你需要进行决策的NPC的dict[AvatarName, info]为 {avatar_infos}