SearXNG 셀프호스팅

SearXNG에 관한 몇 가지 세부 사항

Page content

SearXNG는 Searx에서 분기(fork)된 무료 오픈소스 페더레이션 메타 검색 엔진입니다. GitHub의 SearXNG 프로젝트는 15,000개 이상의 스타를 보유하고 있습니다.

이것은 70개 이상의 다양한 검색 엔진 및 서비스에서 검색 결과를 집계하여 이를 단일 종합 목록으로 제시합니다.

이 글은 프로덕션 AI 시스템에 대한 데이터 인프라, 객체 저장소, 데이터베이스, 검색, 그리고 AI 데이터 아키텍처를 다루는 더 광범위한 AI 시스템용 데이터 인프라의 일부입니다.

Perplexica와 SearXNG가 어떻게 연동되는지 정말 좋아했습니다.

searxng 이 아름다운 PC 부품 이미지는 AI 모델 Flux 1 dev에 의해 제작되었습니다.

SearXNG의 주요 특징

SearXNG의 주요 특징에는 다음이 포함됩니다:

  1. 프라이버시 중심: SearXNG는 사용자 정보를 수집하지 않으며, 검색을 추적하거나 사용자 프로필을 생성하지 않습니다.

  2. 사용자 정의 가능: 사용자는 검색 설정, 테마, 그리고 사용할 검색 엔진을 개인화하여 선택할 수 있습니다.

  3. 셀프 호스팅 옵션: 로컬 네트워크나 개인 컴퓨터에 설치할 수 있어 검색 엔진 및 관련 데이터에 대한 완전한 통제를 할 수 있습니다.

  4. 오픈소스: 이 플랫폼은 협업 및 커뮤니티 주도 개발을 장려합니다.

  5. 광고 없는 경험: SearXNG는 광고나 추적 콘텐츠를 제공하지 않습니다.

  6. Tor 호환성: 더 강력한 익명성을 위해 검색 쿼리가 Tor 네트워크를 통해 라우팅될 수 있습니다.

SearXNG는 카테고리별 검색을 제공하여 사용자들이 결과를 “웹”, “이미지”, “비디오”, “뉴스"와 같은 표준 카테고리, 그리고 “소셜 미디어”, “음악”, “파일”, “IT”, “과학"과 같은 비표준 카테고리로 분류할 수 있게 합니다.

이 메타 검색 엔진은 검색 서비스 및 결과 페이지로 전송되는 요청에서 개인 데이터를 제거하여 사용자 프라이버시를 보장합니다. 공개 또는 비공개 인스턴스를 통해 접근할 수 있으며, 공개 인스턴스 목록은 searx.space에서 확인할 수 있습니다.

SearXNG 셀프 호스팅

SearXNG는 사용자의 서버 또는 개인 컴퓨터에 설치할 수 있는 무료 오픈소스 메타 검색 엔진입니다. SearXNG의 셀프 호스팅은 다음과 같은 몇 가지 장점을 제공합니다:

  1. 프라이버시 통제: 자신의 검색 데이터에 대한 완전한 통제를 유지하고, 이것이 수집되거나 공유되지 않도록 할 수 있습니다.
  2. 사용자 정의: 설정, 테마를 개인화하고 사용할 검색 엔진을 선택할 수 있습니다.
  3. 광고 없는 경험: SearXNG는 광고나 추적 콘텐츠를 제공하지 않습니다.

그러나 SearXNG를 셀프 호스팅할 때 고려해야 할 사항들이 있습니다:

  1. 프라이버시 트레이드오프: 셀프 호스팅 인스턴스의 유일한 사용자라면, 자신의 검색이 기반이 되는 검색 엔진들에 의해 더 쉽게 식별될 수 있습니다.
  2. 기술 지식: 셀프 호스팅 인스턴스를 설정하고 유지보수하는 데는 일부 기술적 역량이 필요합니다.
  3. 리소스 요구 사항: SearXNG 인스턴스를 실행하기 위해 서버 또는 컴퓨터가 필요합니다.

SearXNG를 셀프 호스팅하려면, 쉬운 설치 및 관리를 위해 Docker를 사용할 수 있습니다. 이 과정은 일반적으로 다음을 포함합니다:

  1. 서버 또는 컨테이너 환경 설정
  2. SearXNG Docker 저장소 클론
  3. 애플리케이션 구성
  4. Docker 컨테이너 실행

