Peningkatan untuk setiap tingkat upaya Agent API
Tingkat upaya Perplexity Agent API kini berbiaya lebih rendah, dengan kualitas penelitian yang setara atau lebih baik, serta tingkat ultra baru untuk kedalaman.

Tingkat upaya di Perplexity Agent API memungkinkan pengembang memilih keseimbangan antara biaya, kecepatan, dan kedalaman penelitian untuk setiap tugas. Mulai hari ini, setiap tingkat upaya berbiaya lebih rendah per kueri, dengan kualitas penelitian yang lebih tinggi atau tetap sama. Tingkat ultra baru tersedia untuk penelitian yang paling luas dan komprehensif. Setiap permintaan yang memilih tingkat berdasarkan nama, seperti effort="fast", akan otomatis mendapatkan konfigurasi terbaru.
Membangun agen penelitian berarti memilih keseimbangan yang tepat antara biaya, kecepatan, dan kedalaman untuk setiap tugas. Tingkat upaya di Agent API mengambil keputusan tersebut untuk pengguna. Setiap tingkat adalah konfigurasi paket yang menentukan model, anggaran langkah, pengaturan pencarian, dan alat untuk jenis tugas tertentu. Perplexity mengevaluasi dan memperbarui setiap tingkat dari waktu ke waktu untuk memberikan penelitian terbaik dengan biaya yang sama atau lebih rendah dari biaya saat ini.
Peningkatan ini berasal dari dua jenis perubahan. Anggaran, penanganan konteks, dan ekstraksi menurunkan biaya setiap proses, sementara Skill, pemilihan model, dan agen paralel meningkatkan atau mempertahankan kualitas jawaban.
Performa medium meningkat dari 55% menjadi 77% pada BrowseComp dan DSQA, sementara biaya turun hampir 90%. BrowseComp dan DSQA adalah tolok ukur penelitian publik; WANDR adalah tolok ukur Perplexity untuk tugas penelitian panjang yang melibatkan banyak entitas. xhigh melakukan pekerjaan agentik seperti mengeksekusi kode di kotak pasir, mempertahankan loop penggunaan alat yang panjang, dan bekerja dengan banyak sumber sekaligus. xhigh mempertahankan skor WANDR-nya di 76,5% sambil berjalan dengan biaya sekitar 25% dari konfigurasi Agustus 2026.
Biaya penelitian
Penelitian mendalam untuk satu permintaan dapat menjalankan puluhan pencarian, membaca ratusan halaman, dan memeriksa bukti sebelum memberikan jawaban. Setiap tindakan tersebut menambah token ke konteks dan dolar ke tagihan. Tanpa batasan, agen terus mengambil tindakan yang menaikkan biaya dan memenuhi konteks tanpa memperbaiki jawaban. Lima faktor mendorong sebagian besar biaya tersebut:
- Alokasi anggaran. Agen dengan anggaran tetap dapat kehabisan langkah dan mengakhiri prosesnya lebih awal sebelum menyelesaikan tugasnya. Sebaliknya, agen tanpa anggaran tetap dapat terus berjalan dan menimbulkan biaya tanpa memperbaiki jawaban akhir.
- Beban konteks. Hasil pencarian dan halaman yang diambil membawa bukti, tetapi jika tidak dikendalikan, jendela konteks dapat dengan cepat dipenuhi informasi yang tidak relevan. Jendela konteks membawa biaya dari satu langkah ke langkah berikutnya, dan jendela yang terlalu penuh dapat menurunkan performa agen.
- Pemilihan alur kerja. Tugas yang berbeda membutuhkan pendekatan yang berbeda. Pencarian satu fakta, pertanyaan multi-hop, dan survei sumber yang luas masing-masing memerlukan alur kerja yang berbeda. Jika dibiarkan memilih sendiri, model sering memilih alur kerja yang tidak efisien. Merinci setiap strategi yang tersedia dalam prompt agen tidak menyelesaikan masalah ini. Instruksi tambahan tersebut terbawa sebagai token di setiap langkah, dan seiring waktu model makin kurang andal dalam mengikuti setiap instruksi.
- Pemilihan model. Beralih ke model yang lebih besar belum tentu memberikan peningkatan performa yang sepadan dengan biaya tambahannya. Model baru hadir dengan berita utama dan skor tolok ukur yang dipublikasikan. Namun, peningkatan pada tolok ukur bisa saja terkontaminasi atau mencerminkan overfitting model. Tanpa evaluasi pada tugas nyata, perubahan model dapat menaikkan biaya tanpa meningkatkan kualitas.
- Penskalaan multi-agen. Satu agen hanya dapat mencari, membaca, dan bernalar melalui sejumlah sumber yang terbatas dalam setiap proses. Menjalankan beberapa agen secara paralel meningkatkan kualitas pada tugas yang paling menuntut, tetapi juga meningkatkan biaya dan menambah kompleksitas jika tidak ditangani dengan benar.
Mengatasi setiap tantangan ini menurunkan biaya untuk setiap tingkat upaya tanpa menurunkan performa.
Mengendalikan anggaran penelitian
Setiap tingkat upaya memiliki anggaran penelitian tetap dengan tiga komponen:
- Batas langkah: jumlah giliran yang dapat diambil agen
- Panggilan alat: batas jumlah total panggilan alat dalam satu permintaan. Satu langkah dapat mengeluarkan beberapa panggilan ke beberapa alat sekaligus, sehingga batas langkah saja tidak mengendalikan berapa banyak tindakan yang terjadi dalam satu langkah.
- Pengingat anggaran: pemberitahuan berkala tentang berapa banyak langkah yang tersisa, sehingga agen dapat menetapkan prioritas dan menyisakan ruang untuk menulis jawaban alih-alih kehabisan anggaran di tengah tugas.
Anggaran adalah kompromi utama: lebih banyak langkah berarti jawaban yang lebih baik, dan setiap langkah menimbulkan biaya. Dengan openai/gpt-6-luna, menaikkan batas langkah dari 1 menjadi 15 meningkatkan akurasi pada BrowseComp + DSQA dari 41% menjadi 80%, sementara biaya per kueri naik dari $0,0017 menjadi $0,0152, yaitu sekitar 9x biaya untuk sekitar 2x skor.
Batas langkah saja tidak mengendalikan biaya penelitian. Dengan anggaran lima langkah yang sama, openai/gpt-6.1-terra melakukan lebih banyak panggilan alat daripada openai/gpt-6-luna, karena model yang lebih mumpuni cenderung mengeluarkan beberapa panggilan dalam satu langkah. Tingkat upaya membatasi panggilan alat sekaligus langkah. Untuk model-model ini, batas panggilan alat sama pentingnya dengan batas langkah.
Setiap tingkat upaya menyesuaikan batas-batas ini, tetapi agen juga harus tahu berapa banyak langkah dan tindakan yang tersisa untuk memenuhi permintaan. Tanpa informasi tersebut, agen dapat kehabisan langkah atau tindakan dan terpaksa menjawab sebelum penelitian selesai. Anggaran dinyatakan di awal proses, dan pengingat muncul saat agen mendekati batasnya, sehingga masih ada ruang untuk memverifikasi dan menyampaikan hasil. Untuk high, pengingat mencakup anggaran langkah dan anggaran panggilan alat.
Dua agen, satu dengan pengingat anggaran dan satu tanpa pengingat, diuji pada tugas BrowseComp untuk mengidentifikasi serial TV tahun 1990-an berdasarkan tiga biografi pemeran. Agen dengan pengingat menemukan jawaban yang benar dengan menggunakan 13 dari 40 langkah dalam anggaran. Agen tanpa pengingat anggaran menggunakan seluruh 40 langkah dan tidak menemukan jawaban yang benar. Loop agen tersebut berakhir secara tak terduga, dan model tidak menyadari sisa anggaran penelitiannya. Pengingat membuat agen tetap fokus dan membantu mereka memprioritaskan sumber daya yang tersisa secara efektif.
Mengelola konteks
Pemadatan
Tugas penelitian yang berjalan lama memenuhi jendela konteks model dengan hasil pencarian, halaman yang diambil, dan catatan sementara. Begitu jendela konteks penuh, agen harus berhenti bekerja.
Pemadatan membuat proses yang panjang tetap berjalan tanpa memenuhi jendela konteks. Ketika konteks melampaui ambang batas, agen mengganti pekerjaan sejauh ini dengan ringkasan yang lebih singkat tentang apa yang telah ditemukannya dan apa yang tersisa, lalu melanjutkan pekerjaan.
Pemadatan selalu mempertahankan tiga hal dalam konteks: prompt sistem, permintaan awal, dan Skill apa pun yang telah dimuat agen. Setelah setiap pemadatan, agen menerima dua instruksi singkat. Instruksi pertama adalah, ‘Lanjutkan bekerja hingga tugas selesai.’ Instruksi ini mencegah agen menganggap ringkasan sebagai titik berhenti. Instruksi kedua memberi tahu agen berapa kali pemadatan telah terjadi, sehingga agen dapat merencanakan sisa tugas penelitiannya. Proses yang panjang tetap berpegang pada tujuan dan rencana awal, dan biaya loop yang panjang berkurang tanpa penurunan kualitas.
Hanya mengambil yang penting
Setiap halaman yang dibaca agen menambah konteksnya, dan agen membawanya di setiap langkah berikutnya. Halaman web berisi informasi yang tidak berkaitan dengan pertanyaan, seperti navigasi, teks boilerplate, dan konten lainnya.
Alih-alih memberikan seluruh halaman kepada agen, fetch_url terlebih dahulu menjalankan tahap ekstraksi. Teks halaman dikirim ke model yang lebih kecil bersama tugas agen saat ini. Model tersebut hanya mengembalikan bagian yang relevan, dikutip persis agar agen dapat mencantumkannya sebagai sumber. Dalam sebuah evaluasi, halaman berukuran 5.561 token dikurangi menjadi 293 token, sehingga tersedia ruang untuk konteks relevan tambahan.
Menggunakan fetch_url dengan ekstraksi pada tingkat upaya high mengurangi token input per kueri sekitar 50%. Ekstraksi juga meningkatkan performa tolok ukur, mencapai 88,0% dengan biaya $0,073 per kueri, dibandingkan 83,5% dengan biaya $0,094 tanpa ekstraksi.
Pencarian web yang terfokus
Pencarian web merupakan inti dari setiap permintaan penelitian agen. Tiga perubahan dilakukan pada cara agen melakukan pencarian:
- Lebih banyak konteks per pencarian: Setiap pencarian kini mengembalikan hingga 4K token hasil, bukan 2K. Agen menemukan apa yang dibutuhkannya lebih cepat, sehingga jumlah pencarian lebih sedikit dan biaya lebih rendah.
- Mesin cuplikan baru: Hasil pencarian menerima cuplikan yang lebih sesuai dengan kueri, sehingga agen tidak terbebani teks yang tidak relevan.
- Pencarian cepat: Dengan harga $1,00 per 1K permintaan, Fast Search mengurangi biaya sekaligus latensi untuk setiap panggilan pencarian.
Tim Perplexity Search terus meningkatkan kualitas pengambilan informasi di berbagai jenis tugas. Pembaruan terbaru menghasilkan peningkatan pada konten kode, dokumentasi pengembang, halaman referensi, hukum, dan regulasi.
Memilih alur kerja yang tepat
Beberapa tugas memerlukan banyak pencarian yang dijalankan secara paralel; tugas lainnya memerlukan pembacaan cermat atas beberapa dokumen panjang.
Namun, memuat setiap alur kerja ke dalam prompt sistem agen menambah beban konteks dan dapat membuat performa model menurun pada tugas sederhana. Sebagai gantinya, Skill disusun dalam struktur pohon dengan pengungkapan progresif. Model memuat Skill dan instruksi yang relevan sambil bekerja, sehingga informasi yang tidak berkaitan tetap berada di luar konteksnya. Setiap Skill hanya memakan biaya sebesar nama dan deskripsinya hingga model memutuskan bahwa Skill tersebut sesuai dengan tugas dan memuatnya; pada saat itu, instruksi lengkap ditambahkan ke konteks dan model mengikuti alur kerja yang ditetapkan.
Untuk mengukur kontribusi setiap Skill, Skill dihapus satu per satu untuk membandingkan kualitas dan biaya pada tugas-tugas ketika agen garis dasar memuat Skill tersebut. Ablasi ini menunjukkan alur kerja mana yang membantu agen dan bagaimana pengaruhnya terhadap efisiensi penelitian.
Proses tolok ukur WANDR di bawah menunjukkan agen memilih alur kerja yang tepat untuk tugas tertentu. Panduan wide-search dan fanout dimuat untuk setiap tugas, mencerminkan kebutuhan untuk menyelidiki banyak entitas. People-search hanya dimuat untuk 6% tugas, dan hanya ketika pertanyaannya melibatkan orang.
Saat menguji tugas WANDR lainnya, agen memuat Skill people-search dengan pola fanout untuk menemukan insinyur inferensi di London. Agen memperluas 39 istilah peran menjadi 117 kueri, lalu menggabungkan hasil tahap pertama menjadi 43 profil unik untuk penyaringan lebih lanjut. Skill people-search memandu agen melalui perluasan ini tanpa menambahkan konteks yang tidak relevan. Kutipan di bawah diadaptasi dari skrip agen; nama fungsi pembantu bersifat ilustratif.
Python
# roles contains the 39 role variants selected by the agent.
queries = []
for role in roles:
queries.extend([
{"query": f"Google DeepMind {role} London"},
{"query": f"Google {role} London"},
{"query": role, "company": "Google", "location": "London"},
])
results = pplx_sdk.search.people_many(
queries, limit_per_query=50, concurrency=8
)
profiles = {}
for result in results:
if not result.ok:
continue
for profile in result.result:
if "linkedin.com/in/" not in profile.url:
continue
url = profile.url.split("?")[0].rstrip("/")
previous = profiles.get(url, {})
if url not in profiles or len(profile.summary or "") > len(
previous.get("summary") or ""
):
profiles[url] = {
"url": url,
"title": profile.title,
"summary": profile.summary,
}
Checkpointing adalah alur kerja lain yang membantu agen dalam tugas yang berjalan lama. Pola checkpointing berasal dari pemrograman batch. Saat skrip memproses daftar yang panjang, skrip menulis setiap hasil ke disk segera setelah hasil tersebut tersedia, alih-alih menyimpan semuanya di memori hingga akhir. Jika skrip mogok atau mengalami galat di tengah jalan, tidak ada yang hilang: proses berikutnya membaca apa yang sudah disimpan dan melanjutkan dari titik terakhir, dengan hanya mencoba ulang item yang gagal.
Dalam tugas WANDR lainnya, agen harus menyaring 188 profil insinyur. Agen memuat pola checkpoint untuk mencatat setiap hasil sambil bekerja. Tahap pertama mengekstrak 160 profil, tetapi gagal pada 28 profil. Saat agen menjalankan skrip lagi, agen melewati profil yang sudah tercatat dan hanya mencoba ulang 28 profil yang tersisa. Tanpa checkpoint, satu catatan yang buruk berarti harus mengambil ulang seluruh 188 profil.Kutipan Python yang diadaptasi; halaman input, instruksi penyaringan, skema, dan impor dihilangkan; nama fungsi pembantu bersifat ilustratif.
Python
checkpoint = Checkpoint("research/profile-screening")
config = instruction + json.dumps(schema)
config_id = hashlib.md5(config.encode()).hexdigest()[:6]
def checkpoint_key(page):
url_id = hashlib.md5(page["url_in"].encode()).hexdigest()[:10]
return config_id + url_id
pending = [
page for page in pages if not checkpoint.has(checkpoint_key(page))
]
for offset in range(0, len(pending), 20):
batch = pending[offset : offset + 20]
inputs = [
json.dumps({
"url": page["url_in"], "content": page["content"][:30_000]
})
for page in batch
]
results = pplx_sdk.llm.extract_many(
inputs,
instruction=instruction,
output_schema=schema,
chunk_size=5,
concurrency=4,
)
for page, result in zip(batch, results):
if not result.ok or result.result.error:
continue
checkpoint.record(
checkpoint_key(page),
[{"url": page["url_in"], **result.result.result}],
)
Checkpoint mencatat hasil yang berhasil; checkpoint tidak memicu percobaan ulang. Menyertakan instruksi dan skema dalam kunci memastikan bahwa perubahan kriteria penyaringan memicu pemrosesan ulang.
Tidak semua pengujian menghasilkan peningkatan kualitas dan efisiensi. Salah satu yang dievaluasi adalah memuat semua Skill ke agen sebelum agen memulai tugasnya. Pada BrowseComp dan DSQA, pemuatan awal meningkatkan biaya sebesar 13%. Pada WANDR, ketika lintasan penelitian yang lebih panjang membuat konten yang diambil menjadi porsi token input yang lebih besar, pemuatan awal juga menurunkan skor. Hasil ini mendukung penggunaan pengungkapan progresif secara berkelanjutan.
Pemilihan model
Seiring kemajuan kemampuan model, model terbaik untuk setiap tingkat upaya juga berubah. Perplexity menggunakan loop penelitian otomatis yang memantau pengumuman dan ketersediaan model baru. Evaluasi dipicu segera setelah model dapat diakses.
Ketika model baru dirilis, agen otomatis mengujinya melalui harness evaluasi. Agen ini menguji berbagai pengaturan upaya penalaran, anggaran langkah dan panggilan alat, serta konfigurasi alat, lalu menilai setiap proses berdasarkan kualitas dan biaya dibandingkan dengan tingkat upaya saat ini. Jika suatu proses mengalami regresi, agen meneliti penyebabnya, menyesuaikan pengaturan, dan menjalankan evaluasi lagi. Kandidat hanya menggantikan model saat ini jika unggul dalam kualitas dengan biaya yang sama atau lebih rendah.
Tolok ukur publik memang berguna, tetapi skornya tidak selalu mencerminkan hasil pada tugas di dunia nyata. Misalnya, bagan di bawah ini menunjukkan model kandidat yang mencetak skor 13,3 poin di atas garis dasar pada BrowseComp, tetapi jauh di bawah garis dasar yang bersangkutan pada tugas penelitian internal di bidang korporat, hukum, dan keuangan.
Penskalaan multi-agen
Satu agen hanya dapat mencakup sejumlah sumber dalam satu loop. Untuk tugas yang kompleks, beberapa agen bekerja secara paralel, masing-masing berkoordinasi pada bagian masalah yang berbeda.
Agen utama adalah orkestrator. Agen ini memanggil spawn_agent untuk membuat agen anak dan memberikan tugas yang spesifik dan terfokus kepada masing-masing agen. Setiap agen anak menjalankan loop penelitiannya sendiri dengan konteks terpisah, menggunakan model, alat, dan anggaran langkahnya sendiri. Agen anak melaporkan hasilnya kepada agen induk, yang dapat mengirimkan tugas lanjutan kepada agen anak atau memeriksa kemajuannya. Orkestrator dan agen-agen anaknya bertukar pesan untuk berbagi bukti, menandai hambatan, dan menyesuaikan langkah berikutnya. Seiring datangnya informasi baru, orkestrator menyempurnakan penugasan dan, setelah pekerjaan selesai, menggabungkan hasilnya menjadi satu jawaban.
Agent API mendukung peran agen yang telah ditentukan, dan orkestrator dapat membuat agen anak dengan instruksi khusus.
Tingkat upaya ultra menjalankan tiga agen secara paralel pada satu tugas. Setiap agen meneliti seluruh tugas secara independen, sehingga menghasilkan bukti yang berbeda. Agen keempat menggabungkan temuan mereka, menghapus duplikasi, dan menulis jawaban akhir.
Pada WANDR, ultra mencetak skor 85,9% dengan biaya $21,71 per tugas. Ini adalah skor tertinggi di antara konfigurasi yang diuji.
Apa selanjutnya
Tingkat upaya terus dievaluasi dan ditingkatkan. Tingkat yang dipilih pengguna menentukan seberapa banyak penelitian yang diterima suatu tugas dan berapa biayanya. Anggaran langkah dan panggilan alat, disertai pengingat saat anggaran menipis, menjaga permintaan tetap dalam anggaran. Pemadatan, ekstraksi, dan cuplikan yang lebih baik menjaga konteks tetap berfokus pada bukti. Skill mencocokkan alur kerja dengan tugas, dan agen paralel memperluas cakupan yang dapat ditangani oleh satu loop. Loop evaluasi otomatis hanya menerima model baru jika model tersebut meningkatkan kualitas penelitian dengan biaya yang sama.
Setiap tingkat upaya akan terus berkembang seiring model dan konfigurasi baru membuktikan diri dalam evaluasi. Memanggil tingkat berdasarkan nama akan otomatis mendapatkan peningkatan tersebut; menyematkan versi akan menjaga konfigurasi tetap.
Coba Agent API dan bandingkan tingkat upaya pada beban kerja Anda sendiri. Temukan detail tingkat upaya di dokumentasi upaya Agent API kami.