Transcript
00:00:00[AUDIO_KOSONG]
00:00:30.
00:00:53>> Halo, selamat datang semuanya di sesi komunitas Vercel lainnya.
00:00:57Nama saya Jacob Paris, saya akan menjadi pembawa acara Anda hari ini.
00:01:00Kami mengadakan sesi ini untuk menonjolkan proyek-proyek keren dari komunitas,
00:01:03dari pelanggan, dan siapa saja yang membangun hal-hal keren di Vercel.
00:01:08Kami menyiarkan ini secara langsung di X dan LinkedIn, tetapi
00:01:10jika Anda ingin berpartisipasi dalam obrolan, silakan ke [vercel.com/live](https://vercel.com/live), dan
00:01:15Anda akan dapat melihat sesi ini di bagian atas halaman.
00:01:18Di akhir sesi, kita akan ada waktu untuk tanya jawab, jadi
00:01:21jangan ragu untuk menuliskan pertanyaan di obrolan langsung sepanjang acara.
00:01:25Saya ingin memperkenalkan tamu kita hari ini.
00:01:27Kita kedatangan Shane Smith dari Saltbox Management.
00:01:30>> Halo.
00:01:32>> Halo Shane, bagaimana kabar Anda hari ini?
00:01:35>> Luar biasa, bagaimana dengan Anda?
00:01:37>> Saya juga sangat baik.
00:01:38Ya, jadi Anda punya demonstrasi untuk kami?
00:01:42>> Ya, saya punya beberapa materi untuk dibahas,
00:01:46sedikit konteks, lalu demo langsung di akhir sesi.
00:01:48>> Bagus sekali, saya bisa bantu membagikan layar Anda di sini jika ingin memulai.
00:01:53>> Terdengar sangat sempurna.
00:01:57Baik, selagi layarnya muncul, saya akan mulai dengan latar belakang singkat di sini.
00:02:04Jadi nama saya, seperti yang dikatakan Jacob, adalah Shane Smith, saya CTO di Saltbox Management.
00:02:09Saltbox adalah perusahaan penyedia layanan.
00:02:12Kami sebenarnya menghabiskan sebagian besar waktu kami untuk mengimplementasikan
00:02:16teknologi Salesforce bagi para pelanggan kami.
00:02:18Dan selama beberapa tahun terakhir, kami telah membangun sebuah produk untuk diri kami sendiri.
00:02:24Seiring berjalannya waktu, kami mulai mencapai titik di mana kami siap meluncurkannya
00:02:28kepada para pelanggan kami dan ke dunia luar dalam skala yang lebih besar.
00:02:31Jadi hari ini, saya akan membahas tentang bagaimana kami melakukannya, khususnya dengan Vercel,
00:02:37dan beberapa teknologi berbeda yang disediakan oleh Vercel bagi kami.
00:02:41Seperti yang bisa Anda lihat di layar saat ini,
00:02:42kita juga akan membahas tentang AI Gateway.
00:02:44Jadi, mari kita bahas sedikit tentang pernyataan masalahnya di sini,
00:02:49kami memiliki sekumpulan pelanggan yang menggunakan Salesforce.
00:02:54Dan khususnya di era agensi AI ini, para pengguna ingin berinteraksi dengan
00:02:58Salesforce menggunakan bahasa sehari-hari yang lebih natural.
00:03:02Maka dari itu, pada kasus penggunaan pertama, pernyataan masalah yang ingin kami selesaikan adalah
00:03:06untuk para pengguna bisnis.
00:03:07Mereka ingin bisa berbicara dengan ekosistem produk Salesforce mereka menggunakan bahasa biasa
00:03:10dan benar-benar mendapatkan jawaban atas pertanyaan mereka dengan lebih cepat.
00:03:16Dan pada kasus kedua, kami mencoba menyelesaikannya untuk para builder, orang-orang yang
00:03:20sebenarnya mengonfigurasi dan membangun kustomisasi di dalam Salesforce,
00:03:23yang sebagian besar adalah kami sendiri.
00:03:25Dari situlah perjalanan kami dimulai, yaitu kami ingin mempermudah proses
00:03:28pembangunan Salesforce menggunakan bantuan agen AI.
00:03:31Jadi itulah dua pernyataan masalah yang sedang kami coba selesaikan untuk diri kami sendiri
00:03:34dan juga untuk para pengguna kami.
00:03:35Dan konteks di balik hal ini adalah, melakukan ini sebenarnya cukup menantang.
00:03:41Maksud saya, itulah alasan mengapa orang-orang menyewa perusahaan layanan seperti kami dan yang lainnya.
00:03:45Karena memahami konteks Salesforce, memahami perusahaan, dan
00:03:49konteks proyek apa yang ingin mereka lakukan, lalu memindahkannya ke dalam
00:03:54kode produksi yang terukur dengan praktik terbaik itu sangatlah sulit.
00:03:58Jadi Anda tidak bisa begitu saja menggunakan LLM apa pun di luar sana
00:04:01dan menanyakan pertanyaan tentang Salesforce; itu mungkin akan memberi Anda sesuatu,
00:04:05tetapi tidak akan memberikan sesuatu yang siap pakai untuk lingkungan produksi.
00:04:07Dan itulah tujuan utama yang ingin kami capai.
00:04:12Jadi saat kami menelusuri jalur ini, kami memiliki tim produk yang relatif kecil
00:04:16untuk membangun produk yang cukup ambisius ini.
00:04:19Oleh karena itu, kami ingin fokus pada produknya dan tidak terlalu memikirkan infrastruktur.
00:04:24Kami ingin infrastrukturnya langsung bekerja dan memberikan kemampuan yang kami butuhkan.
00:04:28Dan itu adalah tantangan sekaligus taruhan kami, bahwa kami bisa membangun
00:04:33platform yang terukur ini di atas infrastruktur Vercel untuk mewujudkannya.
00:04:40Saya akan berbicara sedikit tentang bagaimana kami benar-benar berhasil melakukan itu.
00:04:44Kami memiliki sekitar tiga tingkatan dalam arsitektur tingkat tinggi kami.
00:04:48Pada tingkatan paling atas, kami memiliki aplikasi Next.js yang berfungsi sebagai
00:04:53antarmuka pengguna (UI) yang menghadap ke luar.
00:04:56Dan aplikasi tersebut memiliki semua kemampuan streaming UI standar yang Anda harapkan
00:05:02dari sebuah agen AI di masa sekarang ini.
00:05:04Lalu di tingkatan kedua, kami memiliki kemampuan edge dan server kami di sini.
00:05:09Kami menggunakan AI SDK, khususnya versi enam sekarang, untuk mengendalikan agen AI tersebut
00:05:16serta mengelola siklus agen (agentic loop) dan semua alat yang terintegrasi di dalamnya.
00:05:21Jika Anda belum akrab dengan SDK ini dan baru mulai masuk ke dunia agen AI,
00:05:25saya sangat menyarankan Anda untuk menggunakannya.
00:05:28Ini memberi Anda kemampuan untuk menggunakan LLM apa pun secara menyeluruh.
00:05:34Ia bekerja secara agnostik terhadap model dan menyediakan kerangka kerja serta
00:05:37scaffolding yang Anda butuhkan untuk membangun siklus agen AI
00:05:40dan memberikan beberapa alat bantu yang sangat mumpuni melalui proses tersebut.
00:05:43Dan tingkatan ketiga di sini adalah AI itu sendiri, yaitu menghubungkannya ke model apa pun yang kami inginkan.
00:05:51Dan itulah yang benar-benar kami putuskan saat pertama kali menempuh jalur ini,
00:05:56kami ingin memahami apa model yang tepat untuk digunakan.
00:06:00Dan kesimpulan kami adalah bahwa tidak selalu ada satu model yang tepat untuk digunakan
00:06:04di setiap situasi.
00:06:06Jadi kami ingin membangunnya dengan cara yang agnostik, sehingga kami bisa memasang
00:06:10dan menggunakan model yang tepat untuk situasi yang tepat seiring dengan munculnya model-model baru.
00:06:14Menghubungkannya juga tanpa perlu melakukan perubahan scaffolding yang besar di balik layar.
00:06:20Jadi kami memilih AI Gateway untuk itu,
00:06:23dan saya akan membahasnya lebih lanjut sebentar lagi.
00:06:25Lalu kami memiliki layanan pendukung kami,
00:06:30seperti yang bisa Anda lihat di bagian bawah, yang mendukung sisa infrastruktur lainnya.
00:06:35Mari kita bahas sedikit lebih mendalam tentang AI Gateway di sini,
00:06:38Anda bisa melihat di sisi kiri adalah contoh skrip semu tentang bagaimana tampilannya,
00:06:43tetapi pada dasarnya Anda hanya memiliki satu baris kode yang menyatakan,
00:06:46"Saya akan menghubungkannya ke gateway."
00:06:49Dan setelah Anda memilikinya, Anda memiliki gateway tersebut
00:06:51dan pada dasarnya Anda bisa menggunakan model apa pun yang Anda inginkan.
00:06:55Jadi dalam banyak kasus, kami menggunakan Claude 3 Opus, tetapi dalam beberapa kasus kami menggunakan Sonnet,
00:07:00GPT, dan beberapa model Groq di situasi yang berbeda.
00:07:04Dan itu benar-benar salah satu hal hebat dari AI Gateway,
00:07:08yaitu Anda bisa menggunakan model apa pun yang Anda inginkan, Anda tidak terkunci,
00:07:10dan Anda memiliki fleksibilitas tersebut.
00:07:12Dan apa yang dimungkinkan oleh hal ini bagi kami adalah adanya perutean
00:07:18berbasis intuisi di sini seputar kompleksitas dan jenis pertanyaan.
00:07:22Jadi kami memiliki pengklasifikasi di sini yang memungkinkan kami menentukan
00:07:27seberapa kompleks pertanyaan yang diajukan oleh pengguna?
00:07:29Apakah mereka hanya meminta tanggapan sederhana untuk pesan sapaan?
00:07:32Atau apakah mereka menanyakan sesuatu yang lebih kompleks seperti mencoba membangun seluruh alur kerja
00:07:37untuk pengguna tersebut?
00:07:38Tergantung pada hal itu, kami mungkin akan merutenya ke model yang berbeda.
00:07:40Dan itu memungkinkan kami untuk mendapatkan respons yang cepat,
00:07:44memilih tingkat kompleksitas yang tepat pada model yang kami sediakan,
00:07:49dan memberikan tanggapan yang tepat kepada pengguna.
00:07:50Dan di era sekarang ini, terkait dengan pengalaman pada agen AI,
00:07:59sebenarnya ada dua kemampuan berbeda yang diharapkan oleh sebagian besar pengguna saat ini.
00:08:04Yaitu sesuatu yang di-streaming kembali ke pengguna sehingga
00:08:07Anda bisa melihat apa yang sedang terjadi secara real-time.
00:08:09Tetapi juga apa yang sebenarnya terjadi ketika Anda memiliki permintaan
00:08:14yang sangat kompleks yang mungkin memakan waktu lebih dari beberapa menit, puluhan menit, atau bahkan berjam-jam.
00:08:20Jadi kami memulainya dari perspektif produk di sisi streaming.
00:08:23Di situlah AI SDK benar-benar bersinar, ia dimulai di sisi streaming.
00:08:28Dan di sisi kiri, Anda bisa melihat contoh kuesioner,
00:08:31menghasilkan user story dari sebuah rapat.
00:08:33Itu adalah salah satu kasus penggunaan pertama kami saat membangun alat ini,
00:08:37yaitu mengambil semua konteks dan menyediakan user story untuk para pengembang.
00:08:41Namun saat kami mulai masuk ke persyaratan yang lebih kompleks seperti membuat seluruh
00:08:45etalase B2B di Salesforce atau merancang situs Experience Cloud dengan halaman kustom,
00:08:51hal-hal tersebut membutuhkan waktu yang jauh lebih lama daripada beberapa menit yang bisa di-stream ke browser.
00:08:56Jadi seiring kedewasaan kami dalam menggunakan platform Vercel,
00:08:59kami mulai memiliki pengalaman tunggal yang dirasakan pengguna di UI,
00:09:05tetapi mampu melakukan streaming sekaligus menjalankan proses latar belakang,
00:09:09tergantung pada tingkat kompleksitasnya.
00:09:11Dan itu semua didukung di dalam infrastruktur Vercel,
00:09:14baik pada platform itu sendiri, tetapi juga menggunakan beberapa kemampuan seputar
00:09:19sandbox dan beberapa fitur lainnya yang akan saya bahas sebentar lagi.
00:09:24Jadi dari perspektif alat bantu, saya pikir ini adalah salah satu kekuatan super dari penggunaan
00:09:28sesuatu seperti AI SDK karena Anda memiliki kerangka kerja yang bisa Anda hubungkan langsung.
00:09:34Kami memulainya hanya dengan beberapa alat lalu seiring berjalannya waktu membangun lebih banyak
00:09:39alat dalam kategori ini yang memungkinkan kami memiliki cara untuk berinteraksi
00:09:44dengan pengguna dan lingkungan Salesforce juga.
00:09:48Jadi Anda bisa melihat kami memiliki pembuatan dokumen, pencarian,
00:09:52user story, integrasi, dan terutama kemampuan Salesforce di sini,
00:09:57yang memungkinkan kami memahami lingkungannya, memvalidasi, melakukan kueri, dan
00:10:01melakukan penerapan (deployment) ke lingkungan tersebut juga.
00:10:05Jadi ini benar-benar menghidupkan agen AI ini di luar sekadar menggunakan LLM secara langsung.
00:10:10Jadi, mari kita bahas tentang bagaimana agen AI ini bekerja langsung di lapangan.
00:10:16Bagaimana cara kerjanya?
00:10:18Di dalam ekosistem Vercel, ini sebenarnya adalah salah satu kemampuan baru
00:10:22yang telah mereka luncurkan, yaitu kemampuan untuk memiliki sandbox.
00:10:27Jika Anda familier dengan Salesforce dan
00:10:30berpikir tentang bagaimana cara berinteraksi dengannya, sering kali pengembang dan
00:10:34tim teknis akan menggunakan Salesforce CLI.
00:10:39Dan itu memungkinkan mereka, di tingkat terminal, untuk berinteraksi dengan Salesforce,
00:10:43membuat sandbox, membuat etalase B2B commerce, dan melakukan deployment.
00:10:49Itu membuatnya sangat mudah untuk berinteraksi dengan Salesforce.
00:10:51Tapi itu sangat sulit dilakukan di browser yang bersifat efemeral, bukan?
00:10:55Anda masuk ke situs apa saja dan harus log in setiap saat,
00:10:59yang membuatnya sulit untuk berinteraksi dengan Salesforce secara konsisten.
00:11:01Oleh karena itu, kami mulai memanfaatkan kemampuan sandbox Vercel ini di mana kami
00:11:06sebenarnya mengizinkan pengguna untuk melakukan autentikasi ke lingkungan mereka.
00:11:10Menyiapkan sandbox yang memungkinkan kami berinteraksi dengan sistem file
00:11:16dan memungkinkan kami untuk benar-benar men-deploy kode atau file yang kami buat
00:11:20ke dalam sandbox tersebut, lalu menggunakan Salesforce CLI
00:11:26di dalam sandbox tersebut untuk mengirimkan file-file tersebut ke Salesforce.
00:11:30Mungkin ini adalah kasus penggunaan yang spesifik di ekosistem Salesforce karena mereka
00:11:35memiliki konsep scratch orgs dan sandbox, tetapi saya pikir seiring
00:11:40kita masuk lebih jauh ke sisi coding dari ekosistem agen AI,
00:11:43ide di balik penggunaan sandbox ini sangatlah penting karena
00:11:49menyediakan kemampuan bagi kami untuk memiliki struktur file
00:11:55yang secara tradisional menjadi dasar pembangunan agen AI dan LLM.
00:11:58Jadi saya pikir ini memberi Anda banyak fleksibilitas dalam hal
00:12:01apa yang sebenarnya bisa Anda lakukan.
00:12:06Dan sebagai penutup dari pilar-pilar yang telah kami bangun di sini,
00:12:10v0 telah menjadi kemampuan yang sangat besar bagi tim kami, bukan?
00:12:17Kami sebenarnya menggunakannya di dua sisi yang berbeda.
00:12:18Kami menggunakannya dari perspektif produk saat kami membangun produk kami, Saltbox One.
00:12:23Kami juga menggunakannya di sisi layanan saat kami membangun Salesforce.
00:12:27Jadi apa yang sebenarnya telah kami lakukan adalah kami menghubungkan keduanya.
00:12:31Di mana jika Anda berada di Saltbox One dan memiliki konteks tentang apa yang ingin Anda lakukan,
00:12:35memiliki semua informasi Salesforce, dan memiliki kemampuan untuk mengumpulkan
00:12:41semua informasi tersebut tentang organisasi Salesforce Anda, kami memiliki integrasi yang erat dengan
00:12:45v0 di mana Anda bisa mengirimkan informasi tersebut ke v0 sebagai konteks.
00:12:51Dan itu memungkinkan v0 untuk benar-benar membantu Anda menghasilkan kode.
00:12:54Jadi ini bukan hanya untuk React, tetapi dengan konteks dan
00:12:58informasi yang tepat, ia bisa melakukan hal-hal seperti Apex, LWC, dan alur kerja (flows).
00:13:01Karena kami telah mampu menghubungkan hal-hal tersebut bersama-sama
00:13:05dan menciptakan integrasi yang sangat mulus di sana.
00:13:09Jadi jika kita harus berhenti sejenak dan berpikir, apa yang ingin kami sampaikan kepada tim lain?
00:13:14Ini adalah empat poin pembelajaran dari saya.
00:13:17Pertama, gunakan gateway, berhentilah memperdebatkan model mana yang terbaik,
00:13:21dan mulailah memilih model yang tepat untuk alat yang tepat pada kesempatan yang tepat.
00:13:25Itu memberi Anda banyak fleksibilitas dan kemampuan di sana.
00:13:28Kedua, streaming hanyalah permulaan.
00:13:31Di situlah banyak aplikasi dimulai, terutama aplikasi rintisan (startup)
00:13:35di dunia agen AI.
00:13:38Tetapi sebenarnya Anda membutuhkan kemampuan menjalankan proses latar belakang yang persisten juga.
00:13:42Dan itulah batasan tertinggi yang ingin Anda tuju.
00:13:45Ketiga adalah sandbox seperti yang baru saja saya bahas di sini.
00:13:48Mewujudkannya, memberikan akses CLI ke agen AI Anda,
00:13:52dan itu benar-benar memberi Anda banyak kekuatan super di sana.
00:13:55Dan yang terakhir adalah menemukan platform yang tepat.
00:13:57Bagi kami, itu adalah membangun di atas Vercel dan
00:14:01memungkinkan kami untuk tidak memikirkan masalah infrastruktur.
00:14:04Hal ini membuat kami bisa fokus pada fitur dan
00:14:07kemampuan yang ingin kami luncurkan di Saltbox One dalam skala besar.
00:14:12Jadi, sekarang saya akan langsung masuk ke bagian demo
00:14:19dan menunjukkan pengalaman Salesforce berbasis percakapan.
00:14:24Sedikit membahas tentang pembuatan cerita dan
00:14:26melihat bagaimana agen ini bekerja secara langsung.
00:14:29Mohon tunggu sebentar selagi saya beralih ke layar tersebut.
00:14:34Oke, bagus.
00:14:38Sekarang kita masuk ke Saltbox One, ini adalah salah satu org demo kami.
00:14:44Tetapi Anda bisa melihat di sisi kiri, ada apa yang kami sebut
00:14:48proyek kami, dan proyek ini memberikan konteks yang berbeda.
00:14:51Lalu di bagian tengah, kami memiliki panel percakapan baru di sini.
00:14:56Jadi kita bisa fokus pada bagian ini.
00:14:58Kita bisa melihat semua proyek yang berbeda saat kita menggulir ke bawah.
00:15:01Ini memungkinkan kita untuk memasukkan konteks yang tepat ke dalam percakapan.
00:15:05Kami memiliki peralatan di bagian bawah sini,
00:15:08yang menjadi tempat semua integrasi kami dimasukkan.
00:15:12Dan di bawahnya lagi, kami memiliki kemampuan untuk menambahkan konteks.
00:15:16Kita bisa memasukkan rapat di sini, user story, artefak,
00:15:20Salesforce org, atau sesuatu yang spesifik dari Salesforce org tersebut.
00:15:23Hal itu memungkinkan kita untuk melakukan percakapan yang sangat kaya.
00:15:27Jadi saya akan memulai dengan skenario yang lebih kompleks terlebih dahulu.
00:15:33Dan selagi proses itu berjalan, kita akan beralih ke sesuatu yang lain,
00:15:37atau sesuatu yang sudah saya jalankan sebelumnya agar bisa kita bahas.
00:15:40Jadi dalam contoh ini, kita ingin membuat screen flow di Salesforce yang
00:15:45memungkinkan kita memasukkan komentar kasus dan memberikan layar konfirmasi.
00:15:51Persyaratannya tidak terlalu rumit, tetapi Anda harus memahami flow,
00:15:56cara mengonfigurasinya, cara mengaksesnya, dan
00:15:58cara melakukan debug.
00:16:00Jadi kita akan membiarkan agen kita mengerjakannya selagi kita
00:16:03membahas beberapa percakapan lainnya.
00:16:06Dan sebelum saya beralih, Anda bisa melihat proses pengambilan beberapa file konteks.
00:16:09Itulah salah satu rahasia utama dari Saltbox One, kami memiliki banyak
00:16:13informasi tentang Salesforce dan cara melakukannya,
00:16:16serta playbook untuk membuatnya berfungsi dengan benar di sini.
00:16:19Dan Anda bisa melihat prosesnya cukup cepat saat memberikan respons,
00:16:23"Kabar baik, saya sudah memeriksa instansi Anda."
00:16:25"Saat ini tidak ada otomatisasi pada komentar kasus, jadi kita bisa lanjut."
00:16:29Agen ini akan menanyakan beberapa pertanyaan tindak lanjut.
00:16:32Dan saya akan menjawab ya, Anda bisa menggunakan org default,
00:16:37lalu saya biarkan prosesnya berjalan untuk menyusun sebuah rencana.
00:16:41Namun selagi proses itu berjalan, saya akan beralih ke
00:16:44percakapan yang berbeda di sini.
00:16:47Ini adalah salah satu kemampuan yang paling sering digunakan
00:16:52dalam proyek kami untuk pelanggan, yaitu kemampuan untuk merekam rapat.
00:16:56Dalam kasus ini, saya memiliki demo brand bernama Halston.
00:17:00Saya merekam rapat saat kami membahas beberapa persyaratan baru tentang
00:17:03membangun kemampuan di dalam Salesforce.
00:17:07Dan saya menanyakan beberapa hal tentang org kami, saya ingin ini berdasarkan
00:17:11apa yang ada saat ini dan berdasarkan fungsi standar
00:17:16bawaan dari Salesforce.
00:17:18Sekilas ini tampak seperti permintaan yang mudah, namun
00:17:21jika dipikirkan lagi, ini sebenarnya cukup rumit karena menanyakan
00:17:26detail dari lingkungan Anda, dan Anda harus tahu apa yang standar
00:17:30serta apa yang kustom untuk membuat keputusan yang tepat.
00:17:33Jadi dalam kasus ini, kami mengajukan pertanyaan itu dan Anda bisa melihat responsnya,
00:17:37ini adalah persyaratan rapat yang dihasilkan dari diskusi tersebut.
00:17:41Dan ini adalah apa yang Anda miliki saat ini.
00:17:43Ini model data Anda, menyajikan diagram mermaid yang bagus untuk kita tinjau
00:17:46dan memastikan bahwa memang seperti ini kondisinya saat ini.
00:17:48Dan setelah itu, sistem mulai memberikan rekomendasi di sini.
00:17:52Beginilah cara S1 mendekatinya, dengan membaginya ke dalam fase-fase ini.
00:17:57Ini akan dimulai dengan fase satu sebagai model data, penyimpanan dari langganan visibilitas,
00:18:02dan kemudian memberikan beberapa rekomendasi serta beberapa pertanyaan kunci.
00:18:06Dan saya bisa berinteraksi bolak-balik dengannya.
00:18:07Jadi saya telah memberikan respons berupa jawaban dari pertanyaan-pertanyaan tersebut.
00:18:12Dan pada akhirnya, sistem memberikan dokumen bagus yang membagi
00:18:16persyaratan ke dalam fase-fase tersebut dengan sangat detail.
00:18:19Dan saya bisa mengambil dokumen ini lalu mengubahnya menjadi kode.
00:18:22Saya bisa mengubahnya menjadi user story atau persyaratan lainnya.
00:18:27Jadi itu adalah salah satu keunggulan utama dari Saltbox One, kami membangun ini
00:18:31dari sudut pandang penyedia layanan.
00:18:33Jadi kami tahu bagaimana cara menerapkan Salesforce.
00:18:35Kami tahu praktik terbaiknya.
00:18:37Kami tahu cara mendekatinya.
00:18:38Dan semua itu sudah tertanam ke dalam konteks agen
00:18:43yang kami berikan pada Saltbox One.
00:18:44Sekarang, mari kita kembali ke percakapan awal kita di sini,
00:18:49kita bisa melihat bahwa kita sudah menyetujui penggunaan org default.
00:18:52Sistem telah memeriksa semua konteks yang telah dibahas,
00:18:55dan mencari tahu cara terbaik untuk melakukan hal ini.
00:18:57Dan kita bisa melihat bahwa sistem telah membuat kartu kecil ini untuk kita tinjau.
00:19:02Nah, kartu ini adalah cara kami mengontrol apa yang bisa dilakukan oleh agen.
00:19:07Jadi Anda ingin agen menyusun rencana ini,
00:19:11tetapi Anda tidak ingin agen tersebut berjalan sendiri tanpa pengawasan.
00:19:13Kita tetap membutuhkan peran manusia di dalam proses ini.
00:19:15Oleh karena itu, kami telah membuat komponen ini sehingga Anda bisa melihat dengan jelas
00:19:19apa saja yang akan diterapkan dan bagaimana proses penerapannya.
00:19:22Dan apa yang bisa Anda lakukan adalah mengklik setujui dan jalankan.
00:19:25Dan tentu saja, karena saya sedang melakukan demo, prosesnya tidak akan berjalan.
00:19:29Namun yang bisa Anda lakukan adalah langsung menerapkannya.
00:19:33Anda bisa mengklik coba lagi setelah berinteraksi dengan agen
00:19:37dan menyelesaikan masalah tersebut.
00:19:38Dan jika sudah diterapkan, Anda bahkan bisa mengembalikannya ke versi sebelumnya jika
00:19:43Anda tidak menyukai versi yang baru.
00:19:44Satu skenario penggunaan terakhir yang akan saya tampilkan di layar sebelum kita
00:19:50melakukan satu demo langsung lagi adalah tinjauan cepat tentang arsitektur org Anda.
00:19:55Ini adalah pertanyaan yang sangat umum dan sering sekali diajukan kepada kami,
00:20:00yaitu membantu kami memahami arsitektur atau membantu kami memahami utang teknis
00:20:03yang ada di dalamnya.
00:20:04Bagaimana cara kita bersiap untuk mulai melangkah ke jalur agen
00:20:09di dalam lingkungan Salesforce ini?
00:20:10Semua itu adalah pertanyaan yang terdengar sederhana, namun sebenarnya sangat mendalam.
00:20:15Jadi, Anda bisa mengajukan pertanyaan seperti ini dan
00:20:18membiarkannya memeriksa lingkungan lisensi Anda, temuan-temuan kunci,
00:20:22serta menyusun seperti apa model objek Anda di seluruh peluang yang ada.
00:20:27Dan sekali lagi, salah satu hal yang akan selalu kami lakukan dalam respons kami
00:20:30adalah mulai menandai hal-hal yang mungkin perlu Anda tinjau kembali.
00:20:34Dalam kasus ini, kami memiliki dokumentasi yang tampak seperti,
00:20:38kolom yang tidak terdokumentasi di seluruh objek kami.
00:20:40Tampaknya kita memiliki banyak kolom kustom, rekomendasi tentang cara mendekatinya,
00:20:45serta langkah selanjutnya yang bisa kita pelajari lebih dalam.
00:20:48Jadi dalam hal ini, saya bisa mengatakan bahwa saya ingin melakukannya.
00:20:53Dan apa yang akan dilakukan sistem adalah mulai mempersempit fokusnya secara khusus pada
00:20:57alur perdagangan B2B dan bagaimana semuanya mulai berinteraksi satu sama lain.
00:21:02Sistem akan membuat kueri ke dalam lingkungan tersebut.
00:21:05Melihat seluruh ekosistem di sekitarnya dan
00:21:07kemudian menyusun semacam sintesis dari respons tersebut,
00:21:10dan Anda bisa terus melanjutkan percakapan tersebut.
00:21:12Sekarang, selagi agen tersebut berjalan,
00:21:16saya akan menunjukkan satu contoh kasus penggunaan terakhir.
00:21:21Jika kita kembali ke percakapan yang baru, yang bisa saya lakukan adalah
00:21:27memasukkan halaman Confluence yang saya miliki, yang sebenarnya merupakan
00:21:32hasil dari salah satu percakapan kami sebelumnya.
00:21:35Dan halaman ini memiliki detail lengkap tentang bagaimana solusi tersebut nantinya.
00:21:39Dan saya bisa dengan cepat mengatakan bahwa saya ingin membuat user story atau
00:21:43fase satu dari dokumen ini.
00:21:46Dan sekali lagi, hal yang sangat istimewa di sini adalah sistem tidak hanya menarik
00:21:50konteks dari dokumen ini, tetapi juga dari proyek Anda, lingkungan Salesforce Anda,
00:21:55praktik terbaik kami, ekosistem Salesforce, dan
00:21:59memutuskan cara terbaik untuk membagi fase satu ini ke dalam
00:22:03user story yang mudah dikelola, menulis pernyataan awal berupa "sebagai pengguna,"
00:22:08"saya ingin..." dilengkapi dengan beberapa poin tentang kriteria penerimaan yang sebenarnya.
00:22:14Ini memberikan titik awal yang sangat baik untuk user story tersebut.
00:22:18Dan setelah user story tersebut berhasil dibuat, Anda bisa masuk ke
00:22:22tingkat detail ekstra dalam interaksi bolak-balik
00:22:24dengan agen jika Anda ingin menyempurnakan tampilannya.
00:22:28Sekarang, selagi proses itu berjalan,
00:22:32saya akan kembali ke percakapan sebelumnya di mana kita baru saja menyelesaikan audit.
00:22:36Kita telah melalui beberapa kueri, dan menyusun alur audit B2B di sini.
00:22:40Anda bisa melihat kita telah menyusun penilaian yang cukup baik tentang tampilannya,
00:22:45serta rekomendasi mengenai apa saja utang teknisnya atau
00:22:48apa yang sebenarnya harus kita prioritaskan kembali.
00:22:51Jadi, Anda bisa mulai melihat bagaimana semua ini saling terhubung.
00:22:55Saat saya kembali ke contoh saya di sini,
00:23:00tampaknya layar saya membeku, tunggu sebentar.
00:23:11Nah, ini dia.
00:23:14Jadi Anda bisa melihat pada contoh terakhir, kita telah menyusun user story ini.
00:23:18Dan Anda bisa melihat user story ini ditampilkan di sisi kiri dengan
00:23:22detailnya di sisi kanan.
00:23:24Dan ini memberikan kita kemampuan untuk berintegrasi ke Asana atau Jira,
00:23:27yang memungkinkan siklus hidup pengembangan penuh dari proses ini.
00:23:32Jadi, itulah gambaran singkat tentang Saltbox One, bagaimana kami menggunakan ekosistem Vercel,
00:23:39bagaimana kami menggunakan fitur-fitur seperti kemampuan sandboxing, kemampuan gateway,
00:23:44dan V0 untuk menyusun aplikasi seperti ini dan
00:23:49benar-benar fokus pada fitur serta fungsionalitas bagi pelanggan kami,
00:23:53bukan pada infrastruktur di belakangnya.
00:23:56Jadi, dengan itu semua, Jacob, apakah ada pertanyaan yang ingin kita bahas?
00:24:02>> Ya, ya, terima kasih telah memberikan demo yang keren ini.
00:24:06Saya memiliki beberapa pertanyaan di sini.
00:24:08Pertama-tama, saya penasaran bagaimana cara kerja izin agen.
00:24:12Apakah S1 memiliki izinnya sendiri, seperti saat Anda menyiapkan aplikasi,
00:24:16aplikasi tersebut mendapatkan akses tertentu ke Salesforce, Confluence, dan seterusnya?
00:24:20Atau apakah izin tersebut didasarkan pada orang yang mengajukan pertanyaan?
00:24:23Karena itu adalah hal yang cukup rumit untuk dilakukan setelah Anda memiliki semua
00:24:26integrasi SSO perusahaan seperti ini.
00:24:29Jadi saya penasaran keputusan apa yang akhirnya Anda ambil untuk hal tersebut.
00:24:32>> Ya, kami sebenarnya sempat berdiskusi bolak-balik mengenai hal ini saat memikirkan
00:24:36pertanyaan yang sama, dan keputusan akhir kami adalah izin berbasis pengguna.
00:24:40Jadi, ketika pengguna masuk, mereka memiliki kemampuan untuk melakukan autentikasi sebagai pengguna mereka.
00:24:45Dengan demikian, tindakan apa pun yang mereka lakukan di Salesforce atau aplikasi lainnya
00:24:50adalah sebagai pengguna spesifik mereka, baik menggunakan OAuth
00:24:53atau API key mereka, tergantung pada platform yang kami dukung.
00:24:57Dan ini memberikan kami kontrol bahwa pengguna Andalah yang melakukan tindakan tersebut.
00:25:03Namun pada platform tertentu seperti Salesforce,
00:25:06kami sebenarnya memiliki lapisan perlindungan lain juga,
00:25:09yaitu setiap kali Anda menghubungkan instansi Salesforce,
00:25:12koneksi tersebut akan dimulai sebagai koneksi read-only.
00:25:15Dan kemudian Anda memiliki kemampuan untuk mengubahnya menjadi izin menulis.
00:25:19Dan setelah Anda melakukannya, Anda akan selalu melihat layar persetujuan
00:25:23untuk setiap perubahan yang akan dilakukan di lingkungan Salesforce Anda.
00:25:26>> Oke, jadi di sisi Salesforce, untuk tujuan audit,
00:25:31setiap tindakan yang dilakukan oleh pengguna, mereka mengkliknya.
00:25:37Jadi ketika Anda melakukan tindakan menulis, layar persetujuan akan muncul.
00:25:39Pengguna harus secara eksplisit memilih setuju dan lanjutkan untuk menjalankan agen.
00:25:44>> Tepat sekali.
00:25:44>> Di Salesforce, itu akan tertera sebagai tindakan yang dilakukan oleh pengguna.
00:25:49>> Tepat sekali.
00:25:50>> Oke, sempurna, sempurna.
00:25:51Saya juga penasaran, bagaimana agen tersebut menggunakan Sandbox?
00:25:57Apakah Anda memiliki panggilan alat tertentu yang secara implisit memanggil
00:26:02Sandbox sebagai detail implementasi dari alat itu sendiri?
00:26:06Atau apakah agen tersebut memiliki alat Sandbox tersendiri dan tahu bahwa ada beberapa hal
00:26:11yang harus dilakukan di dalam Sandbox, yang menjadi tempat bagi CLI atau API mereka, dan seterusnya?
00:26:16Saya penasaran bagaimana Anda mengaturnya.
00:26:19>> Ya, kami sebenarnya memiliki dua alat utama yang menggunakan
00:26:25Vercel Sandbox resmi, dan saya akan membahas Sandbox terpisah sesaat lagi.
00:26:28Jadi dua alat resminya adalah ketika Anda membuat scratch org,
00:26:33kami selalu membuat Vercel Sandbox dan membuat scratch org tersebut menggunakan SF CLI.
00:26:37Kasus penggunaan kedua adalah saat Anda berinteraksi dengan Salesforce untuk melakukan
00:26:43validasi atau penerapan sesuatu yang baru ke dalam suatu lingkungan.
00:26:48Itu selalu dilakukan dengan Vercel Sandbox menggunakan Salesforce CLI.
00:26:51Menurut kami, itu adalah cara termudah untuk melakukan deployment dan
00:26:54melakukan aktivitas lain dengan menggunakan CLI, dan Vercel Sandbox sangat memudahkan
00:26:58kami untuk menginstalnya dan melanjutkan dengan Sandbox yang sudah ada.
00:27:04Jadi kami menggunakan dua alat itu dengan Vercel Sandbox resmi, dan kami sebenarnya memiliki
00:27:08Sandbox dalam-memori yang lebih kecil yang dimiliki setiap percakapan,
00:27:14di setiap giliran agen yang kami gunakan untuk menyatukan semua file dan
00:27:20memungkinkan agen memahami apa yang ada di dalam Sandbox dalam-memori tersebut.
00:27:25Jadi ada dua versi yang berbeda untuk hal itu.
00:27:26>> Oke, apakah Anda melakukan pembatasan
00:27:32jaringan pada Sandbox untuk membatasi apa saja yang dapat diaksesnya?
00:27:36Seperti apa profil keamanannya?
00:27:40>> Di sisi Vercel Sandbox?
00:27:42>> Ya, betul.
00:27:43>> Ya, Vercel Sandbox itu dibuat dalam keadaan yang cukup kosong.
00:27:47Jadi kami memasukkan file yang kami butuhkan dan mengizinkannya mengakses hal itu saja.
00:27:52Jadi itu sama sekali bukan seperti basis kode kami, ini seperti S1 yang akan pergi dan
00:27:56benar-benar mengambil apa pun yang telah dikumpulkan untuk rencana tersebut.
00:28:02Mari kita ambil contoh alur yang saya tunjukkan, itu akan mengambil file-file tersebut.
00:28:05Itu akan membuat direktori yang dibutuhkan dan diharapkan oleh Salesforce saat melakukan
00:28:10deployment, lalu memasukkan file-file tersebut ke dalam direktori tersebut.
00:28:13Dan kemudian melakukan deployment dari sana.
00:28:14Jadi sebenarnya aksesnya cukup terbatas, hanya apa yang kami berikan di waktu yang tepat.
00:28:20>> Kami ada pertanyaan dari YouTube, bagaimana pengaturan model penetapan harganya?
00:28:25Bagaimana Anda menangani harga?
00:28:28Apakah berdasarkan penggunaan, berdasarkan jumlah akun pengguna, atau Soapbox?
00:28:32>> Ya, itu pertanyaan yang bagus.
00:28:33Jadi kami masih dalam proses mematangkan hal itu karena kami baru merilisnya
00:28:38kepada para pelanggan kami dan mencoba mencari tahu cara terbaik untuk melakukannya.
00:28:41Saat ini kami menerapkan penetapan harga berbasis pengguna atau akun pengguna
00:28:48dengan semacam batasan di dalam tingkat langganan tersebut mengenai berapa banyak percakapan yang bisa dilakukan,
00:28:53berapa banyak data, dan berapa banyak interaksi.
00:28:55Jadi dari sanalah kami memulainya.
00:28:59Namun seperti yang dialami semua orang di ekosistem ini,
00:29:02hal-hal berubah dengan sangat sering dan cepat jika menyangkut alat berbasis token.
00:29:07Jadi dari situlah kami memulai, yaitu pada ambang batas kursi berbasis pengguna.
00:29:11>> Ya, saya rasa memang sangat sulit untuk menemukan model sempurna yang bisa berskala
00:29:16dengan penggunaan Anda, pelanggan Anda, dan juga pengeluaran Anda sendiri.
00:29:20Jadi, begitulah kurang lebih.
00:29:23Mari kita lihat, ada pertanyaan lain di sini.
00:29:24Bagaimana Anda memutuskan pertanyaan apa yang akan diarahkan ke masing-masing model?
00:29:29Jadi ada beberapa hal tertentu yang Anda arahkan ke Opus.
00:29:31Ada hal-hal tertentu lainnya yang Anda arahkan ke Sonnet.
00:29:33Bagaimana Anda menentukan hal-hal tersebut?
00:29:35Apakah Anda menggunakan sistem evaluasi untuk mendukungnya secara data, atau hanya melakukan pengujian manual
00:29:41dan melihat, "Oh, Sonnet sudah cukup bagus untuk kategori ini"?
00:29:45Bagaimana pendekatan Anda di sana?
00:29:46>> Ya, itu adalah jawaban yang terus berkembang.
00:29:52Posisi kami saat ini adalah kami memiliki klasifikasi deterministik pada pertanyaan awal
00:29:57yang membantu kami memahami, berdasarkan apa yang ditanyakan pengguna, seberapa rumit pertanyaan itu.
00:30:03Apakah mereka mengatakan kata-kata seperti "rencana"?
00:30:04Apakah mereka mengatakan kata-kata seperti "selidiki"?
00:30:07Jadi dengan menggunakan itu, karena cara tersebut cepat dan gratis, bukan?
00:30:12Anda bisa mendeteksinya dengan cukup cepat.
00:30:15Jadi kami memulainya dengan pendekatan berbasis Regex atau deterministik.
00:30:20Jika kami tidak menemukan kecocokan di sana, maka kami beralih ke klasifikasi LLM, dan kami berkata,
00:30:27oke, berdasarkan apa yang ada di sini, jika melebihi ambang batas jumlah kata tertentu dan sebagainya,
00:30:32mari kita serahkan ke LLM untuk benar-benar mengklasifikasikan seberapa rumit pertanyaan itu.
00:30:38Model tersebut cukup cepat, sekitar 300 milidetik untuk melakukan klasifikasi jenis itu.
00:30:42Dan kemudian itu akan membantu kami mengarahkannya ke model yang tepat, entah itu Opus, Sonnet, atau yang lainnya.
00:30:47Lalu kami juga memiliki rencana cadangan.
00:30:49Jika hal-hal menjadi terlalu rumit dan pengguna menanyakan pertanyaan yang sama lagi,
00:30:54atau ada aturan lain yang kami miliki di sana, maka sistem akan dialihkan kembali ke model paling andal kami
00:30:59selama batas ambang waktu tertentu agar pengguna bisa mendapatkan jawaban yang tepat untuk pertanyaan mereka.
00:31:06>> Oke. Dan saat ini Anda hanya menggunakan Haiku untuk klasifikasi model pengalihan tersebut?
00:31:11>> Ya, untuk tahap awalnya, betul.
00:31:13>> Keren, keren.
00:31:15Baiklah. Jadi ya, Anda juga merupakan bagian dari program duta v0.
00:31:20Bagaimana hal itu membantu Anda? Apakah Anda akan merekomendasikannya?
00:31:23Apakah Anda mendapatkan nilai manfaat dari program tersebut sejauh ini dalam membangun ini?
00:31:28>> Ya, tentu saja.
00:31:30Saya sangat merekomendasikannya jika ada pendengar yang tertarik untuk bisa lebih dekat dengan komunitas.
00:31:36Saya telah mengadakan beberapa acara sekarang untuk orang-orang di berbagai wilayah.
00:31:41Saya mengadakan satu acara beberapa bulan lalu atau mungkin satu bulan lalu di Meksiko untuk melakukan kunjungan langsung
00:31:48dan semacam memandu v0 bersama banyak orang di sana.
00:31:51Secara pribadi, saya mendapatkan banyak manfaat dari program duta v0
00:31:56karena saya mendapatkan akses ke para anggota tim produk,
00:31:59tetapi juga orang-orang lain yang sama-sama berdedikasi di bidang ini seperti saya.
00:32:03Jadi saling bertukar pikiran dan ide satu sama lain terasa sangat berharga.
00:32:08>> Keren. Jadi ya, jika Anda memiliki akses langsung ke orang-orang produk,
00:32:13saya yakin Anda sering mengirimkan banyak masukan ke sana.
00:32:16Apakah ada masukan yang ingin Anda sampaikan secara terbuka di sini untuk memberikan sedikit
00:32:22tekanan dan tantangan kepada mereka?
00:32:25>> Saya akan bersikap baik. Saya rasa yang terbesar, dan kami sudah membicarakan hal ini,
00:32:30adalah membawa lebih banyak kemampuan ke dalam v0
00:32:34dalam hal apa yang biasa digunakan pengembang dari perspektif lingkungan lokal IDE.
00:32:41Kita tahu, selama beberapa bulan terakhir kita mendapatkan kemampuan sandboxing di dalam v0
00:32:45dan kemampuan untuk mengaktifkannya serta memiliki lingkungan nyata di sana,
00:32:49dan itu adalah langkah besar ke arah yang benar.
00:32:51Saya rasa seiring kita terus menyusuri jalan itu, hal tersebut akan terus menjadi lebih baik.
00:32:55Jadi saya hanya ingin menyampaikan dukungan agar terus melanjutkan ke arah tersebut.
00:33:00>> Luar biasa. Ya, ini merupakan proses panjang yang terus berjalan.
00:33:02Dulu ini hanyalah IDE browser kecil yang sangat, sangat minimal,
00:33:06dan sekarang sudah menjadi integrasi penuh VS Code dan Monaco.
00:33:10Ini menjadi semakin baik setiap bulannya.
00:33:14>> Benar sekali.
00:33:15>> Baiklah. Saya rasa itu saja pertanyaan yang kita miliki di sini.
00:33:18Jadi, ya, saya hanya ingin berterima kasih karena sudah hadir dan memberikan demonstrasi yang luar biasa di sini.
00:33:24Di mana orang-orang bisa menemukan Anda jika mereka ingin menindaklanjuti atau mempelajari lebih lanjut tentang Soapbox?
00:33:32>> Saya paling aktif di LinkedIn.
00:33:34Jadi jika Anda ingin terhubung dengan saya, silakan kirimkan pesan di sana.
00:33:37Sebutkan bahwa Anda menonton sesi ini.
00:33:39Saya akan tahu siapa Anda dan dengan senang hati akan terhubung serta menjawab pertanyaan apa pun lewat sana.
00:33:44>> Luar biasa. Ya, kami akan menaruh tautan ke LinkedIn Anda di obrolan di sini.
00:33:48Jadi, ya. Terima kasih banyak atas kehadiran Anda.
00:33:52>> Sama-sama. Terima kasih.
00:33:55>> Baiklah. Terima kasih kepada semuanya yang sudah bergabung.
00:33:59Kita akan mengadakan sesi komunitas lainnya yang akan segera hadir di...
00:34:05Biar saya periksa kalendernya.
00:34:10Seharusnya saya melakukan ini sebelumnya.
00:34:15Oh, acaranya hari Kamis nanti, tapi sebenarnya belum dimasukkan ke kalender kami.
00:34:20Jadi, ya, silakan kembali lagi dalam beberapa hari.
00:34:22Kami akan mengadakan sesi lainnya.
00:34:24Sampai jumpa di komunitas nanti.
00:34:27Semoga hari Anda menyenangkan, semuanya.