组件描述
DuckDuckGo 搜索组件的工作原理
DuckDuckGoSearch 组件概览
DuckDuckGoSearch 组件让您的 AI 工作流能够使用 DuckDuckGo 搜索引擎进行实时网页搜索。它接受用户自定义的搜索查询,并返回相关网页结果,包括 URL 和其内容,是知识检索、研究任务或为大语言模型(LLM)补充最新互联网信息的强大工具。
该组件的功能
- 根据提供的关键词(查询)在 DuckDuckGo 上执行搜索。
- 检索可配置数量的结果(默认:3)。
- 支持按地区、安全搜索等级和时间段筛选结果。
- 结果可作为结构化 URL 记录和纯文本输出,适合后续自动处理或展示。
- 可作为独立工具使用,也可集成到基于 agent 的工作流中。
输入项
| Name | Description | Type | Required | Default | Advanced |
|---|---|---|---|---|---|
| Input Keywords | 要搜索的关键词或查询字符串。 | String | Yes | (empty) | No |
| Max Results | 返回结果的数量。 | Integer | Yes | 3 | No |
| Region | 用于本地化结果的地区/语言代码(如 us-en, uk-en, ru-ru)。 | String | Yes | us-en | Yes |
| SafeSearch | 设置安全搜索过滤级别:strict、moderate 或 off。 | String | Yes | moderate | Yes |
| Time Limit | 按时间限制结果:d(天)、w(周)、m(月)、y(年)。 | String | Yes | y | Yes |
| Tool Description | (可选)供 agent 理解如何使用该工具的描述。 | String | No | (empty) | Yes |
| Tool Name | (可选)在 agent 框架中引用该工具的别名。 | String | No | (empty) | Yes |
| Verbose | 执行时是否打印详细/调试输出。 | Boolean | No | false | Yes |
输出项
该组件提供三种输出格式:
URL 记录 (
UrlRecord)- 搜索结果的结构化列表,每项包含 URL 及其相关内容。适用于编程处理或与其他组件串联。
文本格式的 URL (
Message)- 将搜索结果以可读文本格式输出,适合直接展示或集成到消息驱动型流程中。
DuckDuckGo 搜索作为工具 (
Tool)- 整个搜索操作封装为工具对象,便于在 agent 或使用工具的 AI 系统中使用。
为什么要用这个组件?
- 获取最新信息: 让您的 AI 工作流查询最新网页信息,特别适合 LLM 或 AI agent 需要获取其训练集之外的最新数据时使用。
- 灵活配置: 支持地区、安全搜索、时间等多维度过滤,满足个性化需求。
- 多格式输出: 可根据下游任务选择最合适的输出格式,无论是自动化处理还是面向终端用户的展示。
- Agent 集成: 易于被 agent 框架引用和描述,适用于复杂的 AI 编排场景。
示例应用场景
- 答案增强: 用实时网页搜索结果丰富 LLM 的回答。
- 知识提取: 获取最新网页内容用于总结或分析。
- 研究自动化: 针对特定主题、领域或时间段自动收集信息。
该组件是需要外部知识和最新网页数据的工作流中,灵活且必不可少的基础模块。
常见问题
- DuckDuckGo 搜索组件的作用是什么?
它会根据您输入的关键词在 DuckDuckGo 上实时搜索,并返回相关的网址和其内容,使您的工作流能够获取最新的网页信息。
- 这个组件可以输出哪些类型的结果?
它可以将结果以结构化 URL 记录、纯文本消息,或作为 agent 流程的工具进行输出——为您使用搜索结果提供灵活性。
- 我可以控制搜索结果的数量或类型吗?
可以,您可以设置最大返回结果数量,调整地区和安全搜索设置,并定义结果的时间范围。
- 该组件适合用于构建知识增强型聊天机器人吗?
完全适合。它非常适合需要获取最新网页信息的聊天机器人和流程,通过实时搜索数据提升回答质量。
- DuckDuckGo 搜索会存储或缓存我的搜索内容吗?
不会,搜索是实时执行的,除非您选择保留,否则结果不会存储在当前流程之外。
