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。

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

相关推荐
沈询-阿里1 小时前
Skills vs MCP:竞合关系还是互补?深入解析Function Calling、MCP和Skills的本质差异
人工智能·ai·agent·ai编程
哥布林学者2 小时前
吴恩达深度学习课程五:自然语言处理 第一周:循环神经网络 (五)门控循环单元 GRU
深度学习·ai
酩酊仙人4 小时前
fastmcp构建mcp server和client
python·ai·mcp
格林威4 小时前
传送带上运动模糊图像复原:提升动态成像清晰度的 6 个核心方案,附 OpenCV+Halcon 实战代码!
人工智能·opencv·机器学习·计算机视觉·ai·halcon·工业相机
undsky_9 小时前
【n8n教程】:RSS Feed Trigger节点,玩转RSS订阅自动化
人工智能·ai·aigc·ai编程
CoderJia程序员甲10 小时前
GitHub 热榜项目 - 日榜(2026-1-7)
人工智能·ai·大模型·github·ai教程
不会用AI的老炮10 小时前
【AI coding 智能体设计系列-07】规约驱动:让交付可复现的Spec工作流
人工智能·ai·ai编程
liulilittle11 小时前
DeepWiki: OPENPPP2 工程价值
网络·c++·网络协议·ai·信息与通信·通信
云草桑11 小时前
.net AI API应用 客户发的信息提取对接上下游系统报价
ai·c#·.net·semantickernel·sk
外贸干货的小棠12 小时前
AI搜索革命:GEO优化如何重构企业获客的底层逻辑
ai