mirror of https://github.com/Mai-with-u/MaiBot.git
74 lines
2.5 KiB
Python
74 lines
2.5 KiB
Python
#!/usr/bin/env python3
|
||
# -*- coding: utf-8 -*-
|
||
"""
|
||
测试del_memory函数的脚本
|
||
"""
|
||
|
||
import sys
|
||
import os
|
||
|
||
# 添加src目录到Python路径
|
||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'src'))
|
||
|
||
from person_info.person_info import Person
|
||
|
||
def test_del_memory():
|
||
"""测试del_memory函数"""
|
||
print("开始测试del_memory函数...")
|
||
|
||
# 创建一个测试用的Person实例(不连接数据库)
|
||
person = Person.__new__(Person)
|
||
person.person_id = "test_person"
|
||
person.memory_points = [
|
||
"性格:这个人很友善:5.0",
|
||
"性格:这个人很友善:4.0",
|
||
"爱好:喜欢打游戏:3.0",
|
||
"爱好:喜欢打游戏:2.0",
|
||
"工作:是一名程序员:1.0",
|
||
"性格:这个人很友善:6.0"
|
||
]
|
||
|
||
print(f"原始记忆点数量: {len(person.memory_points)}")
|
||
print("原始记忆点:")
|
||
for i, memory in enumerate(person.memory_points):
|
||
print(f" {i+1}. {memory}")
|
||
|
||
# 测试删除"性格"分类中"这个人很友善"的记忆
|
||
print("\n测试1: 删除'性格'分类中'这个人很友善'的记忆")
|
||
deleted_count = person.del_memory("性格", "这个人很友善")
|
||
print(f"删除了 {deleted_count} 个记忆点")
|
||
print("删除后的记忆点:")
|
||
for i, memory in enumerate(person.memory_points):
|
||
print(f" {i+1}. {memory}")
|
||
|
||
# 测试删除"爱好"分类中"喜欢打游戏"的记忆
|
||
print("\n测试2: 删除'爱好'分类中'喜欢打游戏'的记忆")
|
||
deleted_count = person.del_memory("爱好", "喜欢打游戏")
|
||
print(f"删除了 {deleted_count} 个记忆点")
|
||
print("删除后的记忆点:")
|
||
for i, memory in enumerate(person.memory_points):
|
||
print(f" {i+1}. {memory}")
|
||
|
||
# 测试相似度匹配
|
||
print("\n测试3: 测试相似度匹配")
|
||
person.memory_points = [
|
||
"性格:这个人非常友善:5.0",
|
||
"性格:这个人很友善:4.0",
|
||
"性格:这个人友善:3.0"
|
||
]
|
||
print("原始记忆点:")
|
||
for i, memory in enumerate(person.memory_points):
|
||
print(f" {i+1}. {memory}")
|
||
|
||
# 删除"这个人很友善"(应该匹配"这个人很友善"和"这个人友善")
|
||
deleted_count = person.del_memory("性格", "这个人很友善", similarity_threshold=0.8)
|
||
print(f"删除了 {deleted_count} 个记忆点")
|
||
print("删除后的记忆点:")
|
||
for i, memory in enumerate(person.memory_points):
|
||
print(f" {i+1}. {memory}")
|
||
|
||
print("\n测试完成!")
|
||
|
||
if __name__ == "__main__":
|
||
test_del_memory()
|