셀프 호스팅이 통제력과 사용자 정의 기능을 제공하지만, SearXNG를 셀프 호스팅하기 전에 프라이버시 함의와 기술적 요구 사항을 신중하게 평가하는 것이 중요합니다.

SearXNG 셀프 호스팅을 위한 기술적 요구 사항

SearXNG는 소형 싱글보드 컴퓨터부터 더 강력한 서버까지 다양한 하드웨어 구성에서 호스팅될 수 있습니다. SearXNG 호스팅을 위한 하드웨어 요구 사항은 비교적 modest합니다:

  1. 프로세서: 64비트 시스템이 권장됩니다. 소규모 사용에는 단일 코어로도 충분할 수 있습니다.

  2. RAM: 최소 512MB, 더 나은 성능을 위해 2GB 이상이 권장됩니다.

  3. 저장소: Docker 컨테이너는 약 300MB의 공간을 차지합니다. 사용량 및 로깅 요구 사항에 따라 추가 저장소가 필요할 수 있습니다.

  4. 네트워크: 안정적인 인터넷 연결이 필요하지만, 대역폭 요구 사항은 사용자 수에 따라 달라집니다.

이러한 사양은 소규모에서 중규모의 SearXNG 인스턴스를 지원할 수 있습니다. 예를 들어:

  • Raspberry Pi 4는 SearXNG를 원활하게 실행할 수 있습니다.
  • 일부 사용자는 1 vCPU 및 512MB RAM으로 구성된 가상 사설 서버(VPS)에서 SearXNG를 성공적으로 호스팅합니다.

그러나 실제 요구 사항은 다음과 같은 요인에 따라 달라질 수 있습니다:

  • 동시 접속 사용자 수
  • 검색 볼륨
  • 활성화된 기능 및 플러그인

더 큰 배포 환경이나 더 높은 성능을 원한다면 더 강력한 하드웨어를 고려해 볼 수 있습니다. 항상 인스턴스의 성능을 모니터링하고 필요에 따라 리소스를 조정하는 것이 좋은 관행입니다.

SearXNG 통합

SearXNG는 주로 프라이버시 중심의 메타 검색 엔진이지만, 홈 오토메이션 시스템과의 직접적인 통합 기능은 없습니다. SearXNG는 웹 검색을 위해 설계되었으며, 본질적으로 홈 오토메이션 생태계의 일부가 아닙니다.

SearXNG와 함께 Elasticsearch를 사용하는 분들을 위해, Elasticsearch 치트시트는 Elasticsearch 클러스터 관리를 위한 필수 명령어와 팁을 제공합니다.

그러나 홈 오토메이션과 함께 SearXNG를 사용하는 몇 가지 간접적인 방법이 있을 수 있습니다:

  1. API 통합: SearXNG는 결과를 JSON 형식으로 출력하도록 구성할 수 있으며, 이는 이론적으로 다른 애플리케이션이나 시스템에서 사용할 수 있습니다.

  2. 커스텀 애플리케이션: 개발자들은 SearXNG의 검색 기능을 활용하여 홈 오토메이션 시스템과 통합하는 커스텀 애플리케이션을 만들 수 있지만, 이는 상당한 개발 노력이 필요합니다.

  3. 정보 검색: SearXNG는 홈 오토메이션 시스템에 대한 정보나 문제 해결을 찾는 데 프라이버시를 존중하는 검색 도구로 사용할 수 있지만, 이는 자동화된 통합이 아닌 수동적인 과정이 될 것입니다.

SearXNG는 홈 오토메이션 도구로 설계되지 않았다는 점을 알아두는 것이 중요합니다. 포괄적인 홈 오토메이션 통합을 원한다면, 이 목적을 위해 특별히 설계된 플랫폼을 고려해 볼 수 있습니다. 예를 들어:

  • Home Assistant: 다양한 스마트 홈 기기 및 시스템을 통합할 수 있는 오픈소스 홈 오토메이션 플랫폼입니다.
  • Hubitat: Z-Wave, Zigbee 및 Wi-Fi 기기를 처리하여 상호 운용성 문제를 해결할 수 있는 허브입니다.
  • Apple HomeKit: Apple 기기를 사용하는 사용자를 위해 다양한 스마트 홈 제품 통합을 제공할 수 있습니다.

이 플랫폼들은 서로 다른 홈 오토메이션 시스템과 장치를 통합된 인터페이스 및 제어 시스템으로 결합하는 데 더 적합합니다.

