Sesi Komunitas: Vercel Workflow

VVercel
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Jadi, saya ingin berhenti di sini dan langsung ke pertanyaan.
00:00:02Menurut saya ada banyak hal yang bisa kita bahas.
00:00:05Saya juga ingin mengarahkan Anda ke dokumentasi alur kerja, di mana ada
00:00:08banyak hal lebih mendalam tentang alur kerja dan bagaimana setiap bagian ini
00:00:11bekerja, bersama dengan postingan blog yang
00:00:14dengan senang hati akan saya bahas jika sesuai dengan pertanyaan yang ada.
00:00:19Tapi ya, anggap saja ini sebagai panduan dasar untuk memulai,
00:00:23dan tiga primitif dasar
00:00:25yang kami pikirkan terkait alur kerja, yaitu Anda memiliki langkah-langkah.
00:00:27Anda memiliki alur kerja dan langkah-langkah yang bisa ditunda dan dilanjutkan.
00:00:30Anda memiliki kait (hooks) yang memungkinkan Anda menunggu
00:00:31untuk setiap peristiwa eksternal apa pun.
00:00:33Dan Anda memiliki fitur tidur (sleeps) yang memungkinkan Anda menunggu
00:00:36untuk durasi waktu tertentu, mulai
00:00:38dari beberapa detik hingga beberapa hari
00:00:39atau bahkan beberapa bulan.
00:00:42Dan dengan itu, Anda bisa memodelkan
00:00:44banyak alur kerja latar belakang, dengan agen
00:00:48menjadi perpanjangan alami dari hal ini juga.
00:00:51Saya belum membahas ini, dan saya hanya akan
00:00:53mengarahkan Anda ke bagian ini di dokumentasi sebelum kita beralih ke pertanyaan.
00:00:56Tetapi agen cenderung menjadi representasi yang sangat alami
00:01:01dari tugas yang berjalan lama karena Anda melakukan perulangan,
00:01:05melakukan panggilan LLM, lalu menjalankan satu atau lebih panggilan alat,
00:01:08mungkin seperti menulis ke memori menggunakan sandbox,
00:01:11menggunakan sistem file, apa pun itu, lalu melakukan hal tersebut
00:01:13berulang kali dalam satu putaran.
00:01:15Jadi Anda melakukan streaming token, membuat panggilan alat,
00:01:17streaming token, lalu membuat panggilan alat lagi.
00:01:20Dan melakukan itu dengan alur kerja adalah hal yang sangat kuat
00:01:25sekaligus sangat rumit jika Anda mencoba menyusunnya sendiri.
00:01:27Jadi,
00:01:27kami memiliki kelas bernama Durable Agent
00:01:29yang pada dasarnya melakukan banyak orkestrasi ini untuk Anda
00:01:32dan bekerja secara asli di dalam alur kerja.
00:01:35Saya akan berhenti di sini untuk saat ini, tapi sangat antusias untuk mendengar
00:01:39pertanyaan apa yang Anda miliki.
00:01:45Hai.
00:01:47Saya hanya ingin mengatakan kami mulai menggunakan alur kerja untuk beberapa
00:01:50alat yang kami gunakan untuk mengelola notifikasi komunitas
00:01:54karena kami memiliki begitu banyak tempat yang masuk.
00:01:58Agen telah membuat pengelolaan notifikasi tersebut hebat,
00:02:01dan alur kerja sangat bagus untuk menangani beberapa
00:02:03jenis tugas seperti itu juga.
00:02:05Jadi ini benar-benar langkah besar ke depan dalam cara
00:02:11kami membangun sesuatu.
00:02:13Tapi pertanyaan pertama yang saya miliki,
00:02:15karena saya melihat begitu banyak orang skeptis yang
00:02:18bertanya setiap kali kami merilis sesuatu yang baru bersifat sumber terbuka,
00:02:23kami punya Workflow SDK, yang merupakan sumber terbuka,
00:02:26dan kemudian kami punya Vercel Workflows.
00:02:28Jadi seberapa terbuka ini sebenarnya?
00:02:31Dengan Vercel Workflows, apakah itu
00:02:32berarti Workflow SDK hanya bisa bekerja di Vercel?
00:02:35Atau seberapa mudah penggunaannya di tempat lain?
00:02:39Ya.
00:02:40Ya, itu pertanyaan bagus.
00:02:41Kami sering mendapatkannya sepanjang waktu tentang alur kerja.
00:02:43Dan pada dasarnya Workflow SDK adalah kerangka kerja sumber terbuka.
00:02:49Dan kami menamakannya demikian juga, di mana
00:02:52kami meluncurkan sesuatu yang disebut 'Worlds' sejak hari pertama.
00:02:54Ini pada dasarnya analog dengan adaptor.
00:02:57Dan Next.js juga meluncurkan adaptor sekitar waktu yang sama.
00:03:00Tetapi idenya adalah bahwa alur kerja itu sendiri dengan Workflow SDK
00:03:03hanyalah cara Anda merepresentasikan kode yang berjalan lama.
00:03:06Anda bisa menulis 'use workflow' dan langkah-langkah,
00:03:08dan Anda bisa memiliki fitur tidur (sleeps) dan pengatur waktu serta tunggu dan kait
00:03:11dan apa pun itu.
00:03:12Dan analogi terbaik yang bisa saya pikirkan adalah sesuatu seperti Docker,
00:03:15di mana ini adalah sintaks file Docker untuk bagaimana
00:03:18Anda menulis alur kerja yang berjalan lama.
00:03:22Secara default, kami telah mengirimkan dan memelihara
00:03:24tiga dunia (worlds) yang berbeda, yaitu dunia lokal.
00:03:26Jadi ketika Anda menjalankan alur kerja secara lokal,
00:03:28ia menyimpan semuanya dalam sistem file yang bisa Anda periksa.
00:03:31Anda mendapatkan observabilitas yang sama secara lokal
00:03:33yang hanya memeriksa sistem file.
00:03:36Antrean ada di dalam memori.
00:03:38Jadi Anda memiliki keseluruhan--
00:03:39sejak hari pertama, kami selalu memiliki pengalaman pengembangan lokal yang hebat
00:03:42yang hampir meniru
00:03:44apa yang kami lakukan di Vercel.
00:03:45Kami juga meluncurkan dunia Vercel, tentu saja.
00:03:47Jadi ketika Anda menyebarkannya di Vercel, ada banyak hal
00:03:49yang Anda dapatkan langsung.
00:03:50Kami mengenkripsi semuanya secara ujung-ke-ujung (end-to-end).
00:03:52Kami telah melakukan banyak pekerjaan pada lapisan komputasi
00:03:54untuk membuat ini cepat, menjaga jaringan tetap pribadi.
00:03:58Dan kemudian kami juga menyediakan adaptor Postgres
00:04:00sejak hari pertama, yang berarti Anda sudah bisa
00:04:02mengambil alur kerja.
00:04:03Dan kami memiliki pelanggan yang melakukan ini dalam produksi, di mana
00:04:05mereka menjalankan alur kerja mereka, kode yang sama.
00:04:07Dan mereka dapat dengan mudah memigrasikannya dari Vercel ke Postgres,
00:04:10atau sebaliknya.
00:04:12Tapi pada dasarnya, Anda bisa menjalankan sendiri backend Postgres
00:04:14lalu memulai alur kerja dengan variabel lingkungan yang mengarah
00:04:17ke instans Postgres tersebut.
00:04:19Dan adaptor dunia akan mengaturnya dengan semua tabel
00:04:25yang kami butuhkan, lalu menggunakannya sebagai lapisan persistensi
00:04:29dan menggunakannya dengan andal.
00:04:31Kami memiliki lebih banyak dunia yang akan datang juga.
00:04:32Jadi kami bekerja dengan komunitas dan sebagainya.
00:04:34Kami memiliki dunia Cloudflare yang sedang dikerjakan.
00:04:36Kami memiliki dunia AWS yang sedang dikerjakan.
00:04:39Ini telah dibangun untuk menjadi sesuatu yang bisa dijalankan di mana saja.
00:04:43Kami telah melakukan sedikit pekerjaan,
00:04:44seperti yang saya katakan, dengan tiga yang dikelola pihak pertama itu.
00:04:47Dan ada banyak lagi yang datang di sana, baik dari tim kami
00:04:50maupun dari komunitas saat ini.
00:04:54Kami mendapat banyak dukungan di komentar, seseorang
00:04:57yang mengatakan mereka benar-benar menggunakan alur kerja Vercel saat ini,
00:05:02yang lain yang berpikir alur kerja adalah tambahan yang bagus untuk Vercel.
00:05:08Pertanyaan lain yang saya lihat muncul dengan hal semacam ini
00:05:12adalah, ada potongan kode di dokumentasi,
00:05:15tetapi apakah ada aplikasi lengkap atau contoh yang lebih kompleks,
00:05:19skenario, yang dapat membantu orang memulai dengan pekerjaan nyata
00:05:23dan bukan hanya materi dasar pemula yang teoritis?
00:05:27Ya, saya sebenarnya ingin berbagi layar saya, jika tidak apa-apa.
00:05:31Oh, ya, tentu.
00:05:32Anda bisa membagikannya.
00:05:34Saya tadinya akan--
00:05:37Chrome selalu memaksa Anda menekan empat tombol untuk melakukan ini.
00:05:40Oke, ini dia.
00:05:42Jadi dua hal yang ingin saya tunjukkan adalah,
00:05:44satu adalah contoh alur kerja.
00:05:46Ini adalah repositori yang kami kelola.
00:05:48Dan kami menggunakan ini untuk banyak demo kami,
00:05:50termasuk generator kartu ulang tahun yang baru saja saya tunjukkan.
00:05:54Kami juga memiliki aplikasi pemesanan penerbangan
00:05:55yang menggunakan Durable Agent, seperti yang saya bicarakan.
00:05:58Kami menunjukkan kepada Anda cara menjalankan ini di Postgres.
00:06:00Dan ada juga-- Saya punya PR untuk menunjukkan kepada Anda cara menyebarkan
00:06:03ini di luar Vercel juga.
00:06:08Jadi kami memiliki banyak contoh di sini.
00:06:09Dan hal lain yang kami habiskan banyak waktu saat ini
00:06:12adalah buku masak (cookbook).
00:06:15Jadi ada lebih banyak pekerjaan yang akan datang ke halaman ini dengan tidak
00:06:19hanya menunjukkan kepada Anda--
00:06:21saat ini, kami menggunakan ini untuk menunjukkan kepada Anda banyak pola umum
00:06:23dalam alur kerja.
00:06:24Ada beberapa hal yang menjadi sangat menarik dan mengasyikkan
00:06:27untuk cara kami bahkan menggunakan alur kerja di Vercel.
00:06:31Misalnya, saya baru saja menulis panduan ini
00:06:32tentang menggunakan pengontrol pembatalan terdistribusi.
00:06:34Jadi jika Anda melihat primitif kait dan tidur
00:06:37dan langkah-langkah, kami menganggapnya sebagai primitif.
00:06:41Dan kemudian ada semua hal menyenangkan yang bisa Anda bangun di atasnya.
00:06:44Misalnya, v0 menggunakan pengontrol pembatalan terdistribusi
00:06:48sebagai mekanisme mereka agar tombol berhenti berfungsi.
00:06:51Jadi ketika Anda menggunakan obrolan v0 dan Anda menekan tombol berhenti,
00:06:53kami pada dasarnya menggunakan alur kerja dengan pengontrol pembatalan
00:06:56untuk menghentikan semua proses yang sedang berlangsung di latar belakang.
00:07:00Jadi kami akan menambahkan lebih banyak hal ke sini.
00:07:01Tapi menurut saya ini adalah dua tempat yang bagus
00:07:03untuk melihat contoh bukan hanya potongan kode sederhana,
00:07:08tetapi ke mana Anda harus pergi dari sana.
00:07:13Bagus.
00:07:13Dan ini cukup contoh nyata.
00:07:16Ini adalah hal-hal yang telah kami lakukan di Vercel dan beberapa ide
00:07:18yang telah kami lihat pelanggan kerjakan.
00:07:21Jadi saya suka itu.
00:07:23Ya.
00:07:26Pada titik ini, semua orang hampir menggunakan agen pengkodean AI.
00:07:31Jadi semua itu bagus bagi orang untuk dieksplorasi.
00:07:36Tapi bagaimana dengan mendukung agen pengkodean?
00:07:41Seberapa mudah bagi mereka untuk mempelajari cara kerja alur kerja baru ini?
00:07:45Ya, saya menyebutkan ini sebelumnya.
00:07:47Ada dua hal hebat yang telah kami lihat.
00:07:51Satu bahwa agen telah mengambil cara
00:07:54untuk membuat kode seperti yang telah manusia lakukan sejak lama.
00:07:58Semua ini dilatih dari cara kita menyukai pemrograman.
00:08:01Jadi kami menemukan sejak awal, karena ada
00:08:06banyak cara yang bisa kita ambil dengan DX alur kerja.
00:08:08Dan kami memilih untuk melakukan hal yang sangat ringan
00:08:11pada SDK.
00:08:13Itu sebagian besar hanya JavaScript.
00:08:14Itu sebagian besar hanya direktif.
00:08:15Agen memahaminya dengan baik.
00:08:17Dan sangat mudah bagi agen untuk memodelkan
00:08:19melakukan hal-hal secara paralel dalam skala besar.
00:08:22Biarkan saya berjanji kepada mereka semua.
00:08:23Jika Anda ingin melakukan langkah, tetapi Anda ingin mengatur waktunya,
00:08:24polanya dalam alur kerja adalah Anda pada dasarnya
00:08:27hanya melakukan promise.race, dan Anda menghapus langkah Anda dengan fitur tidur.
00:08:29Ini adalah cara yang sangat alami untuk memikirkan kode dan memecahkan masalah
00:08:34ketika Anda-- jika Anda sudah mengetahui dasar-dasar JavaScript.
00:08:37Dan agen tampaknya telah menangkap hal itu dengan sangat baik.
00:08:40Dan karena mereka sudah tahu cara melakukan hal-hal yang sulit.
00:08:43Mereka tahu cara menulis kode kerangka kerja yang sangat kompleks.
00:08:47Kami menggunakannya di Next.js.
00:08:50Kami menggunakan elemen dengan Next.js sepanjang waktu.
00:08:53Mereka memiliki pemahaman yang baik tentang kode infrastruktur--
00:08:56atau maaf, tentang kode kerangka kerja.
00:08:59Itu berpindah dengan sangat baik ke alur kerja
00:09:02ketika tidak ada banyak--
00:09:05ketika Anda tidak menambahkan banyak beban ke SDK.
00:09:08Sebagai perbandingan, juga mudah untuk memiliki
00:09:11SDK dengan banyak opsi,
00:09:13dengan banyak kompleksitas, yang membuatnya tidak hanya rumit
00:09:15dengan banyak sekali kompleksitas, yang membuatnya tidak hanya rumit
00:09:18bagi manusia, karena Anda jadi punya banyak sekali dokumen yang harus dibaca.
00:09:22Dan ini adalah masalah yang saya
00:09:23hadapi dengan kompetitor sebelum mulai mengerjakan workflow.
00:09:26Sering kali rasanya DX menggunakan sistem workflow
00:09:29itu-- secara teori memang hebat, tapi sangat sulit
00:09:32untuk benar-benar dijalankan.
00:09:33Atau saya harus membaca buku petunjuk yang sangat besar.
00:09:36Agen juga kesulitan dengan hal itu, karena mereka harus
00:09:38memasukkan semuanya ke dalam konteks.
00:09:40Atau jika mereka mempelajarinya-- Anda tidak melihat ini
00:09:42dalam contoh-contoh tertentu lainnya--
00:09:45mereka mulai-- menjadi sangat sulit
00:09:47untuk mengubah SDK di masa depan.
00:09:49Namun saat Anda mengubah sesuatu--
00:09:50saat Anda mengubah versi, model lama
00:09:53masih terpaku pada apa yang telah mereka pelajari.
00:09:57Jadi ya, satu alasannya adalah kami mendapati agen sangat--
00:10:01itu jawaban yang panjang.
00:10:02Kami mendapati agen sangat bagus untuk workflow.
00:10:04Dan tentu saja, kami juga merilis skill untuk workflow kami.
00:10:07Jadi Anda bisa menjalankan NPX skills di Vercel workflow.
00:10:11Jika Anda melihat skill tersebut, yang menurut saya adalah poin menarik
00:10:14untuk membuktikan apa yang baru saja saya katakan, skill workflow pada dasarnya
00:10:17hanya memerintahkannya untuk--
00:10:20menunjukkan beberapa contoh kode yang sangat mendasar
00:10:23tentang bagaimana Anda bisa melakukan sesuatu seperti race,
00:10:25dan kemudian hanya mengarahkannya untuk membaca dokumen, yang
00:10:27kami sertakan bersama paket NPM kami.
00:10:30Jadi agen pada dasarnya hanya melihat kode sumber
00:10:34dan akhirnya menjadi sangat mahir dalam menulis workflow juga.
00:10:37Dan kemudian skill dengan dokumen tersebut
00:10:38membuatnya tetap up-to-date dengan semua yang terbaru, yang sangat bagus.
00:10:41Benar, tepat sekali.
00:10:42Membuatnya tetap terbaru, membuatnya tetap mengarah ke versi yang tepat
00:10:44karena Anda mengirimkan dokumen bersama paket Anda.
00:10:47Jadi jika kami mengubah SDK juga, tetapi Anda
00:10:49berada di versi klien yang lebih lama,
00:10:51beberapa opsi yang kami miliki, LLM Anda hanya
00:10:54memiliki akses ke opsi tersebut secara lokal.
00:10:57Bagus.
00:10:58Ada pertanyaan lain yang masuk di obrolan.
00:11:00Yang ini adalah, apakah kita punya angka skala
00:11:03tentang berapa banyak workflow dan subworkflow serta langkah
00:11:07yang bisa kita miliki dalam satu kali eksekusi?
00:11:11Oh, ya.
00:11:13Ya, itu pertanyaan yang bagus.
00:11:16Jadi konkurensi pada workflow saat melakukan deployment--
00:11:22Saya berasumsi Anda berbicara tentang Vercel.
00:11:24Saat Anda melakukan deployment ke Vercel, konkurensi
00:11:26pada langkah dan workflow hanya dibatasi oleh fungsi Vercel Anda
00:11:30konkurensi, yang saya yakini sekitar 10.000 atau 100.000.
00:11:33Itu berdasarkan tingkatan Anda.
00:11:36Namun pada dasarnya, workflow itu sendiri tidak
00:11:39menambah batasan dalam konkurensi.
00:11:41Namun, runtime yang mampu menjalankan--
00:11:44cara kerja penangguhan dan pelanjutan pada dasarnya
00:11:46dengan workflow adalah kita memiliki log peristiwa ini
00:11:50yang terus melacak semua input dan output langkah.
00:11:53Jadi saat log peristiwa Anda menjadi sangat besar,
00:11:55baik Anda memiliki 1.000 langkah satu demi satu,
00:11:59atau Anda memiliki 1.000 langkah secara paralel, apa pun itu,
00:12:01Anda mulai membangun log peristiwa ini.
00:12:03Dan kita harus terus memuat seluruh log peristiwa untuk pemutaran ulang
00:12:06saat workflow berjalan lebih lama.
00:12:09Jika Anda datang dari dunia temporal,
00:12:10saya rasa batas ini adalah 50.000 peristiwa atau 50 megabyte
00:12:14dalam total penyimpanan Anda.
00:12:16Kami baru saja menerbitkan ini di workflow.
00:12:18Kami juga memiliki batasan sendiri.
00:12:22Saya rasa itu ada di--
00:12:26ada di dokumen Vercel, yang bisa saya benar-benar
00:12:30perluas tautan Anda nanti.
00:12:33Saya harus menemukannya.
00:12:34Tapi ada--
00:12:36Saya rasa batasan kami untuk ini adalah Anda bisa menjalankan--
00:12:40Anda bisa menjalankan lebih banyak workflow secara paralel.
00:12:42Anda bisa memulai banyak workflow anak.
00:12:44Tidak satu pun dari itu yang memengaruhi log peristiwa.
00:12:45Hal yang memengaruhi log peristiwa
00:12:47adalah melakukan banyak langkah secara paralel.
00:12:49Jadi saat Anda memiliki sekitar 1.000 hingga 10.000 langkah
00:12:52secara paralel, Anda bisa mulai mengalami masalah waktu habis.
00:12:55Anda bisa mulai membuat workflow berjalan lebih lama.
00:12:59Kami telah melihat workflow yang-- kami
00:13:01telah melihat agen yang melakukan 5.000 langkah dan baik-baik saja.
00:13:04Mereka mulai memiliki-- beberapa langkah terakhir
00:13:06mulai mencapai latensi 15 hingga 20 detik antar langkah.
00:13:11Jadi berdasarkan kasus penggunaan Anda, itu bisa sangat
00:13:13lama, atau jika itu tugas latar belakang yang
00:13:15perlu berjalan selama 5.000 langkah bagi beberapa pelanggan, itu tidak masalah.
00:13:19Pada saat yang sama, ini adalah fokus besar
00:13:21pada apa yang kami kerjakan di workflow SDK5.
00:13:25Jadi banyak dari apa yang kami lakukan dengan SDK5, yang sedang dalam beta
00:13:29saat ini, adalah sekarang setelah DX-nya tepat,
00:13:34kami mencoba menyelesaikan masalah pemutaran ulang ini sepenuhnya.
00:13:37Jadi ketika Anda menggunakan sesuatu seperti temporal,
00:13:38misalnya, Anda akhirnya mencapai batas ini.
00:13:40Dan solusinya selalu ketika Anda mencapai 5.000 peristiwa,
00:13:44Anda harus mematikan workflow Anda
00:13:46dan melanjutkannya sebagai workflow baru.
00:13:48Anda sudah bisa melakukan itu hari ini dengan workflow.
00:13:50Anda bisa memulai workflow baru jika Anda mau.
00:13:52Tetapi solusi yang tepat, menurut saya,
00:13:54adalah mampu meningkatkan runtime
00:13:56dan membuat penangguhan serta pelanjutan menjadi O dari 1
00:13:59bukan terikat pada panjang log peristiwa.
00:14:03Ada beberapa pekerjaan yang sedang kami lakukan sekarang
00:14:04dengan runtime berbasis snapshot dan WASM
00:14:06yang kami jelajahi untuk melihat apakah kami bisa menghilangkan pemutaran ulang tersebut,
00:14:09di mana Anda bisa memiliki konkurensi yang sangat tinggi
00:14:12dan eksekusi workflow yang sangat panjang.
00:14:19Baiklah, waktu kita hampir habis.
00:14:21Saya ingin sensitif terhadap hal itu.
00:14:22Jadi satu pertanyaan terakhir.
00:14:25Dan Anda mulai menyinggung hal ini.
00:14:27Apa yang akan terjadi selanjutnya?
00:14:28Apa yang harus diperhatikan orang-orang?
00:14:31Ya.
00:14:33Saat kami mencapai GA dengan workflow 4, seperti yang saya sebutkan,
00:14:36workflow 5 saat ini dalam versi beta.
00:14:39Belum ada jadwal kapan kami akan kembali ke GA untuk itu.
00:14:42Namun fokus utama dengan workflow 5
00:14:44adalah pada performa, seperti batasan--
00:14:47seperti yang saya bicarakan dengan batasan, mencoba membuatnya
00:14:50sehingga Anda tidak perlu khawatir untuk melanjutkan
00:14:52sebagai workflow baru pada titik tertentu.
00:14:55Juga, kontrol konkurensi asli.
00:14:57Jadi dalam RFC, kami telah memilikinya sejak hari pertama dengan workflow,
00:15:00yaitu seperti primitif langkah, hook,
00:15:05dan waktu, serta tunggu, dan tidur, kami
00:15:08menambahkan primitif baru bernama kunci (lock), yang pada dasarnya
00:15:11membiarkan workflow Anda menunggu kunci,
00:15:15menunggu slot konkurensi.
00:15:16Anda bisa memiliki 20 workflow yang semuanya berjalan paralel,
00:15:18tetapi Anda hanya memiliki konkurensi satu per menit.
00:15:20Mereka semua bisa menunggu kunci itu yang hanya akan dilanjutkan
00:15:23saat kunci-kunci itu terbuka.
00:15:24Ini adalah cara asli yang sangat bagus untuk memiliki konkurensi dalam skala besar.
00:15:28Dan meningkatkan pengalaman streaming agen.
00:15:31Itu adalah salah satu kasus penggunaan besar dengan workflow, seperti yang saya katakan,
00:15:34adalah Anda bisa menggunakannya untuk workflow bergaya kartu ulang tahun tradisional,
00:15:36atau Anda bisa menggunakannya
00:15:39untuk agen AI, di mana kami memiliki banyak opini tentang SDK itu,
00:15:43dan bagaimana cara kerjanya dengan streaming, dan bagaimana cara kerjanya dengan sandbox.
00:15:47Ada banyak hal lagi yang akan datang di sana untuk sekadar meningkatkan performa
00:15:49dan meningkatkan DX dari kasus penggunaan agen.
00:15:54Luar biasa.
00:15:55Banyak yang dinanti-nantikan.
00:15:56Kami mendapat beberapa pertanyaan lagi.
00:15:58Kami akan menjawabnya secara asinkron di obrolan.
00:16:01Terima kasih banyak telah berada di sini untuk berbicara dengan semua orang, Praneet.
00:16:04Terima kasih banyak, Amy.
00:16:05Ini menyenangkan.
00:16:07Baiklah, dan terima kasih semua telah menonton.
00:16:09Kami memiliki sesi lain dengan beberapa teman dari next Kamis.
00:16:14Jadi datanglah kembali hari Kamis.
00:16:15Sampai jumpa saat itu.
00:16:39[AUDIO KOSONG]

