Langsung ke konten

Pencarian web

POST /v1/search mencari di web dan mengembalikan hasil berperingkat beserta teks relevan yang sudah diekstrak dari setiap halaman. Gunakan untuk memberi model informasi terkini: cari dulu, lalu kirim cuplikan ke model teks bersama pertanyaannya. Model yang digunakan adalah perplexity-search dan perplexity-search-fast, ditagihkan per permintaan.

curl https://api.inferray.com/v1/search \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "perplexity-search",
    "query": "latest open-weight language model releases",
    "max_results": 5
  }'
{
  "id": "...",
  "results": [
    {
      "title": "...",
      "url": "https://...",
      "snippet": "Extracted text from the page...",
      "date": "2026-10-28",
      "last_updated": "2026-10-30"
    }
  ]
}

Respons berupa daftar sumber, bukan jawaban tertulis.

Parameter

ParameterFungsinya
queryWajib. Berupa string, atau hingga lima kueri terkait yang dicari secara terpisah.
modelperplexity-search (default) atau perplexity-search-fast. search_type: "fast" juga memilih model cepat.
max_resultsJumlah hasil yang dikembalikan. Defaultnya 10.
max_tokens, max_tokens_per_pageJumlah total teks yang diekstrak untuk dikembalikan dan per hasil.
search_domain_filterDomain yang disertakan, atau dikecualikan dengan awalan - (["-reddit.com"]).
search_recency_filterhour, day, week, month atau year.
search_after_date_filter, search_before_date_filterBatas tanggal publikasi, dalam format MM/DD/YYYY.
search_language_filterKode bahasa, seperti ["en", "de"].
countryKode negara dua huruf untuk melokalkan hasil.

Menggunakan hasil untuk model

const search = await fetch("https://api.inferray.com/v1/search", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.INFERRAY_API_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({ query: question, max_results: 5 }),
}).then((response) => response.json());

const sources = search.results.map((r, i) => `[${i + 1}] ${r.title} (${r.url})\n${r.snippet}`).join("\n\n");

const answer = await client.chat.completions.create({
  model: "gpt-5.5",
  messages: [
    { role: "system", content: "Answer from the sources and cite them by number." },
    { role: "user", content: `${sources}\n\nQuestion: ${question}` },
  ],
});