Dokumen ini menyediakan arsitektur referensi yang dapat Anda gunakan untuk mendesain infrastruktur guna menjalankan aplikasi AI generatif dengan retrieval-augmented generation (RAG) menggunakan Google Kubernetes Engine (GKE), Cloud SQL, dan alat open source seperti Ray, Hugging Face, dan LangChain. Untuk membantu Anda bereksperimen dengan arsitektur referensi ini, aplikasi contoh dan konfigurasi Terraform disediakan di GitHub.
Dokumen ini ditujukan untuk developer yang ingin membangun dan men-deploy aplikasi AI generatif berkemampuan RAG dengan cepat menggunakan alat dan model open source. Anda dianggap sudah memiliki pengalaman dalam menggunakan GKE dan Cloud SQL, serta memiliki pemahaman konseptual tentang AI, machine learning (ML), dan model bahasa besar (LLM). Dokumen ini tidak memberikan panduan tentang cara mendesain dan mengembangkan aplikasi AI generatif.
Arsitektur
Diagram berikut menunjukkan tampilan arsitektur tingkat tinggi untuk aplikasi AI generatif berkemampuan RAG di Google Cloud:
Arsitekturnya berisi subsistem penayangan dan subsistem penyematan.
- Subsistem penayangan menangani alur respons permintaan antara aplikasi dan penggunanya. Subsistem ini mencakup server frontend, server inferensi, dan layanan responsible AI (RAI). Subsistem penayangan berinteraksi dengan subsistem penyematan melalui database vektor.
- Subsistem penyematan memungkinkan kemampuan RAG dalam
arsitektur. Subsistem ini melakukan hal berikut:
- Menyerap data dari sumber data di Google Cloud, lokal, dan platform cloud lainnya.
- Mengonversi data yang diserap ke penyematan vektor.
- Menyimpan embeddings dalam database vektor.
Diagram berikut menunjukkan tampilan arsitektur yang mendetail:
Seperti ditunjukkan dalam diagram sebelumnya, server frontend, server inferensi, dan layanan penyematan di-deploy di cluster GKE regional dalam mode Autopilot. Data untuk RAG diserap melalui bucket Cloud Storage. Arsitektur ini menggunakan instance Cloud SQL untuk PostgreSQL dengan ekstensi pgvector
sebagai database vektor untuk menyimpan embeddings dan melakukan penelusuran semantik.
Database vektor dirancang untuk menyimpan dan mengambil vektor berdimensi tinggi secara efisien.
Bagian berikut menjelaskan komponen dan aliran data dalam setiap subsistem arsitektur.
Menyematkan subsistem
Berikut ini adalah aliran data dalam subsistem penyematan:
- Data dari sumber eksternal dan internal diupload ke bucket Cloud Storage oleh pengguna manusia atau secara terprogram. Data yang diupload mungkin dalam file, database, atau data yang di-streaming.
- (Tidak ditampilkan di diagram arsitektur.) Aktivitas upload data memicu peristiwa yang dipublikasikan ke layanan pesan seperti Pub/Sub. Layanan pesan mengirimkan notifikasi ke layanan penyematan.
- Saat menerima notifikasi peristiwa upload data, layanan penyematan akan melakukan hal berikut:
- Mengambil data dari bucket Cloud Storage melalui driver Cloud Storage FUSE CSI.
- Membaca data yang diupload dan melakukan prapemrosesan menggunakan Ray Data. Pra-pemrosesan tersebut dapat mencakup pemotongan data dan mengubahnya menjadi format yang sesuai untuk pembuatan embedding.
- Menjalankan tugas Ray untuk membuat embedding vektor dari data yang telah diproses sebelumnya menggunakan model open source seperti intfloat/multilingual-e5-small yang di-deploy di cluster yang sama.
- Menuliskan embedding vektor ke database vektor Cloud SQL untuk PostgreSQL.
Seperti yang dijelaskan di bagian berikut, saat subsistem penayangan memproses permintaan pengguna, subsistem ini akan menggunakan embedding dalam database vektor untuk mengambil data khusus domain yang relevan.
Subsistem inferensi
Berikut adalah alur permintaan-respons dalam subsistem penayangan:
- Pengguna mengirimkan permintaan bahasa alami ke server frontend melalui antarmuka chat berbasis web. Server frontend berjalan di GKE.
- Server frontend menjalankan proses LangChain yang melakukan hal berikut:
- Mengonversi permintaan natural-language ke embeddings menggunakan model dan parameter yang sama dengan yang digunakan oleh layanan penyematan.
- Mengambil data grounding yang relevan dengan melakukan penelusuran semantik untuk embedding di database vektor. Penelusuran semantik membantu menemukan penyematan berdasarkan intent perintah, bukan konten tekstualnya.
- Membuat perintah kontekstual dengan menggabungkan permintaan asli dengan data grounding yang diambil.
- Mengirim perintah yang dikontekstualisasikan ke server inferensi, yang berjalan di GKE.
- Server inferensi menggunakan framework penayangan Hugging Face TGI untuk menyalurkan LLM open source seperti Mistral-7B-Instruct atau model terbuka Gemma.
LLM menghasilkan respons terhadap perintah, dan server inferensi mengirimkan respons ke server frontend.
Anda dapat menyimpan dan melihat log aktivitas respons permintaan di Cloud Logging, dan menyiapkan pemantauan berbasis log menggunakan Cloud Monitoring. Respons yang dihasilkan juga bisa dimuat ke BigQuery untuk analisis offline.
Server frontend akan memanggil layanan RAI untuk menerapkan filter keamanan yang diperlukan pada respons. Anda dapat menggunakan alat seperti Sensitive Data Protection dan Cloud Natural Language API untuk menemukan, memfilter, mengklasifikasikan, dan melakukan de-identifikasi konten sensitif dalam respons.
Server frontend mengirimkan respons yang difilter kepada pengguna.
Produk yang digunakan
Berikut adalah ringkasan produk Google Cloud dan open source yang digunakan oleh arsitektur sebelumnya:
Google Cloud produk
- Google Kubernetes Engine (GKE): Layanan Kubernetes yang dapat Anda gunakan untuk men-deploy dan mengoperasikan aplikasi dalam container dalam skala besar menggunakan infrastruktur Google.
- Cloud Storage: Penyimpanan objek tanpa batas dan berbiaya rendah untuk beragam jenis data. Data dapat diakses dari dalam dan luar Google Cloud, dan direplikasi di berbagai lokasi untuk redundansi.
- Cloud SQL: Layanan database relasional terkelola sepenuhnya yang membantu Anda menyediakan, mengoperasikan, dan mengelola database MySQL, PostgreSQL, dan SQL Server di Google Cloud.
Produk open source
- Memegang Inferensi Pembuatan Teks Wajah (TGI): Toolkit untuk men-deploy dan menyalurkan LLM.
- Ray: Framework komputasi terpadu open source yang membantu Anda menskalakan workload AI dan Python.
- LangChain: Framework untuk mengembangkan dan men-deploy aplikasi yang didukung oleh LLM.
Kasus penggunaan
RAG adalah teknik efektif untuk meningkatkan kualitas output yang dihasilkan dari LLM. Bagian ini memberikan contoh kasus penggunaan yang memungkinkan Anda menggunakan aplikasi AI generatif yang mendukung RAG.
Rekomendasi produk yang dipersonalisasi
Situs belanja online mungkin menggunakan chatbot yang didukung LLM untuk membantu pelanggan menemukan produk atau mendapatkan bantuan terkait belanja. Pertanyaan dari pengguna dapat ditambahkan menggunakan data historis tentang perilaku pembelian dan pola interaksi situs pengguna. Data tersebut dapat mencakup ulasan pengguna dan masukan yang disimpan di datastore tidak terstruktur atau metrik terkait penelusuran yang disimpan di data warehouse analisis web. Pertanyaan yang ditingkatkan kemudian dapat diproses oleh LLM untuk menghasilkan respons yang dipersonalisasi yang mungkin dianggap lebih menarik dan memikat oleh pengguna.
Sistem bantuan klinis
Dokter di rumah sakit perlu menganalisis dan mendiagnosis kondisi kesehatan pasien dengan cepat untuk membuat keputusan tentang perawatan dan pengobatan yang tepat. Aplikasi AI generatif yang menggunakan LLM medis seperti Med-PaLM dapat digunakan untuk membantu dokter dalam proses diagnosis klinis. Respons yang dihasilkan aplikasi ini dapat didasarkan pada data pasien historis dengan kontekstual terhadap perintah dokter dengan data dari database catatan kesehatan elektronik (EHR) rumah sakit atau dari pusat informasi eksternal seperti PubMed.
Riset hukum yang efisien
Riset hukum yang didukung AI generatif memungkinkan pengacara dengan cepat membuat kueri terkait undang-undang dan hukum kasus dalam jumlah besar untuk mengidentifikasi preseden hukum yang relevan atau meringkas konsep hukum yang kompleks. Output dari penelitian tersebut dapat ditingkatkan dengan menambahkan perintah pengacara dengan data yang diambil dari korpus kontrak milik firma hukum, komunikasi hukum sebelumnya, dan catatan kasus internal. Pendekatan desain ini memastikan bahwa respons yang dihasilkan relevan dengan domain hukum yang menjadi spesialisasi pengacara.
Alternatif desain
Bagian ini menyajikan pendekatan desain alternatif yang dapat Anda pertimbangkan untuk aplikasi AI generatif yang mendukung RAG di Google Cloud.
Penelusuran vektor yang terkelola sepenuhnya
Jika memerlukan arsitektur yang menggunakan produk penelusuran vektor yang terkelola sepenuhnya, Anda dapat menggunakan Vertex AI dan Vector Search, yang menyediakan infrastruktur penayangan yang dioptimalkan untuk penelusuran vektor berskala sangat besar. Untuk mengetahui informasi selengkapnya, lihat Infrastruktur untuk aplikasi AI generatif berkemampuan RAG menggunakan Vertex AI dan Vector Search.
Database yang mendukung Google Cloud vektor
Jika Anda ingin memanfaatkan kemampuan penyimpanan vektor dari database Google Cloud yang terkelola sepenuhnya seperti AlloyDB untuk PostgreSQL atau Cloud SQL untuk aplikasi RAG, lihat Infrastruktur untuk aplikasi AI generatif berkemampuan RAG yang menggunakan Vertex AI dan AlloyDB untuk PostgreSQL.
Opsi lain
Untuk mengetahui informasi tentang opsi infrastruktur lain, model yang didukung, dan teknik ground yang dapat Anda gunakan untuk aplikasi AI generatif diGoogle Cloud, lihat Memilih model dan infrastruktur untuk aplikasi AI generatif Anda.
Pertimbangan desain
Bagian ini memberikan panduan untuk membantu Anda mengembangkan dan menjalankan arsitektur AI generatif berkemampuan RAG yang dihosting GKE dan memenuhi persyaratan khusus Anda terkait keamanan dan kepatuhan, keandalan, biaya, serta performa. Panduan di bagian ini tidak lengkap. Bergantung pada persyaratan spesifik aplikasi serta Google Cloud produk dan fitur yang digunakan, Anda mungkin perlu mempertimbangkan faktor desain dan kompromi tambahan.
Untuk panduan desain terkait alat open source dalam arsitektur referensi ini, seperti Hugging Face TGI, lihat dokumentasi untuk alat tersebut.
Keamanan, privasi, dan kepatuhan
Bagian ini menjelaskan faktor-faktor yang harus Anda pertimbangkan saat mendesain dan membangun aplikasi AI generatif yang berkemampuan RAG di Google Cloud yang memenuhi persyaratan keamanan, privasi, dan kepatuhan Anda.
Produk | Pertimbangan desain |
---|---|
GKE |
Dalam mode operasi Autopilot, GKE melakukan prakonfigurasi cluster Anda dan mengelola node sesuai dengan praktik terbaik keamanan, sehingga memungkinkan Anda berfokus pada keamanan khusus workload. Untuk informasi selengkapnya, lihat referensi berikut: Guna memastikan kontrol akses yang ditingkatkan untuk aplikasi Anda yang berjalan di GKE, Anda dapat menggunakan Identity-Aware Proxy (IAP). IAP terintegrasi dengan resource GKE Ingress dan memastikan bahwa hanya pengguna terautentikasi dengan peran Identity and Access Management (IAM) yang benar yang dapat mengakses aplikasi. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan IAP untuk GKE. Secara default, data Anda di GKE dienkripsi dalam penyimpanan dan saat transit menggunakan Google-owned and Google-managed encryption keys. Sebagai lapisan keamanan tambahan untuk data sensitif, Anda dapat mengenkripsi data pada lapisan aplikasi menggunakan kunci yang Anda miliki dan kelola dengan Cloud KMS. Untuk mengetahui informasi selengkapnya, lihat Mengenkripsi secret di lapisan aplikasi. Jika menggunakan cluster GKE Standar, Anda dapat menggunakan kemampuan enkripsi data tambahan berikut:
|
Cloud SQL |
Instance Cloud SQL dalam arsitektur tidak harus dapat diakses dari internet publik. Jika akses eksternal ke instance Cloud SQL diperlukan, Anda dapat mengenkripsi koneksi eksternal menggunakan SSL/TLS atau konektor Proxy Auth Cloud SQL. Konektor Proxy Auth memberikan otorisasi koneksi dengan menggunakan IAM. Konektor tersebut menggunakan koneksi TLS 1.3 dengan cipher AES 256 bit untuk memverifikasi identitas klien dan server serta mengenkripsi traffic data. Untuk koneksi yang dibuat menggunakan Java, Python, Go, atau Node.js, gunakan Konektor Bahasa yang sesuai, bukan konektor Proxy Auth. Secara default, Cloud SQL menggunakan kunci enkripsi data (DEK) dan kunci enkripsi kunci (KEK) milik Google dan yang dikelola Google untuk mengenkripsi data dalam penyimpanan. Jika perlu menggunakan KEK yang Anda kontrol dan kelola, Anda dapat menggunakan kunci enkripsi yang dikelola pelanggan (CMEK). Untuk mencegah akses tanpa izin ke Cloud SQL Admin API, Anda dapat membuat perimeter layanan menggunakan Kontrol Layanan VPC. Untuk mengetahui informasi tentang cara mengonfigurasi Cloud SQL guna membantu memenuhi persyaratan residensi data, lihat Ringkasan residensi data. |
Cloud Storage |
Secara default, data yang disimpan di Cloud Storage dienkripsi menggunakan Google-owned and Google-managed encryption keys. Jika diperlukan, Anda dapat menggunakan CMEK atau kunci Anda sendiri yang dikelola dengan menggunakan metode pengelolaan eksternal seperti kunci enkripsi yang disediakan pelanggan (CSEK). Untuk mengetahui informasi selengkapnya, lihat Opsi enkripsi data. Cloud Storage mendukung dua metode untuk mengontrol akses pengguna ke bucket dan objek Anda: IAM dan daftar kontrol akses (ACL). Dalam sebagian besar kasus, kami merekomendasikan penggunaan IAM, yang memungkinkan Anda memberikan izin pada level bucket dan project. Untuk informasi selengkapnya, lihat Ringkasan kontrol akses. Data yang Anda muat ke subsistem penyerapan data melalui Cloud Storage dapat mencakup data sensitif. Untuk melindungi data tersebut, Anda dapat menggunakan Sensitive Data Protection untuk menemukan, mengklasifikasi, dan melakukan de-identifikasi data tersebut. Untuk mengetahui informasi selengkapnya, lihat Menggunakan Sensitive Data Protection dengan Cloud Storage. Untuk mengurangi risiko pemindahan data yang tidak sah dari Cloud Storage, Anda dapat membuat perimeter layanan menggunakan Kontrol Layanan VPC. Cloud Storage membantu Anda memenuhi persyaratan residensi data. Data disimpan atau direplikasi di dalam region yang Anda tentukan. |
Semua produk dalam arsitektur ini |
Log audit Aktivitas Admin diaktifkan secara default untuk semua layanan Google Cloud yang digunakan dalam arsitektur referensi ini. Anda dapat mengakses log melalui Cloud Logging dan menggunakan log tersebut untuk memantau panggilan API atau tindakan lain yang mengubah konfigurasi atau metadata Google Cloud resource. Log audit Akses Data juga diaktifkan secara default untuk semua layanan Google Cloud dalam arsitektur ini. Anda dapat menggunakan log ini untuk memantau hal berikut:
|
Untuk prinsip dan rekomendasi keamanan yang spesifik untuk workload AI dan ML, lihat perspektif AI dan ML: Keamanan di Framework yang Arsitekturnya Baik.
Keandalan
Bagian ini menjelaskan faktor desain yang harus Anda pertimbangkan untuk membangun dan mengoperasikan infrastruktur yang andal untuk aplikasi AI generatif berkemampuan RAG di Google Cloud.
Produk | Pertimbangan desain |
---|---|
GKE |
Dengan mode operasi Autopilot yang digunakan dalam arsitektur ini, GKE menyediakan kemampuan keandalan bawaan berikut:
Guna memastikan ketersediaan kapasitas GPU yang memadai saat diperlukan untuk penskalaan otomatis cluster GKE, Anda dapat membuat dan menggunakan reservasi. Reservasi memberikan jaminan kapasitas di zona tertentu untuk resource tertentu. Reservasi dapat bersifat spesifik untuk satu project, atau dibagikan ke beberapa project. Anda akan dikenai biaya untuk resource yang dicadangkan meskipun resource tersebut tidak disediakan atau digunakan. Untuk mengetahui informasi selengkapnya, lihat Memakai resource zona yang dicadangkan. |
Cloud SQL |
Untuk memastikan database vektor andal terhadap kegagalan database dan pemadaman layanan zona, gunakan instance Cloud SQL yang dikonfigurasi dengan HA. Jika terjadi kegagalan database utama atau pemadaman zona, Cloud SQL akan gagal secara otomatis ke database standby di zona lain. Anda tidak perlu mengubah alamat IP untuk endpoint database. Untuk memastikan bahwa instance Cloud SQL Anda tercakup dalam SLA, ikuti panduan operasional yang direkomendasikan. Misalnya, pastikan CPU dan memori memiliki ukuran yang tepat untuk workload, dan aktifkan peningkatan penyimpanan otomatis. Untuk informasi selengkapnya, lihat Panduan operasional. |
Cloud Storage | Anda dapat membuat bucket Cloud Storage di salah satu dari tiga jenis lokasi: regional, dual-region, atau multi-region. Data yang disimpan di bucket regional direplikasi secara sinkron di beberapa zona dalam satu region. Untuk ketersediaan yang lebih tinggi, Anda dapat menggunakan bucket dual-region atau multi-region, tempat data direplikasi secara asinkron di berbagai region. |
Untuk prinsip keandalan dan rekomendasi yang khusus untuk workload AI dan ML, lihat Perspektif AI dan ML: Keandalan di Framework Arsitektur yang Baik.
Pengoptimalan biaya
Bagian ini memberikan panduan untuk membantu Anda mengoptimalkan biaya penyiapan dan pengoperasian aplikasi AI generatif berkemampuan RAG di Google Cloud.
Produk | Pertimbangan desain |
---|---|
GKE |
Dalam mode Autopilot, GKE mengoptimalkan efisiensi infrastruktur cluster Anda berdasarkan persyaratan workload. Anda tidak perlu terus-menerus memantau penggunaan resource atau mengelola kapasitas untuk mengontrol biaya. Jika Anda dapat memprediksi penggunaan CPU, memori, dan penyimpanan efemeral dari cluster GKE Autopilot, Anda dapat menghemat uang dengan mendapatkan diskon untuk abonemen. Untuk mengetahui informasi selengkapnya, lihat Diskon abonemen GKE. Untuk mengurangi biaya pengoperasian aplikasi, Anda dapat menggunakan Spot VM untuk node GKE. Harga Spot VM lebih rendah daripada VM standar, tetapi tidak memberikan jaminan ketersediaan. Untuk mengetahui informasi tentang manfaat node yang menggunakan Spot VM, cara kerjanya di GKE, dan cara menjadwalkan workload pada node tersebut, lihat Spot VM. Untuk panduan pengoptimalan biaya selengkapnya, lihat Praktik terbaik untuk menjalankan aplikasi Kubernetes yang hemat biaya di GKE. |
Cloud SQL |
Konfigurasi ketersediaan tinggi (HA) membantu mengurangi periode nonaktif untuk database Cloud SQL Anda saat zona atau instance menjadi tidak tersedia. Namun, biaya instance yang dikonfigurasi dengan HA lebih tinggi dibandingkan instance mandiri. Jika Anda tidak memerlukan HA untuk database vektor, Anda dapat mengurangi biaya dengan menggunakan instance mandiri, yang tidak efektif terhadap gangguan zona. Anda dapat mendeteksi apakah instance Cloud SQL Anda disediakan secara berlebihan dan mengoptimalkan penagihan dengan menggunakan insight dan rekomendasi biaya Cloud SQL yang didukung oleh Active Assist. Untuk informasi selengkapnya, lihat Mengurangi instance Cloud SQL yang disediakan secara berlebihan. Jika Anda dapat memprediksi kebutuhan CPU dan memori instance Cloud SQL, Anda dapat menghemat uang dengan mendapatkan diskon untuk abonemen. Untuk mengetahui informasi selengkapnya, lihat Diskon abonemen Cloud SQL. |
Cloud Storage | Untuk bucket Cloud Storage yang Anda gunakan untuk memuat data ke dalam subsistem penyerapan data, pilih kelas penyimpanan yang sesuai. Saat memilih kelas penyimpanan, pertimbangkan persyaratan retensi data dan frekuensi akses workload Anda. Misalnya, untuk mengontrol biaya penyimpanan, Anda dapat memilih class Standar dan menggunakan Object Lifecycle Management. Tindakan ini akan mengaktifkan downgrade otomatis objek ke kelas penyimpanan berbiaya lebih rendah atau penghapusan objek berdasarkan kondisi yang Anda tetapkan. |
Untuk memperkirakan biaya Google Cloud resource Anda, gunakan Google Cloud Kalkulator Harga.
Untuk prinsip dan rekomendasi pengoptimalan biaya yang spesifik untuk workload AI dan ML, lihat Perspektif AI dan ML: Pengoptimalan biaya di Framework Arsitektur yang Baik.
Pengoptimalan performa
Bagian ini menjelaskan faktor-faktor yang harus Anda pertimbangkan saat mendesain dan mem-build aplikasi AI generatif yang mendukung RAG di Google Cloud yang memenuhi persyaratan performa Anda.
Produk | Pertimbangan desain |
---|---|
GKE |
Pilih
class komputasi yang sesuai untuk Pod Anda berdasarkan persyaratan performa workload. Untuk Pod yang menjalankan server inferensi dan layanan penyematan, sebaiknya gunakan
jenis mesin GPU seperti nvidia-l4 .
|
Cloud SQL |
Untuk mengoptimalkan performa instance Cloud SQL Anda, pastikan CPU dan memori yang dialokasikan ke instance memadai untuk workload. Untuk informasi selengkapnya, lihat Mengoptimalkan instance Cloud SQL yang tidak disediakan. Guna mempercepat waktu respons untuk penelusuran vektor perkiraan tetangga terdekat (ANN), gunakan indeks File Terbalik dengan Kompresi Datar (IVFFlat) atau indeks Hierarchical Navigable Small World (HNSW) Untuk membantu Anda menganalisis dan meningkatkan performa kueri database, Cloud SQL menyediakan alat Insight Kueri. Anda dapat menggunakan alat ini untuk memantau performa dan melacak sumber kueri yang bermasalah. Untuk mengetahui informasi selengkapnya, lihat Menggunakan insight Kueri untuk meningkatkan performa kueri. Untuk mendapatkan ringkasan status dan performa database serta melihat metrik mendetail seperti koneksi puncak dan pemakaian disk, Anda dapat menggunakan dasbor System Insights. Untuk mengetahui informasi selengkapnya, lihat Menggunakan Insight sistem untuk meningkatkan performa sistem. |
Cloud Storage | Untuk mengupload file besar, Anda dapat menggunakan metode yang disebut upload komposit paralel. Dengan strategi ini, file besar akan dibagi menjadi beberapa bagian. Potongan data diupload ke Cloud Storage secara paralel, lalu data dikomposisi ulang di cloud. Jika bandwidth jaringan dan kecepatan disk tidak membatasi faktor, upload komposit paralel dapat lebih cepat daripada operasi upload reguler. Namun, strategi ini memiliki beberapa keterbatasan dan implikasi biaya. Untuk mengetahui informasi selengkapnya, lihat Upload gabungan paralel. |
Untuk prinsip dan rekomendasi pengoptimalan performa yang dikhususkan untuk workload AI dan ML, lihat Perspektif AI dan ML: Pengoptimalan performa di Framework yang Arsitekturnya Baik.
Deployment
Untuk men-deploy topologi yang didasarkan pada arsitektur referensi ini, Anda dapat mendownload dan menggunakan kode contoh open source yang tersedia di repositori di GitHub. Kode contoh tidak dimaksudkan untuk kasus penggunaan produksi. Anda dapat menggunakan kode tersebut untuk bereksperimen dengan menyiapkan infrastruktur AI untuk aplikasi AI generatif yang mendukung RAG.
Kode contoh menjalankan hal berikut:
- Menyediakan instance Cloud SQL untuk PostgreSQL agar berfungsi sebagai database vektor.
- Men-deploy Ray, JupyterHub, dan Hugging Face TGI ke cluster GKE yang Anda tentukan.
- Men-deploy contoh aplikasi chatbot berbasis web ke cluster GKE agar Anda dapat memverifikasi kemampuan RAG.
Untuk mengetahui petunjuk tentang cara menggunakan kode contoh, lihat README untuk kodenya. Jika terjadi error saat Anda menggunakan kode contoh, dan jika masalah GitHub terbuka tidak ada, buat masalah di GitHub.
Kode contoh men-deploy resource Google Cloud yang dapat ditagih. Setelah selesai menggunakan kode, hapus resource yang tidak lagi Anda perlukan.
Langkah berikutnya
- Tinjau panduan praktik terbaik GKE berikut:
- Pelajari cara menayangkan model terbuka Gemma menggunakan GPU di GKE dengan Hugging Face TGI.
- Tinjau Google Cloud opsi untuk mendasarkan respons AI generatif.
- Pelajari cara membangun infrastruktur untuk aplikasi AI generatif yang berkemampuan RAG menggunakan Vertex AI dan Vector Search.
- Pelajari cara membangun infrastruktur untuk aplikasi AI generatif yang berkemampuan RAG menggunakan Vertex AI dan AlloyDB untuk PostgreSQL.
- Untuk ringkasan prinsip dan rekomendasi arsitektur yang khusus untuk beban kerja AI dan ML di Google Cloud, lihat perspektif AI dan ML dalam Framework dengan Arsitektur yang Baik.
- Untuk mengetahui lebih banyak tentang arsitektur referensi, diagram, dan praktik terbaik lainnya, jelajahi Pusat Arsitektur Cloud.
Kontributor
Penulis: Kumar Dhanagopal | Developer Solusi Lintas Produk
Kontributor lainnya:
- Anna Berenberg | Rekan Teknik
- Ali Zaidi | Arsitek Solusi
- Bala Narasimhan | Group Product Manager
- Bill Bernsen | Teknisi Keamanan
- Brandon Royal | Product Manager Outbound
- Cynthia Thomas | Manajer Produk
- Geoffrey Anderson | Product Manager
- Gleb Otochkin | Advokat Cloud, Database
- Jack Wotherspoon | Software Engineer
- Julie Amundson | Staf Senior Software Engineer
- Kent Hua | Pengelola Solusi
- Kavitha Rajendran | Spesialis AI/ML, Arsitek Solusi
- Mark Schlagenhauf | Technical Writer, Networking
- Megan O'Keefe | Head of Industry Compete, Tim Cloud Platform Evaluations
- Mofi Rahman | Advokat Google Cloud