Questa pagina descrive come utilizzare Vertex AI Search per analizzare e suddividere i documenti.
Puoi configurare le impostazioni di analisi o suddivisione in blocchi per:
Specifica in che modo Vertex AI Search analizza i contenuti. Puoi specificare come analizzare i contenuti non strutturati quando li carichi in Vertex AI Search. Vertex AI Search fornisce un parser digitale, un parser OCR per i PDF e un parser del layout. Puoi anche utilizzare i tuoi documenti analizzati. Il parser del layout è consigliato quando hai contenuti avanzati e elementi strutturali come sezioni, paragrafi, tabelle, elenchi da estrarre dai documenti per la ricerca e la generazione di risposte.
Consulta la sezione Migliorare il rilevamento dei contenuti con l'analisi.
Utilizza Vertex AI Search per la generazione basata su recupero (RAG). Migliora l'output degli LLM con i dati pertinenti che hai caricato nell'app Vertex AI Search. Per farlo, attiva il suddivisione dei documenti, che indicizza i dati come chunk per migliorare la pertinenza e ridurre il carico computazionale per gli LLM. attiveremo anche il parser del layout, che rileva elementi come intestazioni ed elenchi, per migliorare il modo in cui sono a blocchi.
Per informazioni sul chunking per RAG e su come restituire chunk nella ricerca consulta la sezione Documenti Chunk per RAG.
Analizza i documenti
Puoi controllare l'analisi dei contenuti nei seguenti modi:
Specifica il tipo di parser. Puoi specificare il tipo di analisi da applicare in base al tipo di file:
- Parser digitale. Il parser digitale è attivo per impostazione predefinita per tutti i tipi di file a meno che non venga specificato un tipo di parser diverso. L'analizzatore digitale elabora i documenti importati se non è specificato nessun altro analizzatore predefinito per il data store o se l'analizzatore specificato non supporta il tipo di file di un documento importato.
- Analisi OCR per i PDF. Se prevedi di caricare PDF scansionati o PDF con testo all'interno delle immagini, puoi attivare l'analizzatore sintattico OCR per migliorare l'indicizzazione dei PDF. Consulta la sezione Parser OCR per i PDF di questo documento.
- Analizzatore sintattico del layout. Attiva l'analizzatore del layout per i file HTML, PDF o DOCX se prevedi di utilizzare Vertex AI Search per RAG. Per informazioni su questo parser e su come attivarlo, consulta la sezione Eseguire il chunking dei documenti per RAG.
Utilizza il tuo documento analizzato. (Visualizza l'anteprima con la lista consentita) Se l'hai già fatto, analizzato i tuoi documenti non strutturati, puoi importare i contenuti pre-analizzati in Vertex AI Search. Consulta la sezione Utilizza i tuoi dati analizzati documento.
Confronto della disponibilità dei parser
La seguente tabella elenca la disponibilità di ogni parser in base al file di documento e mostra gli elementi che ogni parser è in grado di rilevare e analizzare.
Tipo di file | Parser digitale | Analizza OCR | Parser layout |
---|---|---|---|
HTML | Rileva gli elementi paragrafo | N/D | Rileva gli elementi di paragrafo, tabella, elenco, titolo e intestazione |
Rileva gli elementi di paragrafo (testo digitale) | Rileva gli elementi del paragrafo | Rileva gli elementi di paragrafo, tabella, titolo e intestazione | |
DOCX (anteprima) | Rileva gli elementi paragrafo | N/D | Rileva elementi di paragrafo, tabella, elenco, titolo e intestazione |
PPTX (anteprima) | Rileva gli elementi paragrafo | N/D | Rileva elementi di paragrafo, tabella, elenco, titolo e intestazione |
TXT | Rileva gli elementi paragrafo | N/D | Rileva elementi di paragrafo, tabella, titolo e intestazione |
XLSX (anteprima) | Rileva gli elementi del paragrafo | N/D | Rileva elementi di paragrafo, tabella, titolo e intestazione |
Parser digitale
Il parser digitale estrae testo leggibile dal computer dai documenti. Rileva i blocchi di testo, ma non gli elementi del documento come tabelle, elenchi e intestazioni.
Il parser digitale viene utilizzato come predefinito se non ne specifichi un altro come predefinito durante la creazione dell'archivio dati o se un parser specificato non supporta un tipo di file in fase di caricamento.
Parser OCR per i PDF
Se hai PDF non disponibili per la ricerca (PDF scansionati o PDF con testo all'interno di immagini, come le infografiche), Google consiglia di attivare l'elaborazione del riconoscimento ottico dei caratteri (OCR) durante la creazione dell'archivio dati. In questo modo, Vertex AI Search può estrarre gli elementi del paragrafo.
Se hai PDF disponibili per la ricerca o altri formati digitali composti principalmente da
di testo leggibile dal computer, solitamente non è necessario utilizzare l'analizzatore sintattico OCR. Tuttavia, se hai PDF che contengono sia testo non disponibile per la ricerca (ad esempio testo scansionato o infografiche) sia testo leggibile dalla macchina, puoi impostare il campo useNativeText
su true quando specifichi l'analizzatore OCR. In questo caso, il testo leggibile dalla macchina viene unito agli output di analisi OCR per migliorare la qualità dell'estrazione del testo.
Le funzionalità di elaborazione OCR sono disponibili per le app di ricerca generica con datastore non strutturati.
Il processore OCR può analizzare un massimo di 500 pagine per file PDF. Per i PDF più lunghi, il processore OCR analizza le prime 500 pagine e l'analizzatore sintattico predefinito analizza il resto.
Parser layout
L'analisi del layout consente a Vertex AI Search di rilevare i layout per PDF e HTML. Il supporto dei file DOCX è in anteprima. Vertex AI Search può quindi identificare elementi dei contenuti come blocchi di testo, tabelle, elenchi e come titoli e intestazioni, che potrai usare per definire l'organizzazione e gerarchia di un documento.
Puoi attivare l'analisi del layout per tutti i tipi di file o specificare per quali tipi di file attivarla. L'analizzatore del layout rileva elementi di contenuto come paragrafi, tabelle, elenchi ed elementi strutturali come titoli, intestazioni, intestazioni e note a piè di pagina.
L'analisi del layout è disponibile solo quando si utilizza il frazionamento dei documenti per RAG. Quando il suddivisione dei documenti è attiva, Vertex AI Search suddivide i documenti in blocchi al momento dell'importazione e può restituirli come blocchi. Rilevamento in corso... il layout dei documenti consente il chunking basato sui contenuti e migliora la ricerca e le risposte relativa agli elementi dei documenti. Per saperne di più sul suddivisione dei documenti per RAG, consulta Suddividere i documenti per RAG.
L'analizzatore di layout supporta una dimensione massima del file PDF di 40 MB.
Specifica un parser predefinito
Includendo l'oggetto documentProcessingConfig
Quando crei un datastore, puoi specificare un parser predefinito per i dati
. Se non includi documentProcessingConfig.defaultParsingConfig
, viene utilizzato il parser digitale. Il parser digitale viene utilizzato anche se l'analizzatore sintattico specificato
non è disponibile per un tipo di file.
REST
Per specificare un parser predefinito:
Quando crei un datastore di ricerca utilizzando l'API, include
documentProcessingConfig.defaultParsingConfig
nella richiesta di creazione del datastore. Puoi specificare l'analizzatore sintattico OCR, l'analizzatore sintattico del layout o parser digitale:Per specificare l'interprete OCR per i PDF:
"documentProcessingConfig": { "defaultParsingConfig": { "ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" } } }
NATIVE_TEXT_BOOLEAN
: facoltativo. Imposta solo se importi i PDF. Se il criterio viene impostato sutrue
, viene attivato il testo leggibile dal computer per l'analizzatore sintattico OCR. Il valore predefinito èfalse
.
Per specificare il parser del layout:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": {} } }
Per specificare l'analizzatore digitale:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Esempio
L'esempio seguente specifica durante la creazione dello spazio di archiviazione dei dati che l'interprete OCR sarà quello predefinito. Poiché l'analizzatore sintattico OCR si applica solo ai file PDF, tutti i file PDF importati verranno elaborati dall'analizzatore sintattico OCR ed eventuali verranno elaborati altri tipi di file dall'analizzatore sintattico digitale.
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"
}
}
}
}'
Specifica gli override dei parser per i tipi di file
Puoi specificare che un determinato tipo di file (PDF, HTML o DOCX) debba essere analizzato da un parser diverso da quello predefinito. A tale scopo, includi il campo
documentProcessingConfig
nella richiesta di creazione del datastore e specifica il parser di override. Se non specifichi un parser predefinito, il parser digitale è quello predefinito.
REST
Per specificare una sostituzione per l'analizzatore sintattico specifico per tipo di file:
Quando crei un datastore di ricerca utilizzando l'API, include
documentProcessingConfig.defaultParsingConfig
nella richiesta di creazione del datastore.Puoi specificare un parser per
pdf
,html
odocx
:"documentProcessingConfig": { "parsingConfigOverrides": { "FILE_TYPE": { PARSING_CONFIG }, } }
Sostituisci quanto segue:
FILE_TYPE
: i valori accettati sonopdf
,html
edocx
.PARSING_CONFIG
: specifica la configurazione del parser che vuoi applicare al tipo di file. Puoi specificare l'analisi OCR, l'analisi del layout o l'analisi digitale:Per specificare l'interprete OCR per i PDF:
"ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" }
NATIVE_TEXT_BOOLEAN
: facoltativo. Imposta solo se l'importazione di PDF. Se impostato sutrue
, attiva l'elaborazione del testo in formato leggibile dalla macchina per l'analizzatore OCR. Il valore predefinito èfalse
.
Per specificare il parser del layout:
"layoutParsingConfig": {}
Per specificare l'analizzatore digitale:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Esempio
L'esempio seguente specifica durante la creazione dello spazio di archiviazione dei dati che i file PDF devono essere elaborati dall'interprete OCR e che i file HTML devono essere elaborati dall'interprete del layout. In questo caso, tutti i file diversi da PDF e HTML verranno elaborati dall'analizzatore sintattico digitale.
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": {}
}
}
}
}'
Ottenere i documenti analizzati in JSON
Puoi ottenere un documento analizzato in formato JSON chiamando il metodo
getProcessedDocument
e specifica PARSED_DOCUMENT
come metodo elaborato
tipo di documento. Ottenere i documenti analizzati in formato JSON può essere utile se devi caricare il documento analizzato altrove o se decidi di importare nuovamente i documenti analizzati in Vertex AI Agent Builder utilizzando la funzionalità porta il tuo documento analizzato.
REST
Per ottenere i documenti analizzati in JSON:
Chiama il metodo
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto.DATA_STORE_ID
: l'ID del datastore.DOCUMENT_ID
: l'ID del documento da recuperare.
Importa il tuo documento analizzato
Puoi importare documenti non strutturati pre-analizzati nei datastore di Vertex AI Search. Ad esempio, anziché importare un documento PDF non elaborato, puoi analizzare autonomamente il PDF e importare il risultato dell'analisi. In questo modo puoi importare i documenti in modo strutturato, assicurandoti che la ricerca e la generazione di risposte dispongano di informazioni sul layout e sugli elementi del documento.
Un documento analizzato e non strutturato è rappresentato da un file JSON che descrive
documento non strutturato utilizzando una sequenza di blocchi di testo, tabelle ed elenchi. Tu
importa i file JSON con i dati dei documenti non strutturati analizzati nello stesso modo
di importare altri tipi di documenti non strutturati, come i PDF. Quando questa funzionalità è attivata, ogni volta che un file JSON viene caricato e identificato da un tipo MIME application/json
o da un'estensione .JSON, viene trattato come un documento analizzato.
Per attivare questa funzione e per informazioni su come utilizzarla, contatta il tuo Il team degli Account Google.
Suddividi i documenti per RAG
Per impostazione predefinita, Vertex AI Search è ottimizzato per il recupero dei documenti, dove la tua app di ricerca restituisce un documento, come un PDF o una pagina web, a ogni ricerca o il risultato finale.
Le funzionalità di chunking dei documenti sono disponibili per le app di ricerca generiche con datastore non strutturati.
Vertex AI Search può invece essere ottimizzato per la RAG, in cui la tua app di ricerca viene utilizzata principalmente per aumentare l'output dell'LLM con i tuoi dati personalizzati. Quando il suddivisione dei documenti è attiva, Vertex AI Search suddivide i documenti in blocchi. Nei risultati di ricerca, l'app di ricerca può restituire blocchi di dati pertinenti anziché documenti interi. L'utilizzo di dati divisi per RAG aumenta la pertinenza per gli LLM rispondono e riducono il carico computazionale per gli LLM.
Per utilizzare Vertex AI Search per RAG:
Attiva la suddivisione dei documenti quando crei i dati .
In alternativa, carica i tuoi chunk (anteprima con lista consentita) se hai già suddiviso i tuoi documenti.
Recupera e visualizza i blocchi nei seguenti modi:
Limitazioni
Al chunking si applicano le seguenti limitazioni:
- Il chunking dei documenti non può essere attivato o disattivato dopo la creazione del datastore.
- Puoi effettuare richieste di ricerca di documenti anziché di blocchi da un datastore con la suddivisione dei documenti attivata. Tuttavia, i datastore con chunking dei documenti non sono ottimizzate per la restituzione dei documenti. I documenti vengono restituiti da aggregando i blocchi in documenti.
- Quando l'aggregazione dei documenti è attiva, i riepiloghi della ricerca e la ricerca con follow-up sono supportati in Anteprima pubblica, ma non come release generale.
Opzioni di suddivisione dei documenti
Questa sezione descrive le opzioni da specificare per attivare il suddivisione dei documenti.
Durante la creazione del datastore, attiva le seguenti opzioni in modo che Vertex AI Search può indicizzare i documenti come blocchi.
Chunking dei documenti in base al layout. Per attivare questa opzione, includi il campo
documentProcessingConfig
nella richiesta di creazione del datastore e specificaChunkingConfig.LayoutBasedChunkingConfig
.Quando il chunking dei documenti sensibile al layout è attivato, Vertex AI Search rileva il layout di un documento e ne tiene conto durante il chunking. In questo modo, si migliora la coerenza semantica e si riduce il rumore nei contenuti quando vengono utilizzati per il recupero e la generazione di LLM. Tutto il testo di un chunk proviene dalla stessa entità di layout, ad esempio intestazioni, sottotitoli e elenchi.
Analisi del layout. Per attivare questa opzione, specifica
ParsingConfig.LayoutParsingConfig
durante la creazione del datastore.L'analizzatore di layout rileva i layout per i file PDF, HTML e DOCX. Identifica come blocchi di testo, tabelle, elenchi, titoli e intestazioni, e li utilizza. per definire l'organizzazione e la gerarchia di un documento.
Per saperne di più sull'analisi del layout, consulta Analisi del layout.
Attiva la suddivisione dei documenti
Puoi attivare la suddivisione dei documenti includendo
l'oggetto documentProcessingConfig
nella richiesta di creazione del datastore e attivando l'opzione
chunking e dell'analisi del layout.
REST
Per attivare la suddivisione dei documenti:
Quando crei un datastore di ricerca utilizzando l'API, includere l'oggetto
documentProcessingConfig.chunkingConfig
nella richiesta di creazione del datastore."documentProcessingConfig": { "chunkingConfig": { "layoutBasedChunkingConfig": { "chunkSize": CHUNK_SIZE_LIMIT, "includeAncestorHeadings": HEADINGS_BOOLEAN, } }, "defaultParsingConfig": { "layoutParsingConfig": {} } }
Sostituisci quanto segue:
CHUNK_SIZE_LIMIT
: facoltativo. Il limite per le dimensioni del token in ogni blocco. Il valore predefinito è 500. I valori supportati sono compresi tra 100 e 500.HEADINGS_BOOLEAN
: facoltativo. Determina se le intestazioni sono incluse in ogni chunk. Il valore predefinito èfalse
. Aggiunta del titolo e intestazioni a tutti i livelli fino a chunk dal centro del documento aiutano a prevenire la perdita di contesto nel recupero e nel ranking dei blocchi.
Integrazione dei tuoi blocchi (anteprima con lista consentita)
Se hai già suddiviso i documenti, puoi caricarli su Vertex AI Search anziché attivare le opzioni di chunking dei documenti.
L'aggiunta dei tuoi blocchi è una funzionalità di anteprima con lista consentita. Per usare questa contatta il team degli Account Google.
Elenco di blocchi di un documento
Per elencare tutti i blocchi per un documento specifico, chiama il metodo Chunks.list
.
REST
Per elencare i blocchi di un documento, segui questo passaggio:
Chiama il metodo
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto.DATA_STORE_ID
: l'ID del datastore.DOCUMENT_ID
: l'ID del documento da cui elencare i blocchi.
Ottieni blocchi in JSON da un documento elaborato
Puoi ottenere tutti i blocchi da un documento specifico in formato JSON chiamando
il metodo getProcessedDocument
. Ottenere i chunk in JSON può essere utile se devi caricarli altrove o se decidi di importarli di nuovo in Vertex AI Agent Builder utilizzando la funzionalità porta i tuoi chunk.
REST
Per ottenere i chunk JSON di un documento:
Chiama il metodo
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto.DATA_STORE_ID
: l'ID del tuo datastore.DOCUMENT_ID
: l'ID del documento da cui recuperare i chunk.
Recuperare chunk specifici
Per ottenere un blocco specifico, chiama il metodo Chunks.get
.
REST
Per ottenere un blocco specifico, segui questo passaggio:
Chiama il metodo
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto.DATA_STORE_ID
: l'ID del tuo datastore.DOCUMENT_ID
: l'ID del documento da cui proviene il chunk.CHUNK_ID
: l'ID del blocco da restituire.
Restituisci blocchi nelle richieste di ricerca
Dopo aver verificato che i dati sono stati suddivisi correttamente, Vertex AI Search può restituire i dati suddivisi nei risultati di ricerca.
La risposta restituisce un frammento pertinente alla query di ricerca. Inoltre, puoi scegliere di restituire i chunk adiacenti che appaiono prima e dopo il chunk pertinente nel documento di origine. I chunk adiacenti possono aggiungere contesto e accuratezza.
REST
Per ottenere dati suddivisi:
Quando effettui una richiesta di ricerca, specifica
ContentSearchSpec.SearchResultMode
sotto forma dichunks
.contentSearchSpec": { "searchResultMode": "RESULT_MODE", "chunkSpec": { "numPreviousChunks": NUMBER_OF_PREVIOUS_CHUNKS, "numNextChunks": NUMBER_OF_NEXT_CHUNKS } }
RESULT_MODE
: determina se vengono restituiti i risultati di ricerca come documenti interi o in blocchi. Per ottenere i chunk, il datastore deve avere attivato il chunking dei documenti. I valori accettati sonodocuments
echunks
. Se il chunking dei documenti è attivo per il tuo data store, il valore predefinito èchunks
.NUMBER_OF_PREVIOUS_CHUNKS
: il numero di chunk da restituire che hanno preceduto immediatamente il chunk pertinente. Il valore massimo consentito è 5.NUMBER_OF_NEXT_CHUNKS
: il numero di blocchi da restituire che seguono immediatamente la porzione pertinente. Il valore massimo consentito è 5.
Esempio
Il seguente esempio di richiesta di query di ricerca imposta SearchResultMode
su
chunks
, richiede un blocco precedente e uno successivo e limita il numero
di risultati in un singolo blocco pertinente utilizzando 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
}
}
}'
L'esempio seguente mostra la risposta restituita per la query di esempio. La risposta contiene i blocchi pertinenti, i blocchi precedente e successivo, metadati del documento originale e l'intervallo di pagine del documento in cui da cui deriva.
Risposta
{ "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": {} }