From de225bd3da004e0a8830f6ce9fefa7e33a0511f2 Mon Sep 17 00:00:00 2001 From: bridge Date: Sat, 4 Oct 2025 16:36:41 +0800 Subject: [PATCH] add alignment info --- src/classes/alignment.py | 7 +++++++ src/classes/avatar.py | 2 +- src/run/log.py | 5 +---- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/classes/alignment.py b/src/classes/alignment.py index b4617bd..6fc7a7e 100644 --- a/src/classes/alignment.py +++ b/src/classes/alignment.py @@ -12,10 +12,17 @@ class Alignment(Enum): def __str__(self) -> str: return alignment_strs.get(self, self.value) + def get_info(self) -> str: + return alignment_strs[self] + ": " + alignment_infos[self] + alignment_strs = { Alignment.RIGHTEOUS: "正", Alignment.EVIL: "邪", } +alignment_infos = { + Alignment.RIGHTEOUS: "正义阵营的理念是:扶助弱小,维护秩序,除魔卫道。", + Alignment.EVIL: "邪恶阵营的理念是:弱肉强食,以自身利益为先,蔑视规则,推崇权力与恐惧。", +} diff --git a/src/classes/avatar.py b/src/classes/avatar.py index 60dfd7b..c1e0aa2 100644 --- a/src/classes/avatar.py +++ b/src/classes/avatar.py @@ -106,7 +106,7 @@ class Avatar: 尽量多打一些,因为会用来给LLM进行决策 """ personas_str = ", ".join([persona.name for persona in self.personas]) - return f"Avatar(id={self.id}, 性别={self.gender}, 年龄={self.age}, name={self.name}, 阵营={self.alignment}, 区域={self.tile.region.name}, 灵根={str(self.root)}, 境界={self.cultivation_progress}, HP={self.hp}, MP={self.mp}, 个性={personas_str})" + return f"Avatar(id={self.id}, 性别={self.gender}, 年龄={self.age}, name={self.name}, 阵营={self.alignment.get_info()}, 区域={self.tile.region.name}, 灵根={str(self.root)}, 境界={self.cultivation_progress}, HP={self.hp}, MP={self.mp}, 个性={personas_str})" def __str__(self) -> str: return self.get_info() diff --git a/src/run/log.py b/src/run/log.py index a2c56ea..2789130 100644 --- a/src/run/log.py +++ b/src/run/log.py @@ -199,7 +199,4 @@ def log_llm_call(model_name: str, prompt: str, response: str, duration: float = def log_llm_error(error_message: str, prompt: str = None): """便捷函数:记录LLM错误""" logger = get_logger() - logger.log_error(error_message, prompt) - -# 向后兼容的别名 -get_llm_logger = get_logger + logger.log_error(error_message, prompt) \ No newline at end of file