|

Tutorial Lengkap Pencarian Internet API Claude: Alat web_search Asli dan Perbandingan 3 Solusi Implementasi (2026)

Pengetahuan model memiliki tanggal kedaluwarsa, sementara masalah bisnis nyata sering kali membutuhkan data "saat ini". Claude secara resmi meluncurkan alat web_search bawaan pada tahun 2025, dan pada tahun 2026 ditingkatkan ke versi web_search_20260209 yang mendukung pemfilteran dinamis, mengubah pencarian internet API Claude dari "membangun sendiri yang rumit" menjadi "cukup satu baris parameter".

claude-api-web-search-guide-id 图示

Artikel ini mengulas secara sistematis solusi implementasi terbaru pencarian internet API Claude pada tahun 2026, dengan fokus pada parameter, penagihan, batasan, dan templat kode untuk alat web_search / web_fetch bawaan resmi, serta membandingkan tiga jalur: MCP pihak ketiga, RAG yang dibangun sendiri, dan solusi resmi. Di akhir artikel, kami memberikan contoh integrasi penerusan transparan berbasis APIYI apiyi.com, cukup ganti base_url dan api_key untuk menjalankan alur lengkap di lingkungan domestik.

Poin Utama Pencarian Internet API Claude

Sebelum mulai menulis kode, mari kita pahami konsepnya. Pencarian internet API Claude pada dasarnya adalah Server Tool yang disediakan secara resmi oleh Anthropic—artinya pencarian dilakukan oleh Anthropic di cloud, Anda tidak perlu menghubungkan API Google/Bing sendiri, dan tidak perlu men-deploy crawler.

Sekilas Tiga Solusi Implementasi Utama

Solusi Kompleksitas Integrasi Biaya Real-time Referensi & Kepatuhan
web_search Bawaan Resmi ★☆☆ (satu field tool) $10 / 1000 kali + token Kuat (Indeks real-time Anthropic) Kutipan otomatis
MCP Pihak Ketiga (misal: Brave/Tavily) ★★☆ (perlu server MCP) Penagihan API pencarian pihak ketiga Sedang-Kuat Perlu penanganan sendiri
Bangun Sendiri (Google CSE + pemanggilan tool) ★★★ (tool kustom + parsing) Kuota API Google Sedang Kelola sendiri sepenuhnya

🎯 Saran Pemilihan Solusi: Jika kebutuhan utama Anda adalah "membuat Claude mampu menjawab peristiwa terkini dan melengkapi data real-time", web_search bawaan resmi adalah solusi terbaik saat ini—tanpa pemeliharaan, kepatuhan kutipan terjamin, dan mencakup model utama seperti Sonnet 4.6 / Opus 4.7. Kami menyarankan untuk langsung mengakses melalui penerusan transparan APIYI apiyi.com, tanpa perlu VPN untuk menggunakan seluruh kemampuan antarmuka resmi Anthropic.

Matriks Model yang Mendukung Pencarian Internet API Claude

Tidak semua model Claude mendukung web_search. Versi baru web_search_20260209 memiliki persyaratan yang jelas untuk model:

Model Versi Dasar web_search_20250305 Versi Filter Dinamis web_search_20260209
Claude Opus 4.7
Claude Opus 4.6
Claude Sonnet 4.6
Claude Sonnet 4.5
Claude Haiku 4.5

Pemfilteran Dinamis (Dynamic Filtering) adalah peningkatan inti dari versi tahun 2026: Claude akan menggunakan alat eksekusi kode untuk memfilter hasil pencarian sebelum masuk ke jendela konteks, hanya menyisakan cuplikan yang relevan. Untuk pengambilan dokumen panjang dan tinjauan literatur teknis, ini dapat secara signifikan mengurangi konsumsi token.

Penjelasan Mendalam Alat Resmi Pencarian Web API Claude

Anthropic menyediakan dua alat pelengkap yang bekerja secara native. Memahami batasan keduanya adalah syarat utama agar Anda bisa memanfaatkan pencarian web API Claude secara maksimal.

