在调用 OpenAI API 与 AI 对话时,如何剔除掉无效的历史信息?

2023 年 7 月 3 日
 x77

背景:在与 AI 模型对话的过程中客户端需要把对话历史记录也发给 AI ,这样 AI 能根据上下文更好的理解用户意图并作出回应。但是,无关的历史信息会影响 AI 对意图的理解,而且也会增加模型的负担。

场景:用户和模型的对话主题是旅游,然而,用户突然蹦出个电影问题,然后又回到旅游主题,这时历史记录中就冒出个无关的电影内容,这对主题是无关紧要的,而且浪费 Token 。

如何在历史记录中剔除与主题无关的内容?

2548 次点击
所在节点    程序员
3 条回复
pigmen
2023 年 7 月 3 日
直接删除就好了呗,不支持的话建议换个客户端
maolon
2023 年 7 月 3 日
使用带 embedding vector search 的数据库来存历史对话,比如 redis ,postgresql ,云方案可以用 pinecone 之类的,然后返回 score 在一定阈值之上的历史问答
liantian
2023 年 7 月 3 日
1. 用 ai 解决,似乎…更费 token 。
2. 分词一下,根据词频和权重,似乎不够智能?

非人工,想到的也就这样了额。

还是学会怎么问问题比较好,比如我想旅游看个电影,ai 或分词方法,会不会异常排除掉了…

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

https://v2ex.ih06.com/t/953525

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

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

© 2021 V2EX