Dify searXNG搜索插件使用-语雀

dify内置多种搜索插件,包括谷歌、bing、博查等等,但这些都是收费的(或者有一定的免费额度)。想要免费使用搜索可以尝试searxng,本地运行脚本,安全可靠。

SearXNG 是一个分布式的元搜索引擎,用户可以通过它在多个搜索引擎中同时查询,而不会暴露自己的隐私。它是对原始 Searx 项目的分支,作为开源项目,可以本地部署。

SearXNG可以直接抓取本地搜索引擎的网页实现搜索,也可以使用Google或者bing等官方API。本地免费的基本上够用了,但稳定性差一些,要想稳定使用也可以使用官方API,或者直接在dify中使用Google或bing搜索插件。

Dify中安装使用插件

找到 searXNG 插件,导入工作流。第一次导入需要授权。

来到本地克隆的dify文件夹下,执行如下命令:

docker run --rm -d -p 8081:8080 -v "${PWD}/api/core/tools/provider/builtin/searxng/docker:/etc/searxng" searxng/searxng

第一次执行该命令会将searXNG仓库拉取到本地,等待配置,成功后会在docker中看到新启动的searXNG线程。

此时回到dify界面中填入如下内网网址:

http://host.docker.internal:8081

然后就可以使用搜索了。

一个小问题

默认情况下 searXNG 插件的输出会放在json标签下,text标签为空,这也就导致下一级插件是无法直接获得搜索结果的。

可以考虑加一个“模版转换”节点,直接把searXNG输出变成string的text类型就可以用了:

<think>嗯,用户想知道如何将DifySearXNG集成。首先,我需要了解这两个工具各自的功能。Dify是一个LLM应用开发平台,支持工作流编排和AI应用构建。而SearXNG是开源的元搜索引擎,可以聚合多个搜索引擎的结果,保护隐私。集成它们的目的可能是为了在Dify的工作流中调用SearXNG搜索功能,增强AI应用的数据获取能力。 接下来,我需要考虑集成的具体步骤。首先,用户需要部署好两个服务,确保它们都在运行。然后,可能需要通过API进行通信。SearXNG提供了搜索API,Dify可以通过HTTP请求调用这个API。需要查看SearXNG的文档,确认API的端点和使用方法,比如参数和认证方式。SearXNG默认可能不需要API密钥,但如果有自定义设置可能需要处理认证。 然后是Dify端的配置,用户需要在工作流中添加自定义工具,使用代码调用SearXNG的API,处理返回的数据。可能需要编写Python脚本,使用requests库发送GET请求,解析JSON响应,提取搜索结果。此外,错误处理也很重要,比如网络问题或API限制。 还要注意数据格式的兼容性,确保Dify能够处理SearXNG返回的结构化数据。可能需要转换数据格式,比如提取标题、链接和内容摘要。另外,隐私和合规性问题也要考虑,确保遵守数据使用政策。 用户可能遇到的问题包括API调用失败、数据解析错误或配置不正确。需要建议他们检查网络连接、验证API端点是否正确、查看日志排查问题。同时,参考现有的集成案例或社区讨论可能会有帮助。 最后,生成相关问题时要涵盖集成步骤、API调用方法、数据处理、错误排查以及实际应用场景,这样用户能全面了解整个集成过程。</think>### 如何将DifySearXNG集成? 将DifySearXNG集成可以通过以下步骤实现: 1. **理解核心功能** - **Dify**: 低代码LLM应用开发平台,支持通过API/工作流集成外部工具[^1] - **SearXNG**: 开源元搜索引擎,提供可定制的搜索API接口[^2] 2. **部署准备** ```bash # 示例:SearXNG基础部署 docker run -d -p 8080:8080 --name searxng searxng/searxng ``` 3. **API集成** -Dify中创建自定义工具,调用SearXNG搜索API: ```python import requests def searxng_search(query: str): params = { "q": query, "format": "json" } response = requests.get("http://localhost:8080/search", params=params) return response.json()[:3] # 返回前3个结果 ``` 4. **工作流编排** 在Dify中配置以下逻辑流: ``` 用户输入 → 调用SearXNG工具 → LLM处理结果 → 输出结构化响应 ``` 5. **安全配置** 建议通过反向代理添加认证层: ```nginx location /search { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; proxy_pass http://localhost:8080; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值