Pembagian Tugas antara web_search dan web_fetch

claude-api-web-search-guide-id 图示

Alat Kegunaan Input Output Penagihan
web_search Menemukan konten baru String kueri URL + Judul + Ringkasan $10 / 1000 kali
web_fetch Mengambil teks lengkap URL String URL Teks HTML/PDF lengkap Gratis (hanya hitung token)

🎯 Tips Arsitektur: Alur kerja Agent yang umum adalah "cari dulu, baru ambil" — web_search menemukan halaman kandidat, web_fetch mengambil teks lengkap dari halaman yang paling relevan. Jika pengguna sudah memberikan URL (misalnya "analisis artikel di example.com"), gunakan langsung web_fetch agar tidak membuang kuota pencarian. Di APIYI (apiyi.com), kedua alat ini sudah didukung secara transparan tanpa perlu konfigurasi tambahan.

Definisi Parameter Lengkap Alat web_search

Tabel berikut adalah penjelasan parameter JSON resmi, gunakan sesuai kebutuhan:

Parameter Tipe Wajib Default Penjelasan
type string Tetap sebagai web_search_20250305 atau web_search_20260209
name string Tetap sebagai web_search
max_uses integer Tanpa batas Jumlah pencarian maksimum per permintaan
allowed_domains string[] Hanya hasil dari domain ini (eksklusif dengan blocked)
blocked_domains string[] Blokir hasil dari domain ini
user_location object Lokasi perkiraan pengguna untuk pencarian lokal

Struktur bidang user_location:

{
  "type": "approximate",
  "city": "Jakarta",
  "region": "Jakarta",
  "country": "ID",
  "timezone": "Asia/Jakarta"
}

Penanganan Error Pencarian Web API Claude

Saat pencarian gagal, API Anthropic tetap mengembalikan HTTP 200, dengan informasi error yang disematkan dalam web_search_tool_result pada badan respons. Pastikan untuk mengidentifikasi kode error ini dalam kode klien Anda:

Kode Error Arti Saran Penanganan
too_many_requests Batas kecepatan tercapai Lakukan backoff dan coba lagi, kurangi konkurensi
max_uses_exceeded Melebihi batas max_uses Tingkatkan batas atau pecah permintaan
query_too_long String kueri terlalu panjang Potong atau tulis ulang kueri
invalid_input Format parameter salah Periksa struktur JSON
unavailable Error internal Anthropic Coba lagi setelah beberapa saat

⚠️ Tips Penagihan: Permintaan web_search yang error tidak akan dikenakan biaya. Namun, jika Anda sudah berhasil melakukan satu pencarian lalu gagal, panggilan sukses sebelumnya tetap akan dikenakan biaya $10 / 1000 kali. Disarankan untuk memeriksa rincian penggunaan di konsol APIYI (apiyi.com) untuk melacak konsumsi yang tidak wajar.

Memulai Cepat Pencarian Web API Claude

Mari kita jalankan alur lengkap dengan kode seminimal mungkin. Semua contoh menggunakan antarmuka penerusan transparan APIYI (apiyi.com) — Anda tidak perlu mengubah logika bisnis apa pun, cukup arahkan base_url ke node proksi dan ganti ANTHROPIC_API_KEY dengan kunci APIYI Anda.

Contoh cURL Minimalis

Permintaan pencarian web API Claude yang minimal dan bisa dijalankan:

curl https://vip.apiyi.com/v1/messages \
  -H "x-api-key: $APIYI_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "Ringkas dalam bahasa Indonesia model terbaru yang dirilis OpenAI pada April 2026"}
    ],
    "tools": [{
      "type": "web_search_20250305",
      "name": "web_search",
      "max_uses": 5
    }]
  }'

Struktur respons akan berisi tiga blok konten: teks keputusan Claude, server_tool_use (kueri yang dieksekusi), web_search_tool_result (daftar URL), dan teks jawaban akhir dengan citations.

