Bez KYC — bez dowodu, bez selfie, bez dokumentów. Płać kryptowalutą: BTC, USDT, USDC, ETH, SOL, LTC
Język: Polski
Pobierz klucz API

Przypadek użycia · agenci AI · nazwa narzędzia web_search

Narzędzie wyszukiwania internetowego dla agentów AI, które zwraca tekst strony

Agent, który potrafi wyszukiwać, ale nie czytać, zgaduje na podstawie snippetów. Daj mu jedno narzędzie, które robi jedno i drugie: przeszukuje internet na żywo i zwraca pierwsze strony jako czysty Markdown, ponumerowane, żeby model mógł je cytować.

Ostatnia aktualizacja: · 7 min czytania

Szybka odpowiedź

Jak dać agentowi AI narzędzie wyszukiwania internetowego, które zwraca treść strony?

Opakuj web search API jako narzędzie, które przyjmuje zapytanie i zwraca numerowane źródła wraz z tekstem ich stron. LLMWebSearch robi to w jednym zapytaniu: uszeregowane wyniki z bieżącego wyszukiwania, z pierwszymi 3 stronami odczytanymi jako Markdown, za jeden kredyt. Ceny zaczynają się od 9,25 USD za 5 000 wyszukiwań i spadają do 1,20 USD/1K wyszukiwań. Bez KYC; płatność kryptowalutą.

LLMWebSearch jako narzędzie agenta

Narzędzieweb_search(query, recent) wywołujący POST https://llmwebsearch.com/api/v1/search
ZwracaDo 20 uszeregowanych wyników; pierwsze 3 z tekstem strony w Markdown
Kontrola długościmax_chars na stronę, read za liczbę stron, max_results za listę
KosztJeden kredyt opłaca jedno wyszukiwanie: do 20 wyników z rankingiem, przy czym strony z pierwszych 3 są odczytywane i zwracane jako Markdown. Odczyt od 4 do 10 stron to 2 kredyty. Wywołanie zakończone błędem nic nie kosztuje
FiltryWybierz kraj i język wyników, zakres czasu (ostatni dzień, tydzień, miesiąc lub rok), wyniki web lub news oraz domeny do uwzględnienia lub wykluczenia
Gotowe integracjeserwer MCP, OpenAI function calling, LangChain i LlamaIndex, n8n, OpenClaw

Dlaczego agent potrzebuje tekstu strony, a nie tylko snippetów?

Bo odpowiedź rzadko kryje się w snippecie. Strona wyników daje tytuł i jedną lub dwie linijki wybrane przez wyszukiwarkę. Liczba, data lub zasada, o którą zapytał Twój użytkownik, znajduje się niżej na stronie.

Agent, który widzi tylko snippety, ma dwie złe opcje. Może odpowiedzieć na podstawie fragmentu i ryzykować błąd albo wywołać drugie narzędzie, żeby pobrać każdą stronę. Druga opcja podwaja liczbę rund i definicji narzędzi.

Z LLMWebSearch pierwsze strony przychodzą już odczytane. Nawigacja, reklamy i banery cookies są usunięte, więc model wydaje swoje tokeny na treść. Pozostałe wyniki nadal zawierają swoje snippety, które pomagają modelowi zdecydować, czy szukać ponownie.

Jak zdefiniować narzędzie wyszukiwania?

Trzymaj schemat mały: jeden wymagany query i co najwyżej jeden lub dwa przełączniki. Modele wywołują proste narzędzia bardziej niezawodnie. Poniższy przykład udostępnia flagę recent, która mapuje się na time_range=month; wszystko inne jest ustalone w Twoim kodzie.

Funkcja zwraca zwykły tekst, nie JSON. Każde źródło zaczyna się od numeru, tytułu i URL, po których następuje jego Markdown. Taki układ sprawia, że cytowania typu [2] są dla modelu naturalne.

Jeśli Twój agent ma już narzędzie o nazwie web_search, jak Claude Code i OpenClaw, nadaj swojemu inną nazwę, np. search_web. Dwa narzędzia o jednej nazwie mylą model.

Python: narzędzie web_search do function calling w stylu OpenAI
import json
import os

import requests

API = "https://llmwebsearch.com/api/v1/search"
HEADERS = {"Authorization": "Bearer " + os.environ["LLMWEBSEARCH_API_KEY"]}

