👨💻如何解决联网搜索记忆问题? 开发智能体的过程中,我们会接入一些联网搜索的插件来进行RAG的增强 *笔者实验了dify平台上的许多搜索插件,发现最好用的是数眼智能的搜索插件,他们和其他家最大的不同是基于AI视觉识别来实现的搜索,搜索结果上更加准确实时。 dify应用地址:marketplace.dify.ai/plugins/dat… 官方开发文档:doc.shuyanai.com
痛点场景:我们在做智能助手初期,经常会遇到这样的场景:第一个问题能联网搜索回答,问第二个相关问题时,大模型联网搜索的内容答非所问。
核心原因是因为每次最新的问题输入时,没有把历史问题,作为参考一同输入。导致最新回答没有基于历史问题一同去做联网搜索记忆。因此分享一下目前我们自己用的一个小技巧:
1.首先在正式输入问题时,我们可以设置一个变量赋值的节点,目的是可以将用户的多次提问作为输入历史。
2.构建搜索关键词添加大模型节点,将用户多次提问的问题喂给大模型分解为搜索关键词,进而下一步才去调取数眼智能的搜索组件。因为前一步我们已经做了追加变量,所以进行关键词联网搜索时,不仅会根据最新的问题去分解关键词,还会带上历史输入问题的信息,避免了信息缺失;
提示词分享: 今天是: 用户输入的内容如下: 用户输入的历史: 请根据用户输入的内容输出对应的搜索关键词。请只输出搜索关键词,多个搜索关键词请以 :::分割。回答不超过50字。 指导原则: 1.提取用户真正需要的信息,而不是简单重复用户的问题 2.关键词应该简洁精确,去除无关词汇 3.不要盲目增加过多关键词,只提取真正必要的内容 4.当用户查询简单明确时,只需一个关键词即可
- 示例:
- 输入:"今天天气如何?去东方明珠是否合适?"
- 输出:"上海天气:::东方明珠开放时间:::东方明珠游客评价"
- 输入:“哪吒2实时票房"
- 输出:"哪吒2 票房"
- 输入:"如何制作披萨?需要什么材料?"
- 输出:"披萨制作方法:::披萨基本材料"
- 输入:"特斯拉Model 3和比亚迪汉EV哪个更值得买?"
- 输出:"特斯拉Model3 比亚迪汉EV 对比:::特斯拉Model 3 评测:::比亚迪汉EV 评测"
- 输入:"2025年世界杯举办地"
- 输出:"2025年世界杯举办地"
🔑总结:
输出的时候把历史问题,作为参考一同输入,这样便轻松解决联网搜索记忆问题了