Contoh Lengkap SDK Python (dengan web_fetch)

import anthropic

client = anthropic.Anthropic(
    base_url="https://vip.apiyi.com",
    api_key="sk-kunci-apiyi-anda",
)

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=4096,
    messages=[{
        "role": "user",
        "content": "Cari makalah tentang evaluasi AI Agent dalam sebulan terakhir, pilih satu yang paling relevan dan buat ringkasan detailnya"
    }],
    tools=[
        {
            "type": "web_search_20260209",
            "name": "web_search"
        },
        {
            "type": "web_fetch_20260209",
            "name": "web_fetch",
            "max_uses": 3,
            "citations": {"enabled": True}
        }
    ]
)

for block in response.content:
    if block.type == "text":
        print(block.text)
    elif block.type == "server_tool_use":
        print(f"[Pemanggilan Alat] {block.name}: {block.input}")

🎯 Tips Kode: Di atas menggunakan kombinasi filter dinamis web_search_20260209 + web_fetch_20260209, yang dipadukan dengan Claude Opus 4.7 untuk mengurangi konsumsi token secara signifikan pada skenario dokumen panjang. Jika hanya ingin tanya jawab real-time sederhana, gunakan model claude-sonnet-4-6 dengan web_search_20250305 dasar untuk biaya yang lebih murah. Semua panggilan melalui APIYI (apiyi.com) memiliki stabilitas yang sama dengan resmi.

Contoh TypeScript / Node.js

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  baseURL: "https://vip.apiyi.com",
  apiKey: process.env.APIYI_API_KEY,
});

const response = await client.messages.create({
  model: "claude-sonnet-4-6",
  max_tokens: 2048,
  messages: [
    { role: "user", content: "Bagaimana cuaca di Jakarta hari ini?" }
  ],
  tools: [{
    type: "web_search_20250305",
    name: "web_search",
    max_uses: 3,
    user_location: {
      type: "approximate",
      city: "Jakarta",
      region: "Jakarta",
      country: "ID",
      timezone: "Asia/Jakarta"
    }
  }]
});

console.log(response.content);

Penanganan Respons Streaming

Setelah mengaktifkan stream: true, proses pencarian akan didorong secara real-time melalui peristiwa SSE. Akan ada "jeda" selama eksekusi pencarian — ini karena Claude sedang menunggu layanan Anthropic menyelesaikan pencarian:

with client.messages.stream(
    model="claude-sonnet-4-6",
    max_tokens=2048,
    messages=[{"role": "user", "content": "Cari harga terbaru Claude 4.7"}],
    tools=[{"type": "web_search_20250305", "name": "web_search", "max_uses": 2}]
) as stream:
    for event in stream:
        if event.type == "content_block_start":
            block = event.content_block
            if block.type == "server_tool_use":
                print(f"\n[Sedang mencari] kueri akan segera dikembalikan secara streaming...")
            elif block.type == "web_search_tool_result":
                print(f"[Pencarian selesai] total {len(block.content)} hasil")
        elif event.type == "content_block_delta":
            if hasattr(event.delta, "text"):
                print(event.delta.text, end="", flush=True)

Perbandingan dan Pemilihan Solusi Pencarian Web untuk Claude API

Setelah memahami antarmuka resmi, mari kita kembali ke pengambilan keputusan pemilihan solusi. Sebenarnya ada tiga jalur yang bisa dipilih untuk pencarian web Claude API, masing-masing dengan skenario penggunaan yang berbeda.

claude-api-web-search-guide-id 图示

Solusi A: web_search Asli Resmi (Direkomendasikan)

Kelebihan:

  • Tanpa pemeliharaan: Tidak perlu membangun server sendiri, dikelola sepenuhnya oleh Anthropic.
  • Referensi otomatis: Setiap jawaban secara otomatis menyertakan citations, ramah kepatuhan.
  • Integrasi model: Claude memutuskan sendiri kapan harus mencari dan apa yang harus dicari.
  • Penagihan transparan: $10 / 1000 permintaan, terpadu dalam tagihan Anthropic.