# Tool definition in the OpenAI function-calling format; most agent frameworks accept the same JSON schema.
WEB_SEARCH_TOOL = {
    "type": "function",
    "function": {
        "name": "web_search",
        "description": "Search the live web. Returns numbered sources; the first ones include the page text in Markdown.",
        "parameters": {
            "type": "object",
            "properties": {
                "query": {"type": "string", "description": "A short search query, 3 to 8 words"},
                "recent": {"type": "boolean", "description": "True to keep only results from the past month"},
            },
            "required": ["query"],
        },
    },
}


def web_search(query, recent=False, read=3, max_chars=4000):
    """Run one search (1 credit with read <= 3) and return compact text the model can cite."""
    body = {"q": query, "max_results": 5, "read": read, "max_chars": max_chars}
    if recent:
        body["time_range"] = "month"
    resp = requests.post(API, headers=HEADERS, json=body, timeout=60)
    resp.raise_for_status()
    lines = []
    for r in resp.json()["results"]:
        lines.append(f"[{r['position']}] {r['title']} — {r['url']}")
        if r.get("content_status") == "ok":
            lines.append(r["content"])
        else:
            lines.append(r.get("snippet", ""))
        lines.append("")
    return "\n".join(lines)


def run_tool_call(call):
    """Execute a tool call returned by the model and give back the text for the tool message."""
    args = json.loads(call["function"]["arguments"])
    return web_search(args["query"], recent=args.get("recent", False))

Kiedy agent powinien szukać i jak często?

Szukaj, gdy odpowiedź zależy od faktów, które się zmieniają lub których model nie może znać. Ceny, wersje, przepisy, harmonogramy i ostatnie wydarzenia się kwalifikują. Definicje i stabilna wiedza zwykle nie.

Zapisz tę regułę w system prompt i dodaj budżet. Pomagają trzy nawyki:

  • Planuj przed wyszukiwaniem. Poproś model, żeby najpierw zapisał swoje zapytania. Dwa precyzyjne zapytania biją pięć niejasnych.
  • Ogranicz liczbę wywołań. Pozwól na przykład na cztery wyszukiwania na turę użytkownika. Podnoś limit tylko przy zadaniach badawczych.
  • Zatrzymaj się, gdy źródła się zgadzają. Jeśli trzy niezależne strony mówią to samo, agent może odpowiedzieć.

Jak utrzymać okno kontekstu pod kontrolą?

Trzy parametry decydują, ile tekstu trafia do modelu. read ustala, ile stron jest czytanych, od 0 do 10. max_chars ogranicza każdą stronę, od 500 do 50 000 znaków. max_results ustala, ile wyników jest wymienionych, od 1 do 20.

Dla agenta czatowego read=3 z max_chars=4000 zwraca około 12 000 znaków tekstu strony na wyszukiwanie. To zostawia miejsce na kilka wyszukiwań w jednej rozmowie. Przy zadaniu badawczym, które streszcza na bieżąco, dłuższe strony są w porządku.

Pole word_count mówi, jak długa była pełna strona przed obcięciem. Agent może użyć tej informacji, żeby zdecydować, czy pobrać więcej przez endpoint extract.

Co się dzieje, gdy strona nie może zostać odczytana?

Wynik nadal wraca, z tytułem, URL i snippetem, ale bez treści. Pole content_status mówi dlaczego.

  • blocked_by_robots: robots.txt strony nie pozwala naszemu czytnikowi.
  • blocked_by_site_policy: Witryna, która ustawia Content-Signal: ai-input=no w swoim robots.txt, trzyma treść swoich stron poza treścią Twoich wyników.
  • target_refused: strona odpowiedziała odmową; jej status jest w target_status.
  • fetch_failed lub fetch_timeout: strona nie załadowała się na czas.

Gdy witryna odrzuca nasz czytnik, wynik wraca bez treści i ze statusem witryny: nigdy nie rozwiązujemy CAPTCHA, nie logujemy się na konta ani nie obchodzimy blokady czy paywalla. Powiedz agentowi, żeby użył snippetu lub innego źródła, gdy strona wraca pusta. Samo wyszukiwanie to nadal jeden kredyt, niezależnie od tego, co stało się z każdą stroną.

Dlaczego nie użyć narzędzia wyszukiwania wbudowanego w model?

