Mengintip Masa Depan Web AI: Apa yang Disiapkan Google?
Apakah kamu siap untuk menjelajahi masa depan web yang diperkuat oleh kecerdasan buatan? Ngobrolin WEB kali ini, kita akan mengintip ke balik tirai Google I/O 2024, bagaimana Google membagikan visi mereka tentang bagaimana Web AI akan mengubah cara kita berinteraksi dengan internet. Bersiaplah untuk menyaksikan teknologi canggih yang akan mengubah pengalaman browsing kamu menjadi lebih intuitif dan personal. Bayangkan mesin pencari yang dapat memahami konteks dan maksud di balik permintaan kamu Kunjungi https://ngobrol.in untuk catatan, tautan dan informasi topik lainnya.
Ringkasan Episode
Bantu KoreksiEpisode ini membahas update terbaru dari Google I/O 2024 dengan fokus utama pada Web AI atau on-device AI. Pembahasan dimulai dengan lanjutan dari episode sebelumnya yang membahas baseline, interrupt CSS, dan update web development lainnya. Namun, tema utama Google I/O dua tahun terakhir memang didominasi oleh AI, dengan Google yang terlihat mengejar ketertinggalan dari perusahaan lain melalui produk Gemini yang diintegrasikan ke berbagai lini produk mereka. Tiga topik utama yang dibahas secara mendalam adalah: (1) LLM inference di browser menggunakan teknologi WebAssembly dan WebGPU yang memungkinkan model seperti Gemma 2B berjalan langsung di perangkat user, (2) Visual Blocks, sebuah alat no-code untuk prototyping aplikasi AI dengan pendekatan drag-and-drop, dan (3) Transformers.js, library JavaScript yang mengkonversi model Python menjadi format yang dapat berjalan di browser. Episode ini juga menyinggung rencana Chrome untuk mengintegrasikan model AI secara built-in (disebut Gemini Nano) guna mengurangi kebutuhan download model yang besar—sebuah strategi menarik yang membedakan pendekatan Google dengan browser lain seperti Brave dan Arc yang masih mengandalkan server-side AI. Diskusi juga menyoroti pro dan kontra implementasi on-device AI, termasuk keuntungan seperti cost saving, latensi yang lebih rendah, dan privasi data yang lebih terjaga, di sisi kekurangan seperti beban download model yang besar (hingga 1-2GB) dan tuntutan perangkat yang mumpuni. Use case yang dianggap paling relevan untuk pendekatan ini adalah aplikasi dengan model spesifik seperti background removal, makeup tester, atau validasi KTP yang memprioritaskan privasi, dibandingkan aplikasi chat umum yang masih lebih efisien menggunakan server-side AI.
Poin-poin Utama
- •Tema Utama Google I/O 2024 adalah AI - Dua tahun terakhir, Google fokus besar pada pengembangan AI di semua lini produk dengan branding Gemini sebagai keluarga model yang mencakup berbagai variasi untuk use case berbeda (multimodal, code assistant, dll).
- •Arsitektur Web AI: Server-side vs Client-side - Ada dua pendekatan utama: cloud AI (proses di server, request-response) dan on-device AI (proses di browser menggunakan WebAssembly dan WebGPU). WebAssembly dan WebGPU menjadi teknologi kunci yang membuat AI bisa jalan di browser.
- •Keuntungan On-Device AI: Cost Saving, Latensi, dan Privasi - Tiga keuntungan utama: hemat biaya (tidak perlu kirim data ke server), latensi lebih rendah, dan privasi terjaga karena data tidak keluar dari device user. Ini sangat penting untuk aplikasi yang menangani data sensitif.
- •Kekurangan On-Device AI: Download Model & Beban Device - Kontra utama: user harus download model (bisa 1-2GB), dan memerlukan device yang mendukung WebGPU. Perlu profiling user dan fallback ke server-side jika device tidak mendukung. Use case yang justify download besar adalah aplikasi spesifik seperti AR makeup, furniture placement, atau deteksi KTP.
- •Transformers.js: Library JavaScript untuk Machine Learning di Browser - Library yang memungkinkan model Python (PyTorch/TensorFlow) dijalankan di JavaScript. Mendukung berbagai task seperti sentiment analysis, object detection, sketch recognition, dll. Menjadi foundation untuk tools seperti Visual Blocks.
- •Visual Blocks: No-Code/Low Code untuk Prototyping AI - Tools berbasis drag-and-drop untuk bikin pipeline AI dengan visual interface. Memudahkan prototyping tanpa coding langsung, cocok untuk demonstrasi cara kerja model AI dengan berbagai use case.
- •Chrome akan Include Built-in On-Device AI (Gemini Nano) - Chrome berencana menyertakan model AI langsung di browser, mirip konsep Docker layer. Use case utama: translation, summarization, code assistant. Ini akan mengurangi ukuran download karena sebagian model sudah ada di browser, dan bisa digunakan untuk aplikasi offline.
0:00*musik*
0:11Halo, halo, halo. Selamat malam.
0:19-Selamat malam. -Selamat hari Selasa.
0:23Walaupun sekarang kita bukan hari Selasa.
0:27Walaupun kita rekamannya bukan hari Selasa, tapi temen-temen nontonnya di hari Selasa.
0:32-Hari Selasa, iya kan? -Hari Selasa, waktunya apa?
0:35-Waktunya nge-rollin web. -Nge-rollin web.
0:39Harusnya hitung dulu ya, one, two, three, gitu kali ya.
0:43Yaitu, ada countdown-nya kayak tadi.
0:45Iya, harus ada countdown-nya.
0:49Nah, iya kita rekaman lagi karena saya-nya gak bisa berhalangan, jadi gak bisa live.
0:56Jadi, malam hari ini kita sesi rekaman.
0:59Kita mau bahas apa malam ini? Kita mau lanjut kali ya.
1:03Bahas kemarin kan belum tuntasnya tentang AIO ya.
1:06Nanggung tuh, dari AIO 2024 apa aja, update-update-nya.
1:11Kemarin itu kita bahas kebanyakan seputar web.
1:15Walaupun kita udah sempet bahas sekilas tentang AIO juga ya.
1:19Cuma lebih banyak ke, kayak Baseline, Interop, CSS, JavaScript.
1:26-Speculation API, Speculation Rule API. -Speculation Rules API.
1:33Iya, Speculation Rules.
1:35-Sama itu ingat gak, yang di DevTools? -DevTools yang suruh ikuti.
1:41-Iya, yang gagal demo pertama kali. -App Angular Mobile.
1:47-Iya. -Penggular Mobile.
1:49Apa namanya, itu ya, Insight, DevTools Insight ya.
1:55Itu udah dipersenjatai dengan AI juga.
1:58Dan memang kayaknya tema utama dari Google I/O tahun lalu sama tahun ini ya.
2:05-Dua tahun. -Jauh dari AI ya.
2:07-Dua tahun terakhir. -Dua tahun terakhir.
2:10Dua tahun terakhir semuanya tentang AI.
2:12Ya, sepertinya Google sedang mengejar ketertinggalan ya dari perusahaan-perusahaan lain ya.
Lihat transkrip lengkap
2:18-Iya, karena tuntutan. -Walaupun sebenarnya, iya.
2:22Walaupun sebenarnya, movement atau pergerakan ini ya dimulai sebenarnya dari Google juga.
2:28-Iya, gak ketinggalan. -Si AI ini kan.
2:31-Aduh. -Bikin, apa, bikin GPT, dulu GPT-1 ya.
2:37GPT-1 itu kan mulainya dari paper yang diterbitkan oleh engineer Google.
2:41-Attention is all you need. -Attention is all you need, iya.
2:45-Google-nya kayak cikgu diinget. -Gampang diinget ya.
2:49-Sekarang semua model yang pakai, apa, belakangnya T, GPT, blablabla apapunnya ada T, Transformers,
2:55itu berdasarkan konsep yang dulu dirumuskan.
2:59Cuma mungkin bukan ketinggalan di AI-nya, tapi buat produk user facing-nya kali ya.
3:06Sekarang yang lagi tiga berbesar-besaran sama Google.
3:09Nah, sekarang Google baru jor-joran semua lini produk fitur yang ada AI-nya disebut sebagai Gemini kan.
3:20Ada yang apa namanya, yang gemini.google.com, ada apa lagi itu, ada Gemini sebagai LLM-nya,
3:30modelnya ada yang Gemini di cloud, yang pakai Vertex lah, ada Gemini yang ada di Gmail, di Google Docs, di mana-mana, namanya Gemini.
3:43-Sama satu lagi yang Google Open Source. -Karena kan emang diingetnya tertulis Gemini itu a family of models.
3:49Jadi kayak Gemini itu kayak payungnya, modelnya banyak, variasinya, terus kayak ada yang tokennya berapa lah,
3:58apanya kemampuannya lain-lain, ada yang multimodal, ada yang buat code assistant, blablabla.
4:04Nah, terus adeknya, adeknya Gemini ada Gema ya.
4:09Gema, itu versi open access-nya, bukan open source.
4:14Nah, ini muncul juga, unik sih.
4:17Jadi branding-nya mereka, mereka menekankan bahwa Gema itu bukan open source.
4:23Nggak tahu kenapa, nanti cari artikelnya deh. Jadi apa, tapi open access.
4:30Open access dalam arti, ya di upload ke Hugging Face, model-modelnya bisa diakses.
4:37Cuma open source itu katanya ternyata berkait juga ke atribusi, terus distribusi kalau digunakan ulang.
4:44Jadi mereka nyebutnya open access. Gimana-gimana?
4:48Lebih tepatnya, ini sih kalau misalnya dibilang open source berarti training data
4:54yang untuk men-training Gema-nya juga di open. Tapi enggak kan.
4:58Oh gitu, iya iya.
5:00Yang di open itu kan cuma binfile-nya aja.
5:03Iya, udah jadi binary gitu, tinggal pake.
5:06Iya, iya, dan layer-layernya sudah ada input layer sama output layer-nya bisa dimodify,
5:17tetapi layer tengahnya udah nggak bisa, itu modelnya itu sudah seperti itu.
5:24Kayaknya semua juga begitu ya yang dari Gema?
5:31Grok sampai ininya loh, sampai training data-nya di open.
5:38Oh, grok ya. Grok-nya Twitter, yes.
5:43Oh iya kalau itu open source, betul. Kalau itu open source.
5:46Kalau yang meta juga open access, dia tidak open source.
5:50Mistral juga open access kan ya.
5:56Open source, coba kita lihat.
6:01Mistral dari apa C? Open source, our three open source model.
6:07Open source berarti kalau mistral, ada yang open source, ada yang model jadi
6:15kayak gemini juga kan si mistral ini kan?
6:18Ada yang namanya mistral, ada yang mixtral, bener nggak?
6:22Kenapa namanya berbeda-beda?
6:25Mistral itu yang siap pakai. Mistral itu yang service, berbayar, jadi SDK kayak geminilah, kayak gemini.
6:38Miku-nya kita langganan, kita dapet API key. Open pun ada macam-macam ya varian-nya.
6:46Ada open source, ada yang open access.
6:52Phi 3 yang dari Microsoft tuh, ada juga. Tapi nggak tahu, itu kayaknya open access sepertinya.
6:59Nggak sih, udah phi 3 udah cukup lama, yang lama kan phi 2.
7:09- Oke. Ya, jadi malam hari ini kita kembali membahas AI. - Nah hubungannya sama kerjaan kita sebagai web dev ya.
7:19Apa aja yang istilahnya, pekerjaan kita terdampak apa aja sih?
7:23Apa aja yang bisa kita manfaatkan untuk membangun aplikasi web?
7:29Atau ada aplikasi-aplikasi web yang ditenagai oleh AI, kira-kira ya?
7:34- Khususnya yang di-announce di I/O kemarin? - Khususnya yang di-announce di I/O.
7:39- Kalau itu luas banget ya, kalau semua. - Luas.
7:43- Tapi kan ini berguna sih, ini kayak sampel aja. Maksudnya kalau Google bikin produk yang A, B, C,
7:50itu kan pasti berarti kecenderungan trendnya ke arah SIPU.
7:54Kalaupun kita nggak pakai produk Google, misalnya nanti pakai produknya open AI atau apalah,
7:59iya dijamin kita tetap bakal berharap untuk bikin produk yang,
8:05maksudnya jenis-jenis aplikasi yang setara lah, yang mirip.
8:10- Oke, nah yang pertama kita akan bahas, ya ini recapnya ya. - Zoom in.
8:16- Zoom in, kurang gede. - Isi artiklenya.
8:22- Isi artiklenya. Kok jadi bunyi ini? - Kenapa bunyi duit?
8:26- Nah, lihat ini. Ini ya, jadi wrap-up kesimpulan atau beberapa hal yang menarik ya.
8:38Yang pertama adalah, ini ada videonya, teman-teman bisa nonton juga.
8:42- Nonton sendiri. - Judulnya adalah The Future of Web Apps.
8:48Nah, ini apa aja yang akan dibahas. Yang pertama adalah, yang di highlight itu bagian dari WebAssembly dan WebGPU.
8:57Kenapa? Karena ternyata sekarang kita bisa mengakses dua apa ya, bisa punya dua jenis app atau dua arsitektur.
9:08Yang pertama adalah yang server-site yang memanfaatkan AI tapi di cloud.
9:12Jadi proses generasinya, kalau gen-AI kan proses generasinya, itu terjadi di cloud atau di server.
9:20- Service. - Dari web itu cuma kirimkan data, text, semuanya text sih.
9:28- Atau gambar. - Gambar pun diubah jadi base64, text juga.
9:33Jadi semua yang lewat itu text. - Pasti text. Terus habis itu ya responsnya bisa bentuk text,
9:40bisa bentuk gambar walaupun ini tetap itu ya, binary ya, atau text ya.
9:44Tapi intinya adalah, ada proses pengiriman data ke server, dan proses server mengirimkan data kembali ke klien.
9:53Klien di sini. - Responsnya juga di aplikasi kita.
9:56- Request response. - Request response.
9:59Mau web, mau mobile, itu juga bisa ya, bisa memanfaatkan arsitektur cloud AI.
10:06Nah, ada satu arsitektur lagi yang muncul, yaitu proses semua prosesnya terjadi di sisi browser atau di sisi klien.
10:18Nah, di sini ada apa yang di highlight adalah Jemawweb ini, jadi open model.
10:26- Itu yang lagi pengen saya pulik, Jemawweb. - Guys, open model dari Google yang bisa jalan di browser.
10:35Menggunakan user device. Ini kan web assembly ya, kita udah pernah bahas cukup dalam tentang web assembly,
10:41apa yang membedakan antara web assembly dengan biasa gitu ya.
10:46- Nah, itu penjelasannya kayaknya di atas deh. Ke atas dikit. - Ini ya.
10:52- Scroll ke atas dikit, atas lagi. Nah, itu kan yang ditekankan adalah klien site di browser web,
11:02pakai, bisa pakai CPU atau GPU. Nah, terus itu teknologinya wasm sama web GPU.
11:09Jadi, kalau fokusnya dari cloud ini, ya itu, apa, web assembly sama web GPU. Lanjut.
11:18- Cuman ya, Jemawweb di talk itu belum ini loh, dia nggak ngasih tau loh caranya,
11:24mungkin karena saya belum explore lagi lanjut. Ada yang sudah lihat antara yang tadi?
11:29- Belum. - Ada nggak sih? Belum ya?
11:32Cuman ngasih kayak ini link wasm, ini link Jemawweb, silahkan pakai gitu.
11:39Belum coba sih saya. - Ada kayaknya, sekilas liat nonton videonya ada kayaknya.
11:45Jadi di video ini atau di artikel ini ada 3 hal yang utama, yang pertama adalah bagaimana cara menjalankan LLM di browser.
11:53Kedua, ada sebuah tools atau aplikasi baru yang namanya Visual Blocks, ini seperti no-code gitu tapi buat LLM ya.
12:05Yang ketiga, bagaimana kita sebagai web developer bisa menggunakan JavaScript untuk berinteraksi dengan web AI
12:13atau si LLM yang jalan di browser gitu ya. Yang pertama dulu ya, ini GEMA ya.
12:19Tapi ada caveatnya loh nanti, mungkin kita bahas caveatnya tentang si LLM di browser ini.
12:25Karena nggak semua model bisa gitu.
12:30Yang baru bisa itu GEMA sama Falcon atau apa gitu disebut, ada beberapa.
12:36Nanti kita bahas. Mungkin ada di artikel ini. Mungkin ada.
12:40Kalau nggak salah minggu lalu kita udah sempat running juga ya yang di browser ya.
12:46Yang LLM itu, udah sempat running juga. - Oh itu web GPU ya kita? Iya, betul.
12:52Iya, itu pakai teknologinya web GPU. Jadi kenapa ini bisa memungkinkan karena salah satunya adalah web GPU.
12:59Jadi browser punya access, punya free village, sekarang punya free village untuk mengakses GPU di komputer kita masing-masing
13:09atau komputer klien kita gitu, komputer yang mengakses aplikasi kita.
13:12Komputer yang membuka aplikasi kita dan dijalankan, LLM nya dijalankan di GPU masing-masing klien gitu.
13:23Kira-kira kayak gitu. Dengan LLM jalan di device, yang pertama keuntungannya adalah code saving.
13:36Sama seperti web assembly juga ya, code saving.
13:38- Nah berarti masuk pro dan kontra aja nih. Pro nya berarti kan ini nih. - Tapi memberatkan si user kita.
13:48- Nah itu kontra nya user harus membuat. - Iya, user harus mampu menjalankan atau punya web GPU.
13:58Kalau nggak punya dia nggak bisa jalankan. - Bagi teman-teman yang belum nonton videonya,
14:05kalau nanti nonton videonya sebagai pe-contohnya yang dia sebut itu adalah bayangkan kalau kita punya
14:13aplikasi untuk video call yang ngeblur background. Iya kan? Yang sering kita pake, eh kan nih pake nih sekarang.
14:23- Ngeblur background, iya kan? - Iya dia bikin hitungannya ya, satu frame.
14:30Satu menit berapa frame dan kira-kira satu jam berapa kali meeting dan perhitungan.
14:40Berarti total-total contohnya satu tahun bisa 52 billion frame yang diproses oleh server.
14:51Yang artinya terjadi cost disitu. Ada cost gede banget ya mengirimkan data, terus proses server balikin data
14:58untuk ngerender frame yang ngeblur di web. - Iya bayangin berapa biayanya buat ini, kita aja baru 5 menit.
15:07Ini kan udah berapa frame kan yang harus diproses, bayangin kalau pakai service terpisah.
15:12Nah ini hal yang bisa digunakan bisa nge-leverage fitur di device client side kita sendiri.
15:21- Terus kedua, latensi kan? - Latensi, iya. - Jadi ada pronya tadi biaya, performa,
15:30maksud saya jadi nggak harus nunggu latensi, sama ketiga itu tuh privacy kan.
15:34- Privacy yang paling penting sebenarnya ini ya. Salah satu yang penting ya.
15:38Jadi data kita itu hanya data user, ya hanya berkutat di komputer user. - Di prosesnya di device user sendiri.
15:46- Gak dikirim. Ini berguna terutama di tempat-tempat yang punya undang-undang perlindungan data ya.
15:52Kan kadang urannya agak ketat, harus ada konsennya, mungkin sepertinya letaknya harus di mana.
15:59- Seperti UITE kita kan harus dihormati. - Emang UITE ngatur perlindungan data?
16:07- Ngatur bro, ngatur. Nanti kita undang ahlinya deh. - Ahli ya, ahlinya undang-undang.
16:17- Ya gitu. Nah itu pronya apa tadi, biaya, performa, sama latensi user.
16:25- Nah sekarang kekurangannya udah bahas pro, ya nanggung bahas kontra dulu.
16:33- Kontra nya ya tadi kan, memberatkan si user kan, user kita. - Beratnya dalam hal pertama harus download modelnya.
16:41Itu kan, maksudnya berat itu kan macam-macam. Pertama harus download modelnya kalau pakai model tertentu ya.
16:47Nanti cuma ada, kita bakal bahas lagi, ada yang udah built in. Nah itu pertama kalau pakai model custom,
16:54harus download modelnya. Kedua berat di itunya ya, tuntutan device-nya ya. Sekarang berarti tuntutan kayak apa?
17:02Kalau pakai device yang cradle mode. Kau mending-mending ini, potal agak tuntutan mungkin.
17:12- Dulu sempet gak kalau misalnya waktu masih awal-awal AI ini, kalau kita pakai zoom,
17:18mau buat ganti background, dia kan masih berat banget dan dia hanya memperbolehkan kita pakai green screen.
17:27Jadi gak bisa pakai background sembarangan. Ya, jadi AI-nya masih di train hanya pakai green screen.
17:36Jadi nanti, bahkan ada itu di test dulu kalau di enable, bisa gak gitu. Dan pakai CPU, resource-nya gede banget.
17:46Jadi bisa panas CPU-nya. Sumpat keluar juga, after itu keluar ada satu aplikasi yang untuk video call begitu,
17:58yang terparti, jadi dia mengganti kamera sebelum di plug-in ke zoom atau ke jimny, segala macem.
18:06Saya lupa nama aplikasinya itu. Dan dia lebih mewah. - Snapcam? Snapcam bukan? - Bukan, apa AI gitu.
18:19Lupa deh, sudah kan gak pakai lagi. - Tapi dia fungsinya memproses image ya berarti?
18:27Memproses image langsung dari CPU dan GPU, dia lebih langsung di device, jadi gak dikirim ke server.
18:37Bahkan bisa voice isolation juga jaman itu. Kemudian ternyata si zoom makin mahal, makin baik, atau AI ini makin mahal.
18:48- Itu di APCC kali sih. - Iya, bahkan Google Meet lebih bagus lagi kan? Lebih keren lagi kan?
19:00- Iya, sudah jauh lebih baik kan. Belum lagi device, dulunya kameranya 480p, kemudian 720p, sekarang sudah 1080p kan.
19:17Jadi makin besar image-nya, makin berat juga kerjanya. - Berarti tuntutannya tinggi untuk user kita,
19:25kalau kita bikin aplikasi untuk production ya, kita harus profiling, kita harus tahu kan user kita jenis yang kira-kira kuat atau enggak alatnya.
19:35Soalnya kan risikonya juga dibagi dua. Either device-nya user gak support sama sekali, jadi gak bisa pakai.
19:46Itu negatif juga satu. Atau alternatif kedua, sebetulnya kalau pun gak jalan di GPU, bisa jalan di CPU ya yang kita bahas kemarin itu minggu lalu.
19:58Cuma misalnya berat, itu panas, hang di tengah-tengah. Itu secara UX jelek banget dan frustrating kan, mengganggu.
20:09Mungkin misalnya di tengah-tengah meeting lagi penting-pentingnya karena prosesnya terlalu berat,
20:14laptop-nya atau HP-nya user hang. Nah itu berarti salah satu hal negatif yang perlu diantisipasi ya.
20:24- Mungkin ada fallback-nya, oh kalau bisa dicek dulu, oh ini CPU kurang mumpuni, misalkan mau gak mau harus pakai server-side lagi.
20:33- Oke service. Ada videonya di I/O yang bahas soal itu.
20:40Yang videonya Kenji dan Maud. Nah cari sendiri lah nanti.
20:46Pokoknya konsepnya emang seperti itu. Jadi cuma masalahnya sih kalau itu karena demo lebih simpel ya.
20:55Jadi cuma kalau supported pakai on-device di browser, pakai yang on-device.
21:03Kalau pakai browser lain, misalnya dibuka dari bukan Chrome, karena itu konteksnya buat built-in AI yang di Chrome sih agak lain.
21:11Tapi misalnya bisa diterapin juga kalau misalnya gak support, ya udah, nge-call service kayak biasa kayak yang sebelumnya.
21:18- Betul. Jadi di sini kita bisa memanfaatkan Gemma 2 billion parameters ya, bisa di-download tersedia di Kaggle.
21:28Kemudian dari sisi, ini dari sisi browser-nya ya, Chrome ya, ada menyediakan interface API ya.
21:38- Dan itu menariknya bisa dipakai bukan cuma buat Gemma, bisa dipakai buat itu.
21:44- Iya, buat Microsoft V2, Falcon RW1B, Stable LM3B.
21:51- Iya, ini maksud saya. Yang baru supported itu baru ini. - Nah, kalau yang lain, kalau ngerti cara convert-nya,
22:01konon bisa di-convert juga model lain. Cuma masalahnya, ini bukan portakone yang umum buat web-dev.
22:09Ini bukan ranah web-dev ya, pakai Python, MediaPipe. - Tapi ujung-ujungnya apa? Kalau kalau gak salah,
22:21dia bisa convert-nya meskipun mau, ya saya gak tahu mau coba lagi kenapa bisa atau tidaknya.
22:27Bisa gak sih convert-nya pakai TFJS bisa gak sih? Gak tahu ya.
22:34- Di videonya itu diterangin sih, apa, nge-convert-nya gimana. Cuma gak masuk karena gak paham.
22:43- Tahu saya dia bakal di-convert jadi TF Lite sih sebenarnya ujung-ujungnya. - Oh gitu?
22:48- Iya, TF Lite ini kan? - Iya. Semua model yang bisa di-convert jadi TF Lite itu ya untuk ujung-ujungnya,
22:55karena belakangnya itu jadi TensorFlow.js tetap. Di belakangnya itu TensorFlow.js yang bisa ngelod TF Lite.
23:04TensorFlow.js gak bisa ngelod model-model yang keras-keras model itu gak bisa langsung harus di-convert.
23:11Itu yang setau saya mungkin saya salah. - Kayaknya iya. Kayaknya benar.
23:19- Iya kan? - Betul, betul. - Dan saya pernah nge-convert itu pakai Python.
23:25Gak mesti harus pakai Mediapipe ya. Saya pernah nge-convert itu pakai TensorFlow yang di Python untuk nge-convert itu.
23:35Cuman ini sedikit, bukan sedikit, totally mungkin sudah berbeda banget sama pengetahuan saya 3 tahun yang lalu untuk nge-convert-convert model ini.
23:45- Kalau misalnya kalau yang contoh simple-nya, ada demo-nya tuh? Yang dari Tok itu dan dari artikel itu kan tadi ada video yang contohnya.
23:58Ada demo-nya? Coba dibuka. - Ada demo-nya?
24:03- Iya, di private chat. - Yang mana? Yang screenshot?
24:07- LLM Inference. Gak, yang paling bawah. - Oh, oke.
24:12- Inference itu apa sih sebenarnya hatinya? - Menebak.
24:17- Nah, ini kodenya. - Yang belum tahu?
24:22- Gak tahu. Itu yang didemo-in di talk-nya Jason Maes sama Nali tadi.
24:31Maksudnya mereka bilang inference tapi gak ngejelasin in detail inference itu apa.
24:37- Wait, sebentar. Barusan saya coba si ini kita pakai tools apa?
24:45Pakai tools Streamyard kan? Tadi saya coba background-nya di blur sama touch-up experience beberapa saat.
24:58Dia pakai GPU loh. Berarti si Streamyard ini pakai web GPU. Kelihatan GPU saya ini turun.
25:07- Naik. - Naik-turun ya?
25:10- Tadi naik. Setelah saya matiin turun. - Kelihatanya udah jadi standard practice sih.
25:17Kalau Zoom dan Neve pakai kayak gitu, ya kemungkinan Streamyard dan lainnya juga semua bakal pakai kayak gitu juga kan.
25:25- Oh, ini bisa dijantar ya? - Nah, itu kode demo-nya.
25:29Ya bisa. Ya live demo-nya juga bisa tuh. Buka link yang di bawahnya di private chat.
25:35Kalau pengen lihat kosnya bentuknya kayak gimana. - Oke.
25:39Kita lihat ya. MediaPipe Studio Web Apps.
25:46Nah, itu yang itu screenshot-nya yang tadi ada di artikel IO Crap App itu kan. Ada screenshot. - Yang ini, yang ini. Yang di atas ini. Yang ini kan.
25:56- Atasnya. Aha, iya. Nah, cuma itu kan video doang. - Terus sekali.
26:00- Gak bisa dicoba beneran. - Wait, Mas Tiza. Coba buka DevTool-nya sekarang.
26:05- Wait, wait. Jangan pencet apa-apa. - Buka DevTool. Karena saya pengen tahu, saya pengen tahu model-nya segera apa di network.
26:14- Gak, kita harus download dulu sendiri. Udah punya kan? Itu model selection. Choose a model file.
26:20- Iya, sengaja. Biar kelihatan di kanan. Jadi jangan di-select dulu. Sekarang boleh select kan?
26:25- Ya, select. Download dulu ya. - Download dulu ya?
26:28- Download dulu. Jadi itu kita literally download dulu. - Oh.
26:33- Oh. - Iya.
26:35- Bukanya udah punya. Mas Tiza. - Yah.
26:38- Belum ya? - Hah? Punya ya?
26:40- Gede loh ini. - Udah pernah pakai kan?
26:42- Udah pernah pakai kan? - 2 giga. Berapa giga nih?
26:45- Gak tahu. - Or just download model file by preferring with Google or email.
26:52- Email-nya Mas Tiza di zafahmi@gmail.com. - Iya.
27:00- Luh. Oh, ada agreement segala ya. - Harus isi dulu konsen.
27:07- Iya. - Konsen.
27:12- Duh, kesini lagi dia. - Responsibility AI.
27:17- Responsible AI. Download as star. Itu download yang bawah.
27:23- Bawah deh. - Download, tar.
27:25- Click download. Click download. Tadi. - Uh, 1,35 giga.
27:31- Nah, terus paling bawah. Nah, itu dia.
27:34- Itu light loh ini-nya. TensorFlow light. Tadi. - Iya.
27:39- Itu tuh, tuh, tuh. - Itu kecil ya.
27:40- Itu kan TensorFlow light tuh. - Iya, itu yang kecil.
27:44Ada light 2B, 2 billion GPU, INT4. Ada yang 7B. 7B berapa besar ya?
27:52- INT4 tuh artinya apa ya? - Integer.
27:58- Integer. - Kalau saya taunya Q4 itu kan quantization.
28:04- Quantization. - Quantization.
28:06- 4 bit. Kalau INT apa ya? - Iya.
28:12Oke. Sambil menunggu, lagi download. Nggak tahu bisa selesai apa nggak.
28:17Ini kan ada Web Elementor Inference API kan. Ini tuh apa ya? Google AI Edge.
28:26- Edge itu berarti on-device ya. - Nah, ini nyebelin sih.
28:30Maksudnya, kita kan dulu Edge Worker, blablabla. Itu kan maksudnya server yang kayak
28:36disentralize kan, yang bisa ada replikanya di berbagai tempat.
28:40Nah, ternyata apalagi kalau di dunia AI, apapun yang ada kata Edge, itu maksudnya on-device.
28:47- Oh, oke. - Nyebelin ya.
28:52Nyebelin, apalagi ada browser namanya Edge.
28:57Dulu setahu saya itu, Edge itu DCDN. Karena di Edge Computing, DCDN kan.
29:04- Oh, Edge Computing. - DCDN kan maksudnya distribute.
29:07Jadi, computingnya kita itu bisa di Edge, jadi nggak perlu ke load balancer.
29:15Jadi, anggap image resize, tahu ya. Jadi, kalau misalnya image kita besar,
29:25dan kalau di web mau pakenya resize jadi yang kecil karena source set,
29:31itu bisa dilakukan di Edge Computing. Jadi, di URL kita yang di Edge,
29:37bisa ngeresize image di Edge itu, jadi nggak perlu balik ke server side.
29:44Itu bisa. Terus ada browser namanya Edge.
29:50Apalagi kalau yang namanya Edge. Sekarang Google AI Edge.
29:57- Bukan cuma Google. - Bukan cuma Google sih.
30:00- AI-nya. - Chat GPT juga Microsoft-nya lah.
30:04Itu punya produk Edge juga. Lupa nama panjangnya apa, cuma pakai istilah Edge.
30:10Jadi, bukan computing AI-nya ada di CDN lagi, tapi di on-device.
30:16- Ini mungkin apa ya pemahaman ekstrimnya. Maksudnya kayak bego-begoannya.
30:22Bentuk CDN yang paling ekstrim adalah semua device user itu dianggap sebagai resource.
30:30Jadi, CDN kan kayak buat ngeserve dan buat pemolah yang disebar jadi banyak.
30:37Nah, ini device user semua dianggap sebagai CDN. CDN untuk satu orang, CDN untuk dia sendiri.
30:44- Oke. - Ada Wasm-nya 10 mega.
30:48- 10 mega ini Wasm. GNI Wasm internal. - Terus dia baca 1 giga itu model ya?
30:56- Iya, 900 sekian mega. - Nah, itu tadi yang dokumentasi LLM Inference itu,
31:03ini adalah dokumentasinya kode GitHub yang tadi, ingat kan tadi ada GitHub yang sample demo-nya,
31:10yang live demo-nya lagi kita jalanin itu. Jadi, 3 hal ini sepaket.
31:16- Yang ini ya, ini demo-nya. - Masih belum...
31:20- Masih masih... - Iya kan LLM Inference.
31:24- 1 giga untuk aplikasi kita sih sakit ya? - Ini error tapi.
31:29- Jadi user lah, "Ya, error. Kok error?" - Kayaknya salah deh Mas Liza.
31:33Mas Liza download-nya TAR kan yang choose mode-nya TAR.
31:36- Harus di-unzip dulu ya? - Oh, unzip ya.
31:39- Untar, untar dulu, untar. Universitas Taruh Manegara.
31:43- Universitas TAR GZ. - TAR GZ.
31:48Salah ya, kita refresh dulu ya, oke. Berarti ini implementasinya ini ya?
31:55- Iya. - Engga.
31:59- Iya ini contohnya, maksudnya ini kode-nya. - Nah, yang saya nggak suka itu adalah dia
32:04sudah langsung JS Deliver itu loh. Gak ada...
32:09- Mau sendiri ya, mau lokal ya, mau lokal. - Iya.
32:14- Belum cari sih, saya baru kayak... - Eh, ada bentar.
32:18Tadi di dokumentasi LLM Inference-nya, coba dibuka. Kayaknya tadi sekilas liat NPM install.
32:24- Nah, zoom-in sambil turun. - Oke, nice.
32:29- Tapi tetap di bawahnya, di bawah JS Deliver. - Sama nggak sih? Kayaknya sekilas kayaknya sama.
32:34- Ya, to deploy, for all NPM package for local staging. - Sama sih, sama.
32:40Kenapa? Kenapa nggak bisa dipublish? Karena biar nge-berat.
32:44Tuh, tulisannya soalnya install the required package for local staging,
32:50tapi bawahnya to deploy to a server, suruh pakai JS Deliver tadi itu.
32:55Kenapanya nanti, nanti di page kita tanya sama Mas Jason.
33:01- Kita coba sendiri ya. - Ya selain coba sendiri,
33:05kalau kenapa kan kita kedu tanya ya ke orangnya.
33:09- Jason Rush. - Jason Rush.
33:12Detek self-environment, GCS report. Apa ini? Belum jalan apa-apa, udah muncul macam-macam.
33:20Tuh udah jalan tuh, GPU model, berarti udah detek GPU tuh.
33:26Eh, wait, wait, wait, console, console, console. Yah banyak banget analitiknya.
33:31- Yaiyalah. - Graph Successful is start running, terus kemudian.
33:37- Dia detek GPU, fast tuning, we know grad, apalah gitu.
33:46- Eh udah bisa tuh, coba.
33:49- Gak ada intinya, nggak ada enter lah. - Coba enter langsung bisa nggak?
33:54- Submit button. Ini text area? Oh bukan ya.
33:59- I am a large language model, blablabla. Coba, what is the meaning of life?
34:05- Who is even Christian Tone? Nggak bisa cari online life dia.
34:09- Oh ya nggak bisa ya, lupa. Kirain gamer ya waktu itu.
34:13- Tuh kan I am enabled to... - 1 giga minta maco-maco.
34:22- Unable to profile. - What can you do?
34:27- Gak bisa semua. - Tapi kencang banget ya. Maksudnya beda ya experience-nya ya.
34:37Yang lokal sama yang pakai service ya.
34:39- Mas Lisa pakai ini nggak sih? Pakai Mac atau pakai apa nih? Windows?
34:47- Pakai Windows, Windows. - Oh, task manager bisa kelihatan GPU ini nggak sih?
34:52- Bisa, bisa. - Tapi harus share screen.
34:57Bukan nggak bisa share Windows doang. - Oh iya boleh.
35:00- Pengen tahu bisa kelihatan nggak sih dia. - Nanti coba kita kasih pertanyaan yang susah.
35:07- Share screen yang ini ya. Tuh udah kelihatan kan? Eh belum.
35:13- Udah. - Udah.
35:16- Oke, ada yang GPU-nya nggak? - Ada, ada. Ini diatur dulu.
35:22Ini GPU-nya ada disini kalau nggak salah. Nah ini GPU.
35:30- Nah itu. - Nah itu juga udah spek kan tadinya nggak apa-apa.
35:36Naik banget pas loading awal ya. Abis itu gini-gini aja. Coba tanya lagi.
35:42- Segini aja cukup ya. Oke tanya lagi apa? - Cukup, cukup.
35:45- Apa yang susah? - Kalau subyektif dia.
35:52- Which one come first, chicken or egg? - Which one come first, chicken or egg?
35:57- Chicken or egg. Tuh naik tuh. - Oh naik ya rasanya.
36:10- Naik tuh, ada spike kan. - Apa ya? Explain the story of JavaScript.
36:16- Dia nggak pernah bisa jawab apa-apa. - Dia satu giga sih.
36:21- Story about JavaScript programming language. - Language.
36:29- Language. Weh ini bisa. - Weh naik tuh GPU-nya tuh.
36:36Berarti betul dia udah pakai GPU. Iya kan.
36:44- Coba minta accept deh. - Kalo gitu prosesnya selesai GPU-nya turun.
36:51Eh kayaknya tadi di drop down-nya ada intunya deh. Coba scroll ke atas.
36:56Scroll ke atas. Nah klik di "Choose a model file" selektornya. Nah dia indikasi kok dia jalan di mana.
37:08- Web GPU tuh. - Udah dia indikasi jalan di web GPU.
37:12Dan betul udah di cross-check. Kita minggu lalu minta resep apa sih yang dia nggak bisa?
37:17Abis itu kita minta resep pancake dia bisa. - Iya, resep.
37:23- Pizza. - Oh gado-gado.
37:27- Oh iya. Give recipe for gado-gado. - Nggak bisa dia bahasa Indonesia.
37:32- Give me recipe. - Iya nggak minta resepnya. Recipe.
37:36- Recipe. Recipe. - Recipe. Recipe.
37:41Recipe for gado-gado.
37:43- Indonesian food called gado-gado. - Gado-gado.
37:49- Ini ya? - Iya.
37:52- Unable. - Sekarang minta resep pancake.
37:56- Pizza. - Pizza.
37:59- Pancake ya? - Unable.
38:02- Gak bisa juga tuh. Oh semua resepnya nggak bisa kalau ini kayaknya ya.
38:06- I am unable to provide information description. Oh dia nggak dapat konteks ini gitu.
38:10Maksudnya dia nggak ngerti bahwa kita minta resep gitu.
38:13- Ya nggak bisa. I am not able to access external information or engage in culinary activities.
38:20Terus dia nggak punya culinary data. Recipe for pancake coba.
38:27- Bisa. - Pancake bisa.
38:30Ini kayaknya pancake tuh built in the training model semua LLM apa ya?
38:35- Taku. - Pizza aja nggak bisa gitu.
38:37- Bisa. - Taku bisa.
38:40- Coba pizza. Give me recipe for pizza. Mungkin harus pake give me recipe for it.
38:45- Dia nggak bisa what about pizza. - Oh dia nggak bisa inget sebelumnya ya?
38:50- Iya konteks tuh pizza bisa. - Iya.
38:53- Cuman dia nggak ngerti maksudnya kita resep. - Maksudnya nggak ada konteks.
38:56- Gak bisa chat story. - Gak ada konteks.
38:59Itu pizza kan Eropa ya? Kalo Asia apa ya? Selain gaduh-gaduh.
39:08- Noodles. Chicken noodles. - Ramen.
39:12- Ramen noodles. - Bisa.
39:15- Bisa. - Tuh bisa.
39:17- Coba. - West Africa.
39:23- Mas Riza tulis I like Padilla ice cream. - Indomie tau dia.
39:28- Originally from West Africa. - West Africa.
39:32Training data macem apa ini?
39:39Coba Mas Riza tulis hello my name is Riza and I like whatever.
39:46- My name is Riza. - I like coffee.
39:49- And I like... - Indomie.
39:54- I'm glad you like Indomie. - Okay sekarang who is my name?
39:56- West Africa. - Who is my name?
39:59- What is my name? - Gak bisa.
40:02- Ini berarti satu an ya? - Gak bisa.
40:04Berarti mungkin chatnya ini kalo kita liat di source code dia gak embed chat history.
40:14- Gak embed. - Oh iya itu gak simple.
40:17Contoh ini contoh.
40:19Kita pengen bikin ya misalnya mau bikin chat interface yang kayak data.
40:24- Ini di share kan ya. - Kodonya di share.
40:28- Kodonya ada. - Dia tuh di GitHub tadi.
40:31Oke nanti saya coba modif sedikit bisa gak dikasih history.
40:36- Bisa. - Nah kalo kita kan harus dikirim semua kan.
40:40- Di apa? Kita harus kirim semua kan. - Kalau gitu coba Mas Riza balik ke ini dong.
40:45- Balik ke kodenya. - Kodenya.
40:50Kodenya ada disini.
40:53Ini text context.
40:57Partial result.
41:00Text context output. Partial result.
41:02- Romnya mana sih? - Bukan, bukan.
41:06Submit, loading the model.
41:09Bentar turun dikit ke bawah.
41:14Ini mana saat dia submit?
41:17- Saya cuma mau liat submit. - Generate response.
41:21Input value display.
41:24Input.value.
41:27LLM inference itu apa? Ini ya?
41:30Oh dari dia.
41:33Gak bisa kita lihat ya.
41:37Kita masukin promnya dimana sih?
41:40- Ini di form. - Output element by ID.
41:44- Oh create prompt option. - Begitu on click dia.
41:48Oh output.
41:51Oh generate response ya metodnya.
41:54Metodnya yang diimport dari JS Deliver ini.
42:00Ini tugas kita semua untuk explore lebih lanjut ya.
42:07Intinya adalah ini menggunakan LLM inference API dari Google AI Edge.
42:16Buka ini ada nggak yang diitunya?
42:19- Apa tuh? - Coba lihat NPM-nya dong.
42:22NPM JS media pipe itu ada source code contoh lain nggak sih yang disediakan?
42:29- Maksudnya LLM inference itu ada. - Oh lainnya GitHub lagi.
42:34Ini ya?
42:42Oh ada experimental lagi.
42:45Oke. Berarti file set resolver dulu, awesome.
42:54Terus modenya ya cuma begini doang.
42:59Iya sama kayak di dokumentasi tadi sih LLM inference.
43:05Prepare data itu, coba klik di kanan prepare data.
43:12- Serasa ini nggak sih? - Sesingkat itu.
43:17Early bake yang diburu hanya untuk IO Extended.
43:22- Pasti. - Tapi ini udah lengkap loh, udah lumayan banyak loh.
43:27Yang atas itu bukan buat web.
43:32- Bukan ini doang ya ini doang. - AI.
43:36Tuh ini doang itu juga hanya bagian yang web loh.
43:40- Yang ILS kan mungkin beda lagi. - ILS kayak gitu juga.
43:45Tapi pakai bahasanya apa lagi.
43:49Iya karena TF Lite itu bisa jalan juga di Android.
43:55Paling ya persis kayak gini, cuma maksudnya beda bahasa aja.
44:00Oke. Anyway, cukup kali ya kita bahas tentang ini ya.
44:06Cuma penasarannya tadi kan kita masih penasaran apa tuh LLM inference.
44:12Itu apa sih ada penjelasannya atau nggak ya minimal sekarang kita udah coba.
44:17Coba tanya, ini bisa juga topik nih.
44:20Oh iya tanya sih game. Tanya game tadi, what is LLM inference?
44:26- Pasti dia nggak ngerti. - Inference in context of LLM.
44:35- Oh bisa loh, dia bisa jelasin. - Nggak mau.
44:43Explain to me what is LLM like I'm 5.
44:53- Standard ya. - 5 year old.
44:56- 5 year old. - Nggak perlu ngapain.
44:59Children should not be learning LLM yet.
45:02They should learn alphabets.
45:05Panjang juga dia.
45:08- Eh bisa tuh. - Oh nggak, kayaknya nggak ya.
45:12Nggak kayak penjelasan anak 5 tahun.
45:15Extract meaningful information and pattern from massive data set of text and code.
45:21- Penjelasan buat orang yang cukup umur. - Predict, generate, and answer.
45:26Itu dia sebenarnya jawabannya, predict, generate, and answer.
45:30- Ya tapi at least dia bisa jelasin ya. - Iya, at least bisa jelasin.
45:35Nah ini bisa jadi topik untuk AI Extended.
45:39Kita bisa explore ya. AI Extended lagi, I/O Extended.
45:44- Bukan salah nama. - Sampai salah kebanyakan AI.
45:49- Aku sudah dapat ya. - Siapa tahu?
45:51- Saya sudah dapat topik. - Aku doang yang belum.
45:55- Jadi apa namanya ini? - Tapi belum selesai.
45:58Bisa membuka, bisa membuka apa ya? Opportunity.
46:03Kenapa? Karena ya satu bisa jalan di lokal, apa di lokal masing-masing,
46:07ya walaupun memberatkan masing-masing user.
46:09- Iya tadi dengan segala kelebihan dan kurangan kan. - Betul.
46:13- Trade off. - Iya.
46:15Dengan memungkinkan untuk bikin seperti ini, kita bisa bikin misalkan apa ya?
46:22Extension, tapi pakai LLM. Nggak perlu dari ke server gitu kan.
46:28- Tapi kalau misalnya saya... - 2GB, 1GB gitu.
46:32Saya masih nggak puas loh ada 1,2GB untuk user itu.
46:38- Iya. - Apa kesnya yang bisa justify
46:44minta user untuk download 1,2GB untuk jalanin aplikasi kita?
46:49- Betul-betul. Kemaren itu kalau nggak salah... - Multimedia banget sih sekarang use case-nya.
46:54- Kalau 1GB itu... - Aplikasi tar okay gitu.
46:58Kalau download-nya sih nggak masalah. Storage-nya yang mungkin sedikit berat.
47:07Kalau download 1GB mungkin kalau untuk traffic kayaknya udah normal ya.
47:11- Jaman sekarang ya 1GB, 2GB tuh kayaknya udah... - Di mobile loh mas.
47:15Belum tentu loh. Nggak sih. Kalau untuk mobile, sakit juga.
47:20Kalau PWA mungkin. Jadi sudah install sebelum dijalanin.
47:28- Sebelum dipakai, sebelum digunakan. - Dan user udah punya ekspektasi
47:32bahwa itu akan behave seperti aplikasi.
47:35Kalau misalnya gini, anggap aja pakai, saya nggak tahu pakai JMA.
47:41- Pakai multimodal deh yang bisa... - Gemini, vision pro.
47:48Vision gitu yang misalnya untuk makeup atau untuk augmented...
47:57- Apa namanya? - Reality.
48:00Reality. Oke, pakai, nge-coba ngedress something.
48:06Jadi waktu kita lagi buka aplikasinya ada loading-nya.
48:11Ada loading-nya dulu nih, tapi selama loading itu udah download model.
48:14- Nah itu worth it gitu ya. - Itu make sense.
48:18- Tapi kalau misalnya kayak... - Berarti yaudah, yaudah pakai buat itu.
48:24Ini kan sampelnya chat ya? Mau nggak sih ada chat agent 1,2GB?
48:33Loh, kan itu. Jadi sebelum kita load, kita consent dulu.
48:38Ini membutuhkan file 1,2GB untuk download dan storage.
48:43Mau nggak? Kalau nggak mau, balik ke server.
48:47Paling gitu, di awal. Sama aja kayak loading spinner gitu.
48:53Cookies atau apa? Cookies, consent?
48:56Nggak, tadi pertanyaan Irfan, misalnya use case-nya aplikasi jenis apa ya berarti?
49:00Yang bisa justify, nyuruh-nyuruh download kayak gitu.
49:06Maksudnya, oke lah ada pop-up gitu, ada dialog.
49:10Ini akan membutuhkan download seukuran kira-kira segini, download-nya lamanya segini.
49:16Nah, apa yang bikin user bilang, oke nggak nge-screenshot dan marah-marah di Twitter misalnya.
49:24Berarti harus ada use case yang justify.
49:27Yang butuh banget, yang membutuhkan sekali,
49:31tanpa harus apa namanya, ya dia mau nggak mau, suka tidak suka, harus download.
49:36Itu tadi sih, itu contoh yang makes sense.
49:41Itu tadi misalnya buat makeup atau pakean,
49:44atau buat itu yang apa, misalnya di rumah kita, terus orang jualan tokonya, webstore, jualan furniture,
49:52nyoba sofa itu gimana bentuknya kalau ditaruh di ruangan kita,
49:58yang gitu-gitu sih mungkin orang paham ya.
50:00Kalau buat chat doang sih kelihatannya nggak, belum.
50:04Lebih tepatnya, ya bukan lebih tepat, maksudnya kalau saya memikirannya ya,
50:09jadi lebih ke arah model yang lebih spesifik,
50:13contohnya ya itu tadi model untuk nge-blur background.
50:18Jadi kalau dia spesifik kan, jadi bukan general model,
50:22jadi model yang spesifik itu ini size-nya bisa lebih kecil.
50:27Jadi hanya bisa nge-blur background, hanya bisa untuk warna lipstick,
50:32hanya bisa mendetek mata untuk eyeshadow, maybe.
50:38Jadi lebih makes sense kalau yang hanya kayak ratusan mega sih.
50:43- Nah, gimana kalau spesifik dan multimodel ya, kalau cuma teks doang kelihatannya justru belum bisa terima.
50:52- Iya benar. Gimana kalau misalkan aplikasi yang, tadi kan keunggulannya adalah privacy kan,
51:00misalkan aplikasi yang membutuhkan foto KTP, kita sambil foto KTP.
51:05Untuk client-side itu sangat aman kan, maksudnya KTP-nya nggak akan dikirim ke server kan,
51:14tapi itu juga di sisi yang lain itu juga besar kan, mungkin nggak sampai 1 giga kalau untuk ngedetek KTP.
51:23Tapi berapa puluh atau berapa ratus mega kan. Itu makes sense nggak kalau itu.
51:29- Itu makes sense kalau privacy, kalau konsertnya privacy.
51:35Atau mungkin apa ya, kayak tools internal nggak sih? Kayak mau saya apa dashboard atau apalah di perusahaan.
51:43- Iya kalau tools internal pasti makes sense ya.
51:47- Internal, tapi kalau kayak tools internal besar kayak pernah lihat percakapan di Discord orang yang kerja di IKEA,
51:56itu kan mereka apa, networknya, kalau internal kita kan bayangin yang akses tuh 10 orang gitu.
52:03Cuma kalau se level IKEA itu kan sebetulnya user mereka ya itu banyak.
52:09Itu sangat banyak bisa diakses ratusan user kan, cuma internal mereka.
52:17Nah kalau kayak gitu kan privacy makes sense banget ya.
52:21- Mungkin pembahasan tentang LLM di lokal kita tutup dulu, kita masuk ke bagian berikutnya yang tentang visual block ya.
52:36Jadi nantikan eksplorasi kita, salah satu dari kita atau salah dua dari kita di IO Extended ya.
52:46- Siapa tahu. Atau salah lima, lima-limanya.
52:51- Talknya tentang ini semua. Nah ini masih nyambung sih, masih berhubungan.
52:58Cuma apakah dari perspektif yang beda, ada UI-nya menarik. Ini visual block itu low code ya.
53:06Low code apa malah bisa dibilang no code, cara no code untuk prototyping itu bermacam-macam jenis model yang ada
53:14yang tadi sempet dibahas event sedikit, model yang spesifik. Nah ini contoh-contohnya.
53:19Nah ini juga client-side, jalannya di device kita sendiri. Ini yang bikin timnya Google Machine Learning,
53:28MLAI, tapi kolaborasi dengan Hugging Face.
53:33Dan menariknya, di sini juga mungkin pas kita bahas tentang yang membuat ini memungkinkan terjadi,
53:45salah satunya adalah transformer JS ini.
53:48Transformer JS ini awalnya adalah library Python, kemudian dikonversi menjadi JavaScript JS.
54:03- Ada hubungannya sama itu nggak sih transformer film? - Film nggak ada sayangnya.
54:09- Jadi, loh kok github-nya mana? - Itu Senova itu loh, Senova.
54:18- Senova transformers JS. - Github.com/senova/transformersjs
54:34Awalnya dia developer lah ya, terus iseng-iseng bikin tools untuk konversi dari Python,
54:46awalnya dari Python namanya transformers juga, jadi transformer JS.
54:51Dia bikin semacam SDK-nya gitu ya, tapi bisa pakai JavaScript gitu. - Dia bikin abstraction layer di atas TensorFlow,
55:05jadi ini sebenarnya machine learning tools, machine learning library sebenarnya.
55:13Jadi kita bisa melakukan macam-macam, bisa transforming, bisa buat inference,
55:19bisa buat contohnya di sini sentiment analysis, bisa similarity search, dll.
55:29Dia pakai backend-nya Onyx runtime, jadi ini kayak standar gitu ya, standar kesepakatan antara
55:39ada TensorFlow, ada Python, ada macam-macam ya, jadi mereka jadi satu runtime supaya bisa saling berkomunikasi.
55:47Nah ini kemudian dia di-hire sama Hugging Face. Sekarang dia sudah menjadi karyawan Hugging Face.
55:57- Manusia juga bisa diakusisi ya. - Banyak sekali contoh-contoh.
56:04Tapi ya ini lagi, oh nggak, ini nggak pakai tapi, ini bisa pakai NPM, bisa pakai JS Deliver atau CDN ya. Ini ada contohnya nih, contohnya.
56:18Misalkan kita mau pakai space recognition, ada nih demonya, real-time sketch recognition, ada demonya.
56:27Dan ini ya, browser ya. Jadi tinggal pakai sebenarnya. - Tinggal pakai. Cuman dia loading dulu tuh kan, dia download dulu.
56:36- Ya download dulu. Nggak, tinggal pakai juga. Karena tadi kayaknya dibahas event-nya itu kan satu modelnya spesifik.
56:47Jadi kita nggak bisa tingkat reset atau nanya arti hidupnya. - Osian. Ini gambar osian ya. - Kedua mobil. - Beach. - Wah, kok pantai?
56:58- Pantai dimananya? - Gambar ini. - Pillow. - House. - House beneran. - Ini cooler. Kok cooler? - Kok cooler sih?
57:10- Kasih pintu aja. - Ini house. - Octagon. - Ya betul juga. - Table. - Ini ada pintu. - Kok mencet? - Hospital.
57:24- Rumah sakit apa sih kecilnya tuh. - Oke, ada contoh menggunakan red. In Browser Object Detection Vanilla JavaScript. Banyak ininya, demo-demonya.
57:40Untuk upload image ya. Jadi ini yang memungkinkan terjadinya yang tadi itu salah satunya. Node.js juga bisa jalan di server, bisa jalan di client, buat elektron, buat browser extension, macem-macem ya.
57:54Jadi ini salah satu yang membuat, kenapa? - Maksudnya masih belum ngerti. Transform ini berarti library untuk apa ini sebenarnya? - Macem-macem. Ini nih nih nih. NLP.
58:11- Saya lihat kodenya salah satu. - Computer Vision, audio, multimodal. Kalau yang saya pernah pakai, jadi kalau kita mau bikin RAG, Retrieval and Generation dari dokumen, kita mau cari yang ada di dokumen itu pakai transformer ini.
58:34Jadi caranya pipeline, terus pipeline di sini kita bisa definisikan pipeline-nya yang mau kita pakai fitur apa. Similarity Search gitu. Atau Sentiment Analysis atau apa.
58:46- Cuman itu fitur-fiturnya udah ada, udah spesifik ya? Maksudnya dia punya daftar apa aja yang bisa dipakai. Kita nggak bisa nge-custom. - Iya, ada dokumentasinya, ada. Dan dia udah nyediain modelnya juga. Dan modelnya bisa pakai yang tadi tadi. Ini, Dokumentation ya. Kita lihat ya.
59:05Misalkan pipeline-nya. Text Classification, Token Classification, Question Answer, Text to Text Generation, Summarization. Ada semua.
59:24- Oh, ada daftar modelnya juga tuh? - Iya, daftar modelnya apa nih? Ini ada beberapa model yang punya dia juga ya. Dari BERT, dari mana gitu. Ini kan dari sini kan? Eh, mana tadi yang...
59:44- Transformers. - Transformers, oh ini. - Oh, jadi kayak dia nyediain sekian model yang available. - Iya. Betul. Ini versi low-levelnya dari LLM yang kalau kita inference gitu ya. Ini versi low-levelnya. Dibawahnya lagi.
1:00:08Nah, ini yang harus diulik sama kita nih. Nah, hubungannya sama Visual Blocks ini. Oh, Visual Blocks ini. Kan tadi Transformers JS yang agak low-level ya, mid-level lah.
1:00:33Visual Blocks ini yang benar-benar visualisasi. Berarti bisa langsung nge-extract pakai, misalnya tadi kan ada extraction ya, contoh itu similarity search.
1:00:46Bisa kalau misalnya kita ada data, bisa nge-extract, sorry data itu lebih tepatnya, text ya, kalimat lah ya, kalimat. Dia bisa nge-extract kalimat itu pakai transformer ini gitu ya.
1:00:59- Betul. - Berarti dia bisa nge-pipeline dari modelnya ya. Jadi nge-pipeline, sorry, fitur extraction yang dia pakai itu menggunakan model yang untuk,
1:01:12berarti si transformer ini sendiri menjalankan model itu untuk melakukan extraction data tadi itu. Commentnya itu adalah extraction tapi menggunakan model. Ngerti gak sih?
1:01:23Saya lagi berpikir. - Ya kayaknya perintahnya masing-masingnya sesuai model yang kita masukin sebagai argumen itu kan.
1:01:34- Dan model-model yang kita pakai itu bisa menjalankan function atau perintah itu karena tadi sudah menggunakan runtime yang sama saat nge-build model itu.
1:01:48Kayak gitu kali ya? - Ya.
1:01:53- Karena misalnya meski model dibuild pakai PyTorch, atau dibuild pakai TensorFlow, atau dibuild satu-satunya lagi apa?
1:02:00- Apa? - Atau tadi 3 kan. PyTorch, TensorFlow, sama ada tadi di TensorFlow JS-nya. Bukan, bukan, coba ke TF.
1:02:19- Transformers JS. - Transformer JS-nya yang di Github.
1:02:25- Github di home-nya? - Itu atau JAX model. TensorFlow atau JAX.
1:02:35Jadi ada 3 kan. - Ya.
1:02:39- Now I understand. - Oke. Nah ini contohnya ya, jadi kita mau bikin konversi image jadi bentuknya kayak kartun.
1:02:51Image input-nya apa, processor-nya apa, terus model running-nya apa. - Itu setting-nya bisa di tweak.
1:03:02- Tambahin normalizer, crop, dan akhirnya jadi kartunized output. Yang mau diganti apa?
1:03:14- Coba klik ditambahin yang atas deh, yang kiri atas. Coba klik. Nah, select. Loh, nggak otomatis. Oh, tuh otomatis berubah.
1:03:28- Butuh waktu. Karena, oh, kenapa dia di-resize? Karena si TF Lite-nya itu hanya bisa menerima image yang 512 x 512.
1:03:41- Iya. Tapi ini nggak 512 x 512 kan? - Mungkin sisanya.
1:03:47- Ikan pos kali. Sisanya dia nggak putih. - Iya.
1:03:52- Oke. Ini gimana cara bacanya ya? Nggak ngerti soalnya. Ini image input. - Image input.
1:04:04- Terus dihubungin ke, itu masing-masing kotak namanya node. - Iya, ini namanya node.
1:04:12- Terus ini resize and normalize input image. Jadi di-resize dulu ke 512 x 512.
1:04:22- Iya. Akhirnya inputnya itu image. Outputnya itu sudah tensor. Which is floating number.
1:04:34- Iya, oke. Terus di-normalize, akhirnya jadi tensor. Terus modelnya running yang ini. Storage Google API.
1:04:43Cartoon gun. Ini modelnya ya, tapi dalam bahasa real ya. Cartoon gun. Terus abis itu masuk ke tensor pertama.
1:04:54Untuk normalize dulu. Dari 0 ke 255. Nggak tahu nih normalize ini ngapain.
1:05:02- Ada dokumentasinya nggak sih? Itu di kanan atas itu. - Remap value range of input tensor.
1:05:09Jadi kalau ada tensor yang di atas 255, dia bikin supaya dari 0 sampai 255. Kayaknya gitu ya.
1:05:15Mungkin ya. Tolong di-correksi kalau salah. Kemudian di-crop dan di-resize.
1:05:21Oh, ini udah jadi cartoon di sini. Abis itu di-normalize lagi.
1:05:28Kalau ada angka-angka yang mungkin di luar dari 0 dan 255 gitu. Abis itu di-crop lagi.
1:05:36- Di-crop supaya sama dan di-output. - Di-crop supaya image-nya.
1:05:45Kan di sini ada get image size. Jadi dia cari tahu image size ini berapa.
1:05:49Kemudian di-resize kembali ke width dan height yang sesuai sama image size originalnya.
1:05:55- Gitu ya? - Iya. Jadi pertama dia image, diubah jadi tensor. Setelah udah dijalankan pakai model dari tensor, diubah lagi jadi image.
1:06:07- Jadi output. Itu yang paling terakhir. - Iya. Karena kan tensor-nya 512 x 512 kan.
1:06:12- Iya. - Jadi harus butuh resize lagi supaya ukurannya sama-sama yang originalnya.
1:06:18- Ukuran dan formatnya yang balik jadi image lagi ya? Berarti? - Iya. Yang paling terakhir tuh tensor jadi image.
1:06:28High preview hilang ya. Ini kalau untuk, ada di contohnya kan itu ya, remove background kan ya. Mana nggak ada di sini ya?
1:06:49- Itu banyak. - Itu tuh tuh. Silhouette style photo generator. - Itu malah remove foreground.
1:07:01- Ini jalan di browser ya? - Iya. Jalan di browser. - Cepet juga ya.
1:07:07- Kalau kan malah remove foreground. - Kebalik ya. - Emang konsepnya gitu.
1:07:13- Tapi kan intinya berarti dia bisa nge-detek ya mana yang program, mana yang background. - Iya. Bisa kebalik ya. Benar-benar.
1:07:20- Ini menarik di ulik ya. Berarti ini adalah versi visualnya dari transformer JS ya.
1:07:31Kalau transformer JS kita harus coding. Kalau ini kita drag and drop. - Katanya dimaksudkan ini buat prototyping.
1:07:40- Jadi mesti kita nunjukin. Kita ingin nunjukin. Kita mau nunjukin cara kerjanya kayak gini. Inputnya seperti apa, outputnya seperti apa.
1:07:50Kita nggak harus ngobrolin semuanya tapi bisa pakai visual block. - Background removal ada.
1:07:56- Running. - Iya. Remove background from an image. Modelnya pakai mode net. Device-nya web GPU.
1:08:10- Tuh jadi. - Bagus. - Dari image, image jadi background removal. - Langsung masuk background removal. Balik lagi ke image viewer sama image mixer.
1:08:26- Langsung sisanya ya, yang backgroundnya ya. - Iya. - Ya seandainya mau di, nggak tahu lah. - Oh rambut-rambutnya ini ya ke extract ya. Bagus ya. Detail.
1:08:43- Nah tapi si background removal ini si modelnya itu nggak pakai ini loh, nggak pakai tensor loh. Dia langsung inputnya image.
1:08:52- Iya. Ini, model mode net ini. Atau kita mau ganti bisa kali ya? Terus running lagi dia. - Bisa. - Bria AI.
1:09:04Wah kita harus kembalinya ke sini. Nah kalau temen-temen bisa cek sendiri ya. Kita balik lagi. - Iya silahkan kalau mau main-main. - Nah silahkan. Ada banyak nih. Contoh-contohnya text classification, ada translation.
1:09:25- Oh ada combine sama server side juga. - Oh ya. - Eka jadi AI. - Eka jadi, Eka jadi. - Cek. - Jadi freeze. - Ya bisa-bisa. - Oke. Sudah-sudah aman.
1:09:43- Use JavaScript, nah ini topik ketiga ya dari pembicaraan itu ya. Use JavaScript for web AI at scale with Chrome. Jadi sebelumnya kita sudah menggunakan JMA, modelnya loaded and run within the web page itself.
1:09:57Chrome is working on will in on device AI, where you could access model with standardized task specific JavaScript API. And that's not all, Chrome has also updated web GPU support for 16 bit floating point values.
1:10:13Web assembly has a new proposal, memory 64 to super 64 bit memory index, which would you allow to load larger AI model than before. Jadi bisa, modelnya bisa lebih besar lagi.
1:10:27- Iya nah intinya kan ada tiga hal kan. - Sebelum Mas Jason menutup, kayaknya saya ingat ini, web assembly ada proposal untuk menaikkan dia bisa 64 bit supaya bisa nge-load model 4 giga.
1:10:47- Kalau sekarang belum bisa. - Tambah besar aja. - Tambah besar, tadi 1 giga aja kita mikir ya. - Ini mau dibikin biar bisa 4.
1:10:57Tapi maksudnya secara infrastruktur ya nggak tahu kali disiapin dulu ya. Bukan infrastruktur sih, maksudnya secara cara kerja.
1:11:05Jadi ini menarik sih, ini ada tiga hal. - Saya kan GDI web performance, melihat 4 giga dan bagi user tuh merana.
1:11:17Tapi mungkin kembali lagi ini konsepnya beda untuk researcher, user case-nya itu mau ngeresor atau mau something internal mungkin pengen-pengen aja tadi yang 4 giga.
1:11:35- Itu komunikasi ke user nggak sih? Sebenarnya itu tadi kalau user-nya udah tahu itu emang ada background remover atau make-up tester atau furniture AR gitu.
1:11:48Ya kan ada ekspektasi bahwa itu bakal berat jadi lebih kombinasi dengan UX juga sih.
1:11:55Dan ini kayaknya masih eksperimen, jadi kalau temen-temen mau testing ya bisa kesini langsung cobain running di Google Collab atau...
1:12:06- Ini beda kasus kalau yang tadi. - Itu beda ya? - Iya itu udah beda heading.
1:12:15- Bukannya yang dibahas 3 ya? - 4, ya berarti 4. Ini kan perkara-nya ada web GPU sama web assembly-nya di upgrade lah.
1:12:29Intinya di upgrade kita lebih capable, kapabilitasnya ditingkatkan karena kita udah masuk ke era on-device, apapun on-device.
1:12:39Tadi kita juga udah nyobain sendiri kan. Tapi ada satu hal lagi yang menarik, coba deh buka di private chat link yang paling bawah.
1:12:47- Iya. - Itu tadi, jadi kan selama ini kita mikir kalau on-device AI berarti harus download dulu kayak yang tadi kan.
1:12:57Nah sekarang Chrome rencananya, dia bakal include di Chrome-nya. - Oh udah ada? - Belum belum.
1:13:09- Wow, ini huge sih. - Tapi masih. - Effect-nya. - Tapi belum.
1:13:15Nah cuma itunya task-nya kayak nggak semua bisa. Jadi itu spesifik banget kalau yang di demo, yang di I/O itu translation yang paling, use case yang paling utama.
1:13:27Dan itu lumayan universal kan ya, itu translation. Terus apa ya, ada code assistant, ada explaining, ada summarizer gitu lah.
1:13:36Apanya misalnya use case-nya yang dicompoin sih kalau kita baca, itu bisa minta summarize this text atau explain. Nah cuma kalau yang paling banyak didemoin dan kelihatannya bakal di push pertama sih translate.
1:13:49- Oke. - Cuma ini belum. - Browser installer size bisa gede banget dong, ntar terlalu lama.
1:13:56- Iya. Eh kita bisa request, get an early preview, scroll ke bawah. - Hah? Di mana? Sebentar, ini? Oh iya. Ini ya.
1:14:07Ini jadi apa ya, jadi yang Ivan khawatirkan bisa jadi ini terjawab di sini dengan kita download Google Chrome yang sudah ada built-in AI-nya.
1:14:18- Mungkin nggak jadi 4GB atau nggak jadi 1GB. Mungkin setengahnya atau seperempatnya yang perlu kita download. Kayak tadi kan perlu download 1GB.
1:14:27Mungkin sebagian sudah ada di, tertanam di Google Chrome mungkin 500 meganya, sisanya 500 mega yang kita download. Mungkin ya.
1:14:36- Dan lagi-lagi kita tetap harus spesifik mau ngapain kan, maksudnya aplikasi kita yang butuh on-device AI itu sebenarnya buat apa?
1:14:45- Maksudnya kita bisa fine-tuning. - Lagi-lagi kalau yang chat segala bisa itu kan ya udahlah pakai service aja kalau cuma chat text.
1:14:53Nah coba, saya translate-nya bisa di-handle di sini. Dan itu ada demonya, lupa video yang mana, cari sendiri.
1:15:01- Maksudnya demonya adalah kombine, ngereview, misalnya review, jadi sentiment analysis misalnya pakai model eksternal, tapi untuk toxicity detection misalnya bisa pakai yang...
1:15:20- Ini? - Pakai yang on-device.
1:15:23- Help me write atau translation API bukannya? - Nggak, demo. Ini lagi bahas demo yang AI.
1:15:30- Bisa juga jadi salah satu aplikasi pakai extension kita bisa gunakan untuk parental control mungkin ya, jadi anak kita bisa dimonitori tapi pakai AI.
1:15:48Jadi ada data yang perlu dikirimkan ke mana-mana, jadi kalau dia buka situs-situs yang tidak safe, apapun itu bisa di-automatic block.
1:16:02- Hoax detection juga tuh, hoax and scam detection misalnya ada link-link yang mencurigakan gitu, cuma suka disamarin misalnya apa ya.
1:16:13- Klik BCO. - Atau thetick.com, misalnya cuma thetick.evilsight.com, ya nggak tahu apa-apapunnya pola-pola yang scam atau bahaya bisa di-blockir pakai extension.
1:16:28Nah, itu contohnya kan writing assistance, proofreading, grammar correction, rephrasing, itu kan use case yang umum ya.
1:16:37Jadi ekspektasinya adalah kalau use case yang umum, nanti kita nggak usah bayangin dong kalau ada berapa, ada ratusan atau ribuan atau jutaan website,
1:16:46masing-masing semua nyuruh user buat ngedownload model, pusing juga kan. Jadi kalau use case yang umum, ya pakai ini.
1:16:55- Nah ini strategi yang menarik juga ya buat dari timnya Google Chrome, karena sebelumnya kan sudah mulai ada browser-browser yang menambahkan AI.
1:17:06Tapi kayaknya itu server-site ya. - Server-site, pikirin kalau ini beneran nih browser-nya.
1:17:12- Ya, misalkan ini Brave, Brave itu kan chromium-based juga kan ya. Nah, dia punya Leo namanya kan, Leo AI ini buat assistant.
1:17:21- Art juga punya. - Iya, Art juga punya, betul. Sama, semua pada punya. - Semua pada punya, tapi itu server-site kan.
1:17:36Jadi datanya tetap dikirimin ke server-nya mereka kan. Kalau kita mau summarize, mau apa gitu kan, ini maksudnya apa, mau catatan dan lain-lain kan.
1:17:45Art juga ada, Art namanya adalah Max ya, M-A-X. Nah ini power up by browsing with API.
1:17:58Wah ada suaranya, ini ketutup lagi mute-nya. - Memang nggak boleh ini mute.
1:18:07- Kita mute-nya aja, mute-site, dah bisa kan. Nah ini bisa kan, kita taruh di to-do gitu, semacam gitu ya.
1:18:18Tapi ini, kembali lagi, ini server-site, dia pakai chat GPT, pakai OpenAI berarti ya. - Iya, OpenAI.
1:18:28- Jadi ini adalah salah satu strategi dari Google yang berbeda. - Kalau off-line nggak bisa ya, kalau misalnya internetnya di Google, buka browser,
1:18:38kalau misalnya browser lain, AI-nya nggak bisa jalan. Kalau ini bisa. Dan kelebihan lainnya, third party developer,
1:18:45maksudnya kita, siapapun kita yang bikin website, kita bisa manfaatin ini kan. Sementara kalau tadi yang punya ARC, Brave Den lain-lain ya nggak bisa kan.
1:18:56Kita bikin aplikasi web app yang manfaatin itu. - Iya, seperti yang tadi sempat kita bahas,
1:19:04kalau yang tadinya mungkin download apa, asisten AI-nya itu 900 mega, mungkin dengan sudah ditambahin nano ini, kita tinggal nambahin sedikit mungkin gitu.
1:19:18- Itu tadi, yang kita tambahin adalah yang spesifik dengan kebutuhan aplikasi kita kan. - Dengan kebutuhan kita, iya betul.
1:19:27- Pengen nggak sih, suatu saat AI model ini sudah kayak docker layer gitu, jadi kayak build, kayak from, jamanai nano, dia sudah ada layer-nya,
1:19:39kita bisa tambahin layer-layernya kita, terus nanti dibuild jadi kayak docker file. - Oh kayak docker file.
1:19:48- Iya, jadi docker file itu sendiri kan sudah ada layer-layer ya, jadi kalau layer 1 ada, tinggal nge-build atau nge-download layer yang belum ada.
1:20:01- Mungkin, hari nanti, suatu saat. - Kayaknya konsepnya sudah ada deh, AI model ini ujung-ujungnya layer kan, isinya semua.
1:20:13- Iya. - Layer-layer-layer kan.
1:20:16- Sekarang tadi tapi belum bisa di-pastam ya kan, ya kayak si siapa, transformers.js tadi. - Betul.
1:20:24- Baru bisa di-pipeline, belum bisa di-transfer, baru bisa di-pipelining, jadi di-chaining, mungkin kalau pakai line chain bisa di-chain ya,
1:20:34jadi pipenya jadi input, parser-parser segala macam, proses sampai output, itu bisa di-chaining.
1:20:42Kalau misalnya yang saya maksud itu kan kayak docker, docker image, dia ada layer-layer-layer, jadi mungkin layer utamanya dibawah jamanai nano.
1:20:53Terus mungkin di atasnya ada dari, I don't know, mistral, vision, vision layer, di atasnya ada layer lipstick, detection layer, whatever layer bisa ditambah.
1:21:10- Waktu itu kalau user udah punya, dia nggak nge-download ulang ya, misalnya udah ada background remover gitu.
1:21:16- Ya. - Incremental, incremental.
1:21:23- Mungkin kita udah mikirkan sampai ke sana, mungkin, maybe, I don't know ya, mungkin terlalu susah.
1:21:30- Ya sebenarnya kalau banyak yang mau, itu kemungkinan, walaupun susah, pasti suatu saat ada yang bisa bikin deh.
1:21:38Ya kan kalau cukup banyak orang yang mau pakai dan ada business case-nya, itu pasti ya bisa lah dibuter-puter, jadi bisa.
1:21:48- Jadi setiap, nanti suatu saat kita itu bisa nge-build our own custom model, seperti our own custom docker image, yang spesifik untuk kebutuhan kita.
1:22:00Kan kita kalau nge-build docker image kan mungkin base-nya dari Debian, tapi di atas Debian kan ada hal-hal yang kita butuhkan, engine X atau PHP, FPM.
1:22:11Jadi itu satu docker image. Sedangkan kalau misalnya kayak model AI, gasarnya jamanai nano, atasnya vision, vision khusus untuk KTP, KTP vision misalnya.
1:22:27Jadi cukup satu model itu aja bisa dipakai spesifik untuk satu use case. Saya berharap suatu saat bisa seperti itu, suatu saat.
1:22:36- Oke, oke. Kayaknya bakal seperti itu sih. Karena sekarang pun udah mulai ada, tapi ya itu berdasarkan base-nya.
1:22:45Jadi misalkan yang jadi base model itu kan sekarang banyakan pakai lama, lama 1 atau lama 2 ya. Kemudian mixtral itu base-nya lama juga.
1:22:59- Itu kan ini transfer learning kan maksudnya ya. Kalau dulu kan image net tuh. Image net yang punya segudang general data,
1:23:15terus kita transfer learning hanya untuk nge-detect spesifik data. Misalnya hanya detect muka orang saja. Itu kan transfer learning.
1:23:25Kayaknya arahnya ke sana sih kalau yang dibaca ya. Tapi ya kita lihat saja nanti gimana.
1:23:35Oke, sepertinya pembahasan kita kita cukupkan sampai di sini. Ada lagi yang mau disampaikan sebelum kita udahan, udah satu setengah jam lu.
1:23:46- Masih banyak besok-besok lagi. - Masih banyak, tenang, tenang. Masih banyak ya.
1:23:52- Ya, seru. Dan tujuan kita untuk bikin episode ini adalah untuk mencari topik I/O Extended.
1:24:03Jadi pantangin aja I/O Extended di kota masing-masing. Apakah nanti bakal ada topik-topik yang menarik?
1:24:14Atau teman-teman pengen bahasnya apa nih? Pengen bahasnya apa? Yang pengen kita bahas, terutama dari sisi web ya.
1:24:22Kalau kita ngomongin web doang, update-nya yang minggu lalu ya kita bahas. Minggu lalu kan ada AI juga sih.
1:24:30Tapi sebagian besar udah kita bahas kayak apa, baseline, ada macem-macem ya. Ada API baru juga.
1:24:37Nah, kalau yang ini berhubungan dengan AI karena memang ya si Google I/O-nya memang fokusnya masih kesana.
1:24:48Sampai tahun ini, 2 tahun belakangan fokusnya kesana untuk mengarahkan kita, untuk mulik ya, untuk mulik AI.
1:24:58Dan ini sih kayaknya dobaunya buat on-device AI, ini kelihatannya bakal di arah-arahnya, bakal di-push.
1:25:09Karena salah satunya indikatornya adalah, bukan gimik sih, cuma penggunaan istilah web AI,
1:25:16sampai apa sih, maksudnya di presentasi yang utama yang buat artikel itu tadi,
1:25:22ada satu stream yang tulisannya punya web AI, tidak sama dengan berbeda dengan cloud AI.
1:25:28Jadi kayak ada pembedaan antara web AI dan cloud AI.
1:25:32Nah web AI itu istilah yang digunakan untuk fokus ke on-device tadi, client-side.
1:25:40Jadi ya abis itu dia njelasin pro-contra dan lain-lainnya yang tadi udah kita bahas.
1:25:45Terus emang di-encourage kalau kalian bikin sesuatu ngulik pakai on-device AI tadi,
1:25:51saya share dengan hashtag web AI.
1:25:53Nah ini tuh ngingetin kayak bikin inget dulu PWA kan, Progressive Web API, itu juga kan maksudnya itu konsep.
1:26:03Maksudnya sedangkan fitur-fiturnya kayak bisa di-install, atau misalnya ada loading spinner-nya,
1:26:09misalnya secara UX dan performance bagus, itu kan hal-hal yang mungkin umum,
1:26:14mungkin udah ada yang bikin sebelumnya, cuma semua itu dirangkum dalam satu konsep PWA yang dipus.
1:26:20Nah kelihatan web AI ini bakal jadi hype yang sama deh.
1:26:26Untuk mengarah ke itu tadi on-device AI, experience-nya ya dengan segala plus minus-nya,
1:26:33ada privacy, ada blablabla, dan mungkin kombinasi dengan hybrid server,
1:26:37cuma kelihatan web AI ini bakal jadi hype. Ramalan.
1:26:42Tapi saya apresiasi lo, saya apresiasi inisiatif di Google ini dengan menyebut kata web AI yang lebih general,
1:26:51instead of jamanai web AI atau JMA web, jadi lebih inklusif menurut saya.
1:27:00Lebih generic, jadi nggak, ini bukan tentang Google sih sebenarnya.
1:27:06Bukan hanya tentang Google.
1:27:08Atau tentang Google, tapi bukan dengan cara yang kasar ya.
1:27:12Maksud saya dengan cara yang kayak cuma monopoli doang.
1:27:15Ya kan pada akhirnya itu tadi kayak sintaksnya itu kan bisa untuk model dari,
1:27:21ya harus jamanai kan, bisa dipakai dengan model dari tempat lain, model lain bisa di-convert juga.
1:27:28Kan itu secara nggak langsung memperluas penggunanya Google Chrome kan.
1:27:35Banyak developer bikin aplikasi yang bagus yang jalannya, optimisinya sekarang di Chrome, ya udah.
1:27:43Mereka ikut untung, tapi dengan cara yang luas lah, nggak sempit dalam arti promote jamanai doang.
1:27:51- Yes, jangan lupa juga walaupun di client-side, tapi kita bisa pakai hybrid juga kan.
1:27:58- Itu tadi emang di inkor.
1:28:00- Incor dengan device sama server-side ya, jadi bisa dua-duanya. Itu nggak mesti hanya,
1:28:05"Wah kalau jalan di client doang, berat doang, gede", gitu ya.
1:28:08Mungkin kita bisa server-side-nya mungkin...
1:28:10- Kita tergantung kebutuhan, ya kan?
1:28:12- Tergantung kebutuhan, betul.
1:28:14Oke, mungkin untuk episode ini sekian dulu.
1:28:19Kalau mau ada episode follow-up, boleh silahkan teman-teman komen ya.
1:28:24Kalau masih suka tentang AI, komen.
1:28:30Kalau bosan tentang AI, komen juga.
1:28:34Jadi kita bisa ganti.
1:28:36- AI mulu framework kek.
1:28:38- Apaan sih ini? AI-AI mulu gitu ya.
1:28:41- Ada tanyaan kek.
1:28:43- Ada yang, mungkin ada yang parno gitu, bakal tergantikan sama AI, jadi takut gitu.
1:28:50- Ada pertanyaan klasik banget. Coba nanti tanya ke Gimar apakah aku akan digantikan oleh AI.
1:28:56Ya, nanti ditanya sendiri.
1:28:58- Ya, silahkan ke sana.in/ngobrolinweb, ya.
1:29:03Atau ada pertanyaan-pertanyaan seputar apapun, nggak mesti hanya...
1:29:08Dibahas dong di episode ini, nggak mesti mungkin pertanyaan umum aja.
1:29:12Silahkan tanyain aja, kita diskusi di sana.
1:29:14Mungkin untuk malam ini, udahan dulu.
1:29:16Terima kasih banyak buat semuanya yang sudah menonton dan sudah meramaikan sesi malam ini.
1:29:22Kita ketemu lagi minggu depan dengan topik-topik yang berbeda apakah AI lagi atau nggak.
1:29:28Tunggu aja ya hari Selasa malam.
1:29:31- Kita juga nggak tahu. Nanti kita tanya AI.
1:29:34- Nanti kita tanya sama AI.
1:29:37Selamat malam, selamat istirahat, sampai jumpa minggu depan. Bye-bye.
1:29:42- Bye.
1:29:46Terima kasih telah menonton!
Suka episode ini?
Langganan untuk update episode terbaru setiap Selasa malam!
Episode Terkait
20 Jan 2026
Agentic AI - Ngobrolin WEB
🗣️🕸️ Selasa malam waktunya #NgobrolinWEB! Bareng Eka dan Ivan kita akan membahas tentang Agentic UI. Apa itu agent, a...
22 Jul 2025
Bedah Buku Problem Solving 101 - Ngobrolin WEB
🗣️🕸️ Selasa malam waktunya #NgobrolinWEB! Malam ini kita akan membedah buku Problem Solving 101. Masih bersama Ivan da...
11 Agu 2025
Stackoverflow Survey 2025 - Ngobrolin WEB
Selasa malam waktunya #ngobrolinweb! Malam ini kita akan ngobrolin tentang hasil survey yang dilakukan oleh Stackoverflo...