Mengembangkan aplikasi AI generatif
Dokumen ini membantu Anda mempelajari cara mengatasi tantangan di setiap tahap pengembangan aplikasi AI generatif. Dokumen ini menjelaskan cara memilih model, menyesuaikan output model agar sesuai dengan kebutuhan Anda, mengevaluasi penyesuaian Anda, dan men-deploy model Anda. Dokumen ini mengasumsikan bahwa Anda sudah memiliki kasus penggunaan, dan kasus penggunaan tersebut cocok untuk AI generatif. Untuk mengetahui informasi tentang cara mengembangkan kasus penggunaan, lihat Mengevaluasi dan mendefinisikan kasus penggunaan bisnis AI generatif Anda.
Sebelum mulai mengembangkan aplikasi AI generatif, nilai kesiapan teknis organisasi Anda (kemampuan dan infrastruktur). Untuk mengetahui informasi tentang cara menilai kemampuan AI Anda dan membuat roadmap untuk memanfaatkan potensinya, lihat Lokakarya Kesiapan AI. Jika Anda berencana mengembangkan alur kerja yang diotomatiskan oleh AI generatif, nilai apakah manusia harus disertakan dalam alur kerja untuk tahap keputusan penting. Peninjauan manual dapat membantu keputusan seperti memastikan penggunaan yang bertanggung jawab, memenuhi persyaratan kontrol kualitas tertentu, atau memantau konten yang dihasilkan.
Model AI generatif
Model dasar AI generatif dilatih pada set data multi-terabyte yang berisi teks, gambar, kode, atau multimedia lainnya. Data dan arsitektur model memungkinkan model mengidentifikasi pola yang kompleks dan mendapatkan pemahaman kontekstual yang mendalam serta menghasilkan konten baru seperti teks, gambar, musik, atau video yang didorong oleh data pelatihan.
Model dasar membentuk inti tempat berbagai aplikasi AI generatif dibangun. Kemampuan model diterjemahkan ke dalam kemampuan yang muncul: dengan petunjuk perintah teks sederhana, model dasar AI generatif dapat mempelajari cara melakukan berbagai tugas—seperti menerjemahkan bahasa, menjawab pertanyaan, menulis puisi, atau menulis kode—tanpa pelatihan eksplisit untuk setiap tugas. Model dasar AI generatif juga dapat beradaptasi untuk melakukan tugas tertentu dengan beberapa teknik perintah atau dapat disesuaikan dengan data pelatihan tambahan minimal.
Model bahasa besar (LLM) dilatih pada teks, dan merupakan salah satu contoh model dasar yang biasanya didasarkan pada arsitektur deep learning, seperti Transformer yang dikembangkan oleh Google pada tahun 2017. LLM dapat dilatih pada miliaran sampel teks dan konten lainnya, dan LLM dapat disesuaikan untuk domain tertentu.
Model multimodal lain memperluas kemampuan aplikasi AI generatif untuk memproses informasi dari beberapa modalitas, termasuk gambar, video, audio, dan teks. Perintah multimodal menggabungkan beberapa format input seperti teks, gambar, dan audio. Misalnya, Anda dapat memasukkan gambar dan meminta aplikasi AI generatif untuk mencantumkan atau mendeskripsikan objek dalam gambar. Model Gemini Google dibuat dari awal untuk multimodalitas, dan dapat berpikir dengan lancar di seluruh teks, gambar, video, audio, dan kode.Model Garden dan Vertex AI dapat membantu Anda menemukan dan menyesuaikan berbagai model dasar dari Google, open source, dan sumber pihak ketiga. Google Cloud
Memilih model
Saat memilih model, pertimbangkan modalitas, ukuran, dan biaya model. Pilih model yang paling terjangkau dan tetap memenuhi persyaratan kualitas respons dan latensi Anda.
- Modalitas: Seperti yang dijelaskan di bagian sebelumnya, modalitas
model sesuai dengan kategori data tingkat tinggi yang digunakan untuk melatih model, seperti teks, gambar, dan video. Biasanya, kasus penggunaan Anda dan modalitas model terkait erat. Jika kasus penggunaan Anda melibatkan pembuatan teks ke gambar, Anda harus menemukan model yang dilatih pada data teks dan gambar. Jika Anda memerlukan fleksibilitas beberapa modalitas, seperti dalam penelusuran multimodal, ada model yang juga mendukung kasus penggunaan multimodal, tetapi biaya dan latensi mungkin lebih tinggi.
- Model Vertex AI menawarkan daftar besar model AI generatif yang dapat Anda gunakan.
- Model Garden menyediakan daftar penawaran model ML pihak pertama dan open source di Google Cloud.
- Ukuran: Ukuran model biasanya diukur berdasarkan jumlah parameter. Secara umum, model yang lebih besar dapat mempelajari pola dan hubungan yang lebih kompleks dalam data, yang dapat menghasilkan respons berkualitas lebih tinggi. Karena model yang lebih besar dalam keluarga yang sama dapat memiliki latensi dan biaya yang lebih tinggi, Anda mungkin perlu bereksperimen dan mengevaluasi model untuk menentukan ukuran model mana yang paling sesuai untuk kasus penggunaan Anda.
Biaya: Biaya model terkait dengan kemampuannya, yang biasanya terkait dengan jumlah parameter model. Model juga dapat diukur dan dikenai biaya yang berbeda. Misalnya, beberapa model dikenai biaya berdasarkan jumlah token input dan output. Model lain dikenai biaya berdasarkan jumlah jam node yang digunakan saat model di-deploy.
Untuk mengetahui informasi tentang harga model AI generatif di Vertex AI, lihat Harga Vertex AI.
Untuk mengetahui informasi tentang biaya men-deploy model di Google Kubernetes Engine (GKE), lihat Harga GKE.
Fitur: Tidak semua model mendukung fitur seperti penyesuaian dan distilasi. Jika kemampuan tersebut penting bagi Anda, periksa fitur yang didukung oleh setiap model.
Mendesain perintah
Desain perintah adalah proses pembuatan pasangan perintah dan respons untuk memberikan konteks dan petunjuk tambahan kepada model bahasa. Setelah membuat perintah, Anda akan memasukkannya ke model sebagai set data perintah untuk pelatihan awal. Saat model menyajikan prediksi, model akan merespons dengan petunjuk Anda yang sudah ada.
Jika ingin mendapatkan output tertentu, Anda dapat menggunakan strategi desain perintah, seperti menginstruksikan model untuk menyelesaikan input sebagian atau memberikan contoh respons ideal kepada model. Untuk mengetahui informasi selengkapnya, lihat Pengantar desain perintah.
Menyesuaikan model
Setelah desain perintah, Anda mungkin menemukan bahwa respons model berfungsi dengan baik, sehingga Anda tidak perlu menyesuaikannya. Jika model tidak berperforma baik—misalnya jika model berhalusinasi—Anda dapat menggunakan teknik penyesuaian tambahan. Bagian berikut memperkenalkan teknik tersebut dan dapat membantu Anda memahami pengaruh opsi ini terhadap output model.
Panggilan fungsi dan ekstensi
Panggilan fungsi dan Ekstensi Vertex AI memperluas kemampuan model Anda. Pertimbangkan kasus penggunaan untuk aplikasi Anda dan tempat penggunaan model saja mungkin tidak cukup. Anda dapat membantu model dengan menambahkan panggilan fungsi atau ekstensi. Misalnya, model Anda dapat mengekstrak informasi kalender dari teks, lalu menggunakan ekstensi untuk menemukan dan memesan reservasi.
Meskipun Anda dapat menggunakan panggilan fungsi dan ekstensi secara bergantian, ada beberapa perbedaan tingkat tinggi. Panggilan fungsi adalah operasi asinkron dan Anda tidak perlu menyertakan kredensial dalam kode Anda. Ekstensi Vertex AI menyediakan opsi bawaan yang dapat Anda gunakan untuk tugas kompleks sehingga Anda tidak perlu menulis fungsi Anda sendiri. Namun, karena Ekstensi Vertex AI menampilkan dan memanggil fungsi untuk Anda, ekstensi mengharuskan Anda menyertakan kredensial dalam kode Anda.
Grounding
Grounding mengacu pada peningkatan respons model dengan menautkannya ke sumber informasi yang dapat diverifikasi. Untuk melakukan grounding model, Anda harus menghubungkannya ke sumber data. Melakukan grounding model membantu meningkatkan kepercayaan konten yang dihasilkan dengan mengurangi halusinasi.
Retrieval augmented generation (RAG) adalah teknik grounding yang umum digunakan. RAG menggunakan fungsi penelusuran untuk menemukan informasi yang relevan, lalu menambahkan informasi tersebut ke perintah model. Saat Anda menggunakan RAG, output akan didasarkan pada fakta dan informasi terbaru. Penelusuran RAG menggunakan embedding vektor dan database vektor, yang menyimpan data sebagai representasi numerik data tidak terstruktur seperti teks dan gambar. Untuk mengetahui informasi selengkapnya, lihat Apa yang dimaksud dengan database vektor.
Untuk mempelajari grounding di Vertex AI, lihat Ringkasan grounding. Untuk mengetahui informasi tentang cara menyiapkan alur kerja embedding di AlloyDB untuk PostgreSQL, lihat contoh alur kerja embedding.
Penyesuaian model
Tugas khusus, seperti melatih model bahasa pada terminologi tertentu, mungkin memerlukan lebih banyak pelatihan daripada yang dapat Anda lakukan hanya dengan desain perintah. Dalam skenario tersebut, Anda dapat menggunakan penyesuaian model untuk meningkatkan performa dan membuat model mematuhi persyaratan output tertentu.
Untuk menyesuaikan model, Anda harus membuat set data pelatihan, lalu memilih metode penyesuaian, seperti penyesuaian yang diawasi, penyesuaian Reinforcement Learning from Human Feedback (RLHF), atau distilasi model. Ukuran set data dan metode penyesuaian bergantung pada model Anda dan apa yang Anda optimalkan. Misalnya, tugas khusus dan niche memerlukan set data yang lebih kecil untuk mendapatkan peningkatan yang signifikan. Untuk mempelajari penyesuaian model lebih lanjut, lihat Menyesuaikan model dasar bahasa.
Mengevaluasi model
Evaluasi model membantu Anda menilai pengaruh perintah dan penyesuaian Anda terhadap performa model. Setiap metode evaluasi memiliki kelebihan dan kekurangannya sendiri yang perlu dipertimbangkan. Misalnya, evaluasi berbasis metrik dapat diotomatiskan dan diskalakan dengan cepat dengan cara yang dapat diukur untuk mengukur performa. Namun, metrik dapat menyederhanakan hasil secara berlebihan dan kehilangan konteks serta nuansa bahasa alami. Untuk mengurangi kekurangan ini, gunakan berbagai metrik yang dikombinasikan dengan evaluasi manual.
AI Generatif di Vertex AI menawarkan evaluasi berdampingan otomatis , yang memungkinkan Anda membandingkan output dua model dengan . Model ketiga membantu Anda memilih respons berkualitas lebih tinggi. Evaluasi berdampingan otomatis setara dengan evaluator manual, tetapi lebih cepat dan tersedia sesuai permintaan. Namun, untuk melakukan perbandingan, metode ini memerlukan model yang lebih besar daripada model yang Anda evaluasi, yang dapat menunjukkan bias bawaan. Oleh karena itu, Anda tetap harus melakukan beberapa evaluasi manual.
Untuk semua metode evaluasi, Anda memerlukan set data evaluasi. Set data evaluasi mencakup pasangan perintah dan kebenaran nyata (respons ideal) yang Anda buat. Saat membuat set data, sertakan berbagai contoh yang selaras dengan tugas yang Anda evaluasi untuk mendapatkan hasil yang bermakna.
Men-deploy model
Men-deploy model akan mengaitkan endpoint dan resource mesin fisik dengan model Anda untuk menyajikan prediksi online dengan latensi rendah. Tidak semua model memerlukan deployment. Misalnya, model dasar Google yang tersedia di AI generatif di Vertex AI sudah memiliki endpoint. Endpoint khusus untuk Google Cloud project Anda dan langsung tersedia untuk Anda gunakan. Namun, jika Anda menyesuaikan salah satu model tersebut, Anda harus men-deploy-nya ke endpoint.
Saat men-deploy model, tentukan apakah Anda lebih suka men-deploy model di lingkungan yang dikelola sepenuhnya atau lingkungan yang dikelola sendiri. Di lingkungan yang dikelola sepenuhnya, Anda memilih resource fisik yang Anda butuhkan, seperti jenis mesin dan jenis akselerator, lalu Vertex AI akan membuat instance dan mengelola resource untuk Anda. Misalnya, untuk mengaktifkan prediksi online tempat Vertex AI mengelola resource deployment untuk Anda, lihat Men-deploy model ke endpoint. Di lingkungan yang dikelola sendiri, Anda memiliki kontrol yang lebih mendetail atas resource Anda, tetapi Anda mengelolanya sendiri. Dengan lingkungan yang dikelola sendiri, Anda dapat menyajikan model di platform seperti GKE.
Setelah memutuskan jenis lingkungan yang ingin Anda deploy, pertimbangkan perkiraan traffic, persyaratan latensi, dan anggaran Anda. Anda harus menyeimbangkan faktor-faktor ini dengan resource fisik Anda. Misalnya, jika biaya yang lebih rendah adalah prioritas, Anda mungkin dapat mentoleransi latensi yang lebih tinggi dengan mesin berbiaya lebih rendah. Lingkungan pengujian adalah contoh yang baik untuk kompromi ini. Untuk mengetahui informasi selengkapnya tentang cara memilih jenis mesin, lihat notebook Menentukan jenis mesin ideal yang akan digunakan untuk endpoint Vertex AI.
Responsible AI
AI Generatif di Vertex AI dirancang dengan mempertimbangkan prinsip AI Google. Namun, penting bagi Anda untuk menguji model guna memastikan model digunakan dengan aman dan bertanggung jawab. Karena fleksibilitas LLM yang luar biasa, sulit untuk memprediksi respons yang tidak diinginkan atau tidak terduga.
Saat mengembangkan aplikasi untuk kasus penggunaan Anda, pertimbangkan batasan model AI generatif sehingga Anda dapat mengurangi potensi penyalahgunaan dan masalah yang tidak diinginkan dengan benar. Salah satu contoh batasan model adalah model hanya sebaik data yang Anda gunakan. Jika Anda memberikan data yang kurang optimal kepada model—seperti data yang tidak akurat atau tidak lengkap—Anda tidak dapat mengharapkan performa yang optimal. Pastikan data input dan perintah Anda akurat. Jika tidak, model dapat memiliki performa yang kurang optimal atau output model yang salah. Untuk mempelajari batasan model AI generatif lebih lanjut, lihat Responsible AI.
Langkah berikutnya
- Coba tutorial notebook Vertex AI.
- Pelajari Machine Learning Operations (MLOps) untuk AI Generatif.