SpringAi 会话记忆功能

在使用chatGPT,豆包等产品后,就会发现他们的会话有"记忆"功能。

那么我们用API接口的话,这个是怎么实现的呢?

属于比较粗暴的方式,把之前的内容与新的提示词一起再次发给大模型。让我们看到他们有记忆功能。

下面介绍deepseek通过spring ai接入的时候实现记忆功能

一:定义会话存储方式

java 复制代码
 @Bean
    public ChatMemory chatMemory(){
        return new InMemoryChatMemory();
    }

ChatMemory 接口中,有如下方法:

以上是springAi中通过内存的实现方式实现如下接口。

二:配置会话记忆Advisor

java 复制代码
    @Bean
    public ChatClient chatClient(OllamaChatModel chatModel,ChatMemory chatMemory){
        return   ChatClient
                .builder(chatModel)
                .defaultAdvisors(new SimpleLoggerAdvisor(),
                        new MessageChatMemoryAdvisor(chatMemory))
                .build();
    }

三:添加会话id

如ChatMemory接口,有个conversationId;即会话id,每次会话的时候,通过前端区分这个会话id。

上述方式即实现了会话记忆方案。

相关推荐
无声旅者33 分钟前
n8n:解锁自动化工作流的无限可能
ai·自动化·oneapi·ai大模型·n8n
在荒野的梦想3 小时前
DeepSeek+SpringAI实现流式对话
java·ai
程序员鱼皮4 小时前
刚刚,Cursor 1.0炸裂发布!4大亮点实战
计算机·ai·程序员·互联网·软件开发
程序员鱼皮11 小时前
全球首个无限执行的 AI 出现!给我玩爽了
计算机·ai·互联网·agent·代码
要养家的程序猿1 天前
RagFlow优化&代码解析(一)
人工智能·ai
斯普信专业组1 天前
Cursor使用最佳实践总结
ai·cursor
MyikJ1 天前
Java面试实战:从Spring Boot到微服务与AI的全栈挑战
java·大数据·spring boot·微服务·ai·面试·架构设计
sg_knight1 天前
大模型连接万物的“万能插座”:深度解析模型上下文协议MCP
人工智能·ai·大模型·agent·ai大模型·mcp·模型上下文协议
俊哥V1 天前
AI一周事件(2025年5月27日-6月2日)
人工智能·ai
小白跃升坊1 天前
Prompt 生产及提示词案例(含完整提示词)
ai·大语言模型·maxkb·提示词模版