首页 教程 分类 Skills下载 关于
ZH EN JA KO
技能插件

OpenClaw网络搜索技能配置与优化

· 7 分钟

概述

网络搜索是 AI 智能体获取实时信息的关键能力。OpenClaw 的 web 内置工具提供了强大的搜索功能,支持多种搜索引擎后端,还能配合 browser 工具进行深度信息提取。本文将详细介绍如何配置和优化 OpenClaw 的网络搜索技能。

Web 工具架构

OpenClaw 的 web 工具是七阶段工具管线中"OpenClaw 内置工具"阶段注入的核心工具之一。它直接运行在 Pi SDK 嵌入层内,可以执行 HTTP 请求、调用搜索 API 和抓取网页内容。

与 browser 工具不同,web 工具不需要真正的浏览器实例,而是通过 HTTP 客户端直接发起请求,因此更加轻量和快速——非常适合高并发的搜索操作。

搜索引擎配置

Google Search API

tools:
  web:
    search:
      provider: google
      apiKey: ${GOOGLE_API_KEY}
      searchEngineId: ${GOOGLE_CX}
      defaultResultCount: 10
      safeSearch: moderate
      language: zh-CN
      region: CN

Bing Search API

tools:
  web:
    search:
      provider: bing
      apiKey: ${BING_API_KEY}
      defaultResultCount: 10
      market: zh-CN
      safeSearch: moderate

SearXNG(自托管)

对于注重隐私或需要完全控制搜索行为的场景,OpenClaw 支持连接自托管的 SearXNG 实例:

tools:
  web:
    search:
      provider: searxng
      endpoint: "http://localhost:8888/search"
      format: json
      engines:
        - google
        - bing
        - duckduckgo
      defaultResultCount: 10

搜索结果处理

结果格式化

搜索结果在呈现给 AI 智能体之前会经过格式化处理。每条结果包含标题、URL、摘要和来源信息。AI 智能体利用这些信息来判断哪些结果值得深入阅读。

内容提取

当 AI 智能体决定深入阅读某条搜索结果时,web 工具会获取目标页面并提取主要内容。提取过程包括:

  1. HTML 解析:解析页面 DOM 结构
  2. 内容识别:使用算法识别正文内容区域,过滤导航栏、广告、侧边栏等无关内容
  3. 格式转换:将 HTML 转换为干净的纯文本或 Markdown 格式
  4. 长度控制:截断过长的内容,同时保留最相关的部分
tools:
  web:
    extraction:
      method: readability
      maxContentLength: 5000
      includeImages: false
      includeLinks: true
      outputFormat: markdown

缓存策略

为了减少重复请求并提高响应速度,web 工具内置了多层缓存机制:

tools:
  web:
    cache:
      searchResults:
        enabled: true
        ttl: 3600
        maxEntries: 1000
      pageContent:
        enabled: true
        ttl: 7200
        maxSize: 100MB

搜索结果缓存的 TTL 通常设置得较短(1 小时),因为搜索结果可能频繁变化。页面内容缓存的 TTL 可以更长,因为页面内容变化相对较慢。

搜索质量优化

查询改写

在调用搜索之前,AI 智能体会自动改写用户的自然语言问题,提取关键词并组合成更有效的搜索查询。

tools:
  web:
    queryRewriting:
      enabled: true
      addDateFilter: auto
      expandAcronyms: true

addDateFilter 设置为 auto 时,AI 智能体会根据问题的时效性要求自动添加日期过滤器。例如,"最新科技新闻"会自动将搜索范围限制为近期内容。

多轮搜索

对于复杂问题,单次搜索往往不够。OpenClaw 支持 AI 智能体进行多轮搜索——先进行广泛搜索了解大致方向,然后根据初步结果细化查询进行深入搜索。

tools:
  web:
    multiRound:
      enabled: true
      maxRounds: 3
      maxTotalResults: 30

来源多样性

为了避免单一来源的信息偏差,可以配置来源多样性要求:

tools:
  web:
    diversity:
      minDomains: 3
      maxResultsPerDomain: 3

与 Browser 工具的协作

web 工具和 browser 工具互为补充:

  • Web 工具:适用于快速搜索和轻量级内容提取,不需要 JavaScript 渲染
  • Browser 工具:适用于需要交互操作或 JavaScript 渲染的页面

AI 智能体会根据页面特征自动选择合适的工具。当 web 工具提取的内容不完整时(如单页应用),智能体会切换到 browser 工具进行完整渲染和提取。

渠道适配

搜索结果在不同渠道中的展示方式有所不同:

  • Discord:使用 embed 消息展示搜索结果卡片,包含标题、摘要和链接
  • Telegram:使用 HTML 格式化,链接可直接预览
  • Slack:使用 Block Kit 构建结构化搜索结果
  • WhatsApp:纯文本格式,包含可点击链接

安全与合规

域名过滤

tools:
  web:
    security:
      blockedDomains:
        - "*.malware.com"
        - "phishing-site.example"
      allowedDomains: []  # 为空表示允许所有未被屏蔽的域名

内容过滤

搜索结果和提取的内容会经过内容安全检查,过滤不当内容。

速率限制

tools:
  web:
    rateLimit:
      searchesPerMinute: 30
      pagesPerMinute: 60
      perUser:
        searchesPerMinute: 5

监控与分析

OpenClaw 会记录搜索工具的使用统计数据,包括搜索次数、平均响应时间、缓存命中率和常见查询词。这些数据可以帮助你了解搜索工具的使用模式,持续优化配置。

总结

网络搜索技能是 AI 智能体通往互联网的窗口。通过合理配置搜索引擎、优化查询策略、设置缓存和安全规则,你可以让 AI 智能体高效、安全地获取实时信息,为用户提供准确及时的回答。

OpenClaw 是开源免费的个人AI助手,支持 WhatsApp、Telegram、Discord 等多平台接入