Kekurangan:

  • Hanya mendukung sumber yang diindeks oleh Anthropic (tidak bisa mengganti mesin pencari).
  • Beberapa versi model terbatas (Haiku/Sonnet versi lama hanya mendukung versi dasar).

Skenario penggunaan: 90% Agent percakapan umum, asisten tanya jawab, dan tugas riset.

Solusi B: Layanan MCP Pihak Ketiga (Brave/Tavily/Serper, dll.)

Melalui Model Context Protocol, jalankan server MCP lokal atau jarak jauh untuk menyuntikkan kemampuan pencarian ke Claude:

# Contoh dengan Tavily MCP, perlu menjalankan npm install -g @tavily/mcp-server terlebih dahulu
claude mcp add tavily-search npx -- @tavily/mcp-server

Kelebihan:

  • Bebas mengganti backend pencarian (Brave fokus pada privasi, Tavily fokus pada keramahan LLM).
  • Dapat disesuaikan: Bisa melakukan pembersihan sekunder pada hasil, menambahkan metadata.
  • Didukung secara native oleh klien seperti Claude Code, Cursor, dll.

Kekurangan:

  • Perlu memelihara proses server MCP tambahan.
  • Hasil pencarian tidak secara otomatis menghasilkan citations yang sesuai dengan spesifikasi Anthropic.
  • Perlu mengelola kuota dan penagihan API pencarian pihak ketiga sendiri.

Skenario penggunaan: Anda sudah memiliki akun perusahaan Brave/Tavily, atau memiliki kebutuhan kustomisasi yang kuat pada backend pencarian.

Solusi C: Pemanggilan Alat Mandiri (Google CSE + Custom Tool)

Cara paling tradisional—mendefinisikan tool sendiri, memanggil Google Custom Search / Bing API di kode backend, dan memasukkan hasilnya kembali ke dalam messages:

tools = [{
    "name": "google_search",
    "description": "Cari di Google dan kembalikan N hasil teratas",
    "input_schema": {
        "type": "object",
        "properties": {
            "query": {"type": "string"}
        },
        "required": ["query"]
    }
}]

Kelebihan: Kendali penuh, bisa dihubungkan ke pencarian intranet perusahaan atau basis pengetahuan pribadi.

Kekurangan: Anda harus menanggung beban kerja desain petunjuk, pengurutan hasil, pembuatan referensi, dan percobaan ulang kesalahan. Selain itu, Claude tidak akan memanggilnya secara "otomatis"—perlu panduan eksplisit dalam system prompt.

Skenario penggunaan: Skenario tingkat perusahaan yang membutuhkan kepatuhan ketat, kustomisasi tinggi, dan integrasi sumber data pribadi.

Pohon Keputusan untuk Ketiga Solusi

Kebutuhan Anda Solusi yang Direkomendasikan
Ingin cepat berjalan, fungsi standar Solusi A web_search asli
Perlu mengganti backend pencarian (privasi/kepatuhan) Solusi B MCP pihak ketiga
Harus terhubung ke sumber data pribadi Solusi C Alat mandiri + RAG
Akses ke Anthropic dari Indonesia tidak stabil Solusi A + APIYI apiyi.com proksi transparan

🎯 Catatan khusus untuk pengembang di Indonesia: API resmi Anthropic seringkali tidak stabil jika diakses dari Indonesia dan memerlukan nomor telepon luar negeri untuk pendaftaran. Kami menyarankan untuk mengaksesnya melalui layanan proksi API APIYI (apiyi.com)—layanan ini meneruskan semua Server Tool Anthropic secara utuh (termasuk web_search / web_fetch / code_execution). Kode Anda tidak perlu diubah sama sekali, cukup ubah base_url menjadi https://vip.apiyi.com dan ganti api_key dengan kunci APIYI Anda.

