Məzmuna keç
Veb axtarışı

Veb axtarışı

web_search: true təyin edin və model cavabını canlı nəticələrlə əsaslandırsın.

POST https://api.shannon-ai.com/v1/chat/completions

Cavab iki əlavəsi olan adi çat tamamlanmasıdır. Cavab axtarış nəticələrinə kvadrat mötərizədə ədədlərlə işarə edir, sources hər ədədin nəyi ifadə etdiyini deyir, annotations isə hər birinin harada istinad edildiyini göstərir:

200 JSON
{
  "id": "chatcmpl-3e5a7c9b1d2f4a6c8e0b2d4f6a8c1e3b",
  "object": "chat.completion",
  "created": 1791590400,
  "model": "shannon-3",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Saturday in Lisbon is forecast to be sunny with a high near 24 °C [1]. Sunday turns cloudy, with a chance of light rain in the afternoon [2].",
        "reasoning_content": null,
        "annotations": [
          {
            "type": "url_citation",
            "url_citation": {
              "start_index": 66,
              "end_index": 69,
              "url": "https://weather.example/lisbon/weekend",
              "title": "Lisbon weather: weekend outlook"
            }
          },
          {
            "type": "url_citation",
            "url_citation": {
              "start_index": 137,
              "end_index": 140,
              "url": "https://forecast.example/pt/lisbon/sunday",
              "title": "Sunday forecast for Lisbon"
            }
          }
        ]
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 2874,
    "completion_tokens": 41,
    "total_tokens": 2915
  },
  "sources": [
    {
      "index": 1,
      "title": "Lisbon weather: weekend outlook",
      "url": "https://weather.example/lisbon/weekend"
    },
    {
      "index": 2,
      "title": "Sunday forecast for Lisbon",
      "url": "https://forecast.example/pt/lisbon/sunday"
    },
    {
      "index": 3,
      "title": "Portugal: the week ahead",
      "url": "https://news.example/portugal/weather-week"
    }
  ]
}

Axtarışı açmaq

Axtarış sorğunun sahəsidir, standart olaraq söndürülüb. Sorğu onu göndərmədikcə heç nə axtarılmır.

Sahə Tip Defolt Təsvir Tətbiq edən
web_search boolean false true bu sorğu üçün veb axtarışı işlədir və cavab verməzdən əvvəl nəticələri modelə verir. shannon-coder-1 istisna olmaqla hər Shannon modeli
Endpoint Veb axtarışı Necə
/v1/chat/completions Bəli Sorğu gövdəsində "web_search": true.
/v1/messages Bəli Sorğu gövdəsində "web_search": true.
/v1/responses — Bu endpoint yalnız modeldən cavab verir. Axtarışlı cavab üçün yuxarıdakı ikisindən birini istifadə edin.

/v1/messages-də sahə gövdənin yuxarı səviyyəsində, model və messages-in yanında durur:

Sorğu gövdəsi
{
  "model": "shannon-3",
  "web_search": true,
  "messages": [
    {
      "role": "user",
      "content": "What is the weather forecast for Lisbon this weekend?"
    }
  ]
}

Axtarışlı sorğu nə edir

  • API son user mesajı üçün vebdə axtarır. Söhbətin əvvəlki növbələri axtarışa kontekst verir.
  • Axtarış web_search: true göndərən hər sorğuda işləyir. Axtarıb-axtarmamağı model seçmir.
  • Nəticələr modelin qarşısına nömrələnmiş mənbələr kimi qoyulur və model cavabını onlardan yazır.
  • Cavab axtarış bitdikdə başlayır. Axınlı sorğu o vaxta qədər nə başlıq, nə hadisə, heç nə göndərmir, ona görə ilk chunk-dan əvvəl daha uzun gözləməyə hazır olun.

Cavabda nə var

  • Cavab öz endpoint-inin adi formasına malikdir. Cavab choices[0].message.content-dədir (/v1/messages-də text bloku).
  • Mətn dəstəklədiyi ifadələrdən sonra [1] və [2] kimi işarələr daşıya bilər. Hər ədəd modelin oxuduğu nəticələrdən birini ifadə edir.
  • sources həmin nəticələri adlandırır: modelə verilən hər nəticə üçün bir qeyd, index, title və url ilə. [1] işarəsi index 1 olan qeyddir. Cavabın istinad etmədiyi nəticələr də siyahıdadır.
  • /v1/chat/completions-da mesajda OpenAI formasında annotations də var: işarənin adlandırdığı hər mənbə üçün bir url_citation, url, title, həmçinin start_index və end_index ilə; bunlar işarənin content daxilindəki mövqeyidir, simvollarla sayılır (son daxil deyil).
  • Axında sources son chunk ilə gəlir, /v1/messages-də isə message_delta hadisəsi ilə. Annotasiyalar son chunk-dan dərhal əvvəlki bir chunk-da delta.annotations kimi gəlir.
  • sources yalnız bu sorğunun axtarışı nəsə tapdıqda olur. Onsuz cavab axtarış nəticələri olmadan yazılıb.

Axtarışlar necə sayılır

Hər plana gündə müəyyən sayda axtarış daxildir:

Plan Gündə axtarış
Pulsuz 3
Plyus 30
Standard 50
Peşəkar 60
  • Axtarışı nəticə tapan sorğu günün limitindən bir axtarış istifadə edir. Heç nə tapmayan axtarış heç birini istifadə etmir.
  • Çat və API açarın sahibi olan hesabın limitini bölüşür.
  • Say hər gün 00:00 UTC-də yenidən başlayır.
  • Axtarış nəticələri sorğunun giriş tokenləridir və promptun qalan hissəsi ilə birlikdə hesablanır.

Planları müqayisə edin

Günün axtarışları bitdikdə

Günün son axtarışından sonra web_search: true göndərən sorğu rədd edilmir. O, axtarışsız cavablandırılır: status 200-dür və cavabda sources yoxdur.

Axtarış öz aləti kimi

web_search: true burada təsvir olunan axtarışın yeganə açarıdır. tools-da təyin etdiyiniz və adını web_search qoyduğunuz funksiya öz alətlərinizdən biridir: model çağırış qaytarır, kodunuz isə axtarışı icra edir və nəticəni geri göndərir.

Digər platformaların axtarış alət tipləri, məsələn /v1/messages-də web_search_20250305 və ya /v1/responses-da {"type": "web_search"}, burada axtarışı başlatmır.

Xətalar

Veb axtarışı status kodu və xəta tipi əlavə etmir. Heç nə tapmayan axtarış və ya axtarışı qalmayan gün axtarış nəticələri olmadan normal cavab verir. Hər digər xəta axtarışsız sorğu ilə eynidir. Xəta idarəetməsi