Mesin RAG Vertex AI adalah komponen platform Vertex AI yang memfasilitasi Retrieval-Augmented Generation (RAG). Mesin RAG memungkinkan Model Bahasa Besar (LLM) mengakses dan menggabungkan data dari sumber pengetahuan eksternal, seperti dokumen dan database. Dengan menggunakan RAG, LLM dapat menghasilkan respons LLM yang lebih akurat dan informatif.
Daftar parameter
Bagian ini mencantumkan hal berikut:
| Parameter | Contoh |
|---|---|
| Lihat Parameter pengelolaan korpus. | Lihat Contoh pengelolaan korpus. |
| Lihat Parameter pengelolaan file. | Lihat Contoh pengelolaan file. |
| Lihat Parameter pengambilan dan prediksi. | Lihat Contoh kueri pengambilan. |
| Lihat Parameter pengelolaan project. | Lihat Contoh pengelolaan project. |
Parameter pengelolaan korpus
Untuk mengetahui informasi tentang korpus RAG, lihat Pengelolaan korpus.
Membuat korpus RAG
Tabel ini mencantumkan parameter yang digunakan untuk membuat korpus RAG.
Isi Permintaan
| Parameter | |
|---|---|
|
Opsional: Tidak dapat diubah.
Konfigurasi untuk menentukan jenis korpus. |
|
Wajib: Nama tampilan korpus RAG. |
|
Opsional: Deskripsi korpus RAG. |
|
Opsional: Tidak dapat diubah: Nama kunci CMEK digunakan untuk mengenkripsi data saat istirahat yang terkait dengan korpus RAG. Nama kunci hanya berlaku untuk opsi Format: |
|
Opsional: Tidak dapat diubah: Konfigurasi untuk database vektor. |
|
Opsional: Konfigurasi untuk Vertex AI Search. Format: |
CorpusTypeConfig
| Parameter | |
|---|---|
|
Nilai default |
|
Jika Anda menyetel jenis ini, korpus RAG adalah Untuk mengetahui informasi selengkapnya, lihat Menggunakan Vertex AI RAG Engine sebagai penyimpanan memori. |
|
Parser LLM yang digunakan untuk mengurai dan menyimpan konteks sesi dari Gemini Live API. Anda dapat membuat kenangan untuk pengindeksan. |
RagVectorDbConfig
| Parameter | |
|---|---|
|
Jika tidak ada database vektor yang ditentukan, |
|
Default. Menemukan tetangga terdekat yang tepat dengan membandingkan semua titik data dalam korpus RAG Anda. Jika Anda tidak menentukan strategi selama pembuatan korpus RAG, KNN adalah strategi pengambilan default yang digunakan. |
|
Menentukan jumlah lapisan atau tingkat dalam hierarki. Jika Anda memiliki file RAGO(10K) dalam korpus RAG, tetapkan nilai ini ke 2.
Menentukan jumlah node daun dalam struktur berbasis pohon.
|
|
Menentukan instance Weaviate Anda. |
|
Endpoint HTTP instance Weaviate. Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Kumpulan Weaviate yang dipetakan oleh korpus RAG. Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Menentukan instance Pinecone Anda. |
|
Ini adalah nama yang digunakan untuk membuat indeks Pinecone yang digunakan dengan korpus RAG. Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Menentukan instance Vertex AI Feature Store Anda. |
|
Format: Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Menentukan instance Vertex Vector Search Anda. |
|
Ini adalah nama resource indeks Vector Search yang digunakan dengan korpus RAG. Format: Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Ini adalah nama resource endpoint indeks Vector Search yang digunakan dengan korpus RAG. Format: Nilai ini tidak dapat diubah setelah ditetapkan. Anda dapat membiarkannya kosong di
panggilan API |
|
Ini adalah nama lengkap resource secret yang disimpan di Secret Manager, yang berisi kunci API Weaviate atau Pinecone Anda yang bergantung pada pilihan database vektor Anda. Format: Anda dapat membiarkannya kosong di panggilan API |
|
Opsional: Tidak dapat diubah: Model embedding yang akan digunakan untuk korpus RAG. Nilai ini tidak dapat diubah setelah ditetapkan. Jika Anda membiarkannya kosong, kami akan menggunakan text-embedding-005 sebagai model embedding. |
Memperbarui korpus RAG
Tabel ini mencantumkan parameter yang digunakan untuk memperbarui korpus RAG.
Isi Permintaan
| Parameter | |
|---|---|
|
Opsional: Nama tampilan korpus RAG. |
|
Opsional: Deskripsi korpus RAG. |
|
Endpoint HTTP instance Weaviate. Jika |
|
Kumpulan Weaviate yang dipetakan oleh korpus RAG. Jika |
|
Ini adalah nama yang digunakan untuk membuat indeks Pinecone yang digunakan dengan korpus RAG. Jika |
|
Format: Jika |
|
Ini adalah nama resource indeks Vector Search yang digunakan dengan korpus RAG. Format: Jika |
|
Ini adalah nama resource endpoint indeks Vector Search yang digunakan dengan korpus RAG. Format: Jika |
|
Nama lengkap resource secret yang disimpan di Secret Manager, yang berisi kunci API Weaviate atau Pinecone Anda bergantung pada pilihan database vektor Anda. Format: |
Mencantumkan korpus RAG
Tabel ini mencantumkan parameter yang digunakan untuk mencantumkan korpora RAG.
| Parameter | |
|---|---|
|
Opsional: Ukuran halaman daftar standar. |
|
Opsional: Token halaman daftar standar. Biasanya diperoleh dari |
Mendapatkan korpus RAG
Tabel ini mencantumkan parameter yang digunakan untuk mendapatkan korpus RAG.
| Parameter | |
|---|---|
|
Nama resource |
Menghapus korpus RAG
Tabel ini mencantumkan parameter yang digunakan untuk menghapus korpus RAG.
| Parameter | |
|---|---|
|
Nama resource |
Membuat skema metadata secara batch
Tabel ini mencantumkan parameter yang digunakan untuk membuat skema metadata secara berkelompok untuk korpus RAG.
Isi Permintaan
| Parameter | |
|---|---|
|
Wajib: daftar Pesan permintaan untuk |
CreateRagDataSchemaRequest
| Parameter | |
|---|---|
|
Wajib: Skema metadata yang akan dibuat. |
RagDataSchema
| Parameter | |
|---|---|
|
Wajib: Kunci skema metadata. |
|
Detail skema metadata. |
RagMetadataSchemaDetails
| Parameter | |
|---|---|
|
Jenis data skema metadata. Opsi: |
Mencantumkan skema metadata
Tabel ini mencantumkan parameter yang digunakan untuk mencantumkan skema metadata.
| Parameter | Deskripsi |
|---|---|
|
Wajib: Nama resource |
Menghapus skema metadata secara batch
Tabel ini mencantumkan parameter yang digunakan untuk menghapus skema metadata secara berkelompok.
| Parameter | |
|---|---|
|
Wajib: daftar Nama resource |
Parameter pengelolaan file
Untuk mengetahui informasi tentang file RAG dan metadatanya, lihat Pengelolaan file.
Mengupload file RAG
Tabel ini mencantumkan parameter yang digunakan untuk mengupload file RAG.
Isi Permintaan
| Parameter | |
|---|---|
|
Nama resource |
|
Wajib: File yang akan diupload. |
|
Wajib: Konfigurasi untuk |
RagFile |
Deskripsi |
|---|---|
|
Wajib: Nama tampilan file RAG. |
|
Opsional: Deskripsi file RAG. |
UploadRagFileConfig |
Deskripsi |
|---|---|
|
Jumlah token yang dimiliki setiap potongan. |
|
Tumpang-tindih antar-potongan. |
Mengimpor file RAG
Tabel ini mencantumkan parameter yang digunakan untuk mengimpor file RAG.
| Parameter | |
|---|---|
|
Wajib: Nama resource Format: |
|
Lokasi Cloud Storage. Mendukung pengimporan file satu per satu serta seluruh direktori Cloud Storage. |
|
URI Cloud Storage yang berisi file yang akan diupload. |
|
Lokasi Google Drive. Mendukung pengimporan file individual serta folder Google Drive. |
|
Channel Slack tempat file diupload. |
|
Kueri Jira tempat file diupload. |
|
Sumber SharePoint tempat file diupload. |
|
Jumlah token yang dimiliki setiap potongan. |
|
Tumpang-tindih antar-potongan. |
|
Opsional: Menentukan konfigurasi parsing untuk Jika kolom ini tidak disetel, RAG akan menggunakan parser default. |
|
Opsional: Jumlah maksimum kueri per menit yang diizinkan untuk tugas ini ke model sematan yang ditentukan pada korpus. Nilai ini khusus untuk tugas ini dan tidak dibagikan di seluruh tugas impor lainnya. Lihat halaman Kuota di project untuk menetapkan nilai yang sesuai. Jika tidak ditentukan, nilai default 1.000 QPM akan digunakan. |
GoogleDriveSource |
|
|---|---|
|
Wajib: ID resource Google Drive. |
|
Wajib: Jenis resource Google Drive. |
SlackSource |
|
|---|---|
|
Berulang: Informasi channel Slack, termasuk ID dan rentang waktu yang akan diimpor. |
|
Wajib: ID channel Slack. |
|
Opsional: Stempel waktu awal untuk pesan yang akan diimpor. |
|
Opsional: Stempel waktu akhir untuk pesan yang akan diimpor. |
|
Wajib: Nama lengkap resource secret yang disimpan di Secret Manager,
yang berisi token akses channel Slack yang memiliki akses ke ID channel Slack.
Format: |
JiraSource |
|
|---|---|
|
Berulang: Daftar project Jira yang akan diimpor secara keseluruhan. |
|
Berulang: Daftar kueri Jira kustom yang akan diimpor. Untuk mengetahui informasi tentang JQL (Jira Query Language), lihat
|
|
Wajib: Alamat email Jira. |
|
Wajib: URI server Jira. |
|
Wajib: Nama lengkap resource secret yang disimpan di Secret Manager,
yang berisi kunci API Jira yang memiliki akses ke ID channel Slack.
Format: |
SharePointSources |
|
|---|---|
|
Jalur folder SharePoint yang akan didownload. |
|
ID folder SharePoint yang akan didownload. |
|
Nama perjalanan yang akan didownload. |
|
ID drive yang akan didownload. |
|
ID Aplikasi untuk aplikasi yang terdaftar di Microsoft Azure Portal.
|
|
Wajib: Nama lengkap resource secret yang disimpan di Secret Manager, yang berisi secret aplikasi untuk aplikasi yang terdaftar di Azure. Format: |
|
ID unik Instance Azure Active Directory. |
|
Nama situs SharePoint yang akan didownload. Ini bisa berupa nama situs atau ID situs. |
RagFileParsingConfig |
|
|---|---|
|
Layout Parser yang akan digunakan untuk |
|
Nama lengkap resource pemroses atau versi pemroses Document AI. Format:
|
|
Jumlah maksimum permintaan yang diizinkan untuk dibuat tugas ke pemroses Document AI per menit. Lihat https://cloud.google.com/document-ai/quotas dan halaman Kuota untuk project Anda guna menetapkan nilai yang sesuai di sini. Jika tidak ditentukan, nilai default 120 QPM akan digunakan. |
|
Parser LLM yang akan digunakan untuk |
|
Nama resource model LLM. Format:
|
|
Jumlah maksimum permintaan yang diizinkan untuk dibuat tugas ke model LLM per menit. Untuk menetapkan nilai yang sesuai untuk project Anda, lihat bagian kuota model dan halaman Kuota untuk project Anda guna menetapkan nilai yang sesuai di sini. Jika tidak ditentukan, nilai default 5.000 QPM akan digunakan. |
Mendapatkan file RAG
Tabel ini mencantumkan parameter yang digunakan untuk mendapatkan file RAG.
| Parameter | |
|---|---|
|
Nama resource |
Menghapus file RAG
Tabel ini mencantumkan parameter yang digunakan untuk menghapus file RAG.
| Parameter | |
|---|---|
|
Nama resource |
Membuat metadata batch
Tabel ini mencantumkan parameter yang digunakan untuk membuat metadata secara batch untuk file RAG.
Isi Permintaan
| Parameter | |
|---|---|
|
Wajib: daftar Pesan permintaan untuk |
CreateRagMetadataRequest
| Parameter | |
|---|---|
|
Wajib: Metadata yang akan dibuat. |
|
Opsional: ID yang akan digunakan untuk metadata, yang akan menjadi komponen akhir dari nama resource metadata. |
RagMetadata
| Parameter | |
|---|---|
|
Metadata yang disediakan oleh pengguna. |
UserSpecifiedMetadata
| Parameter | |
|---|---|
|
Wajib: Kunci metadata. Kunci harus sesuai dengan kunci yang ditentukan dalam |
|
Nilai metadata. |
MetadataValue
| Parameter | |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Metadata daftar
Tabel ini mencantumkan parameter yang digunakan untuk mencantumkan metadata untuk file RAG.
| Parameter | |
|---|---|
|
Wajib: Nama resource |
Update metadata
Tabel ini mencantumkan parameter yang digunakan untuk memperbarui metadata.
| Parameter | |
|---|---|
|
Wajib:
|
Menghapus metadata secara batch
Tabel ini mencantumkan parameter yang digunakan untuk menghapus metadata secara berkelompok.
| Parameter | |
|---|---|
|
Wajib: daftar Nama resource |
Parameter pengambilan dan prediksi
Bagian ini mencantumkan parameter pengambilan dan prediksi.
Parameter pengambilan
Tabel ini mencantumkan parameter untuk retrieveContexts API.
| Parameter | |
|---|---|
|
Wajib: Nama resource Lokasi untuk melakukan pengambilan.
Format: |
|
Sumber data untuk Vertex RagStore. |
|
Wajib: Kueri pengambilan RAG tunggal. |
VertexRagStore
VertexRagStore |
|
|---|---|
|
daftar: Representasi sumber RAG. Dapat digunakan untuk menentukan hanya korpus
atau |
|
Opsional: Nama resource Format: |
|
daftar: Daftar resource Format: |
RagQuery |
|
|---|---|
|
Kueri dalam format teks untuk mendapatkan konteks yang relevan. |
|
Opsional: Konfigurasi pengambilan untuk kueri. |
RagRetrievalConfig |
|
|---|---|
|
Opsional: Jumlah konteks yang akan diambil. |
|
Opsional: Nilai alfa mengontrol bobot antara hasil penelusuran vektor padat dan jarang. Rentangnya adalah [0, 1], dengan 0 berarti hanya penelusuran vektor jarang dan 1 berarti hanya penelusuran vektor padat. Nilai defaultnya adalah 0,5, yang menyeimbangkan pencarian vektor jarang dan padat secara merata. Penelusuran Hybrid hanya tersedia untuk Weaviate. |
|
Hanya menampilkan konteks dengan jarak vektor yang lebih kecil daripada nilai minimum. |
|
Opsional: Filter metadata yang akan diterapkan selama pengambilan, menggunakan Common Expression Language (CEL). Untuk mengetahui informasi selengkapnya, lihat [Penelusuran metadata](/vertex-ai/generative-ai/docs/rag-engine/use-metadata-search). Contoh: |
|
Hanya menampilkan konteks dengan kemiripan vektor yang lebih besar dari nilai minimum. |
|
Opsional: Nama model layanan peringkat. Contoh: |
|
Opsional: Nama model yang digunakan untuk penentuan peringkat. Contoh: |
Parameter pengambilan asinkron
Tabel ini mencantumkan parameter untuk asyncRetrieveContexts API.
| Parameter | |
|---|---|
|
Wajib: Nama resource Lokasi yang akan diambil Format: |
|
Wajib: Kueri pengambilan RAG tunggal. |
|
Opsional: daftar Alat yang akan digunakan untuk pengambilan. Alat yang didukung mencakup |
Parameter konteks pertanyaan
Tabel ini mencantumkan parameter untuk askContexts API.
| Parameter | |
|---|---|
|
Wajib: Nama resource Lokasi yang akan diambil Format: |
|
Wajib: Kueri pengambilan RAG tunggal. |
|
Opsional: daftar Alat yang akan digunakan untuk pengambilan. Alat yang didukung mencakup |
Parameter prediksi
Tabel ini mencantumkan parameter prediksi.
GenerateContentRequest |
|
|---|---|
|
Disetel untuk menggunakan sumber data yang didukung oleh penyimpanan RAG Vertex AI. |
Lihat VertexRagStore untuk mengetahui detailnya.
Parameter pengelolaan project
Tabel ini mencantumkan parameter tingkat project.
RagEngineConfig
| Parameter | |
|---|---|
RagManagedDbConfig.serverless |
Menetapkan/Mengalihkan mode deployment ke Serverless, yang menyediakan database terkelola sepenuhnya dan sangat skalabel untuk mendukung resource RAG Engine Anda. |
RagManagedDbConfig.spanner |
Menetapkan/Mengalihkan mode deployment ke Spanner, yang didukung oleh instance Spanner yang siap produksi. |
RagManagedDbConfig.spanner.scaled |
Tingkat ini menawarkan performa skala produksi beserta fungsi penskalaan otomatis dalam mode Spanner. |
RagManagedDbConfig.spanner.basic |
Tingkat ini menawarkan tingkat komputasi rendah yang hemat biaya dalam mode Spanner. |
RagManagedDbConfig.spanner.unprovisioned |
Tingkatan ini menghapus RagManagedDb dan instance Spanner yang mendasarinya. |
Contoh pengelolaan korpus
Bagian ini memberikan contoh cara menggunakan API untuk mengelola korpus RAG Anda.
Membuat contoh korpus RAG
Contoh kode ini menunjukkan cara membuat korpus RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- CORPUS_DISPLAY_NAME: Nama tampilan
RagCorpus. - CORPUS_DESCRIPTION: Deskripsi
RagCorpus.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora
Meminta isi JSON:
{
"display_name" : "CORPUS_DISPLAY_NAME",
"description": "CORPUS_DESCRIPTION",
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora" | Select-Object -Expand Content
Contoh berikut menunjukkan cara membuat korpus RAG menggunakan REST API.
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
CORPUS_DISPLAY_NAME: The display name of the <code>RagCorpus</code>.
// CreateRagCorpus
// Input: LOCATION, PROJECT_ID, CORPUS_DISPLAY_NAME
// Output: CreateRagCorpusOperationMetadata
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora \
-d '{
"display_name" : "CORPUS_DISPLAY_NAME"
}'
Memperbarui contoh korpus RAG
Anda dapat memperbarui korpus RAG dengan nama tampilan, deskripsi, dan konfigurasi database vektor baru. Namun, Anda tidak dapat mengubah parameter berikut dalam korpus RAG:
- Jenis database vektor. Misalnya, Anda tidak dapat mengubah database vektor dari Weaviate ke Vertex AI Feature Store.
- Jika menggunakan opsi database terkelola, Anda tidak dapat memperbarui konfigurasi database vektor.
Contoh ini menunjukkan cara memperbarui korpus RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- CORPUS_ID: ID korpus RAG Anda.
- CORPUS_DISPLAY_NAME: Nama tampilan
RagCorpus. - CORPUS_DESCRIPTION: Deskripsi
RagCorpus. - INDEX_NAME: Nama resource
Vector Search Index. Format:projects/{project}/locations/{location}/indexes/{index} - INDEX_ENDPOINT_NAME: Nama resource
Vector Search Index Endpoint. Format:projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}
Metode HTTP dan URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/CORPUS_ID
Meminta isi JSON:
{
"display_name" : "CORPUS_DISPLAY_NAME",
"description": "CORPUS_DESCRIPTION",
"rag_vector_db_config": {
"vertex_vector_search": {
"index": "INDEX_NAME",
"index_endpoint": "INDEX_ENDPOINT_NAME",
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/CORPUS_ID"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/CORPUS_ID" | Select-Object -Expand Content
Contoh mencantumkan korpus RAG
Contoh kode ini menunjukkan cara mencantumkan semua korpus RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- PAGE_SIZE: Ukuran halaman daftar standar. Anda dapat menyesuaikan jumlah
RagCorporayang akan ditampilkan per halaman dengan memperbarui parameterpage_size. - PAGE_TOKEN: Token halaman daftar standar. Biasanya diperoleh menggunakan
ListRagCorporaResponse.next_page_tokendari panggilanVertexRagDataService.ListRagCorporasebelumnya.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora?page_size=PAGE_SIZE&page_token=PAGE_TOKEN
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora?page_size=PAGE_SIZE&page_token=PAGE_TOKEN"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora?page_size=PAGE_SIZE&page_token=PAGE_TOKEN" | Select-Object -Expand Content
RagCorpora di PROJECT_ID yang diberikan.
Mendapatkan contoh korpus RAG
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID" | Select-Object -Expand Content
RagCorpus.
Perintah get dan list digunakan dalam contoh untuk menunjukkan cara
RagCorpus menggunakan kolom rag_embedding_model_config dalam vector_db_config, yang mengarah ke
model sematan yang telah Anda pilih.
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
RAG_CORPUS_ID: The corpus ID of your RAG corpus.
// GetRagCorpus
// Input: LOCATION, PROJECT_ID, RAG_CORPUS_ID
// Output: RagCorpus
curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID
// ListRagCorpora
curl -sS -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/
Menghapus contoh korpus RAG
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus.
Metode HTTP dan URL:
DELETE https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID" | Select-Object -Expand Content
DeleteOperationMetadata.
Contoh pembuatan skema metadata secara batch
Contoh kode ini menunjukkan cara membuat skema metadata secara batch untuk korpus RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - SCHEMA_KEY_1: Kunci untuk skema metadata pertama.
- SCHEMA_TYPE_1: Jenis data untuk skema metadata pertama (misalnya,
INTEGER). - SCHEMA_KEY_2: Kunci untuk skema metadata kedua.
- SCHEMA_TYPE_2: Jenis data untuk skema metadata kedua (misalnya,
STRING).
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchCreate
Meminta isi JSON:
{
"requests": [
{
"rag_data_schema": {
"key": "SCHEMA_KEY_1",
"schema_details": {"type": "SCHEMA_TYPE_1"}
}
},
{
"rag_data_schema": {
"key": "SCHEMA_KEY_2",
"schema_details": {"type": "SCHEMA_TYPE_2"}
}
}
]
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchCreate"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchCreate" | Select-Object -Expand Content
Contoh mencantumkan skema metadata
Contoh kode ini menunjukkan cara mencantumkan skema metadata untuk korpus RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas" | Select-Object -Expand Content
RagDataSchema.
Contoh penghapusan skema metadata batch
Contoh kode ini menunjukkan cara menghapus skema metadata secara berkelompok.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - SCHEMA_ID_1: ID skema metadata pertama yang akan dihapus.
- SCHEMA_ID_2: ID skema metadata kedua yang akan dihapus.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchDelete
Meminta isi JSON:
{
"names": [
"projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas/SCHEMA_ID_1",
"projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas/SCHEMA_ID_2"
]
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchDelete"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragDataSchemas:batchDelete" | Select-Object -Expand Content
Contoh pengelolaan file
Bagian ini memberikan contoh cara menggunakan API untuk mengelola file RAG.
Contoh upload file RAG
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut: PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
RAG_CORPUS_ID: The corpus ID of your RAG corpus.
LOCAL_FILE_PATH: The local path to the file to be uploaded.
DISPLAY_NAME: The display name of the RAG file.
DESCRIPTION: The description of the RAG file.
Untuk mengirim permintaan, gunakan perintah berikut:
curl -X POST \
-H "X-Goog-Upload-Protocol: multipart" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-F metadata="{'rag_file': {'display_name':' DISPLAY_NAME', 'description':'DESCRIPTION'}}" \
-F file=@LOCAL_FILE_PATH \
"https://LOCATION-aiplatform.googleapis.com/upload/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:upload"
Contoh impor file RAG
File dan folder dapat diimpor dari Drive atau Cloud Storage.
response.skipped_rag_files_count mengacu pada jumlah file yang dilewati selama impor. File dilewati jika kondisi berikut terpenuhi:
- File sudah diimpor.
- File tidak berubah.
- Konfigurasi chunking untuk file tidak berubah.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - GCS_URIS: Daftar lokasi Cloud Storage. Contoh:
gs://my-bucket1, gs://my-bucket2. - CHUNK_SIZE: Opsional: Jumlah token yang harus dimiliki setiap bagian.
- CHUNK_OVERLAP: Opsional: Jumlah token yang tumpang-tindih antar-potongan.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:import
Meminta isi JSON:
{
"import_rag_files_config": {
"gcs_source": {
"uris": "GCS_URIS"
},
"rag_file_chunking_config": {
"chunk_size": CHUNK_SIZE,
"chunk_overlap": CHUNK_OVERLAP
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:import"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:import" | Select-Object -Expand Content
ImportRagFilesOperationMetadata.
Contoh berikut menunjukkan cara mengimpor file dari
Cloud Storage. Gunakan kolom kontrol max_embedding_requests_per_min untuk membatasi kecepatan RAG Engine memanggil model embedding selama proses pengindeksan ImportRagFiles. Kolom memiliki nilai default 1000 panggilan per menit.
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
RAG_CORPUS_ID: The corpus ID of your RAG corpus.
GCS_URIS: A list of Cloud Storage locations. Example: gs://my-bucket1.
CHUNK_SIZE: Number of tokens each chunk should have.
CHUNK_OVERLAP: Number of tokens overlap between chunks.
EMBEDDING_MODEL_QPM_RATE: The QPM rate to limit RAGs access to your embedding model. Example: 1000.
// ImportRagFiles
// Import a single Cloud Storage file or all files in a Cloud Storage bucket.
// Input: LOCATION, PROJECT_ID, RAG_CORPUS_ID, GCS_URIS
// Output: ImportRagFilesOperationMetadataNumber
// Use ListRagFiles to find the server-generated rag_file_id.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:import \
-d '{
"import_rag_files_config": {
"gcs_source": {
"uris": "GCS_URIS"
},
"rag_file_chunking_config": {
"chunk_size": CHUNK_SIZE,
"chunk_overlap": CHUNK_OVERLAP
},
"max_embedding_requests_per_min": EMBEDDING_MODEL_QPM_RATE
}
}'
// Poll the operation status.
// The response contains the number of files imported.
OPERATION_ID: The operation ID you get from the response of the previous command.
poll_op_wait OPERATION_ID
Contoh berikut menunjukkan cara mengimpor file dari
Drive. Gunakan kolom kontrol max_embedding_requests_per_min untuk membatasi kecepatan RAG Engine memanggil model embedding selama proses pengindeksan ImportRagFiles. Kolom memiliki nilai default 1000 panggilan per menit.
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
RAG_CORPUS_ID: The corpus ID of your RAG corpus.
FOLDER_RESOURCE_ID: The resource ID of your Google Drive folder.
CHUNK_SIZE: Number of tokens each chunk should have.
CHUNK_OVERLAP: Number of tokens overlap between chunks.
EMBEDDING_MODEL_QPM_RATE: The QPM rate to limit RAGs access to your embedding model. Example: 1000.
// ImportRagFiles
// Import all files in a Google Drive folder.
// Input: LOCATION, PROJECT_ID, RAG_CORPUS_ID, FOLDER_RESOURCE_ID
// Output: ImportRagFilesOperationMetadataNumber
// Use ListRagFiles to find the server-generated rag_file_id.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles:import \
-d '{
"import_rag_files_config": {
"google_drive_source": {
"resource_ids": {
"resource_id": "FOLDER_RESOURCE_ID",
"resource_type": "RESOURCE_TYPE_FOLDER"
}
},
"max_embedding_requests_per_min": EMBEDDING_MODEL_QPM_RATE
}
}'
// Poll the operation status.
// The response contains the number of files imported.
OPERATION_ID: The operation ID you get from the response of the previous command.
poll_op_wait OPERATION_ID
Contoh file RAG daftar
Contoh kode ini menunjukkan cara mencantumkan file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - PAGE_SIZE: Ukuran halaman daftar standar. Anda dapat menyesuaikan jumlah
RagFilesyang akan ditampilkan per halaman dengan memperbarui parameterpage_size. - PAGE_TOKEN: Token halaman daftar standar. Biasanya diperoleh menggunakan
ListRagFilesResponse.next_page_tokendari panggilanVertexRagDataService.ListRagFilessebelumnya.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles?page_size=PAGE_SIZE&page_token=PAGE_TOKEN
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles?page_size=PAGE_SIZE&page_token=PAGE_TOKEN"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles?page_size=PAGE_SIZE&page_token=PAGE_TOKEN" | Select-Object -Expand Content
RagFiles dalam RAG_CORPUS_ID tertentu.
Mendapatkan contoh file RAG
Contoh kode ini menunjukkan cara mendapatkan file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID" | Select-Object -Expand Content
RagFile.
Menghapus contoh file RAG
Contoh kode ini menunjukkan cara menghapus file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile. Format:projects/{project}/locations/{location}/ragCorpora/{rag_corpus}/ragFiles/{rag_file_id}.
Metode HTTP dan URL:
DELETE https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID" | Select-Object -Expand Content
DeleteOperationMetadata.
Contoh pembuatan metadata batch
Contoh kode ini menunjukkan cara membuat metadata secara batch untuk file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile. - METADATA_KEY_1: Kunci untuk entri metadata pertama.
- VALUE_TYPE_1: Kolom jenis nilai untuk entri metadata pertama (misalnya,
int_value). - METADATA_VALUE_1: Nilai untuk entri metadata pertama.
- METADATA_KEY_2: Kunci untuk entri metadata kedua.
- VALUE_TYPE_2: Kolom jenis nilai untuk entri metadata kedua (misalnya,
str_value). - METADATA_VALUE_2: Nilai untuk entri metadata kedua.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchCreate
Meminta isi JSON:
{
"requests": [
{
"rag_metadata": {
"user_specified_metadata": {
"key": "METADATA_KEY_1",
"value": { "VALUE_TYPE_1": METADATA_VALUE_1 }
}
}
},
{
"rag_metadata": {
"user_specified_metadata": {
"key": "METADATA_KEY_2",
"value": { "VALUE_TYPE_2": "METADATA_VALUE_2" }
}
}
}
]
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchCreate"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchCreate" | Select-Object -Expand Content
Contoh metadata daftar
Contoh kode ini menunjukkan cara mencantumkan metadata untuk file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata" | Select-Object -Expand Content
RagMetadata.
Contoh memperbarui metadata
Contoh kode ini menunjukkan cara memperbarui metadata untuk file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile. - METADATA_ID: ID entri metadata yang akan diperbarui.
- METADATA_KEY: Kunci untuk entri metadata.
- VALUE_TYPE: Kolom jenis nilai (misalnya,
int_value). - METADATA_VALUE: Nilai baru untuk entri metadata.
Metode HTTP dan URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata/METADATA_ID
Meminta isi JSON:
{
"user_specified_metadata": {
"key": "METADATA_KEY",
"value": { "VALUE_TYPE": METADATA_VALUE }
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata/METADATA_ID"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata/METADATA_ID" | Select-Object -Expand Content
Contoh penghapusan metadata batch
Contoh kode ini menunjukkan cara menghapus entri metadata secara batch untuk file RAG.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- RAG_CORPUS_ID: ID resource
RagCorpus. - RAG_FILE_ID: ID resource
RagFile. - METADATA_ID_1: ID entri metadata pertama yang akan dihapus.
- METADATA_ID_2: ID entri metadata kedua yang akan dihapus.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchDelete
Meminta isi JSON:
{
"names": [
"projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata/METADATA_ID_1",
"projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata/METADATA_ID_2"
]
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchDelete"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_ID/ragFiles/RAG_FILE_ID/ragMetadata:batchDelete" | Select-Object -Expand Content
Contoh kueri pengambilan
Saat pengguna mengajukan pertanyaan atau memberikan perintah, komponen pengambilan di RAG akan menelusuri pusat informasinya untuk menemukan informasi yang relevan dengan kueri.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Region untuk memproses permintaan.
- PROJECT_ID: Project ID Anda.
- RAG_CORPUS_RESOURCE: Nama resource
RagCorpus. Format:projects/{project}/locations/{location}/ragCorpora/{rag_corpus}. - TOP_K: Jumlah konteks teratas yang akan diambil.
- VECTOR_DISTANCE_THRESHOLD: Hanya konteks dengan jarak vektor yang lebih kecil dari nilai minimum yang ditampilkan.
- METADATA_FILTER: Opsional: Filter metadata yang akan diterapkan selama pengambilan.
- TEXT: Teks kueri untuk mendapatkan konteks yang relevan.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION:retrieveContexts
Meminta isi JSON:
{
"vertex_rag_store": {
"rag_resources": [
{
"rag_corpus": "RAG_CORPUS_RESOURCE"
}
]
},
"query": {
"text": "TEXT",
"rag_retrieval_config": {
"top_k": TOP_K,
"filter": {
"vector_distance_threshold": VECTOR_DISTANCE_THRESHOLD,
"metadata_filter": "METADATA_FILTER"
}
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION:retrieveContexts"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION:retrieveContexts" | Select-Object -Expand Content
RagFiles terkait.
Contoh pembuatan
LLM menghasilkan respons yang berisi rujukan menggunakan konteks yang diambil.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region untuk memproses permintaan.
- MODEL_ID: Model LLM untuk pembuatan konten. Contoh:
gemini-2.5-flash - GENERATION_METHOD: Metode LLM untuk pembuatan konten. Opsi:
generateContent,streamGenerateContent - INPUT_PROMPT: Teks yang dikirim ke LLM untuk pembuatan konten. Coba gunakan perintah yang relevan dengan File rag yang diupload.
- RAG_CORPUS_RESOURCE: Nama resource
RagCorpus. Format:projects/{project}/locations/{location}/ragCorpora/{rag_corpus}. - TOP_K: Opsional: Jumlah konteks teratas yang akan diambil.
- VECTOR_DISTANCE_THRESHOLD: Opsional: Konteks dengan jarak vektor yang lebih kecil dari nilai minimum akan ditampilkan.
- METADATA_FILTER: Opsional: Filter metadata yang akan diterapkan selama pengambilan.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:GENERATION_METHOD
Meminta isi JSON:
{
"contents": {
"role": "user",
"parts": {
"text": "INPUT_PROMPT"
}
},
"tools": {
"retrieval": {
"disable_attribution": false,
"vertex_rag_store": {
"rag_resources": [
{
"rag_corpus": "RAG_CORPUS_RESOURCE"
}
],
"rag_retrieval_config": {
"top_k": TOP_K,
"filter": {
"vector_distance_threshold": VECTOR_DISTANCE_THRESHOLD,
"metadata_filter": "METADATA_FILTER"
}
}
}
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:GENERATION_METHOD"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:GENERATION_METHOD" | Select-Object -Expand Content
Contoh pengelolaan project
Mode dan tingkat deployment adalah setelan tingkat project yang tersedia di bagian RagEngineConfig
sumber daya dan memengaruhi korpus RAG yang menggunakan RagManagedDb. Untuk mendapatkan konfigurasi saat ini, gunakan GetRagEngineConfig. Untuk memperbarui konfigurasi, gunakan UpdateRagEngineConfig.
Untuk mengetahui informasi selengkapnya tentang cara mengelola konfigurasi mode dan tingkat, lihat Mode deployment di RAG Engine.
Membaca RagEngineConfig Anda saat ini
Contoh kode berikut menunjukkan cara membaca RagEngineConfig untuk melihat mode dan tingkat yang saat ini dipilih:
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat RAG Engine Anda berjalan. Daftar korpus RAG Anda diperbarui.
- Klik Configure RAG Engine. Panel Configure RAG Engine akan muncul. Anda dapat melihat tingkatan yang dipilih untuk Mesin RAG Anda.
- Klik Cancel.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config = rag.rag_data.get_rag_engine_config(
name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
)
print(rag_engine_config)
Beralih ke mode Serverless
Contoh kode berikut menunjukkan cara mengalihkan RagEngineConfig ke mode Serverless:
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat Vertex AI RAG Engine Anda berjalan.
- Klik tombol Beralih ke Serverless. Tombol ini mungkin tidak terlihat jika Anda sudah menggunakan mode Serverless. Anda dapat memverifikasi mode saat ini dari label mode di bagian kanan atas halaman.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig -d "{'ragManagedDbConfig': {'serverless': {}}}"
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
new_rag_engine_config = rag.RagEngineConfig(
name=rag_engine_config_name,
rag_managed_db_config=rag.RagManagedDbConfig(mode=rag.Serverless()),
)
updated_rag_engine_config = rag.rag_data.update_rag_engine_config(
rag_engine_config=new_rag_engine_config
)
print(updated_rag_engine_config)
Beralih ke mode Spanner
Contoh kode berikut menunjukkan cara mengalihkan RagEngineConfig ke mode Spanner. Jika sebelumnya Anda telah menggunakan mode Spanner dan telah memilih tingkat, Anda tidak perlu lagi menyediakannya secara eksplisit saat beralih. Jika tidak, lihat contoh kode yang lebih rendah tentang cara beralih ke mode Spanner sambil menyediakan tingkat.
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat Vertex AI RAG Engine Anda berjalan.
- Klik tombol Switch to Spanner. Tombol ini mungkin tidak terlihat jika Anda sudah menggunakan mode Spanner. Anda dapat memverifikasi mode saat ini dari label mode di bagian kanan atas halaman.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig -d "{'ragManagedDbConfig': {'spanner': {}}}"
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
new_rag_engine_config = rag.RagEngineConfig(
name=rag_engine_config_name,
rag_managed_db_config=rag.RagManagedDbConfig(mode=rag.Spanner()),
)
updated_rag_engine_config = rag.rag_data.update_rag_engine_config(
rag_engine_config=new_rag_engine_config
)
print(updated_rag_engine_config)
Mengupdate RagEngineConfig Anda ke tingkat Scaled mode Spanner
Contoh kode berikut menunjukkan cara menyetel RagEngineConfig ke mode Spanner dengan tingkat Scaled:
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat Vertex AI RAG Engine Anda berjalan.
- Klik tombol Switch to Spanner jika belum dalam mode Spanner.
- Klik Configure RAG Engine. Panel Configure RAG Engine akan muncul.
- Pilih tingkat yang ingin Anda jalankan RAG Engine.
- Klik Simpan.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig -d "{'ragManagedDbConfig': {'spanner': {'scaled': {}}}}"
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
new_rag_engine_config = rag.RagEngineConfig(
name=rag_engine_config_name,
rag_managed_db_config=rag.RagManagedDbConfig(mode=rag.Spanner(tier=rag.Scaled())),
)
updated_rag_engine_config = rag.rag_data.update_rag_engine_config(
rag_engine_config=new_rag_engine_config
)
print(updated_rag_engine_config)
Perbarui RagEngineConfig Anda ke mode Spanner dengan tingkat Dasar
Contoh kode berikut menunjukkan cara menyetel RagEngineConfig ke mode Spanner dengan tingkat Dasar:
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat Vertex AI RAG Engine Anda berjalan.
- Klik tombol Switch to Spanner jika belum dalam mode Spanner.
- Klik Configure RAG Engine. Panel Configure RAG Engine akan muncul.
- Pilih tingkat yang ingin Anda jalankan RAG Engine.
- Klik Simpan.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig -d "{'ragManagedDbConfig': {'spanner': {'basic': {}}}}"
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
new_rag_engine_config = rag.RagEngineConfig(
name=rag_engine_config_name,
rag_managed_db_config=rag.RagManagedDbConfig(mode=rag.Spanner(tier=rag.Basic())),
)
updated_rag_engine_config = rag.rag_data.update_rag_engine_config(
rag_engine_config=new_rag_engine_config
)
print(updated_rag_engine_config)
Memperbarui RagEngineConfig Anda ke tingkat Unprovisioned
Contoh kode berikut menunjukkan cara menyetel RagEngineConfig ke mode Spanner dengan tingkat Unprovisioned. Tindakan ini akan menghapus semua data secara permanen dari mode deployment Spanner Anda dan menghentikan biaya penagihan yang timbul darinya.
Konsol
- Di konsol Google Cloud , buka halaman RAG Engine.
- Pilih region tempat Vertex AI RAG Engine Anda berjalan.
- Klik tombol Switch to Spanner jika belum dalam mode Spanner.
- Klik Hapus RAG Engine. Dialog konfirmasi akan muncul.
- Verifikasi bahwa Anda akan menghapus data Anda di Vertex AI RAG Engine dengan mengetik hapus, lalu klik Konfirmasi.
- Klik Simpan.
REST
PROJECT_ID: Your project ID.
LOCATION: The region to process the request.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragEngineConfig -d "{'ragManagedDbConfig': {'spanner': {'unprovisioned': {}}}}"
Python
from vertexai.preview import rag
import vertexai
PROJECT_ID = YOUR_PROJECT_ID
LOCATION = YOUR_RAG_ENGINE_LOCATION
# Initialize Vertex AI API once per session
vertexai.init(project=PROJECT_ID, location=LOCATION)
rag_engine_config_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/ragEngineConfig"
new_rag_engine_config = rag.RagEngineConfig(
name=rag_engine_config_name,
rag_managed_db_config=rag.RagManagedDbConfig(mode=rag.Spanner(tier=rag.Unprovisioned())),
)
updated_rag_engine_config = rag.rag_data.update_rag_engine_config(
rag_engine_config=new_rag_engine_config
)
print(updated_rag_engine_config)
Langkah berikutnya
- Untuk mempelajari lebih lanjut model pembuatan yang didukung, lihat Model AI generatif yang mendukung RAG.
- Untuk mempelajari lebih lanjut model embedding yang didukung, lihat Model embedding.
- Untuk mempelajari model terbuka lebih lanjut, lihat Model terbuka.
- Untuk mempelajari RAG Engine lebih lanjut, lihat Ringkasan RAG Engine.