Diposting oleh Thomas Ezan, Insinyur Hubungan Pengembang Senior
Android telah mendukung model pembelajaran mesin tradisional selama bertahun-tahun. Framework dan SDK seperti LiteRT (sebelumnya dikenal sebagai TensorFlow Lite), ML Kit, dan MediaPipe telah memungkinkan developer mengimplementasikan tugas seperti klasifikasi gambar dan deteksi objek dengan mudah.
Dalam beberapa tahun terakhir, AI generatif (gen AI) dan model bahasa besar (LLM) telah membuka kemungkinan baru untuk pemahaman bahasa dan pembuatan teks. Kami telah menghilangkan hambatan dalam mengintegrasikan fitur Gen AI ke dalam aplikasi Anda, dan postingan blog ini akan memberi Anda pengetahuan tingkat tinggi yang diperlukan untuk memulai.
Sebelum kita mendalami model AI generatif secara spesifik, mari kita lihat secara mendalam: perbedaan pembelajaran mesin (ML) dengan pemrograman tradisional.
Pembelajaran mesin sebagai paradigma pemrograman baru
Perbedaan utama antara pemrograman tradisional dan ML terletak pada cara solusi diimplementasikan.
Dalam pemrograman tradisional, pemrogram menulis algoritma eksplisit yang mengambil masukan dan menghasilkan keluaran yang diinginkan.
Pembelajaran mesin menggunakan pendekatan yang berbeda: pemrogram menyediakan sejumlah besar masukan yang telah dikumpulkan sebelumnya dan keluaran yang sesuai, dan model ML dilatih untuk mempelajari cara memetakan masukan ke keluaran.
Model tersebut kemudian diterapkan di cloud atau di perangkat untuk memproses data masukan. Langkah ini disebut inferensi.
Paradigma ini memungkinkan pemrogram untuk mengatasi permasalahan yang sebelumnya sulit atau tidak mungkin diselesaikan dengan pemrograman berbasis aturan.
Pembelajaran Mesin Tradisional vs. Kecerdasan Buatan Generatif di Android
ML tradisional di Android mencakup tugas-tugas seperti klasifikasi gambar yang dapat diimplementasikan menggunakan jaringan seluler dan LiteRT, atau estimasi posisi yang dapat dengan mudah ditambahkan ke aplikasi Android Anda menggunakan ML Kit SDK. Model ini sering kali dilatih pada kumpulan data tertentu dan berkinerja sangat baik pada tugas yang terdefinisi dengan baik dan sempit.
AI Generatif memperkenalkan kemampuan untuk memahami masukan seperti teks, gambar, audio, dan video serta menghasilkan respons mirip manusia. Hal ini memungkinkan aplikasi seperti bot obrolan, terjemahan bahasa, peringkasan teks, pemberian teks gambar, pembuatan gambar atau kode, bantuan penulisan kreatif, dan banyak lagi.
Sebagian besar model AI generatif canggih seperti model Gemini dibangun di atas arsitektur transformator. Model difusi sering digunakan untuk menghasilkan gambar.
Memahami model bahasa besar
Pada intinya, LLM adalah model jaringan saraf yang dilatih pada data tekstual dalam jumlah besar. Ia mempelajari pola, tata bahasa, dan hubungan semantik antara kata dan frasa, memungkinkannya memprediksi dan menghasilkan teks yang meniru bahasa manusia.
Seperti disebutkan sebelumnya, LLM terbaru menggunakan arsitektur transformator. Ini menguraikan input menjadi token, menetapkan representasi numerik yang disebut “embeddings” (lihat Konsep Utama di bawah) ke token ini, dan kemudian memproses embeddings ini melalui beberapa lapisan jaringan saraf untuk memahami konteks dan makna.
LLM biasanya melalui dua fase utama pelatihan:
1. Fase pra-pelatihan: Model dihadapkan pada sejumlah besar teks dari berbagai sumber untuk mempelajari pola dan pengetahuan bahasa umum.
2. Fase penyempurnaan: Model dilatih pada tugas dan kumpulan data tertentu untuk meningkatkan kinerjanya untuk aplikasi tertentu.
Kelas model dan kemampuannya.
Model generasi AI hadir dalam berbagai ukuran, mulai dari model kecil seperti Gemini Nano atau Gemma 2 2B, hingga model besar seperti Gemini 1.5 Pro yang berjalan di Google Cloud. Ukuran model umumnya berkorelasi dengan kemampuan dan daya komputasi yang diperlukan untuk menjalankannya.
Model terus berkembang, dan penelitian baru mendorong batas kemampuannya. Model-model ini dievaluasi berdasarkan tugas-tugas seperti menjawab pertanyaan, menghasilkan kode, dan menulis kreatif, menunjukkan hasil yang mengesankan.
Selain itu, beberapa model bersifat multimodal, artinya model tersebut dirancang untuk memproses dan memahami informasi dari berbagai modalitas, seperti gambar, audio, dan video, selain teks. Hal ini memungkinkan mereka untuk menangani tugas yang lebih luas, termasuk pembuatan teks gambar, menjawab pertanyaan visual, transkripsi audio. Beberapa model AI Generatif Google seperti Gemini 1.5 Flash, Gemini 1.5 Pro, Gemini Nano dengan Multimodalitas, dan PaliGemma bersifat multimodal.
Konsep kunci Jendela konteks
Jendela konteks mengacu pada jumlah token (dikonversi dari teks, gambar, audio, atau video) yang diperhitungkan model saat menghasilkan respons. Untuk kasus penggunaan obrolan, ini mencakup masukan saat ini dan riwayat interaksi sebelumnya. Sebagai referensi, 100 token sama dengan 60-80 kata bahasa Inggris. Sebagai referensi, Gemini 1.5 Pro saat ini mendukung 2 juta token input. Cukup untuk memuat tujuh buku Harry Potter… dan banyak lagi!
Penyematan
Penyematan adalah representasi numerik multidimensi dari token yang secara akurat mengkodekan makna semantik dan hubungannya dalam ruang vektor tertentu. Kata-kata yang mempunyai makna serupa letaknya lebih dekat satu sama lain, sedangkan kata-kata yang maknanya berlawanan letaknya lebih jauh.
Proses penyematan adalah komponen kunci dari LLM. Anda bisa mencobanya secara mandiri menggunakan MediaPipe Text Embedder untuk Android. Ini dapat digunakan untuk mengidentifikasi hubungan antara kata dan kalimat dan menerapkan pencarian semantik yang disederhanakan langsung di perangkat.
Representasi yang (sangat) disederhanakan dari penyematan kata “raja”, “ratu”, “laki-laki” dan “perempuan” Top-K, Top-P dan Temperature
Parameter seperti Top-K, Top-P, dan Temperature memungkinkan Anda mengontrol kreativitas model dan keacakan keluarannya.
Token filter Top-K untuk keluaran. Misalnya, Top-K dari 3 menyimpan tiga token yang paling mungkin. Meningkatkan nilai Top-K akan meningkatkan keacakan respon model (pelajari parameter Top-K).
Kemudian, menentukan nilai Top-P menambahkan langkah pemfilteran lainnya. Token dengan probabilitas tertinggi dipilih hingga jumlahnya sama dengan nilai Top-P. Nilai Top-P yang lebih rendah menghasilkan respons acak yang lebih sedikit, dan nilai yang lebih tinggi menghasilkan respons acak yang lebih banyak (pelajari tentang parameter Top-P).
Terakhir, Temperature menentukan keacakan pemilihan token yang tersisa. Suhu yang lebih rendah cocok untuk kueri yang memerlukan respons yang lebih deterministik dan tidak terlalu terbuka atau kreatif, sedangkan suhu yang lebih tinggi dapat memberikan hasil yang lebih bervariasi atau kreatif (pelajari tentang suhu).
Penyempurnaan
Mengulangi beberapa versi perintah untuk mencapai respons model optimal untuk kasus penggunaan Anda tidak selalu cukup. Langkah berikutnya adalah menyempurnakan model dengan melatihnya kembali menggunakan data khusus untuk kasus penggunaan Anda. Anda kemudian akan menerima model yang disesuaikan dengan aplikasi Anda.
Lebih khusus lagi, adaptasi peringkat rendah (LoRA) adalah teknik penyesuaian yang membuat pelatihan LLM lebih cepat dan lebih efisien memori dengan tetap menjaga kualitas keluaran model. Proses menyempurnakan model terbuka melalui LoRA didokumentasikan dengan baik. Lihat, misalnya, bagaimana Anda dapat menyempurnakan model Gemini melalui Google AI Studio tanpa keahlian ML tingkat lanjut. Anda juga dapat menyempurnakan model Gemma menggunakan perpustakaan KerasNLP.
Masa depan AI generatif di Android
Dengan penelitian berkelanjutan dan optimalisasi LLM untuk perangkat seluler, kita dapat mengharapkan lebih banyak lagi fitur inovatif berkemampuan AI di Android dalam waktu dekat. Sementara itu, lihat AI lainnya di blog Android Spotlight Week dan buka dokumentasi AI Android untuk mempelajari lebih lanjut cara memberdayakan aplikasi Anda dengan kemampuan Gen AI!
unity software
unity software information
software information