Mengembangkan aplikasi AI generatif

Dokumen ini membantu Anda mempelajari cara mengatasi tantangan di setiap tahap pengembangan aplikasi AI generatif. Panduan ini menjelaskan cara memilih model, menyesuaikan output model untuk memenuhi kebutuhan Anda, mengevaluasi penyesuaian, dan men-deploy model. Dokumen ini mengasumsikan bahwa Anda sudah memikirkan kasus penggunaan, dan kasus penggunaan tersebut sesuai 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 (kemampuan dan infrastruktur) organisasi Anda. Untuk mengetahui informasi tentang cara menilai 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 loop untuk tahap pengambilan keputusan yang penting. Peninjauan manual dapat membantu dalam pengambilan 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 yang mendalam dan kontekstual serta menghasilkan konten baru seperti teks, gambar, musik, atau video yang didorong oleh data pelatihan.

Model dasar membentuk inti tempat banyak aplikasi AI generatif dibangun. Kemampuan model ini diterjemahkan menjadi kemampuan yang muncul: dengan instruksi perintah teks sederhana, model dasar AI generatif dapat mempelajari berbagai tugas—seperti menerjemahkan bahasa, menjawab pertanyaan, menulis puisi, atau menulis kode—tanpa pelatihan eksplisit untuk setiap tugas. Model fondasi 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 contoh 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 Google Cloud dapat membantu Anda menemukan dan menyesuaikan berbagai model dasar dari Google, open source, dan sumber pihak ketiga.

Pilih model

Saat memilih model, pertimbangkan modalitas, ukuran, dan biaya model. Pilih model yang paling terjangkau yang masih memenuhi persyaratan latensi dan kualitas respons Anda.

  • Modalitas: Seperti yang dijelaskan di bagian sebelumnya, modalitas model sesuai dengan kategori data tingkat tinggi yang dilatih oleh 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 perlu 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 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 informasi tentang biaya untuk 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 menulis perintah, Anda akan memasukkannya ke model sebagai set data perintah untuk prapelatihan. Saat model menayangkan prediksi, model akan merespons dengan petunjuk yang Anda buat.

Jika ingin mendapatkan output tertentu, Anda dapat menggunakan strategi desain perintah, seperti menginstruksikan model untuk menyelesaikan input parsial atau memberikan contoh respons ideal kepada model. Untuk mengetahui informasi selengkapnya, lihat Pengantar desain perintah.

Menyesuaikan model

Setelah desain perintah, Anda mungkin mendapati bahwa respons model berfungsi dengan baik, sehingga Anda tidak perlu menyesuaikannya. Jika model tidak berperforma baik—misalnya, jika model mengalami halusinasi—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 memadai. Anda dapat membantu model dengan menambahkan ekstensi atau panggilan fungsi. Misalnya, model Anda dapat mengekstrak informasi kalender dari teks, lalu menggunakan ekstensi untuk menemukan dan membuat 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 yang kompleks sehingga Anda tidak perlu menulis fungsi sendiri. Namun, karena Ekstensi Vertex AI menampilkan dan memanggil fungsi untuk Anda, ekstensi mengharuskan Anda menyertakan kredensial dalam kode.

Grounding

Pemrosesan mengacu pada peningkatan respons model dengan menautkannya ke sumber informasi yang dapat diverifikasi. Untuk me-ground model, Anda menghubungkannya ke sumber data. Membumikan model membantu meningkatkan kredibilitas 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 didasarkan pada fakta dan informasi terbaru. Penelusuran RAG menggunakan penyematan vektor dan database vektor, yang menyimpan data sebagai representasi numerik data tidak terstruktur seperti teks dan gambar. Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan database vektor.

Untuk mempelajari grounding di Vertex AI, lihat Ringkasan grounding. Untuk informasi tentang cara menyiapkan alur kerja penyematan di AlloyDB untuk PostgreSQL, lihat contoh alur kerja penyematan.

Penyesuaian model

Tugas khusus, seperti melatih model bahasa pada terminologi tertentu, mungkin memerlukan lebih banyak pelatihan daripada yang dapat Anda lakukan dengan desain perintah saja. 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 dan hal yang Anda optimalkan. Misalnya, tugas khusus dan khusus 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 kelemahannya 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 dan melewatkan 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 dari dua model dengan kebenaran nyata. Model ketiga membantu Anda memilih respons yang berkualitas lebih tinggi. Evaluasi secara berdampingan otomatis setara dengan evaluator manusia, tetapi lebih cepat dan tersedia sesuai permintaan. Namun, untuk melakukan perbandingan, metode ini memerlukan model yang lebih besar dari model yang Anda evaluasi, yang dapat menunjukkan bias bawaan. Oleh karena itu, Anda masih 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 beragam 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 menayangkan 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 ini khusus untuk project Google Cloud Anda dan langsung tersedia untuk Anda gunakan. Namun, jika Anda menyesuaikan salah satu model tersebut, Anda harus men-deploynya ke endpoint.

Saat men-deploy model, tentukan apakah Anda lebih suka men-deploy model di lingkungan yang terkelola sepenuhnya atau lingkungan yang dikelola sendiri. Dalam lingkungan terkelola sepenuhnya, Anda memilih resource fisik yang diperlukan, seperti jenis mesin dan jenis akselerator, lalu Vertex AI 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 menentukan jenis lingkungan tempat Anda ingin men-deploy, pertimbangkan traffic yang diperkirakan, persyaratan latensi, dan anggaran. Anda perlu menyeimbangkan faktor-faktor ini dengan resource fisik Anda. Misalnya, jika biaya yang lebih rendah adalah prioritas, Anda mungkin dapat mentolerir latensi yang lebih tinggi dengan mesin yang lebih murah. Lingkungan pengujian adalah contoh yang baik dari kompromi ini. Untuk mengetahui informasi selengkapnya tentang cara memilih jenis mesin, lihat notebook Menentukan jenis mesin yang ideal untuk digunakan pada endpoint Vertex AI.

Responsible AI

AI Generatif di Vertex AI dirancang dengan mempertimbangkan prinsip AI Google. Namun, penting bagi Anda untuk menguji model untuk memastikan bahwa 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 mengembangkan aplikasi untuk kasus penggunaan Anda, pertimbangkan batasan model AI generatif agar Anda dapat memitigasi 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 ke 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.

Langkah selanjutnya