Halaman ini menjelaskan cara menggunakan Vertex AI Search untuk mengurai dan mengelompokkan dokumen Anda.
Anda dapat mengonfigurasi setelan penguraian atau pengelompokan untuk:
Menentukan cara Vertex AI Search mengurai konten. Anda dapat menentukan cara menguraikan konten tidak terstruktur saat menguploadnya ke Vertex AI Search. Vertex AI Search menyediakan parser digital, parser OCR untuk PDF, dan parser tata letak. Anda juga dapat membawa dokumen yang telah diuraikan sendiri. Parser tata letak direkomendasikan jika Anda memiliki konten yang kaya dan elemen struktural seperti bagian, paragraf, tabel, daftar yang akan diekstrak dari dokumen untuk penelusuran dan pembuatan jawaban.
Gunakan Vertex AI Search untuk retrieval-augmented generation (RAG). Tingkatkan output LLM dengan data relevan yang telah Anda upload ke aplikasi Vertex AI Search. Untuk melakukannya, Anda akan mengaktifkan pengelompokan dokumen, yang mengindeks data Anda sebagai bagian untuk meningkatkan relevansi dan mengurangi beban komputasi untuk LLM. Anda juga akan mengaktifkan parser tata letak, yang mendeteksi elemen dokumen seperti judul dan daftar, untuk meningkatkan cara dokumen dibagi menjadi beberapa bagian.
Untuk mengetahui informasi tentang pengelompokan untuk RAG dan cara menampilkan bagian dalam permintaan penelusuran, lihat Membuat bagian dokumen untuk RAG.
Mengurai dokumen
Anda dapat mengontrol penguraian konten dengan cara berikut:
Menentukan jenis parser. Anda dapat menentukan jenis penguraian yang akan diterapkan, bergantung pada jenis file:
- Parser digital. Parser digital diaktifkan secara default untuk semua jenis file, kecuali jika jenis parser yang berbeda ditentukan. Parser digital memproses dokumen yang ditransfer jika tidak ada parser default lain yang ditentukan untuk penyimpanan data atau jika parser yang ditentukan tidak mendukung jenis file dokumen yang ditransfer.
- Pemrosesan OCR untuk PDF. Jika berencana mengupload PDF yang dipindai atau PDF dengan teks di dalam gambar, Anda dapat mengaktifkan parser OCR untuk meningkatkan pengindeksan PDF. Lihat bagian Parser OCR untuk PDF dalam dokumen ini.
- Parser tata letak. Aktifkan parser tata letak untuk file HTML, PDF, atau DOCX jika Anda berencana menggunakan Vertex AI Search untuk RAG. Lihat Membuat dokumen menjadi beberapa bagian untuk RAG guna mendapatkan informasi tentang parser ini dan cara mengaktifkannya.
Bawa dokumen yang telah diuraikan sendiri. (Pratinjau dengan daftar yang diizinkan) Jika sudah memecah dokumen tidak terstruktur, Anda dapat mengimpor konten yang telah diuraikan sebelumnya ke Vertex AI Search. Lihat Membawa dokumen yang telah diuraikan sendiri.
Perbandingan ketersediaan parser
Tabel berikut mencantumkan ketersediaan setiap parser menurut jenis file dokumen dan menunjukkan elemen yang dapat dideteksi dan diuraikan oleh setiap parser.
Jenis file | Parser digital | Parser OCR | Parser tata letak |
---|---|---|---|
HTML | Mendeteksi elemen paragraf | T/A | Mendeteksi elemen paragraf, tabel, daftar, judul, dan judul utama |
Mendeteksi elemen paragraf (teks digital) | Mendeteksi elemen paragraf | Mendeteksi elemen paragraf, tabel, judul, dan judul | |
DOCX (Pratinjau) | Mendeteksi elemen paragraf | T/A | Mendeteksi elemen paragraf, tabel, daftar, judul, dan judul |
PPTX (Pratinjau) | Mendeteksi elemen paragraf | T/A | Mendeteksi elemen paragraf, tabel, daftar, judul, dan judul |
TXT | Mendeteksi elemen paragraf | T/A | Mendeteksi elemen paragraf, tabel, judul, dan judul |
XLSX (Pratinjau) | Mendeteksi elemen paragraf | T/A | Mendeteksi elemen paragraf, tabel, judul, dan judul |
Parser digital
Parser digital mengekstrak teks yang dapat dibaca mesin dari dokumen. Alat ini mendeteksi blok teks, tetapi tidak mendeteksi elemen dokumen seperti tabel, daftar, dan judul.
Parser digital digunakan sebagai default jika Anda tidak menentukan parser lain sebagai default selama pembuatan penyimpanan data atau jika parser yang ditentukan tidak mendukung jenis file yang diupload.
Parser OCR untuk PDF
Jika Anda memiliki PDF yang tidak dapat ditelusuri (PDF yang dipindai atau PDF dengan teks di dalam gambar, seperti infografis), Google merekomendasikan untuk mengaktifkan pemrosesan pengenalan karakter optik (OCR) selama pembuatan penyimpanan data. Hal ini memungkinkan Vertex AI Search mengekstrak elemen paragraf.
Jika memiliki PDF yang dapat ditelusuri atau format digital lainnya yang sebagian besar terdiri dari
teks yang dapat dibaca mesin, Anda biasanya tidak perlu menggunakan parser OCR. Namun, jika memiliki PDF yang berisi teks yang tidak dapat ditelusuri (seperti teks yang dipindai atau infografis) dan teks yang dapat dibaca mesin, Anda dapat menetapkan kolom useNativeText
ke benar saat menentukan parser OCR. Dalam hal ini, teks yang dapat dibaca mesin
digabungkan dengan output penguraian OCR untuk meningkatkan kualitas ekstraksi teks.
Fitur pemrosesan OCR tersedia untuk aplikasi penelusuran umum dengan penyimpanan data tidak terstruktur.
Prosesor OCR dapat mengurai maksimum 500 halaman per file PDF. Untuk PDF yang lebih panjang, pemroses OCR mengurai 500 halaman pertama dan parser default mengurai halaman lainnya.
Parser tata letak
Pemecahan tata letak memungkinkan Vertex AI Search mendeteksi tata letak untuk PDF dan HTML. Dukungan untuk file DOCX masih dalam Pratinjau. Vertex AI Search kemudian dapat mengidentifikasi elemen konten seperti blok teks, tabel, daftar, dan elemen struktural seperti judul dan header, serta menggunakannya untuk menentukan organisasi dan hierarki dokumen.
Anda dapat mengaktifkan penguraian tata letak untuk semua jenis file atau menentukan jenis file yang akan diaktifkan. Parser tata letak mendeteksi elemen konten seperti paragraf, tabel, daftar, dan elemen struktural seperti judul, judul, header, catatan kaki.
Parser tata letak hanya tersedia saat menggunakan pengelompokan dokumen untuk RAG. Saat pemisahan dokumen diaktifkan, Vertex AI Search akan membagi dokumen menjadi beberapa bagian pada waktu penyerapan dan dapat menampilkan dokumen sebagai bagian. Mendeteksi tata letak dokumen memungkinkan pengelompokan berbasis konten dan meningkatkan pembuatan penelusuran dan jawaban terkait elemen dokumen. Untuk informasi selengkapnya tentang pengelompokan dokumen untuk RAG, lihat Membuat kelompok dokumen untuk RAG.
Parser tata letak mendukung ukuran file PDF maksimum 40 MB.
Menentukan parser default
Dengan menyertakan objek documentProcessingConfig
saat membuat penyimpanan data, Anda dapat menentukan parser default untuk penyimpanan data tersebut. Jika Anda tidak menyertakan documentProcessingConfig.defaultParsingConfig
, parser digital akan digunakan. Parser digital juga digunakan jika parser yang ditentukan
tidak tersedia untuk jenis file.
REST
Untuk menentukan parser default:
Saat membuat penyimpanan data penelusuran menggunakan API, sertakan
documentProcessingConfig.defaultParsingConfig
dalam permintaan pembuatan penyimpanan data. Anda dapat menentukan parser OCR, parser tata letak, atau parser digital:Untuk menentukan parser OCR untuk PDF:
"documentProcessingConfig": { "defaultParsingConfig": { "ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" } } }
NATIVE_TEXT_BOOLEAN
: Opsional. Tetapkan hanya jika Anda menyerap PDF. Jika disetel ketrue
, tindakan ini akan mengaktifkan pemrosesan teks yang dapat dibaca mesin untuk parser OCR. Defaultnya adalahfalse
.
Untuk menentukan parser tata letak:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": {} } }
Untuk menentukan parser digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Contoh
Contoh berikut menentukan selama pembuatan penyimpanan data bahwa parser OCR akan menjadi parser default. Karena parser OCR hanya berlaku untuk file PDF, semua file PDF yang ditransfer akan diproses oleh parser OCR, dan jenis file lainnya akan diproses oleh parser digital.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1alpha/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"solutionTypes": ["SOLUTION_TYPE_SEARCH"],
"contentConfig": "CONTENT_REQUIRED",
"documentProcessingConfig": {
"defaultParsingConfig": {
"ocrParsingConfig": {
"useNativeText": "false"
}
}
}
}'
Menentukan penggantian parser untuk jenis file
Anda dapat menentukan bahwa jenis file tertentu (PDF, HTML, atau DOCX) harus diuraikan
oleh parser yang berbeda dengan parser default. Untuk melakukannya, sertakan kolom documentProcessingConfig
dalam permintaan pembuatan penyimpanan data Anda dan tentukan parser penggantian. Jika Anda
tidak menentukan parser default, parser digital akan menjadi default.
REST
Untuk menentukan penggantian parser khusus jenis file:
Saat membuat penyimpanan data penelusuran menggunakan API, sertakan
documentProcessingConfig.defaultParsingConfig
dalam permintaan pembuatan penyimpanan data.Anda dapat menentukan parser untuk
pdf
,html
, ataudocx
:"documentProcessingConfig": { "parsingConfigOverrides": { "FILE_TYPE": { PARSING_CONFIG }, } }
Ganti kode berikut:
FILE_TYPE
: Nilai yang diterima adalahpdf
,html
, dandocx
.PARSING_CONFIG
: Tentukan konfigurasi untuk parser yang ingin Anda terapkan ke jenis file. Anda dapat menentukan parser OCR, parser tata letak, atau parser digital:Untuk menentukan parser OCR untuk PDF:
"ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" }
NATIVE_TEXT_BOOLEAN
: Opsional. Tetapkan hanya jika Anda melakukan transfer PDF. Jika disetel ketrue
, setelan ini akan mengaktifkan pemrosesan teks yang dapat dibaca mesin untuk parser OCR. Defaultnya adalahfalse
.
Untuk menentukan parser tata letak:
"layoutParsingConfig": {}
Untuk menentukan parser digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Contoh
Contoh berikut menentukan selama pembuatan penyimpanan data bahwa file PDF harus diproses oleh parser OCR dan file HTML harus diproses oleh parser tata letak. Dalam hal ini, file apa pun selain file PDF dan HTML akan diproses oleh parser digital.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1alpha/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"solutionTypes": ["SOLUTION_TYPE_SEARCH"],
"contentConfig": "CONTENT_REQUIRED",
"documentProcessingConfig": {
"parsingConfigOverrides": {
"pdf": {
"ocrParsingConfig": {
"useNativeText": "false"
},
},
"html": {
"layoutParsingConfig": {}
}
}
}
}'
Mendapatkan dokumen yang diuraikan dalam JSON
Anda bisa mendapatkan dokumen yang diuraikan dalam format JSON dengan memanggil metode getProcessedDocument
dan menentukan PARSED_DOCUMENT
sebagai jenis dokumen yang diproses. Mendapatkan dokumen yang diuraikan dalam JSON dapat membantu jika Anda perlu
mengupload dokumen yang diuraikan di tempat lain atau jika Anda memutuskan untuk mengimpor ulang dokumen
yang diuraikan ke Vertex AI Agent Builder menggunakan fitur bawa dokumen yang diuraikan
Anda sendiri.
REST
Untuk mendapatkan dokumen yang diuraikan dalam JSON, ikuti langkah ini:
Panggil metode
getProcessedDocument
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID:getProcessedDocument?processed_document_type=PARSED_DOCUMENT"
Ganti kode berikut:
PROJECT_ID
: ID project Anda.DATA_STORE_ID
: ID penyimpanan data Anda.DOCUMENT_ID
: ID dokumen yang akan diambil.
Menggunakan dokumen Anda sendiri yang telah diuraikan
Anda dapat mengimpor dokumen tidak terstruktur yang telah diuraikan sebelumnya ke dalam penyimpanan data Vertex AI Search. Misalnya, alih-alih mengimpor dokumen PDF mentah, Anda dapat mengurai PDF sendiri dan mengimpor hasil penguraian sebagai gantinya. Hal ini memungkinkan Anda mengimpor dokumen dengan cara terstruktur, sehingga memastikan bahwa penelusuran dan pembuatan jawaban memiliki informasi tentang tata letak dan elemen dokumen.
Dokumen tidak terstruktur yang diuraikan direpresentasikan oleh JSON yang mendeskripsikan
dokumen tidak terstruktur menggunakan urutan blok teks, tabel, dan daftar. Anda
mengimpor file JSON dengan data dokumen tidak terstruktur yang diuraikan dengan cara yang sama
seperti mengimpor jenis dokumen tidak terstruktur lainnya, seperti PDF. Jika fitur ini diaktifkan, setiap kali file JSON diupload dan diidentifikasi oleh jenis MIME application/json
atau ekstensi .JSON, file tersebut akan diperlakukan sebagai dokumen yang diuraikan.
Untuk mengaktifkan fitur ini dan mengetahui informasi tentang cara menggunakannya, hubungi tim Akun Google Anda.
Memotong dokumen untuk RAG
Secara default, Vertex AI Search dioptimalkan untuk pengambilan dokumen, dengan aplikasi penelusuran Anda menampilkan dokumen seperti PDF atau halaman web dengan setiap hasil penelusuran.
Fitur pengelompokan dokumen tersedia untuk aplikasi penelusuran umum dengan penyimpanan data tidak terstruktur.
Sebagai gantinya, Vertex AI Search dapat dioptimalkan untuk RAG, dengan aplikasi penelusuran Anda secara khusus digunakan untuk meningkatkan output LLM dengan data kustom Anda. Saat pengelompokan dokumen diaktifkan, Vertex AI Search akan membagi dokumen Anda menjadi beberapa bagian. Dalam hasil penelusuran, aplikasi penelusuran Anda dapat menampilkan potongan data yang relevan, bukan dokumen lengkap. Menggunakan data yang dikelompokkan untuk RAG akan meningkatkan relevansi untuk jawaban LLM dan mengurangi beban komputasi untuk LLM.
Untuk menggunakan Vertex AI Search untuk RAG:
Aktifkan pengelompokan dokumen saat Anda membuat penyimpanan data.
Atau, upload bagian Anda sendiri (Pratinjau dengan daftar yang diizinkan) jika Anda telah mengelompokkan dokumen Anda sendiri.
Ambil dan lihat potongan dengan cara berikut:
Batasan
Batasan berikut berlaku untuk pengelompokan:
- Pembagian dokumen tidak dapat diaktifkan atau dinonaktifkan setelah pembuatan penyimpanan data.
- Anda dapat membuat permintaan penelusuran untuk dokumen, bukan bagian dari penyimpanan data dengan pengelompokan dokumen diaktifkan. Namun, penyimpanan data dengan pengelompokan dokumen yang diaktifkan tidak dioptimalkan untuk menampilkan dokumen. Dokumen ditampilkan dengan menggabungkan potongan ke dalam dokumen.
- Jika pengelompokan dokumen diaktifkan, ringkasan penelusuran dan penelusuran dengan tindak lanjut didukung di Pratinjau publik, tetapi tidak didukung sebagai GA.
Opsi pengelompokan dokumen
Bagian ini menjelaskan opsi yang Anda tentukan untuk mengaktifkan pemisahan dokumen.
Selama pembuatan penyimpanan data, aktifkan opsi berikut agar Vertex AI Search dapat mengindeks dokumen Anda sebagai bagian.
Pembagian dokumen yang mempertimbangkan tata letak. Untuk mengaktifkan opsi ini, sertakan kolom
documentProcessingConfig
dalam permintaan pembuatan penyimpanan data dan tentukanChunkingConfig.LayoutBasedChunkingConfig
.Jika pengelompokan dokumen berbasis tata letak diaktifkan, Vertex AI Search akan mendeteksi tata letak dokumen dan memperhitungkannya selama pengelompokan. Hal ini meningkatkan koherensi semantik dan mengurangi derau dalam konten saat digunakan untuk pengambilan dan pembuatan LLM. Semua teks dalam bagian akan berasal dari entity tata letak yang sama, seperti judul, subjudul, dan daftar.
Pemrosesan tata letak. Untuk mengaktifkan opsi ini, tentukan
ParsingConfig.LayoutParsingConfig
selama pembuatan penyimpanan data.Parser tata letak mendeteksi tata letak untuk file PDF, HTML, dan DOCX. Model ini mengidentifikasi elemen seperti blok teks, tabel, daftar, judul, dan header, serta menggunakannya untuk menentukan organisasi dan hierarki dokumen.
Untuk mengetahui selengkapnya tentang penguraian tata letak, lihat Penguraian tata letak.
Mengaktifkan pengelompokan dokumen
Anda dapat mengaktifkan pengelompokan dokumen dengan menyertakan objek documentProcessingConfig
dalam permintaan pembuatan penyimpanan data dan mengaktifkan pengelompokan dokumen berbasis tata letak dan penguraian tata letak.
REST
Untuk mengaktifkan pengelompokan dokumen:
Saat membuat penyimpanan data penelusuran menggunakan API, sertakan objek
documentProcessingConfig.chunkingConfig
dalam permintaan pembuatan penyimpanan data."documentProcessingConfig": { "chunkingConfig": { "layoutBasedChunkingConfig": { "chunkSize": CHUNK_SIZE_LIMIT, "includeAncestorHeadings": HEADINGS_BOOLEAN, } }, "defaultParsingConfig": { "layoutParsingConfig": {} } }
Ganti kode berikut:
CHUNK_SIZE_LIMIT
: Opsional. Batas ukuran token untuk setiap bagian. Nilai defaultnya adalah 500. Nilai yang didukung adalah 100-500 (inklusif).HEADINGS_BOOLEAN
: Opsional. Menentukan apakah judul disertakan dalam setiap bagian. Nilai defaultnya adalahfalse
. Menambahkan judul dan judul di semua tingkat ke bagian dari bagian tengah dokumen dapat membantu mencegah hilangnya konteks dalam pengambilan dan peringkat bagian.
Bring your own chunks (Pratinjau dengan daftar yang diizinkan)
Jika sudah mengelompokkan dokumen Anda sendiri, Anda dapat menguploadnya ke Vertex AI Search, bukan mengaktifkan opsi pengelompokan dokumen.
Membawa bagian Anda sendiri adalah Pratinjau dengan fitur daftar yang diizinkan. Untuk menggunakan fitur ini, hubungi tim akun Google Anda.
Mencantumkan bagian dokumen
Untuk mencantumkan semua bagian untuk dokumen tertentu, panggil metode Chunks.list
.
REST
Untuk membuat daftar potongan untuk dokumen, ikuti langkah ini:
Panggil metode
Chunks.list
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID/chunks"
Ganti kode berikut:
PROJECT_ID
: ID project Anda.DATA_STORE_ID
: ID penyimpanan data Anda.DOCUMENT_ID
: ID dokumen yang akan mencantumkan bagian.
Mendapatkan potongan dalam JSON dari dokumen yang diproses
Anda bisa mendapatkan semua bagian dari dokumen tertentu dalam format JSON dengan memanggil
metode getProcessedDocument
. Mendapatkan potongan dalam JSON dapat membantu jika Anda
perlu mengupload potongan di tempat lain atau jika Anda memutuskan untuk mengimpor ulang potongan ke
Vertex AI Agent Builder menggunakan fitur bring your own chunks.
REST
Untuk mendapatkan potongan JSON untuk dokumen, ikuti langkah ini:
Panggil metode
getProcessedDocument
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID/chunks:getProcessedDocument?processed_document_type=CHUNKED_DOCUMENT"
Ganti kode berikut:
PROJECT_ID
: ID project Anda.DATA_STORE_ID
: ID penyimpanan data Anda.DOCUMENT_ID
: ID dokumen tempat mendapatkan bagian.
Mendapatkan potongan tertentu
Untuk mendapatkan bagian tertentu, panggil metode Chunks.get
.
REST
Untuk mendapatkan bagian tertentu, ikuti langkah ini:
Panggil metode
Chunks.get
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID/chunks/CHUNK_ID"
Ganti kode berikut:
PROJECT_ID
: ID project Anda.DATA_STORE_ID
: ID penyimpanan data Anda.DOCUMENT_ID
: ID dokumen asal potongan.CHUNK_ID
: ID bagian yang akan ditampilkan.
Menampilkan potongan dalam permintaan penelusuran
Setelah mengonfirmasi bahwa data telah dikelompokkan dengan benar, Vertex AI Search dapat menampilkan data yang dikelompokkan dalam hasil penelusurannya.
Respons menampilkan bagian yang relevan dengan kueri penelusuran. Selain itu, Anda dapat memilih untuk menampilkan potongan yang berdekatan yang muncul sebelum dan setelah potongan yang relevan dalam dokumen sumber. Potongan yang berdekatan dapat menambahkan konteks dan akurasi.
REST
Untuk mendapatkan data yang dikelompokkan:
Saat membuat permintaan penelusuran, tentukan
ContentSearchSpec.SearchResultMode
sebagaichunks
.contentSearchSpec": { "searchResultMode": "RESULT_MODE", "chunkSpec": { "numPreviousChunks": NUMBER_OF_PREVIOUS_CHUNKS, "numNextChunks": NUMBER_OF_NEXT_CHUNKS } }
RESULT_MODE
: Menentukan apakah hasil penelusuran ditampilkan sebagai dokumen lengkap atau dalam beberapa bagian. Untuk mendapatkan bagian, penyimpanan data harus mengaktifkan pengelompokan dokumen. Nilai yang diterima adalahdocuments
danchunks
. Jika pengelompokan dokumen diaktifkan untuk penyimpanan data Anda, nilai defaultnya adalahchunks
.NUMBER_OF_PREVIOUS_CHUNKS
: Jumlah bagian yang akan ditampilkan yang langsung mendahului bagian yang relevan. Nilai maksimum yang diizinkan adalah 5.NUMBER_OF_NEXT_CHUNKS
: Jumlah bagian yang akan ditampilkan yang langsung mengikuti bagian yang relevan. Nilai maksimum yang diizinkan adalah 5.
Contoh
Contoh permintaan kueri penelusuran berikut menetapkan SearchResultMode
ke
chunks
, meminta satu bagian sebelumnya dan satu bagian berikutnya, serta membatasi jumlah
hasil ke satu bagian yang relevan menggunakan pageSize
.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1alpha/projects/exampleproject/locations/global/collections/default_collection/dataStores/datastore123/servingConfigs/default_search:search" \
-d '{
"query": "animal",
"pageSize": 1,
"contentSearchSpec": {
"searchResultMode": "CHUNKS",
"chunkSpec": {
"numPreviousChunks": 1,
"numNextChunks": 1
}
}
}'
Contoh berikut menunjukkan respons yang ditampilkan untuk contoh kueri. Respons berisi potongan yang relevan, potongan sebelumnya dan berikutnya, metadata dokumen asli, dan rentang halaman dokumen yang menjadi sumber setiap potongan.
Respons
{ "results": [ { "chunk": { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c17", "id": "c17", "content": "\n# ESS10: Stakeholder Engagement and Information Disclosure\nReaders should also refer to ESS10 and its guidance notes, plus the template available for a stakeholder engagement plan. More detail on stakeholder engagement in projects with risks related to animal health is contained in section 4 below. The type of stakeholders (men and women) that can be engaged by the Borrower as part of the project's environmental and social assessment and project design and implementation are diverse and vary based on the type of intervention. The stakeholders can include: Pastoralists, farmers, herders, women's groups, women farmers, community members, fishermen, youths, etc. Cooperatives members, farmer groups, women's livestock associations, water user associations, community councils, slaughterhouse workers, traders, etc. Veterinarians, para-veterinary professionals, animal health workers, community animal health workers, faculties and students in veterinary colleges, etc. 8 \n# 4. Good Practice in Animal Health Risk Assessment and Management\n\n# Approach\nRisk assessment provides the transparent, adequate and objective evaluation needed by interested parties to make decisions on health-related risks associated with project activities involving live animals. As the ESF requires, it is conducted throughout the project cycle, to provide or indicate likelihood and impact of a given hazard, identify factors that shape the risk, and find proportionate and appropriate management options. The level of risk may be reduced by mitigation measures, such as infrastructure (e.g., diagnostic laboratories, border control posts, quarantine stations), codes of practice (e.g., good animal husbandry practices, on-farm biosecurity, quarantine, vaccination), policies and regulations (e.g., rules for importing live animals, ban on growth hormones and promotors, feed standards, distance required between farms, vaccination), institutional capacity (e.g., veterinary services, surveillance and monitoring), changes in individual behavior (e.g., hygiene, hand washing, care for animals). Annex 2 provides examples of mitigation practices. This list is not an exhaustive one but a compendium of most practiced interventions and activities. The cited measures should take into account social, economic, as well as cultural, gender and occupational aspects, and other factors that may affect the acceptability of mitigation practices by project beneficiaries and other stakeholders. Risk assessment is reviewed and updated through the project cycle (for example to take into account increased trade and travel connectivity between rural and urban settings and how this may affect risks of disease occurrence and/or outbreak). Projects monitor changes in risks (likelihood and impact) b by using data, triggers or indicators. ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 14, "pageEnd": 15 }, "chunkMetadata": { "previousChunks": [ { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c16", "id": "c16", "content": "\n# ESS6: Biodiversity Conservation and Sustainable Management of Living Natural Resources\nThe risks associated with livestock interventions under ESS6 include animal welfare (in relation to housing, transport, and slaughter); diffusion of pathogens from domestic animals to wildlife, with risks for endemic species and biodiversity (e.g., sheep and goat plague in Mongolia affecting the saiga, an endemic species of wild antelope); the introduction of new breeds with potential risk of introducing exotic or new diseases; and the release of new species that are not endemic with competitive advantage, potentially putting endemic species at risk of extinction. Animal welfare relates to how an animal is coping with the conditions in which it lives. An animal is in a good state of welfare if it is healthy, comfortable, well nourished, safe, able to express innate behavior, 7 Good Practice Note - Animal Health and related risks and is not suffering from unpleasant states such as pain, fear or distress. Good animal welfare requires appropriate animal care, disease prevention and veterinary treatment; appropriate shelter, management and nutrition; humane handling, slaughter or culling. The OIE provides standards for animal welfare on farms, during transport and at the time of slaughter, for their welfare and for purposes of disease control, in its Terrestrial and Aquatic Codes. The 2014 IFC Good Practice Note: Improving Animal Welfare in Livestock Operations is another example of practical guidance provided to development practitioners for implementation in investments and operations. Pastoralists rely heavily on livestock as a source of food, income and social status. Emergency projects to restock the herds of pastoralists affected by drought, disease or other natural disaster should pay particular attention to animal welfare (in terms of transport, access to water, feed, and animal health) to avoid potential disease transmission and ensure humane treatment of animals. Restocking also entails assessing the assets of pastoralists and their ability to maintain livestock in good conditions (access to pasture and water, social relationship, technical knowledge, etc.). Pastoralist communities also need to be engaged by the project to determine the type of animals and breed and the minimum herd size to be considered for restocking. \n# Box 5. Safeguarding the welfare of animals and related risks in project activities\nIn Haiti, the RESEPAG project (Relaunching Agriculture: Strengthening Agriculture Public Services) financed housing for goats and provided technical recommendations for improving their welfare, which is critical to avoid the respiratory infections, including pneumonia, that are serious diseases for goats. To prevent these diseases, requires optimal sanitation and air quality in herd housing. This involves ensuring that buildings have adequate ventilation and dust levels are reduced to minimize the opportunity for infection. Good nutrition, water and minerals are also needed to support the goats' immune function. The project paid particular attention to: (i) housing design to ensure good ventilation; (ii) locating housing close to water sources and away from human habitation and noisy areas; (iii) providing mineral blocks for micronutrients; (iv) ensuring availability of drinking water and clean food troughs. ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 13, "pageEnd": 14 } } ], "nextChunks": [ { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c18", "id": "c18", "content": "\n# Scoping of risks\nEarly scoping of risks related to animal health informs decisions to initiate more comprehensive risk assessment according to the type of livestock interventions and activities. It can be based on the following considerations: • • • • Type of livestock interventions supported by the project (such as expansion of feed resources, improvement of animal genetics, construction/upgrading and management of post-farm-gate facilities, etc. – see also Annex 2); Geographic scope and scale of the livestock interventions; Human and animal populations that are likely to be affected (farmers, women, children, domestic animals, wildlife, etc.); and Changes in the project or project context (such as emerging disease outbreak, extreme weather or climatic conditions) that would require a re-assessment of risk levels, mitigation measures and their likely effect on risk reduction. Scenario planning can also help to identify project-specific vulnerabilities, country-wide or locally, and help shape pragmatic analyses that address single or multiple hazards. In this process, some populations may be identified as having disproportionate exposure or vulnerability to certain risks because of occupation, gender, age, cultural or religious affiliation, socio-economic or health status. For example, women and children may be the main caretakers of livestock in the case of 9 Good Practice Note - Animal Health and related risks household farming, which puts them into close contact with animals and animal products. In farms and slaughterhouses, workers and veterinarians are particularly exposed, as they may be in direct contact with sick animals (see Box 2 for an illustration). Fragility, conflict, and violence (FCV) can exacerbate risk, in terms of likelihood and impact. Migrants new to a geographic area may be immunologically naïve to endemic zoonotic diseases or they may inadvertently introduce exotic diseases; and refugees or internally displaced populations may have high population density with limited infrastructure, leaving them vulnerable to disease exposure. Factors such as lack of access to sanitation, hygiene, housing, and health and veterinary services may also affect disease prevalence, contributing to perpetuation of poverty in some populations. Risk assessment should identify populations at risk and prioritize vulnerable populations and circumstances where risks may be increased. It should be noted that activities that seem minor can still have major consequences. See Box 6 for an example illustrating how such small interventions in a project may have large-scale consequences. It highlights the need for risk assessment, even for simple livestock interventions and activities, and how this can help during the project cycle (from concept to implementation). ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 15, "pageEnd": 16 } } ] } } } ], "totalSize": 61, "attributionToken": "jwHwjgoMCICPjbAGEISp2J0BEiQ2NjAzMmZhYS0wMDAwLTJjYzEtYWQxYS1hYzNlYjE0Mzc2MTQiB0dFTkVSSUMqUMLwnhXb7Ygtq8SKLa3Eii3d7Ygtj_enIqOAlyLm7Ygtt7eMLduPmiKN96cijr6dFcXL8xfdj5oi9-yILdSynRWCspoi-eyILYCymiLk7Ygt", "nextPageToken": "ANxYzNzQTMiV2MjFWLhFDZh1SMjNmMtADMwATL5EmZyMDM2YDJaMQv3yagQYAsciPgIwgExEgC", "guidedSearchResult": {}, "summary": {} }