Dipublikasikan: 13 Januari 2025
Ini adalah bagian terakhir dari seri tiga bagian tentang chatbot LLM. Artikel sebelumnya membahas kemampuan LLM sisi klien dan memandu Anda menambahkan chatbot yang didukung WebLLM ke aplikasi daftar tugas.
Beberapa perangkat yang lebih baru dilengkapi dengan model bahasa besar dan model AI lainnya langsung di perangkat. Chrome telah mengusulkan pengintegrasian API AI bawaan ke dalam browser, dengan sejumlah API dalam berbagai tahap pengembangan. Banyak API ini sedang menjalani proses standarisasi, sehingga situs dapat menggunakan implementasi dan model yang sama untuk mencapai performa inferensi maksimum.
Prompt API adalah salah satu AI API tersebut. Untuk menggunakannya, developer dianjurkan untuk mendaftar ke Program Pratinjau Awal. Setelah diterima, Anda akan menerima petunjuk tentang cara mengaktifkan Prompt API di browser. Prompt API tersedia dalam uji coba origin untuk Ekstensi Chrome, sehingga Anda dapat menguji API ini untuk pengguna ekstensi yang sebenarnya.
Akses model bersama
Prompt API berperilaku serupa dengan WebLLM. Namun, kali ini tidak ada pemilihan model (Anda harus menggunakan LLM yang disertakan dengan browser). Saat mengaktifkan AI bawaan, Chrome mendownload Gemini Nano ke dalam browser. Model ini kemudian dapat dibagikan di beberapa origin dan berjalan dengan performa maksimal. Ada masalah GitHub tempat developer meminta penambahan fitur pemilihan model.
Menyiapkan percakapan
Anda dapat memulai percakapan pesan dengan cara yang sama persis, tetapi Prompt API
juga menawarkan sintaksis singkat untuk menentukan perintah sistem. Mulai sesi model bahasa menggunakan metode create() pada antarmuka LanguageModel:
const session = await LanguageModel.create({
initialPrompt: [
{
type: 'system',
content: `You are a helpful assistant. You will answer questions related
to the user's to-do list. Decline all other requests not related to the
user's todos. This is the to-do list in JSON: ${JSON.stringify(todos)}`,
},
],
});
Menjawab pertanyaan pertama Anda
Daripada memiliki objek konfigurasi untuk mengonfigurasi streaming, Prompt API menawarkan dua metode terpisah:
prompt()menampilkan string lengkappromptStreaming()menampilkan iterable asinkron. Berbeda dengan WebLLM, Prompt API merespons dengan respons string lengkap, sehingga Anda tidak perlu menggabungkan hasilnya sendiri.
Jika tidak ada origin lain yang memicu download model sebelumnya, permintaan pertama Anda mungkin memerlukan waktu yang sangat lama saat Gemini Nano didownload ke browser Anda. Jika model sudah tersedia, inferensi akan segera dimulai.
const stream = session.promptStreaming("How many open todos do I have?");
for await (const reply of stream) {
console.log(reply);
}

Demo
Ringkasan
Mengintegrasikan LLM ke dalam aplikasi dapat meningkatkan pengalaman pengguna secara signifikan. Meskipun layanan cloud menawarkan model berkualitas lebih tinggi dan performa inferensi yang tinggi terlepas dari perangkat pengguna, solusi di perangkat, seperti WebLLM dan Prompt API Chrome, dapat digunakan secara offline, meningkatkan privasi, dan menghemat biaya dibandingkan dengan alternatif berbasis cloud. Coba API baru ini dan buat aplikasi web Anda menjadi lebih pintar.