Penggunaan Lanjutan Pencarian Web API Claude

Daftar Putih Domain: Melakukan "Pencarian Vertikal"

Perlu agar Claude hanya mencari di domain tertentu? Gunakan allowed_domains:

tools=[{
    "type": "web_search_20250305",
    "name": "web_search",
    "max_uses": 5,
    "allowed_domains": [
        "docs.python.org",
        "pypi.org",
        "github.com"
    ]
}]

Perhatikan beberapa batasan berikut:

  • allowed_domains dan blocked_domains tidak dapat digunakan bersamaan
  • Subdomain adalah pencocokan tepat: docs.example.com tidak akan mencakup api.example.com
  • Batasan domain tingkat permintaan harus kompatibel dengan konfigurasi tingkat organisasi, tidak dapat memperluas cakupan yang ditetapkan oleh admin organisasi

Mengaktifkan Referensi web_fetch

web_search mengaktifkan sitasi secara default, namun web_fetch perlu diaktifkan secara eksplisit:

{
    "type": "web_fetch_20250910",
    "name": "web_fetch",
    "max_uses": 5,
    "citations": {"enabled": True},
    "max_content_tokens": 50000
}

max_content_tokens digunakan untuk memotong dokumen yang terlalu besar agar tidak menghabiskan jendela konteks dalam satu pengambilan. Referensi ukuran:

Jenis Konten Ukuran Estimasi Token
Halaman web biasa 10 KB ~2.500
Halaman dokumen besar 100 KB ~25.000
PDF makalah penelitian 500 KB ~125.000

encrypted_content dalam Percakapan Multi-putaran

Setiap hasil yang dikembalikan oleh web_search membawa kolom encrypted_content. Dalam percakapan multi-putaran, jika Anda ingin Claude terus merujuk pada hasil pencarian sebelumnya, Anda harus mengirimkan kembali kolom ini apa adanya—jika tidak, putaran berikutnya akan kehilangan konteks referensi.

messages.append({
    "role": "assistant",
    "content": previous_response.content  # Simpan lengkap, termasuk encrypted_content
})
messages.append({
    "role": "user",
    "content": "Analisis lebih detail mengenai artikel ke-2 yang baru saja ditemukan"
})

🎯 Tips Teknis: Saat mengintegrasikan ke dalam kerangka kerja Agen (seperti LangChain, LlamaIndex), pastikan kerangka kerja tersebut meneruskan seluruh blok konten respons Claude—banyak kerangka kerja akan "membersihkan" kolom seperti server_tool_use, yang menyebabkan referensi gagal. Kami menyarankan untuk membangun langsung di atas SDK anthropic dan melakukan pemanggilan melalui APIYI apiyi.com agar perilakunya benar-benar konsisten dengan versi resmi.

Studi Kasus Praktis Pencarian Web API Claude

Setelah memahami teorinya, mari kita lihat kombinasi praktik terbaik untuk Pencarian Web API Claude dalam skenario bisnis nyata.

Skenario 1: Asisten Tanya Jawab Berita Real-time

Pengguna bertanya "Bagaimana kondisi pasar saham hari ini", jelas membutuhkan data real-time. Strategi konfigurasi:

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    system="Anda adalah asisten keuangan. Saat membahas harga pasar atau berita real-time, wajib menggunakan web_search. Jawaban harus menyertakan referensi.",
    messages=[{"role": "user", "content": "Berapa poin penutupan indeks Shanghai hari ini? Bagaimana kenaikan atau penurunannya?"}],
    tools=[{
        "type": "web_search_20250305",
        "name": "web_search",
        "max_uses": 3,
        "allowed_domains": ["sina.com.cn", "eastmoney.com", "163.com"],
        "user_location": {
            "type": "approximate",
            "country": "CN",
            "timezone": "Asia/Shanghai"
        }
    }]
)

