00:00:00(musik ceria)
00:00:02- Halo semuanya, nama saya Malte, saya CTO Vercel.
00:00:16Terima kasih telah bergabung dengan kami hari ini.
00:00:18Pada awal Januari, kami memberikan mandat kepada semua orang di perusahaan kami,
00:00:21cari tahu cara melipatgandakan hasil kerja kalian.
00:00:24Dan melihat apa yang dibangun orang-orang terus membuat kami takjub.
00:00:27Hampir setiap tim membangun agen untuk menangani pekerjaan kompleks,
00:00:30dan kebanyakan dari mereka adalah bot Slack yang bisa digunakan siapa saja.
00:00:34Tapi kami menemui masalah.
00:00:35Semua orang melakukan pekerjaan degradasi yang sama
00:00:38berulang kali.
00:00:40Seseorang akan membangun sebuah agen,
00:00:41lalu Anda harus mencari tahu kerumitan Slack,
00:00:43dan itu lebih sulit daripada kelihatannya.
00:00:45Anda perlu memahami utas dan reaksi,
00:00:47bagaimana bot mencocokkan pesannya, cara menangani status.
00:00:50Lalu seseorang akan bertanya,
00:00:51"Hei, bisakah Anda menyambungkan GitHub agen itu?"
00:00:53Dan prosesnya akan dimulai dari awal lagi
00:00:55dengan API GitHub.
00:00:56Logikanya sama, tetapi kode platformnya berbeda.
00:00:59Kami segera menyadari bahwa API obrolan itu
00:01:01tampak serupa di permukaan,
00:01:03tetapi sangat berbeda di balik layar.
00:01:05Slack mendukung streaming native.
00:01:06Anda bisa mengalirkan token langsung ke dalam pesan
00:01:09saat LLM menghasilkannya.
00:01:10Discord, Anda harus memposting, mengedit, memposting, mengedit.
00:01:14GitHub, tidak ada streaming sama sekali.
00:01:16Slack memiliki modal, Discord tidak.
00:01:18Microsoft Teams memberi Anda reaksi baca-saja.
00:01:21Ini bukan sekadar keanehan, ini adalah perbedaan mendasar
00:01:23dalam cara kerja setiap platform.
00:01:26Jadi, bahkan untuk satu agen sederhana saja,
00:01:28Anda berakhir dengan logika yang sangat banyak
00:01:31hanya untuk membuatnya dapat digunakan di berbagai alat.
00:01:33Ini adalah mimpi buruk.
00:01:34Dan ini bukan hanya masalah Vercel.
00:01:36Setiap perusahaan harus mencari tahu
00:01:38cara menghadirkan agen mereka di berbagai permukaan
00:01:40tempat pekerjaan biasa dilakukan.
00:01:42Itu berarti obrolan, peninjauan kode, pelacakan masalah, dan lainnya.
00:01:45AI SDK memecahkan masalah serupa untuk penyedia model.
00:01:48Anda menulis kodenya sekali dan itu menangani
00:01:50semua perbedaan API,
00:01:51baik Anda memanggil GPT, Claude, atau Gemini.
00:01:54Chat SDK melakukan hal yang sama untuk agen interaktif.
00:01:58Ini adalah API tunggal untuk interaksi agen di berbagai platform
00:02:01seperti Slack, GitHub, Linear, Discord, Telegram,
00:02:04WhatsApp, dan banyak lagi.
00:02:06Anda membangun agennya dan Chat SDK akan mengirimkannya ke pengguna
00:02:09di aplikasi yang sudah mereka gunakan.
00:02:11Fernando telah membangun agen latar belakang v0
00:02:15selama beberapa minggu terakhir,
00:02:16dan dia akan memberi tahu Anda mengapa Chat SDK
00:02:18menjadi bagian krusial bagi tumpukan teknologi tersebut.
00:02:21(musik ceria)
00:02:24(musik ceria berlanjut)
00:02:28Saat saya mulai membangun agen latar belakang v0,
00:02:34tujuan saya adalah membiarkan Anda menandai v0 dari Slack
00:02:36untuk membuka pull request.
00:02:38Saya menginginkan agen pengkodean serbaguna
00:02:40yang bisa berjalan di latar belakang,
00:02:42di basis kode apa pun, dengan bahasa apa pun.
00:02:45Jadi saya mulai membangun,
00:02:47dan saya mengirimkan versi pertama aplikasi Slack v0
00:02:49kepada teman-teman saya.
00:02:51Dan hal pertama yang mereka tanyakan adalah,
00:02:53"Bisakah saya menggunakan ini juga di masalah Linear?
00:02:56Dan bisakah saya menandainya dari komentar GitHub PR?"
00:02:58Ini mengingatkan saya pada saat pertama kali merilis aplikasi seluler,
00:03:02ketika orang-orang mulai bertanya apakah bisa menggunakannya di web.
00:03:05Menjadi jelas bahwa v0 harus bekerja di mana saja.
00:03:09Ekspektasi telah berubah.
00:03:11Jadi saya harus membuat pilihan.
00:03:14Apakah kita membangun agen latar belakang v0 platform demi platform?
00:03:18Atau bisakah kita membangunnya sekali dengan API terpadu
00:03:22di setiap platform?
00:03:24Seperti React Native untuk agen obrolan?
00:03:27Ternyata saya telah menghabiskan bertahun-tahun
00:03:30membangun aplikasi lintas platform dengan React Native.
00:03:34Masalah ini bukan hal baru bagi saya.
00:03:36Dan di situlah Chat SDK berperan.
00:03:39Dengan Chat SDK,
00:03:40saya bisa fokus membangun agen latar belakang v0,
00:03:43dan menghabiskan lebih sedikit waktu
00:03:45mengkhawatirkan API unik di setiap platform.
00:03:48Jadi bagaimana tampilannya di balik layar?
00:03:50Ini Matt yang akan menunjukkan lebih banyak kepada Anda.
00:03:53(musik ceria)
00:03:55- Halo, semuanya.
00:04:11Sama seperti Fernando, mari kita mulai dengan Slack.
00:04:14Saya menyebut bot saya,
00:04:16dan saya mendapatkan respons hello world yang sangat sederhana.
00:04:21Sangat revolusioner, saya tahu.
00:04:23Dan jika Anda melihat kodenya,
00:04:24Anda bisa melihat betapa mudahnya bagi saya untuk membuat bot ini.
00:04:28Yang harus saya lakukan hanyalah membuat instans chat baru,
00:04:32dan menambahkan pendengar onMention,
00:04:35dan mengirimkan hello world kembali ke utas tersebut.
00:04:38Itu saja.
00:04:39Tapi kita tidak ingin pengembang membangun bot teks biasa.
00:04:43Kami menginginkan pengalaman native yang kaya
00:04:45yang memanfaatkan sepenuhnya setiap platform.
00:04:48Dan pengembang menyukai JSX.
00:04:51Jadi kami menghadirkan JSX ke Chat SDK.
00:04:55Sekarang Anda membangun dengan komponen seperti yang biasa Anda lakukan.
00:04:58Mari tambahkan dua tombol.
00:04:59Jadi di bawah sini, Anda bisa melihat,
00:05:03saya akan mengubah pesan hello world kita
00:05:05menjadi kartu hello world dengan tombol lanjut,
00:05:10dan tombol batal.
00:05:11Kami juga akan menambahkan pendengar tindakan
00:05:14yang akan menyebutkan nama lengkap pengguna,
00:05:17mengeklik lanjut saat kita mengekliknya.
00:05:19Kembali ke Slack, saya akan menyebut bot saya lagi.
00:05:24Dan seperti yang Anda harapkan, kita mendapatkan apa yang kita bangun.
00:05:29Komponen-komponen tersebut dirender secara native.
00:05:32Saya klik lanjut, dan bot menangani tindakannya secara instan.
00:05:36Tapi sekarang di sinilah hal-hal menjadi menarik.
00:05:41Bagaimana jika saya menginginkan pengalaman yang sama persis di Discord?
00:05:45Saya tambahkan adaptor Discord.
00:05:47Selesai.
00:05:48Sekarang, jika saya kembali ke saluran Discord saya,
00:05:55saya bisa menyebut bot saya,
00:05:57dan UI yang sama persis dirender secara native di Discord.
00:06:02Nol perubahan kode untuk mendukung platform baru.
00:06:07Ini keren.
00:06:08Tapi mari kita bicara tentang agen.
00:06:10Jadi ini adalah agen sederhana yang saya bangun menggunakan AI SDK.
00:06:14Dan agen membutuhkan streaming.
00:06:17Dengan Chat SDK, streaming itu sepele.
00:06:20Saya membuat aliran dan mengirimkannya ke utas.
00:06:23Itu saja.
00:06:24Saya tidak perlu mencari tahu cara Slack menangani streaming
00:06:27atau cara Discord menangani pembaruan parsial.
00:06:30Saya menggunakan satu API.
00:06:32Dan kembali ke Slack, jika saya menyebut bot tersebut,
00:06:35kita akan melihatnya mengalirkan kembali responsnya kepada kita secara native.
00:06:40Tapi mengapa berhenti di situ?
00:06:42Bagaimana jika saya ingin mengirim pesan langsung ke agen saya
00:06:45di platform seperti WhatsApp atau Telegram?
00:06:49Dengan Chat SDK, itu mudah.
00:06:52Saya menambahkan pendengar OnDirectMessage dan adaptor yang diperlukan.
00:06:56Sekarang siapa pun yang mengirim DM ke agen mendapatkan pengalaman yang sama.
00:07:02Jika saya membuka WhatsApp di web dan berkata,
00:07:06"Hai, apa kabar?"
00:07:08Kita akan melihat agen merespons pesan langsung kita
00:07:12menggunakan agen yang kita bangun.
00:07:14Sekarang setelah kita membangun agen,
00:07:16mengapa kita tidak membuka pull request?
00:07:18Tapi sebelum melakukan itu,
00:07:20bagaimana jika agen yang sama yang saya ajak bicara di WhatsApp
00:07:24bisa meninjau kode saya?
00:07:25Yang diperlukan hanyalah adaptor GitHub.
00:07:28Saya datang ke sini, saya tambahkan adaptor GitHub,
00:07:32dan saya telah membawa agen saya ke platform yang sama sekali baru.
00:07:35Jika saya membuka GitHub dan melihat pull request ini,
00:07:39saya bisa menyebut agen tersebut di komentar
00:07:42dan ia akan merespons dengan pendengar pesan langsung yang sama
00:07:45yang kita bangun sebelumnya.
00:07:46Slack, Discord, WhatsApp, Telegram, GitHub.
00:07:51Coba pikirkan sejenak betapa berbedanya API ini.
00:07:56Tetapi dengan satu file dan beberapa baris kode,
00:07:59kita membawanya ke semua platform tersebut.
00:08:01Dengan Chat SDK, Anda membangun pengalaman agen sekali
00:08:06dan menerapkannya di mana saja dengan satu API.
00:08:09Buka chat-sdk.dev untuk melihat dokumentasi dan templatnya.
00:08:14Terima kasih telah mendengarkan.
00:08:15Dan saya bersemangat melihat apa yang Anda bangun.
00:08:17(musik ceria)