AI-Chat项目:聊天bug排查

32 阅读1分钟

AI回复

  1. AI长文本渲染有问题。 简化AI的Markdown渲染逻辑28行-->7行。

  2. AI回复时,切换对话,导致其它会话展现AI传递过来的消息。 问题: 前端会话中的message存储逻辑是独立存储的,AI正在回复的对话没有标识。方案: 重构为sessions-->message。独立维护AI回复的sessionId,后续拓展为多会话并行执行可变为数组。

  3. 对话超过20条没有传用户的最新消息 问题: 后端采用游标分页的形式,对话历史记录只拿取前20条。 方案: 后端全量获取。后续若历史记录太多,考虑内部调用便宜或免费的大模型进行历史记录压缩,新增一个字段存储于其中,后续调用AI传压缩后的上下文和用户消息即可。

用户操作

  1. 当前会话不是第一条时,消息发送完后会空白。 问题: fetchMessage消息重置了。 方案: 改为新的存储逻辑即可。

  2. 删除当前选中的会话后,要切换到新会话中

  3. 在新会话界面发消息后,未展示用户消息。问题:目前前端逻辑是等AI回复完后,更新会话以及消息,前端不能立即拿到sessionId,在其中推送消息。方案: 1、前端mock,AI回复完后覆盖mock。2、接口。占位麻烦,占用内存。故采取新增接口形式。

其它

  1. authMiddle的token确认逻辑是怎么确认的? JWT逻辑理解