튜토리얼 카테고리 Skills 소개
ZH EN JA KO
스킬 플러그인

OpenClaw 웹 검색 스킬 설정 및 최적화

· 8 분 소요

개요

웹 검색은 AI 에이전트가 실시간 정보를 얻기 위한 핵심 기능입니다. OpenClaw의 web 내장 도구는 강력한 검색 기능을 제공하며, 다양한 검색 엔진 백엔드를 지원하고 브라우저 도구와 협업하여 심층 정보 추출을 수행할 수 있습니다. 이 글에서는 OpenClaw의 웹 검색 스킬을 설정하고 최적화하는 방법을 자세히 소개합니다.

Web 도구 아키텍처

OpenClaw의 web 도구는 7단계 도구 파이프라인의 "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

addDateFilterauto로 설정하면, AI 에이전트가 질문의 시의성 요구에 따라 자동으로 날짜 필터를 추가합니다. 예를 들어, "최신 기술 뉴스"는 검색 범위를 자동으로 최근 콘텐츠로 제한합니다.

다단계 검색

복잡한 질문의 경우 한 번의 검색으로는 충분하지 않습니다. OpenClaw은 AI 에이전트가 다단계 검색을 수행하도록 지원합니다. 먼저 광범위한 검색으로 전반적인 방향을 파악한 후, 초기 결과를 바탕으로 쿼리를 세분화하여 심층 검색을 수행합니다.

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

출처 다양성

정보 출처의 편향을 방지하기 위해 출처 다양성 요구사항을 설정할 수 있습니다:

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

브라우저 도구와의 협업

web 도구와 browser 도구는 상호 보완적입니다:

  • web 도구: 빠른 검색과 경량 콘텐츠 추출에 적합하며, JavaScript 렌더링이 필요하지 않습니다
  • browser 도구: 상호작용 조작이나 JavaScript 렌더링이 필요한 페이지에 적합합니다

AI 에이전트는 페이지 특성에 따라 자동으로 적합한 도구를 선택합니다. web 도구로 추출한 콘텐츠가 불완전한 경우(예: 싱글 페이지 애플리케이션), 에이전트가 브라우저 도구로 전환하여 완전한 렌더링과 추출을 수행합니다.

채널 적응

검색 결과는 각 채널에서 다르게 표시됩니다:

  • Discord: 임베드 메시지를 사용하여 제목, 요약 및 링크가 포함된 검색 결과 카드를 표시합니다
  • 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은 검색 도구의 사용 통계를 기록합니다. 여기에는 검색 횟수, 평균 응답 시간, 캐시 적중률 및 자주 사용되는 검색어가 포함됩니다. 이 데이터는 검색 도구의 사용 패턴을 이해하고 설정을 지속적으로 최적화하는 데 도움이 됩니다.

정리

웹 검색 스킬은 OpenClaw AI 에이전트가 인터넷 세계와 연결되는 창구입니다. 검색 엔진의 적절한 설정, 쿼리 전략 최적화, 캐시 및 보안 규칙 설정을 통해 AI 에이전트가 효율적이고 안전하게 실시간 정보를 얻어 사용자에게 정확하고 시의적절한 답변을 제공할 수 있습니다.

OpenClaw는 무료 오픈소스 개인 AI 어시스턴트로, WhatsApp, Telegram, Discord 등 다양한 플랫폼을 지원합니다