基于MySQL的AI对话持久化简单实现——AI 超级智能体—— 3 - AI 应用开发...的全部评论

基于MySQL的AI对话持久化简单实现——AI 超级智能体—— 3 - AI 应用开发...的全部评论
12个评论
Zane
Java后端
其实有一个问题,memory多了之后,也会有一定影响大模型的输出,导致输出的数据和你想要的结果不符合,我感觉记忆更多应该是类似于人类的这种,按照相似度来进行返回记忆,当然也需要有一定结构的
2025-06-13
薇尔莉特
Java后端

感谢大佬分享!已测试过,如果大家遇到Column 'create_time' cannot be null这个问题可以添加下面两个字段

js
复制代码
`ALTER TABLE `chat_message` MODIFY COLUMN `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',...
2025-12-02
编程导航_小y
@官方运营 学习、求职、生活问题欢迎交流
点赞 👍🏻 感谢分享~
2025-05-03
鱼友7936
Java后端
大佬,你遇到这个问题没?最新一节需要用到pgsql的VectorStore,需要配置两种数据库,怎么在一个项目中支持两种数据库配置呢,在不改变用mysql存储会话记忆的情况你知道怎么改吗
2025-05-13
笨蛋皮卡丘
可以通过配置多个数据源实现,默认数据源读取spring.datasource的配置,pg数据源读其他的比如spring.pg-datasource;创建对应的datasource和jdbctemplate的bean;可以搜一下方法,我让 AI 帮我写的;默认mysql,用到pg的时候注入对应的jdbctemplate
2025-05-13
2025-05-13
鱼友7936
为啥我默认数据源变成了pqsql...
2025-05-14
leikooo
@编程小助手 微信: leikooo_
感谢大佬分享👍
2025-05-06
邓布利布
为啥你分享的那个需要 GSON 转换,他这个不需要,区别在哪里啊
2025-05-13
leikooo
我是直接把 spring ai 源码里面的 message 给 JSON 序列化了,这位大佬是单独自定义了一个类进行 JSON 序列化
2025-05-13
邓布利布
我捋捋看看
2025-05-13
鱼友xwzy
Java后端
佬,你这种方法字段完整吗? 就比如UserMessage它是有4个字段的:media,messageType,textContent,metedata 而SystemMessage多了个toolCalls字段。 这样看的话,你这数据库是不是缺字段? 而且后面Message 和 ChatMessage的互相转换,也默认了media和tool为空,当然如果纯是使用文本模型也不调用方法的话,这种情况下不来就是为空,应该是没问题的。...
2025-05-13
鱼友xwzy
这里是AssistantMessage不是SysstemMessage,笔误
2025-05-13
笨蛋皮卡丘
确实会缺字段的,所以叫“简单实现”,只适用于简单对话信息存储
2025-05-13
邓布利布
Java后端
你好,我怎么测试,一直显示注入错误呢啊
2025-05-13
七月
不要手动@Resources注入了,直接给需要用的放进构造器参数里面,会自动检测注入的 这个确实很坑人,试了半天才试出来
2025-05-13
邓布利布
Java后端
你好,为啥最后存储,报错 create_time 不可以为空啊,sql 语句和 实体类都是直接抄的,怎么会设定为空呢,默认都不是空啊?
2025-05-14
TC
:
自己修改SQL 让数据库自己生成 或者插入的时候 自己插入就可以了
2025-05-28
DFshmily
Java后端
👍
2025-05-23
autumn
后端
佬,你这个貌似没有MybatisPlus自动填充代码耶
2025-05-27
笨蛋皮卡丘
没贴上来😂
2025-05-28
奈亚
Java后端
关于七月那个用户的问题,还有皮卡丘大佬的代码我做一点补充,首先就是皮卡丘的实体类 ChatMessage,Mybatis-Plus 相关类的代码应该是用mybatis-plus插件自动生成的,你可以创建了表后立马去逆向生成,然后把皮卡丘的代码完整再替换掉自动生成的代码,记住要去配置文件那里配置数据库连接(我就忘了),然后就是实现类就按照《使用》这一步抄,可能会出现数据库的表和实体类传输数据出错的问题,因为皮卡丘的代码没有把实体类的所有字段都传输到数据库,比如createTime和updateTi...
2025-06-08
奈亚
//初始化AI客户端 public LoveApp(ChatModel dashscopeChatModel,DatabaseChatMemory databaseChatMemory) { //初始化基于文件的对话记忆 String fileDir = System.getProperty("user.dir") + "/tmp/chat-memory"; ChatMemory chatMemory = new FileBasedChat...
展开
2025-06-08
奈亚
package com.yupi.yuaiagent.config.handler; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component;...
展开
2025-06-08
奈亚
还有就是逆向生成的mapper.xml文件要删除
2025-06-08
笨蛋皮卡丘
回复
:
感谢补充🙏,我代码没贴全😂
2025-06-08
@笨蛋皮卡丘 1.0.0中MessageChatMemoryAdvisor采用了Builder来创建,会导致spring自动注入失效有解决的方法吗
2025-06-24
下载 APP