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, dan men-deploy model. Dokumen ini mengasumsikan bahwa Anda sudah memiliki kasus penggunaan yang diinginkan, 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 Anda mulai mengembangkan aplikasi AI generatif, nilai kesiapan teknis organisasi Anda (kemampuan dan infrastruktur). Untuk mengetahui informasi tentang cara mengukur kemampuan AI Anda dan membuat roadmap untuk memanfaatkan potensinya, lihat Workshop Kesiapan AI. Jika Anda berencana mengembangkan alur kerja yang diotomatiskan oleh AI generatif, nilai apakah manusia harus disertakan dalam proses pengambilan keputusan penting. Peninjauan oleh petugas dapat membantu membuat 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 menggunakan 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 dari berbagai aplikasi AI generatif. Kemampuan model ini menghasilkan kemampuan yang muncul: dengan petunjuk perintah teks sederhana, model dasar AI generatif dapat belajar 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 menggunakan 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 dengan 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 multimodality, dan dapat melakukan analisis dengan lancar menggunakan teks, gambar, video, audio, dan kode. Google Cloud's Model Garden dan Vertex AI dapat membantu Anda menemukan dan menyesuaikan berbagai model dasar dari Google, sumber open source, dan pihak ketiga.
Memilih model
Saat Anda memilih model, pertimbangkan modalitas, ukuran, dan biaya model. Pilih model yang paling terjangkau yang masih 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 sangat terkait. Jika kasus penggunaan Anda melibatkan pembuatan gambar dari teks, Anda perlu menemukan model yang dilatih menggunakan 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 latensinya 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 rangkaian yang sama dapat memiliki latensi dan biaya yang lebih tinggi, Anda mungkin perlu bereksperimen dan mengevaluasi model untuk menentukan ukuran model yang paling cocok untuk kasus penggunaan Anda.
Biaya: Biaya model terkait dengan kemampuannya, yang biasanya terkait dengan jumlah parameter model. Model juga dapat diukur dan ditagih secara berbeda. Misalnya, beberapa model dikenai biaya berdasarkan jumlah token input dan output. Model lainnya 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 penulisan pasangan perintah dan respons untuk memberikan konteks dan petunjuk tambahan kepada model bahasa. Setelah membuat perintah, Anda memasukkannya ke model sebagai set data perintah untuk pra-pelatihan. Saat menyajikan prediksi, model akan merespons dengan petunjuk yang Anda berikan.
Jika ingin mendapatkan output tertentu, Anda dapat menggunakan strategi desain prompt, seperti menginstruksikan model untuk melengkapi input parsial atau memberikan contoh respons yang ideal kepada model. Untuk mengetahui informasi selengkapnya, lihat Pengantar desain perintah.
Menyesuaikan model
Setelah desain prompt, Anda mungkin mendapati bahwa respons model berfungsi dengan baik, sehingga Anda tidak perlu menyesuaikannya. Jika model tidak berfungsi dengan 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 Anda.
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. Pemanggilan fungsi adalah operasi asinkron dan Anda tidak perlu menyertakan kredensial dalam kode. Ekstensi Vertex AI menyediakan opsi bawaan yang dapat Anda gunakan untuk tugas-tugas kompleks sehingga Anda tidak perlu menulis fungsi sendiri. Namun, karena Vertex AI Extensions menampilkan dan memanggil fungsi untuk Anda, ekstensi mengharuskan Anda menyertakan kredensial dalam kode.
Grounding
Grounding mengacu pada peningkatan kualitas respons model dengan menambatkannya ke sumber informasi yang dapat diverifikasi. Untuk melakukan perujukan model, Anda menghubungkannya ke sumber data. Menyematkan model membantu meningkatkan kredibilitas konten yang dihasilkan dengan mengurangi halusinasi.
Retrieval-augmented generation (RAG) adalah teknik perujukan yang umum digunakan. RAG menggunakan fungsi penelusuran untuk menemukan informasi yang relevan, lalu menambahkan informasi tersebut ke perintah model. Saat Anda menggunakan RAG, output 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 artikel Apa itu database vektor.
Untuk mempelajari perujukan di Vertex AI, lihat Ringkasan perujukan. Untuk mengetahui informasi tentang cara menyiapkan alur kerja penyematan di AlloyDB untuk PostgreSQL, lihat contoh alur kerja penyematan.
Penyesuaian model
Tugas khusus, seperti melatih model bahasa dengan 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 spesifik 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 terhadap performa model. Setiap metode evaluasi memiliki kelebihan dan kekurangan yang perlu dipertimbangkan. Misalnya, evaluasi berbasis metrik dapat diotomatiskan dan diskalakan dengan cepat menggunakan cara terukur untuk mengukur performa. Namun, metrik dapat menyederhanakan hasil secara berlebihan dan melewatkan konteks serta nuansa bahasa alami. Untuk mengurangi kekurangan ini, gunakan berbagai metrik bersama dengan evaluasi manual.
AI Generatif di Vertex AI menawarkan evaluasi berdampingan otomatis, yang memungkinkan Anda membandingkan output dua model dengan kebenaran nyata. Model ketiga membantu Anda memilih respons yang berkualitas lebih tinggi. Evaluasi berdampingan otomatis setara dengan evaluator manusia, 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 Anda membuat set data, sertakan beragam contoh yang sesuai 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 project Google Cloud Anda dan langsung tersedia untuk Anda gunakan. Namun, jika Anda menyetel 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 terkelola sepenuhnya atau lingkungan yang dikelola sendiri. Di lingkungan yang terkelola 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 dengan 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, tetapi Anda mengelolanya sendiri. Dengan lingkungan yang dikelola sendiri, Anda dapat menayangkan 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 menjadi prioritas, Anda mungkin dapat mentoleransi latensi yang lebih tinggi dengan mesin berbiaya lebih rendah. Lingkungan pengujian adalah contoh yang baik dari pertukaran 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 tersebut digunakan dengan aman dan bertanggung jawab. Karena fleksibilitas LLM yang luar biasa, sulit untuk memprediksi respons yang tidak diinginkan atau tidak terduga.
Saat Anda mengembangkan aplikasi untuk kasus penggunaan Anda, pertimbangkan batasan model AI generatif agar Anda dapat memitigasi potensi penyalahgunaan dan masalah yang tidak diinginkan dengan tepat. Salah satu contoh batasan model adalah bahwa kualitas model hanya sebaik kualitas 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 lebih lanjut batasan model AI generatif, lihat Responsible AI.