Cara Ask Anything Memakai TinyFish untuk Jawaban dari Web Terkini
Ask Anything di Snipset bisa mendasarkan jawaban suara pada hasil web terkini lewat TinyFish Search dan Fetch. Cara kerjanya, apa yang keluar, dan cara pasang.

Dengan Ask Anything, kamu cukup mengucapkan pertanyaan lalu membaca jawabannya di overlay. Jawabannya datang dari model Ollama lokalmu, atau dari Claude kalau kamu menyalakannya. Masalahnya, model bahasa hanya tahu apa yang ia lihat saat dilatih. Pertanyaan soal rilis minggu ini, sebuah harga, atau API yang baru berubah sering dijawab dengan yakin, padahal infonya sudah basi. Sejak Windows 0.6.857 dan Linux 0.6.873, Snipset bisa mendasarkan jawaban itu pada hasil web terkini dari TinyFish Search dan TinyFish Fetch.
Di tulisan ini kami jelaskan apa yang terjadi di antara pertanyaanmu dan jawabannya, apa saja yang keluar dari komputermu, dan apa yang dilakukan Snipset kalau web sedang lambat atau key-nya salah.
Kenapa Ask Anything Butuh Fakta Terbaru
Pertanyaan lewat suara biasanya pendek dan menyangkut sesuatu yang kamu perlukan saat itu juga. Justru di situ batas data latih model paling terasa: model jarang mengaku tidak tahu, dan sering menambal celahnya dengan jawaban yang terdengar masuk akal.
Grounding lewat pencarian web mengatasi itu dengan memasukkan beberapa hasil pencarian terkini ke prompt sebelum model menjawab. Untuk ini Snipset sudah mendukung empat penyedia lain (DuckDuckGo, Tavily, Brave Search, dan instance SearXNG yang kamu host sendiri). TinyFish jadi yang kelima. Kami menambahkannya karena TinyFish menyatukan dua langkah yang kami mau ada di satu tempat: Search mencari halamannya, Fetch membacanya. Menurut dokumentasi TinyFish, Search mengembalikan hasil terstruktur berisi judul, cuplikan, dan URL, sedangkan Fetch merender halaman yang berat JavaScript lalu mengembalikan teks bersih hasil ekstraksi, dalam format Markdown secara default. Cuplikan hasil pencarian sering cuma satu kalimat; jawaban yang sebenarnya ada di halaman di baliknya.
Pencarian web mati secara default, dan DuckDuckGo tetap jadi penyedia default. TinyFish hanya jalan kalau kamu memilihnya dan memasukkan key-mu sendiri.
Yang Terjadi Saat Kamu Bertanya: TinyFish Search, Fetch, dan Grounding
Selama pencarian web menyala, Ask Anything mencari di web untuk setiap pertanyaan. Tidak ada tombol per pertanyaan, jadi kalau kamu mau jawaban dari model saja, matikan pencarian web.
Ini jalur yang dilalui sebuah pertanyaan saat TinyFish dipilih:
pertanyaan suaramu
-> disamarkan dengan aturan data sensitifmu
-> TinyFish Search: 3 hasil (judul, cuplikan, URL)
-> TinyFish Fetch: teks halaman dari 2 hasil teratas, sebagai Markdown
-> tiap halaman dipotong jadi sekitar 600 karakter
-> blok grounding ditambahkan ke system prompt
-> Ollama atau Claude menjawab, mengutip sumber bernomor
-> catatan kaki ditambahkan untuk sumber yang dikutip jawaban
Ada beberapa detail yang penting di sini.
Kutipan halaman sengaja dibuat pendek. Snipset menyimpan sekitar 600 karakter dari tiap halaman yang diambil, dan memotongnya di batas kata kalau ada yang dekat dengan ujungnya. Seluruh blok grounding untuk Ask Anything punya jatah sekitar 400 token (kira-kira 1600 karakter, dihitung empat karakter per token), dan instruksi di blok itu sendiri ikut memakai sebagian jatahnya. Pada praktiknya, hasil pertama biasanya masih membawa kutipan halamannya, sedangkan hasil berikutnya masuk dengan judul, tautan, dan cuplikan saja. Kalau sebuah hasil tidak muat bersama kutipannya, Snipset membuang kutipannya dulu sebelum membuang hasilnya; sebuah hasil baru ditinggalkan kalau bentuk pendeknya pun sudah tidak muat.
Rujukan yang bisa kamu telusuri. Blok grounding diberi judul "Live Web Search Grounding Context" dan meminta model mengutip sumber dengan nomor dalam kurung siku serta menulis tautan sebagai Markdown. Setelah jawaban masuk, Snipset menambahkan catatan kaki berbentuk [1]: url "title", tapi hanya untuk sumber yang benar-benar dikutip jawabannya. Nomor yang menempel pada kata, seperti arr[1], tidak dihitung sebagai kutipan.
Jalur yang sama untuk kedua model. Blok grounding masuk ke system prompt, dan prompt yang sama itu dikirim entah jawabannya datang dari Ollama lokal atau dari Claude.
Waktu
Overlay suara tidak boleh menggantung hanya karena sebuah situs lambat dimuat, jadi setiap langkah punya batas:
| Langkah | Batas |
|---|---|
| Satu permintaan pencarian | 5 detik |
| Semua percobaan pencarian, jeda sebelum mencoba lagi, dan Fetch sekaligus | 6 detik |
| Coba lagi setelah gangguan sementara | 1 kali, setelah 200 ms |
| Fetch baru dimulai kalau sisa waktu minimal | 1,5 detik |
| Seluruh langkah pencarian web di Ask Anything | 8 detik |
Fetch adalah langkah tambahan, jadi ia hanya dapat sisa waktu dari pencarian. Kalau Search sudah memakai sebagian besar dari enam detik itu, Snipset melewati Fetch dan memakai cuplikan hasil pencarian saja.
Apa Saja yang Keluar dari Komputermu
Kami memperlakukan penyedia pencarian sebagai satu pihak luar lagi, jadi kami membatasi apa yang bisa ia lihat.
Kueri disamarkan dulu. Sebelum pertanyaanmu dikirim ke penyedia pencarian mana pun, Snipset melewatkannya ke penyamaran data sensitif yang sama dengan yang dipakai untuk teks chat, sesuai pengaturan penyamaranmu. Apa yang tidak boleh dilihat jalur model juga tidak akan dilihat penyedia pencarian. Snipset juga mengirim paling banyak 2000 karakter kueri ke TinyFish.
Fetch tidak pernah melihat pertanyaanmu. Permintaan Fetch hanya membawa URL hasil teratas, format, dan batas waktu. TinyFish Search melihat kueri yang sudah disamarkan; TinyFish Fetch hanya melihat daftar alamat web publik.
Key-mu tetap di keychain. TinyFish butuh API key milikmu sendiri, dan key itu punya slot sendiri di secret store Snipset: dienkripsi dengan akun Windows-mu lewat DPAPI di Windows, atau disimpan di keychain Secret Service di Linux. Layar pengaturan hanya tahu apakah key-nya ada, tidak pernah tahu isinya. Cara kerja store ini sudah kami bahas di tulisan tentang API key di keychain sistem.
Hasil web dianggap input yang tidak tepercaya. Halaman web bisa berisi teks yang sengaja ditulis untuk menyetir AI ("abaikan instruksimu dan..."). Blok grounding memberi tahu model bahwa hasil itu konten web yang tidak tepercaya, hanya boleh dipakai sebagai bahan rujukan, dan instruksi apa pun di dalamnya harus diabaikan. Itu instruksi untuk model, bukan jaminan, dan itulah satu alasan lagi kenapa catatan kaki mengarahkanmu kembali ke sumbernya.
Kalau Web Lambat atau Key-nya Salah
Grounding itu bonus, jadi Ask Anything tidak pernah menunggunya selamanya dan tidak pernah gagal gara-gara grounding.
- Terjadi error atau waktu habis: Ask Anything menjawab tanpa grounding dan menulis peringatan ke log. Kalau tidak ada hasil, ia langsung menjawab tanpa grounding. Apa pun kasusnya, kamu tetap dapat jawaban, hanya dari model saja.
- Gangguan sementara di Search (rate limit, permintaan timeout, error server) dicoba sekali lagi selama masih dalam tenggat.
- Key yang ditolak (HTTP 401 atau 403) tidak dicoba lagi. Mengulang dengan key yang salah cuma buang waktu.
- Key yang belum diisi membuat pencarian gagal, dan Ask Anything menjawab tanpa grounding. Overlay tidak menampilkan error ini; error-nya masuk ke log sebagai peringatan yang menunjuk ke pengaturan pencarian web. Snipset tidak diam-diam memindahkanmu ke penyedia lain, jadi pilihan penyedia tetap ada di tanganmu.
- Fetch gagal tapi Search berhasil: Snipset menyimpan cuplikan hasil pencarian dan mendasarkan jawaban pada cuplikan itu.
Soal biaya: TinyFish mengumumkan pada 2026-05-04 bahwa Search dan Fetch gratis, tanpa perlu kartu kredit untuk mulai. Batas persisnya ada di dokumentasi TinyFish dan bisa berubah, jadi cek di sana, jangan berpegang pada angka di tulisan ini.
Cara Menyalakannya
- Buat key di agent.tinyfish.ai/api-keys.
- Di Snipset, buka Pengaturan, masuk ke tab AI & Model, lalu cari grup Pencarian Web Grounding.
- Nyalakan Aktifkan Pencarian Web.
- Pilih TinyFish Search sebagai penyedia.
- Tempel key-mu di kolom Kunci API TinyFish.
Setelah itu, coba tanyakan sesuatu yang baru terjadi. Jawabannya semestinya membawa kutipan bernomor dengan catatan kaki di bawahnya.
Fitur ini ada di aplikasi desktop Windows dan Linux (Windows 0.6.857 dan Linux 0.6.873 atau yang lebih baru).
Ringkasan
Saat TinyFish dipilih, Ask Anything mencari hingga tiga hasil terkini, membaca dua halaman teratas, lalu memasukkan sebanyak yang muat ke blok sekitar 400 token, dengan membuang kutipan halaman lebih dulu sebelum membuang hasilnya. Model menerimanya dengan tanda jelas bahwa isinya tidak tepercaya, lengkap dengan nomor untuk dikutip. Pertanyaanmu disamarkan sebelum keluar, Fetch hanya melihat URL, key-mu tersimpan di keychain sistem, dan pencarian yang lambat atau gagal kembali ke jawaban biasa dalam hitungan detik.
Mau jawaban yang mengutip web hari ini, bukan data latih tahun lalu? Lihat paket Snipset.