Poin penting: Gunakan allowed_domains untuk mengunci situs keuangan otoritatif, dan gunakan user_location agar Claude memprioritaskan hasil dalam bahasa Mandarin.

Skenario 2: Peningkatan RAG Dokumentasi Teknis

Membuat Claude memprioritaskan pencarian dokumentasi resmi saat menjawab pertanyaan teknis:

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=4096,
    messages=[{
        "role": "user",
        "content": "Bagaimana cara mengimplementasikan keep-alive WebSocket di FastAPI? Berikan contoh lengkapnya"
    }],
    tools=[
        {
            "type": "web_search_20260209",
            "name": "web_search",
            "max_uses": 5,
            "allowed_domains": [
                "fastapi.tiangolo.com",
                "docs.python.org",
                "github.com",
                "stackoverflow.com"
            ]
        },
        {
            "type": "web_fetch_20260209",
            "name": "web_fetch",
            "max_uses": 3,
            "citations": {"enabled": True}
        }
    ]
)

Poin penting: Gunakan penyaringan dinamis web_search_20260209 untuk membuang HTML yang tidak relevan, lalu gunakan web_fetch untuk mengambil teks lengkap dokumentasi resmi yang paling relevan.

Skenario 3: Asisten Penelitian Akademik

Untuk skenario yang memerlukan referensi ketat dan analisis jendela konteks panjang, disarankan menggunakan Opus 4.7 + alat ganda:

claude-api-web-search-guide-id 图示

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=8192,
    messages=[{
        "role": "user",
        "content": "Cari makalah tahun 2026 tentang evaluasi keamanan Agen LLM, pilih 3 teratas untuk perbandingan komprehensif"
    }],
    tools=[
        {
            "type": "web_search_20260209",
            "name": "web_search",
            "max_uses": 8,
            "allowed_domains": ["arxiv.org", "openreview.net", "acm.org"]
        },
        {
            "type": "web_fetch_20260209",
            "name": "web_fetch",
            "max_uses": 5,
            "citations": {"enabled": True},
            "max_content_tokens": 80000
        }
    ]
)

🎯 Saran Berbasis Skenario: Setiap bisnis memiliki bobot yang berbeda untuk kualitas pencarian, kepatuhan referensi, dan biaya. Kami menyarankan untuk membuat kunci API secara terpisah untuk setiap skenario bisnis di APIYI apiyi.com, agar lebih mudah memisahkan data penagihan per skenario, memantau jumlah pencarian aktual, dan konsumsi token, daripada mencampur semua panggilan menjadi satu.

Praktik Terbaik Rekayasa untuk Pencarian Web Claude API

Menjalankan demo memang tidak sulit, namun membawa pencarian web Claude API ke lingkungan produksi memerlukan beberapa langkah tambahan agar stabil.

Praktik 1: Efisiensi Biaya dengan Prompt Caching

Meskipun definisi Server Tool terlihat singkat, namun saat digabungkan dengan system prompt, ini tetap menjadi biaya tetap yang cukup besar. Aktifkan prompt caching:

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=2048,
    system=[{
        "type": "text",
        "text": "Anda adalah asisten riset profesional...(500 kata system prompt di sini)",
        "cache_control": {"type": "ephemeral"}
    }],
    messages=[...],
    tools=[
        {
            "type": "web_search_20250305",
            "name": "web_search",
            "max_uses": 5,
            "cache_control": {"type": "ephemeral"}
        }
    ]
)

Hasil pengujian: Untuk permintaan berulang dalam waktu 5 menit, biaya token untuk bagian system + tools dapat ditekan hingga 90%.

Praktik 2: Respons Streaming untuk Menghindari Timeout

Satu eksekusi web_search mungkin memakan waktu 5-15 detik. Jika sistem hilir Anda (gateway, klien) memiliki batas waktu 30 detik, pastikan untuk mengaktifkan stream=True agar koneksi tetap aktif melalui heartbeat streaming.

Praktik 3: Konsistensi Multi-turn untuk encrypted_content