Key Takeaway

Workflow SDK memungkinkan pengembangan tugas AI dan proses yang berjalan lama dengan model pemrograman sumber terbuka yang mendukung persistensi fleksibel di Vercel, Postgres, atau infrastruktur lokal.

Highlights

  • Workflow SDK menyediakan tiga primitif dasar untuk alur kerja yang berjalan lama: langkah-langkah, kait (hooks) untuk peristiwa eksternal, dan fitur tidur (sleeps) mulai dari detik hingga bulan.

  • Durable Agent menggunakan orkestrasi bawaan untuk menangani eksekusi tugas AI yang berulang, termasuk panggilan LLM, penulisan memori, dan akses sistem file.

  • Workflow SDK adalah kerangka kerja sumber terbuka yang mendukung sistem 'worlds' untuk persistensi data, dengan dukungan bawaan untuk Vercel, penyimpanan lokal, dan Postgres.

  • Eksekusi alur kerja di Vercel dibatasi oleh konkurensi fungsi platform, sementara batasan log peristiwa internal saat ini berada di sekitar 5.000 hingga 10.000 langkah paralel.

  • Workflow SDK versi 5 sedang dalam tahap beta dengan fokus pada eliminasi batasan log peristiwa melalui runtime berbasis snapshot dan WASM.

