
MemGPT Sample

2025.03.27
0
Java聊天机器人长期记忆管理上下文管理开发效率交流协作
MemGPT Sample项目是一个概念验证实现,展示了如何将MemGPT研究论文中的概念简化为一个代理,并可以集成为一个简单的REST服务或MCP服务器。该项目使用Spring Boot和Spring AI实现,包含核心代理功能、RESTful服务、MCP服务器以及一个简单的命令行聊天应用程序。
View on GitHub
Overview
基本能力
产品定位
MemGPT Sample项目旨在实现和展示MemGPT概念,作为一个代理,可以用于聊天应用程序和服务集成。
核心功能
- 实现MemGPT代理的核心功能,包括系统提示、工具、核心内存、归档内存和消息持久化。
- 提供消息编译、LLM通信、工具调用、内存管理(包括上下文窗口自编辑)、消息检索和归档、消息摘要等功能。
- 通过AgentManager、AgentLoader和Agent接口暴露核心代理功能。
适用场景
- 作为聊天机器人的后端服务。
- 用于需要长期记忆和上下文管理的对话系统。
- 作为MCP或REST服务的集成示例。
工具列表
- core-agent: 定义和实现MemGPT接口,包括配置API。
- restful-agent-app: 通过REST接口暴露代理功能。
- memgpt-mcp-server: 通过MCP服务器暴露代理功能。
- simple-chat-bot-app: 命令行聊天应用程序,通过REST或MCP接口与代理通信。
常见问题解答
- 需要Java 17或更高版本、Gradle和OpenAI API密钥。
- 归档内存需要向量存储和嵌入模型,默认禁用,可通过启用
pgvector
Spring配置文件激活。
使用教程
使用依赖
- 安装Java 17或更高版本。
- 安装Gradle。
- 获取OpenAI API密钥。
安装教程
- 设置OpenAPI密钥环境变量:
export OPENAI_API_KEY=your-api-key
- 构建应用程序:
./gradlew :restful-agent-app:build
或
./gradlew :memgpt-mcp-server:build
- 运行服务器应用程序:
java -jar ./restful-agent-app/build/libs/restful-agent-app-0.0.1-SNAPSHOT.jar
或
java -jar ./memgpt-mcp-server/build/libs/memgpt-mcp-server-0.0.1-SNAPSHOT.jar
调试方式
- 运行ChatBot应用程序:
java -jar ./simple-chat-bot-app/build/libs/simple-chat-bot-app-0.0.1-SNAPSHOT.jar
- 输入用户ID以开始聊天会话。