Dalam percakapan multi-turn, Claude mungkin merujuk pada hasil pencarian dari putaran sebelumnya. Anda wajib menyimpan seluruh array content dari pesan asisten sebelumnya dalam setiap permintaan, jangan hanya menyimpan bagian text-nya saja:

# ❌ Cara yang salah
messages.append({"role": "assistant", "content": response.content[-1].text})

# ✅ Cara yang benar
messages.append({"role": "assistant", "content": response.content})

Praktik 4: Strategi Limit Kecepatan dan Retry

Limit kecepatan web_search terpisah dari antarmuka pesan biasa. Disarankan untuk membungkus logika retry dengan exponential backoff di tingkat SDK:

Kode Error Strategi Retry Maksimal Retry
too_many_requests Exponential backoff (2s/4s/8s) 3
unavailable Delay tetap (5s) 2
max_uses_exceeded Jangan retry, tingkatkan max_uses
query_too_long Jangan retry, potong query

🎯 Saran untuk Produksi: Catat semua respons error web_search ke dalam sistem monitoring. Analisis persentase too_many_requests secara berkala—ini adalah metrik utama untuk mengevaluasi apakah kapasitas perlu ditambah. Saat menggunakan layanan proksi API APIYI (apiyi.com), Anda dapat langsung memantau tingkat keberhasilan permintaan dan rata-rata waktu respons di dasbor untuk mempermudah operasional.


FAQ Pencarian Web Claude API

Q1: Apakah layanan proksi APIYI mendukung web_search asli? Apakah perlu mengubah kode?

Ya, didukung dan tidak perlu mengubah kode. APIYI (apiyi.com) menggunakan arsitektur penerusan transparan, yang meneruskan semua Server Tool resmi Anthropic secara utuh. Anda hanya perlu mengubah base_url menjadi https://vip.apiyi.com dan mengganti api_key dengan kunci API dari APIYI. Kode yang sebelumnya memanggil API resmi akan berjalan tanpa perubahan satu baris pun—termasuk semua alat bawaan seperti web_search / web_fetch / code_execution.

Q2: Bagaimana perhitungan biaya web_search? Apakah $10/1000 kali mahal?

Setiap pencarian = $0,01, tidak peduli berapa banyak hasil yang dikembalikan, tetap dihitung satu kali. Pencarian yang gagal tidak dikenakan biaya. Perbandingan: Tavily $0,005/pencarian, Brave $0,006/pencarian, Google CSE $0,005/kueri (setelah kuota gratis habis). web_search asli memang sedikit lebih mahal, tetapi menghemat biaya rekayasa untuk pemeliharaan MCP server dan kepatuhan referensi, sehingga secara keseluruhan seringkali lebih hemat bagi tim kecil dan menengah.

Q3: Mengapa permintaan saya menghasilkan error max_uses_exceeded?

Claude mungkin memanggil web_search beberapa kali dalam satu putaran percakapan (karena ia memutuskan sendiri berapa kali harus mencari). Jika Anda menetapkan "max_uses": 1, namun pertanyaan tersebut memerlukan 3 kali pencarian untuk dijawab, error ini akan muncul. Disarankan memberikan anggaran 5-10 kali untuk pertanyaan kompleks, dan 1-2 kali untuk tanya jawab sederhana.

Q4: Apakah web_search bisa mencari halaman web berbahasa Indonesia?

Bisa. web_search didukung oleh indeks real-time Anthropic yang memiliki cakupan konten bahasa Indonesia yang baik (termasuk artikel, forum, dan situs berita lokal). Jika Anda ingin membatasi pencarian hanya pada situs berbahasa Indonesia, Anda bisa menggunakan daftar putih allowed_domains.

Q5: Konsumsi token sangat besar saat melakukan riset artikel panjang dengan web_search, bagaimana cara mengoptimalkannya?