Perplexica 배포의 일부로서의 SearXNG

SearXNG는 Perplexica의 일부로서 중요한 역할을 하며, Perplexica의 AI 강화 검색 기능을 구동하는 기반 검색 엔진으로 기능합니다. SearXNG가 Perplexica와 어떻게 통합되는지 다음과 같습니다:

  1. 검색 기반: SearXNG는 Perplexica의 기반 검색 엔진으로 기능하며, 70개 이상의 다양한 검색 엔진 및 서비스에서 결과를 집계합니다.

  2. 프라이버시 집중: Perplexica는 SearXNG의 프라이버시 우선 접근 방식을 활용하여 사용자 검색이 추적되거나 프로필화되지 않도록 보장합니다.

  3. 통합 과정: Perplexica를 설치할 때 SearXNG는 자동으로 설정에 포함됩니다. 사용자가 스탠드얼론 버전을 원하지 않는 한 SearXNG를 별도로 설치할 필요가 없습니다.

  4. 워크플로우: 사용자가 Perplexica에 쿼리를 제출하면 다음과 같은 과정이 발생합니다:

    • 자연어 쿼리가 언어 모델(예: Llama 3.1)을 사용하여 키워드로 변환됩니다.
    • 이 키워드들이 실제 검색을 위해 SearXNG로 전달됩니다.
    • SearXNG가 결과를 Perplexica로 반환합니다.
    • Perplexica가 결과를 형식화하여 사용자에게 제시합니다.
  5. 로컬 배포: Perplexica와 SearXNG는 모두 로컬에 설치할 수 있어, 사용자가 자신의 하드웨어에서 프라이버시 중심의 AI 검색 엔진을 실행할 수 있습니다.

  6. 사용자 정의: 사용자는 Perplexica 내에서 SearXNG를 구성할 수 있으며, 다른 도구 또는 애플리케이션과의 통합을 위한 JSON 형식 설정 등이 가능합니다.

SearXNG의 강력한 검색 기능과 AI 기반 기능을 결합함으로써, Perplexica는 Perplexity나 Google의 AI 검색과 같은 상업적 AI 검색 엔진의 포괄적이고 프라이버시를 존중하는 대안을 제공하고자 합니다.

SearXNG와 프라이버시

SearXNG는 여러 메커니즘을 통해 프라이버시를 보장합니다:

  1. 개인 데이터 제거: SearXNG는 다음 세 가지 방법으로 검색 요청에서 개인 정보를 제거합니다:

    • 검색 서비스로 전송되는 요청에서 개인 데이터 제거
    • 검색 서비스를 통해 서드파티 콘텐츠(예: 광고)를 전달하지 않음
    • 결과 페이지로 가는 요청에서 개인 데이터 제거
  2. 익명화: SearXNG는 모든 요청에 대해 랜덤 브라우저 프로필을 생성하며, 외부 검색 엔진에 쿠키를 전송하지 않습니다.

  3. IP 보호: 검색 엔진이 인식하는 IP 주소는 사용자의 것이 아니라 SearXNG 인스턴스의 것입니다. SearXNG는 추가적인 IP 보호를 위해 프록시 또는 Tor를 사용하도록 구성할 수 있습니다.

  4. 데이터 수집 없음: SearXNG는 개인 데이터를 수집하지 않아 사용자의 검색이 기밀 유지되도록 보장합니다.

  5. 광고 및 추적 없음: 대부분의 검색 서비스와 달리 SearXNG는 광고나 추적 콘텐츠를 제공하지 않아 개인 데이터가 서드파티로 전달되는 것을 방지합니다.

  6. 결과 페이지 프라이버시: 방문한 결과 페이지에는 참조 페이지와 검색 쿼리가 모두 숨겨집니다.

  7. 쿠키 없이 사용자 정의: 사용자는 쿠키에 의존하지 않고 설정을 개인화할 수 있어 프라이버시가 강화됩니다.

  8. 오픈소스 특성: 오픈소스인 덕분에 커뮤니티가 프라이버시 주장을 검토하고 검증할 수 있습니다.

이러한 조치들을 구현함으로써 SearXNG는 검색 엔진으로 전송되는 것이 쿼리, 선택된 언어, 그리고 필요한 기술적 매개변수만 있도록 프라이버시 중심의 검색 경험을 제공합니다.

유용한 링크

구독하기

시스템, 인프라, AI 엔지니어링에 관한 새 글을 받아보세요.