Timeline

Dasar-Dasar Workflow SDK

  • Workflow SDK mengandalkan tiga primitif utama: langkah, kait, dan tidur.
  • Durable Agent mempermudah orkestrasi tugas AI yang memerlukan eksekusi berulang.

Struktur dasar alur kerja dirancang untuk memodelkan proses latar belakang yang berjalan lama. Primitif tidur memungkinkan proses menunggu dalam rentang durasi yang luas. Durable Agent menyediakan kelas khusus untuk mengelola kompleksitas orkestrasi AI seperti streaming token dan panggilan alat secara native.

Interoperabilitas dan Arsitektur Terbuka

  • Workflow SDK bersifat sumber terbuka dan menggunakan konsep 'worlds' sebagai adaptor persistensi.
  • Kode yang sama dapat dijalankan secara lokal, di Vercel, atau menggunakan backend Postgres.

Fleksibilitas SDK memungkinkan migrasi alur kerja antar platform dengan mudah. Pengalaman pengembangan lokal meniru perilaku produksi dengan menyimpan data di sistem file atau memori. Adaptor untuk AWS dan Cloudflare saat ini sedang dalam tahap pengembangan oleh komunitas dan tim internal.

Contoh Implementasi dan Integrasi AI

  • Repositori demo menyediakan contoh nyata seperti pemesanan penerbangan dan pengontrol pembatalan terdistribusi.
  • Model AI mampu menulis kode workflow dengan mahir karena SDK menggunakan sintaks JavaScript standar.

Contoh aplikasi yang dikelola tim Vercel menunjukkan pola penggunaan yang kompleks, termasuk mekanisme pembatalan proses. Karena SDK dirancang ringan tanpa beban abstraksi berlebih, agen pengkodean AI dapat memahami dan memodifikasi kode alur kerja dengan tingkat akurasi tinggi.

Skalabilitas dan Peta Jalan Masa Depan

  • Batasan teknis saat ini terkait dengan ukuran log peristiwa pada eksekusi 5.000+ langkah paralel.
  • Workflow SDK 5 akan memperkenalkan primitif 'kunci' untuk kontrol konkurensi asli.

Kinerja alur kerja saat ini dipengaruhi oleh log peristiwa yang dimuat ulang selama eksekusi panjang. Fokus versi 5 adalah meningkatkan runtime menggunakan teknologi WASM untuk menghilangkan ketergantungan pada panjang log. Penambahan primitif kunci akan memungkinkan manajemen slot konkurensi secara terpusat untuk alur kerja berskala besar.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video