Tiga arah optimasi:

  1. Gunakan web_search_20260209 versi filter dinamis (memerlukan Claude Opus/Sonnet 4.6+), yang secara otomatis membuang cuplikan yang tidak relevan.
  2. Gunakan parameter max_content_tokens pada web_fetch untuk membatasi batas penarikan per halaman.
  3. Aktifkan prompt caching untuk menyimpan definisi alat dan system prompt guna mengurangi biaya permintaan berulang.

Q6: Bisakah solusi pencarian MCP pihak ketiga digunakan bersamaan dengan web_search asli?

Bisa. Claude mendukung pendefinisian beberapa alat sekaligus, namun pastikan deskripsi alat ditulis dengan jelas perbedaannya—misalnya, deskripsikan tavily_search dari MCP sebagai "mencari makalah akademis" dan web_search asli sebagai "mencari halaman web umum". Claude akan memilih berdasarkan deskripsi tersebut. Namun, untuk mengurangi ambiguitas, kami menyarankan menggunakan satu alat pencarian untuk satu skenario.

Q7: Apa yang harus dilakukan jika pemanggilan Claude API web_search gagal di Indonesia?

Penyebab utamanya ada dua: koneksi langsung ke API Anthropic yang tidak stabil, dan backend Anthropic yang mungkin memblokir IP dari wilayah tertentu saat web_search dijalankan. Solusi paling langsung adalah menggunakan layanan proksi APIYI (apiyi.com)—semua permintaan web_search akan diteruskan melalui node luar negeri APIYI ke Anthropic, dan respons akan dikirim kembali, sehingga stabilitasnya setara dengan koneksi langsung dari luar negeri.

Ringkasan Solusi dan Saran Pemilihan Pencarian Web Claude API

Melihat kembali keseluruhan artikel, pencarian web Claude API pada tahun 2026 sudah sangat matang dan siap digunakan (out-of-the-box). Keputusan singkatnya:

80% proyek sudah cukup dengan web_search bawaan resmi—konfigurasinya mudah, referensinya patuh aturan, dan dikelola langsung oleh Anthropic. Untuk 20% sisanya yang memiliki kebutuhan kustomisasi tinggi, baru pertimbangkan MCP pihak ketiga atau alat yang dibangun sendiri.

Daftar Tindakan Implementasi

Jika Anda berencana mengintegrasikan pencarian web Claude API ke dalam proyek Anda hari ini:

  1. Pilih model: Gunakan claude-sonnet-4-6 untuk skenario umum (efisiensi biaya), dan claude-opus-4-7 untuk riset yang kompleks.
  2. Pilih versi alat: Prioritaskan web_search_20260209 (pemfilteran dinamis), untuk model lama gunakan web_search_20250305.
  3. Atur max_uses: 1-3 kali untuk tanya jawab sederhana, 5-10 kali untuk riset kompleks.
  4. Gunakan web_fetch: Jika butuh analisis teks lengkap, kombinasikan dengan web_fetch untuk mengekstrak halaman kandidat.
  5. Konfigurasi akses: Di Indonesia, gunakan layanan proksi API APIYI (apiyi.com) untuk penerusan transparan, tanpa perlu VPN dan tanpa mengubah kode.

🎯 Saran Akhir: Kunci dari pencarian web Claude API bukanlah "apakah bisa digunakan", melainkan "bagaimana menyeimbangkan kualitas hasil pencarian, biaya token, dan latensi respons". Kami sarankan untuk mencoba beberapa contoh kasus bisnis nyata di platform APIYI (apiyi.com) terlebih dahulu, hitung jumlah pencarian aktual dan konsumsi token dalam satu sesi percakapan, baru kemudian putuskan apakah perlu menerapkan optimasi lanjutan seperti prompt caching atau pemfilteran dinamis. Platform tersebut mendukung seluruh jajaran model Claude + Server Tool bawaan, sehingga memudahkan iterasi cepat.


Penulis: Tim Teknis APIYI | Untuk tutorial praktis Claude API lainnya, kunjungi help.apiyi.com

Similar Posts