LobeChat v1.70.0 带来了 R1 的联网功能,至此搜索差不多做完了

大前天写的 RFC: [RFC] 094 - 支持无 Tools Calling 能力模型联网 · lobehub/lobe-chat · Discussion #6810 · GitHub

发现在现有框架基础上实现还挺快的,昨天晚上已经发布可用了,升到 v1.70.0 即可。

演示 demo:

https://github.com/user-attachments/assets/42320206-7f2c-4f86-834f-7a830288249b

不过我目前的实现思路和其他产品还不太一样,是用了一个小模型做了前置意图判断,所以如果小模型支持链式工具调用(例如 gpt-4o-mini),那么也就能像 claude 3.7 sonnet 那样做多轮调用和搜索,最后再用 R1 来一轮总结。

所以在对话中也能做到大小模型协作,这对我们来说是给 LobeChat 开启了新的可能性,未来的想象空间还是很大的。


至此,整个 LobeChat 的联网搜索 feature 框架全部做完,历时整整 2 周(中间插入了一个 sonnet 3.7 的 Thinking 、 Token Usage 和 Context Caching 几个特性,应该拖慢了四五天)。

到目前为止,你希望大模型联网的话, LobeChat 可以提供:

模型服务商层面的联网功能

比如你希望使用 PPLX 、Gemini 等服务商内置联网特性:

目前我们几乎支持了市面上所有提供了联网能力的服务商:

  • Google Gemini
  • Perplexity
  • OpenRouter
  • 千问
  • Ai360
  • Minimax
  • Moonshot
  • Stepfun 阶跃星辰
  • 智谱
  • 混元
  • 百川
  • 文心一言

支持 Function Calling 模型的联网特性

通过 FC 来实现联网,这个联网特性中我们自己做了应用层能力的集成:

  1. SearXNG 搜索能力。这是我将本来属于 Cloud 付费特性的搜索插件完整开源了出来,在 Cloud 闭源跑了小半年以后,还是觉得让所有人都能用到,对我们来说更加重要,赚钱反而其次;
  2. 页面深度抓取的爬虫能力。也是将之前做的爬虫插件优化一版后内置到联网搜索功能中,到目前为止应该是到了一个比较满意的状态。

这两个特性结合喜欢用 tools 的模型(Claude 3.7 sonnet)效果基本上可以达到 Deep Research 水平,结合 Context Caching 降本,基本上已经替代我日常搜索的需求了。问个问题然后就把 sonnet 3.7 放在那跑就好。一个复杂 query 也就 0.2 刀左右,非常甜点。

不支持 Function Calling 模型的联网特性

就是本帖上面的内容了,不过我觉得这个实现应该也有优化的空间,也非常欢迎大家来这个帖子里反馈问题: Internet search support for full model like DeepSeek R1 | 联网搜索支持到全模型如 DeepSeek R1 · Issue #6843 · lobehub/lobe-chat · GitHub

这个联网特性下可能唯一还需要的就是一个「强制联网」的开关,但是不是要做这个就非常取决大家的反馈了。如果大小模型的联网在某些情况下非常不稳定,可能强制的程序化联网搜索还是有必要的。


最后,如果大家对我做的整个联网实现思路或者实现感兴趣,可以看看这个 RFC:

这是一个提纲挈领的 RFC,每一趴实现都有对应的细分 RFC 承接,希望能给大家带来一些启发 :wink:

126 个赞

太强啦 :two_hearts:

6 个赞

越来越好了

6 个赞

支持大佬,一直在用,希望越来越好

6 个赞

无敌,感谢佬 辛苦了

5 个赞

联网认准lobechat

3 个赞

为啥我用gemini-2.0-flash-exp时没法唤起搜索功能

2 个赞

很肝呀,佬~:+1:

3 个赞

顺便问一下佬友这个咋配置,翻了一下文档好像还没有更新相关内容?

1 个赞

文档还没加,本周会把所有和联网的文档完善掉。现在配置的话

SEARXNG_URL=https://xxxxx
3 个赞

gemini-2.0-flash-exp 官方就不支持,需要用gemini-2.0-flash

2 个赞

太强了!

2 个赞

大佬太强了!

2 个赞

大佬太强了!!!期待文档更新

2 个赞

用上了,这个思路相当奶思

1 个赞


输出到一半会卡住

1 个赞

Function Calling 功能列表

谢谢佬,但我更新后(v1.70.2)deepseek-r1 怎么问都无法触发联网,但带 fc 的模型又都是正常的,是我哪里设置得不对么? :tieba_087:

我看了下运行 logs,辅助模型选 sonnet 会出现错误:

[Error: aborted] { code: 'ECONNRESET' }
 ⨯ uncaughtException:  [Error: aborted] { code: 'ECONNRESET' }

选 gpt 4o mini 会出现错误:

Route: [openai] ProviderBizError: {
  message: 'Unrecognized request argument supplied: plugins',
  type: 'invalid_request_error',
  param: null,
  code: null
}

但是直接使用这个两个模型联网都是正常的。


再更新:辅助模型使用 Google 官方 Gemini 1.5 pro/ 2.0 flash 都可以正常联网,但仅有 searchWithSearXNG,没有网页抓取。此外使用 openai 官方 gpt 4o/4o-mini api,Anthropic 官方 claude sonnet 3.5/3.7 api 均无法触发联网搜索。openrouter 转发的 Gemini/gpt/claude 也无法触发联网。

太强啦 立马更新看看

太强了 :+1: