Spring AI
Spring AI开发框架提供对接应用与AI模型的集成开发能力,让开发者更加容易地开发智能体以及其他生成式人工智能的应用:

对话存储
AI模型由固定的算法与数据构成,AI模型对外提供的服务是无状态的,对话会话的消息内容的存储功能需要由应用层提供,Spring AI开发框架提供对话会话的消息内容存储的支撑能力,业务流程:

对话存储接口描述
接口ChatMemory是Spring AI开发框架提供的可扩展组件Advisor的对话会话消息存储的接口,该接口提供对话存储的读写服务,对话存储的实现类都需要实现该接口:

接口ChatMemory的继承实现的抽象具体关系:

Spring AI开发框架提供的接口ChatMemory的实现类MessageWindowChatMemory,该实现类提供的功能是默认存储最新的20条对话会话消息:

在Spring AI应用工程的Maven依赖库配置文件中,引入对话存储的对接持久化存储的组件:

接口ChatMemoryRepository是Spring AI开发框架提供的对话存储的对接内存存储或者数据库存储的接口,对接内存存储或者数据库存储的实现类都需要实现该接口:

接口ChatMemoryRepository的继承实现的抽象具体关系:

Spring AI开发框架提供的接口ChatMemoryRepository的实现类InMemoryChatMemoryRepository,该实现类提供的功能是对话会话消息存储在内存中:

Spring AI开发框架提供的接口ChatMemoryRepository的实现类JdbcChatMemoryRepository,该实现类提供的功能是对话会话消息存储在数据库中:

Spring AI应用启动初始化对话客户端时,自动绑定对话存储的实例:
