APISerpent 검색

다중 엔진 SERP API(Google, Bing, Yahoo, DuckDuckGo)를 지원하는 APISerpent를 LiteLLM /search에서 사용하는 방법이에요. deep 플래그로 Quick 검색과 Deep 검색 두 엔드포인트를 선택할 수 있어요.

출처: 문서

본문

API 키 받기: https://apiserpent.com

APISerpent은 두 엔드포인트가 있는 다중 엔진 SERP API(Google, Bing, Yahoo, DuckDuckGo)로, deep 플래그로 선택해요:

모드 엔드포인트 deep num 결과
Quick 검색 (기본) https://apiserpent.com/api/search/quick False 1–100
Deep 검색 https://apiserpent.com/api/search True 10–100

두 모드 모두 1천 건 검색당 $0.60로 과금돼요.

LiteLLM Python SDK

APISerpent Search

import os
from litellm import search

os.environ["APISERPENT_API_KEY"] = "your-api-key"

response = search(
    query="latest AI developments",
    search_provider="apiserpent",
    max_results=5
)

for result in response.results:
    print(f"{result.title}: {result.url}")
    print(f"Snippet: {result.snippet}\n")

Deep 검색

APISerpent Deep Search

from litellm import search

response = search(
    query="open source vector databases comparison",
    search_provider="apiserpent",
    deep=True,            # routes to /api/search
    max_results=20
)

LiteLLM AI Gateway

1. config.yaml 설정

config.yaml

model_list:
  - model_name: gpt-5.6-terra
    litellm_params:
      model: gpt-5.6-terra
      api_key: os.environ/OPENAI_API_KEY

search_tools:
  - search_tool_name: apiserpent-search
    litellm_params:
      search_provider: apiserpent
      api_key: os.environ/APISERPENT_API_KEY

2. 프록시 시작

litellm --config /path/to/config.yaml

# RUNNING on http://0.0.0.0:4000

3. 검색 엔드포인트 테스트

Test Request

curl http://0.0.0.0:4000/v1/search/apiserpent-search \
  -H "Authorization: Bearer ***" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "latest AI developments",
    "max_results": 5
  }'

통합 파라미터

APISerpent은 표준 Perplexity 통합 사양 파라미터를 지원해요: APISerpent Search with unified parameters

from litellm import search

response = search(
    query="machine learning research",
    search_provider="apiserpent",
    max_results=10,                              # -> num (clamped to the endpoint range)
    search_domain_filter=["arxiv.org"],          # -> site: filters appended to the query
    country="US"                                 # -> country (lowercased)
)
통합 사양 파라미터 APISerpent 파라미터로 매핑
max_results num (제한: quick 1–100, deep 10–100)
search_domain_filter q에 추가되는 site:
country country (소문자)
max_tokens_per_page 무시 (해당 없음)

제공자별 파라미터

APISerpent 특정 파라미터는 키워드 인수로 전달해요: APISerpent Search with Provider-specific Parameters

import os
from litellm import search

os.environ["APISERPENT_API_KEY"] = "your-api-key"

response = search(
    query="elektroauto reichweite",
    search_provider="apiserpent",
    max_results=10,
    # APISerpent-specific parameters
    engine="bing",          # 'google' (default), 'bing', 'yahoo', or 'ddg'
    country="de",           # localized results
    language="de",          # 2-letter ISO language code
    freshness="d",          # time filter: 'h', 'd', '7d', 'w', 'm', 'y'
    safe="strict",          # SafeSearch: 'off', 'moderate', or 'strict'
    pages=2                 # pages to scrape (1-10)
)
파라미터 타입 설명
engine string google(기본), bing, yahoo, 또는 ddg
country string 지역화된 결과용 국가 코드 (기본 us)
language string 2글자 ISO 언어 코드 (예: en, es, de)
freshness string 시간 필터: h, d, 7d, w, m, y
safe string SafeSearch: off, moderate, 또는 strict
pages integer 스크래핑할 페이지 수 (1–10)
format string full(기본) 또는 simple
pixel_position boolean 픽셀 좌표 포함 (유료 티어만)

num은 유효 범위로 제한되고(quick 검색 1–100, deep 검색 10–100), pages는 1–10이어야 해요. 범위를 벗어난 값은 ValueError를 일으켜요.

응답 참고 사항

APISerpent의 full 형식 응답은 results.organic 아래에 결과를 중첩해요. LiteLLM 어댑터는 각 organic 결과의 title, url, snippet을 통합 SearchResponse 형태로 매핑해요.

더 알아보기 (Learn more)