feat: 添加不区分大小写/别名查找功能到图操作类型枚举

This commit is contained in:
Windpicker-owo
2025-11-18 21:03:15 +08:00
parent 999d7b285f
commit ed483d088a

View File

@@ -43,6 +43,21 @@ class GraphOperationType(Enum):
DELETE_MEMORY = "delete_memory" # 删除记忆 DELETE_MEMORY = "delete_memory" # 删除记忆
MERGE_MEMORIES = "merge_memories" # 合并记忆 MERGE_MEMORIES = "merge_memories" # 合并记忆
@classmethod
def _missing_(cls, value: Any): # type: ignore[override]
"""
在从原始数据重构时,允许进行不区分大小写/别名的查找。
"""
if isinstance(value, str):
normalized = value.strip().lower().replace("-", "_")
for member in cls:
if (
member.value == normalized
or member.name.lower() == normalized
):
return member
return None
class ShortTermOperation(Enum): class ShortTermOperation(Enum):
"""短期记忆操作类型枚举""" """短期记忆操作类型枚举"""