Wbudowane narzędzia są wygodne, ale dają mniej kontroli. Na dzień 22 października 2026 narzędzie web_search OpenAI kosztuje $10 za 1000 wywołań plus treść wyszukiwania rozliczana jako tokeny wejściowe. Wyszukiwanie webowe Claude od Anthropic również kosztuje $10 za 1000 wyszukiwań plus koszty tokenów. Grounding Gemini 3 obejmuje 5000 darmowych wyszukiwań miesięcznie w płatnym planie, potem kosztuje $14 za 1000.

Te narzędzia zwracają głównie napisaną odpowiedź z cytowaniami, a nie surowe strony. Wiążą też Twoje wyszukiwanie z jednym dostawcą modelu. Samodzielne narzędzie działa z dowolnym modelem i pozwala ustawić długość każdej strony. Porównanie wbudowanych narzędzi zawiera pełną tabelę.

Ile kosztuje uruchomienie agenta na LLMWebSearch?

Jeden kredyt za wyszukiwanie, gdy read wynosi 3 lub mniej. Asystent używany przez zespół, odpowiadający na 100 pytań dziennie po 4 wyszukiwania każde, wykonuje około 12 000 wyszukiwań miesięcznie. 25 000 wyszukiwań w cenie 41,25 USD pokrywa ten miesiąc i większość następnego.

Agent kodujący używany przez jednego dewelopera może wyszukiwać 20 razy dziennie, czyli około 600 razy miesięcznie. Wtedy 5 000 wyszukiwań w cenie 9,25 USD wystarcza na kilka miesięcy, ponieważ kredyty nigdy nie wygasają. Przewodnik po kosztach pokazuje rachunek dla większych obciążeń.

Który pakiet pasuje do agenta?

Prototypuj na 5 000 wyszukiwań; przejdź na 25 000 wyszukiwań lub 100 000 wyszukiwań, gdy agent jest w codziennym użyciu.

Wypróbuj

5 000 wyszukiwań

9,25 USD

1,85 USD/1K wyszukiwań

  • Podłącz to do jednego agenta
  • To samo API co w największym packu
  • Kredyty nigdy nie wygasają
Wybierz 5 000 wyszukiwań

Builder

25 000 wyszukiwań

41,25 USD

1,65 USD/1K wyszukiwań

  • Agent kodujący lub asystent badawczy
  • Gotowe do MCP, LangChain i n8n
  • Kredyty nigdy nie wygasają
Wybierz 25 000 wyszukiwań

Produkcja

100 000 wyszukiwań

145 USD

1,45 USD/1K wyszukiwań

  • Agenci w produkcji
  • Wyższy rate limit na życzenie
  • Kredyty nigdy nie wygasają
Wybierz 100 000 wyszukiwań

W każdym planie: 3 najlepsze strony odczytane jako Markdown · Filtry kraju, języka, czasu i domeny · Nieudane wywołania nie są naliczane · Kredyty nigdy nie wygasają

Agenci AI: najczęstsze pytania

Czy mogę dodać LLMWebSearch do Claude Desktop, Cursor lub Claude Code?

Tak, przez mały serwer MCP, który udostępnia wyszukiwanie jako narzędzie. Strona MCP zawiera kod i konfigurację klienta.

Czy narzędzie działa z modelami innymi niż OpenAI?

Tak. Powyższy schemat to zwykły JSON Schema, który Anthropic, Google, Mistral i frameworki open-source akceptują z drobnymi zmianami. Narzędzie wywołuje tylko nasz endpoint HTTPS.

Jak powstrzymać agenta przed zbyt częstym wyszukiwaniem?

Licz wywołania w swoim wrapperze narzędzia i zwracaj krótką wiadomość, gdy budżet się wyczerpie. Umieść budżet także w system prompt, żeby model planował z jego uwzględnieniem.

Czy tekst strony może dawać instrukcje mojemu agentowi?

Może próbować. Traktuj tekst strony jako dane: powiedz modelowi w system prompt, żeby ignorował instrukcje znalezione w źródłach, i nigdy nie pozwól, żeby źródło samo wywoływało akcje.

Źródła (3)
  1. Cennik API (narzędzie wyszukiwania webowego) — OpenAI (read 2026-10-22)
  2. Cennik (narzędzie wyszukiwania webowego) — Anthropic (read 2026-10-22)
  3. Cennik Gemini Developer API — Google (read 2026-10-22)

Od 1,20 USD/1K wyszukiwań · bez KYC

Pobierz klucz API