实时对话场景下怎么做 rag 不影响响应速度(最佳实践)

1 天前
 rizon
#背景

如果是一个不在意响应速度的场景,不在意成本的情况下。每句回复之前都可以做一次记忆召回,不过实际这样召回也不对,因为可能会导致重复召回的问题,所以还需要更多判断。有经验的大佬可以顺便分享一下这个点。

不过我想问的是,在实时对话,也就是期望保持低延迟的语音对话中,该如何触发记忆召回呢。

我能想到的就是 2 个方法:
1 ,前置一个小模型做意图判断是否需要召回记忆。
2 ,模型里加入一个召回记忆的 tool ,靠模型自己判断。
不过这个只解决了召回时机的问题,还需要解决召回速度,比如混合关键词检索等。

#问题

所以我的问题就是,

1 ,关于召回时机这里有什么好的最佳实践吗?
2 ,关于召回速度提升有什么好的方案吗?
3 ,目前有什么做的比较好的适合语音对话的可以直接去集成的产品吗
1521 次点击
所在节点    程序员
9 条回复
maolon
1 天前
我觉得大部分目前的系统都是采用你说的 2.这个方案,也就是模型自己判断要不要召回。

至于速度问题,其实可以用一些 trick 解决,比如开始召回就会固定/非固定的输出语音,比如“让我想想”,“我回想一下我们聊过的内容”这样的语音来拖时间,一般再怎么搞 300ms 也能召回完成了,而你拖时间的这句话应该会比这个时间长。

我之前产品用的 livekit 他们的服务,你可以去看看。
rizon
1 天前
@maolon 嗯嗯,感谢。我看看
galileo1214
1 天前
不是有 memery saver 吗?
xvan
1 天前
现在的召回速度大概多少,如果 1s 不到还凑合
记忆体有专用的组件,比如 mem0 ,但是速度就不太好保证了,用的 LLM
cryptovae
1 天前
UX 设计, 在召回阶段让用户觉得是模型在思考
rizon
22 小时 27 分钟前
感觉收藏这个帖子的人很多,但是回帖很少,可能大家都有这方面问题,但是都没有很成熟的落地经验 吧
rizon
22 小时 27 分钟前
@xvan 这就是平衡问题了,用云服务而不是本地服务的话,延迟我感觉下不来
rizon
22 小时 26 分钟前
@cryptovae 是,这是兜底设计。
rizon
1 小时 39 分钟前
有大佬分享一下嘛

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1170297

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX