- MemoryGraph 新增输出主题树功能

- 将 TopicExtractor 重命名为 MemorySelectExtractor ,并添加了提示词
- 记忆模块开发工作进行中
- 新增 SliceSummary 类,服务于记忆模块
This commit is contained in:
2025-04-20 23:07:22 +08:00
parent 7594a1c43b
commit cb85192c50
24 changed files with 449 additions and 87 deletions

View File

@@ -0,0 +1,62 @@
package memory;
import cn.hutool.core.date.LocalDateTimeUtil;
import org.junit.jupiter.api.Test;
import work.slhaf.agent.core.memory.MemoryGraph;
import work.slhaf.agent.core.memory.node.TopicNode;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.concurrent.ConcurrentHashMap;
public class MemoryTest {
@Test
public void test1() {
MemoryGraph graph = new MemoryGraph("test");
HashMap<String, TopicNode> topicMap = new HashMap<>();
TopicNode root1 = new TopicNode();
root1.setTopicNodes(new ConcurrentHashMap<>());
TopicNode sub1 = new TopicNode();
sub1.setTopicNodes(new ConcurrentHashMap<>());
TopicNode sub2 = new TopicNode();
sub2.setTopicNodes(new ConcurrentHashMap<>());
TopicNode subsub1 = new TopicNode();
subsub1.setTopicNodes(new ConcurrentHashMap<>());
// 构造结构root -> sub1 -> subsub1, root -> sub2
sub1.getTopicNodes().put("子子主题1", subsub1);
root1.getTopicNodes().put("子主题1", sub1);
root1.getTopicNodes().put("子主题2", sub2);
topicMap.put("根主题1", root1);
// 添加 root2
TopicNode root2 = new TopicNode();
root2.setTopicNodes(new ConcurrentHashMap<>());
TopicNode sub3 = new TopicNode();
sub3.setTopicNodes(new ConcurrentHashMap<>());
// 构造结构root2 -> sub3
root2.getTopicNodes().put("子主题3", sub3);
topicMap.put("根主题2", root2);
// 输出
graph.setTopicNodes(topicMap);
graph.printTopicTree();
}
@Test
public void test2(){
System.out.println(LocalDate.now());
}
}