Esta página descreve como usar a Pesquisa do Vertex AI para analisar e dividir os seus documentos.
Pode configurar as definições de análise ou divisão em partes para:
Especifique como o Vertex AI Search analisa o conteúdo. Pode especificar como analisar conteúdo não estruturado quando o carrega para o Vertex AI Search. O Vertex AI Search oferece um analisador digital, um analisador de OCR para PDFs e um analisador de esquemas. Também pode trazer os seus próprios documentos analisados. O analisador de esquemas é recomendado quando tem conteúdo formatado e elementos estruturais, como secções, parágrafos, tabelas, imagens e listas, a serem extraídos de documentos para a pesquisa e a geração de respostas.
Consulte o artigo Melhore a deteção de conteúdo com a análise.
Use o Vertex AI Search para a geração aumentada de recuperação (RAG). Melhore o resultado dos GMLs com dados relevantes que carregou para a sua app Vertex AI Search. Para tal, ative a divisão de documentos em partes, que indexa os seus dados como partes para melhorar a relevância e diminuir a carga computacional dos GMLs. Também ativa a análise sintática de esquemas, que deteta elementos de documentos, como cabeçalhos e listas, para melhorar a forma como os documentos são divididos em partes.
Para obter informações sobre a divisão em partes para a RAG e como devolver partes em pedidos de pesquisa, consulte o artigo Divida documentos em partes para a RAG.
Analise documentos
Pode controlar a análise de conteúdo das seguintes formas:
Especifique o tipo de analisador. Pode especificar o tipo de análise a aplicar consoante o tipo de ficheiro:
- Analisador digital. O analisador digital está ativado por predefinição para todos os tipos de ficheiros, a menos que seja especificado um tipo de analisador diferente. O analisador digital processa os documentos carregados se não for especificado outro analisador predefinido para o arquivo de dados ou se o analisador especificado não suportar o tipo de ficheiro de um documento carregado.
- Análise de OCR para PDFs. Se planeia carregar PDFs digitalizados ou PDFs com texto dentro de imagens, pode ativar o analisador OCR para melhorar a indexação de PDFs. Consulte a secção Analisador de OCR para PDFs deste documento.
- Analisador de esquemas. Ative o analisador de esquemas para ficheiros HTML, PDF ou DOCX se planear usar a Vertex AI Search para RAG. Consulte o artigo Divida documentos em partes para a RAG para obter informações sobre este analisador e como o ativar.
Traga o seu próprio documento analisado. (Pré-visualização com lista de autorizações) Se já tiver analisado os seus documentos não estruturados, pode importar esse conteúdo pré-analisado para o Vertex AI Search. Consulte o artigo Traga o seu próprio documento analisado.
Comparação da disponibilidade do analisador
A tabela seguinte apresenta a disponibilidade de cada analisador por tipo de ficheiro de documento e mostra os elementos que cada analisador pode detetar e analisar.
Tipo de ficheiro | Analisador digital | Analisador de OCR | Analisador de esquemas |
---|---|---|---|
HTML | Deteta elementos de parágrafos | Não aplicável | Deteta elementos de parágrafos, tabelas, imagens, listas, títulos e cabeçalhos |
Deteta elementos de parágrafos (texto digital) | Deteta elementos de parágrafos | Deteta elementos de parágrafo, tabela, imagem, título e cabeçalho | |
DOCX (Pré-visualizar) | Deteta elementos de parágrafos | Não aplicável | Deteta elementos de parágrafo, tabela, imagem, lista, título e cabeçalho |
PPTX (pré-visualização) | Deteta elementos de parágrafos | Não aplicável | Deteta elementos de parágrafo, tabela, imagem, lista, título e cabeçalho |
TXT | Deteta elementos de parágrafos | Não aplicável | Não aplicável |
XLSX (pré-visualização) | Deteta elementos de parágrafos | Não aplicável | Deteta elementos de parágrafos, tabelas, títulos e cabeçalhos |
Analisador digital
O analisador digital extrai texto legível por máquina de documentos. Deteta blocos de texto, mas não elementos de documentos, como tabelas, listas e cabeçalhos.
O analisador digital é usado como predefinição se não especificar um analisador diferente como predefinição durante a criação do arquivo de dados ou se um analisador especificado não suportar um tipo de ficheiro que está a ser carregado.
Analisador de OCR para PDFs
Se tiver PDFs que não podem ser pesquisados (PDFs digitalizados ou PDFs com texto em imagens, como infografias), a Google recomenda que ative o processamento de reconhecimento ótico de carateres (OCR) durante a criação do arquivo de dados. Isto permite que a Pesquisa da Vertex AI extraia elementos de parágrafos.
Se tiver PDFs pesquisáveis ou outros formatos digitais compostos principalmente por texto legível por máquina, normalmente, não precisa de usar o analisador de OCR. No entanto, se tiver PDFs com texto não pesquisável (como texto digitalizado ou infografias) e texto legível por máquina, pode definir o campo useNativeText
como verdadeiro quando especificar o analisador OCR. Neste caso, o texto legível por máquina é
unido aos resultados da análise OCR para melhorar a qualidade da extração de texto.
As funcionalidades de processamento de OCR estão disponíveis para apps de pesquisa personalizadas com arquivos de dados não estruturados.
O processador de OCR pode analisar as primeiras 500 páginas de um ficheiro PDF. As páginas que excedem o limite de 500 não são processadas.
Analisador de esquemas
A análise da disposição permite que as aplicações de IA detetem disposições para ficheiros PDF, HTML, DOCX, PPTX e XLSX. As aplicações de IA podem, em seguida, identificar elementos de conteúdo, como blocos de texto, tabelas, listas e elementos estruturais, como títulos e cabeçalhos, e usá-los para definir a organização e a hierarquia de um documento.
Pode ativar a análise da disposição para todos os tipos de ficheiros ou especificar para que tipos de ficheiros a quer ativar. O analisador sintático de esquemas deteta elementos de conteúdo, como parágrafos, tabelas, listas e elementos estruturais, como títulos, cabeçalhos, cabeçalhos e rodapés.
O analisador de esquemas só está disponível quando usa a divisão de documentos para a RAG. Quando a divisão de documentos em fragmentos está ativada, o Vertex AI Search divide os documentos em fragmentos no momento do carregamento e pode devolver documentos como fragmentos. A deteção do esquema do documento permite a divisão em blocos sensíveis ao conteúdo e melhora a pesquisa e a geração de respostas relacionadas com elementos do documento. Para mais informações sobre a divisão de documentos em partes para a RAG, consulte o artigo Divida documentos em partes para a RAG.
Anotação de imagens (funcionalidade de pré-visualização)
Se a anotação de imagens estiver ativada, quando uma imagem é detetada num documento de origem, é atribuída uma descrição (anotação) da imagem e a própria imagem a um fragmento. A anotação determina se o fragmento deve ser devolvido num resultado da pesquisa. Se for gerada uma resposta, a anotação pode ser uma fonte para a resposta.
O analisador sintático de esquemas pode detetar os seguintes tipos de imagens: BMP, GIF, JPEG, PNG e TIFF.
Anotação de tabelas
Se a anotação de tabelas estiver ativada, quando é detetada uma tabela num documento de origem, é atribuída uma descrição (anotação) da tabela e da própria tabela a um fragmento. A anotação determina se o fragmento deve ser devolvido num resultado da pesquisa. Se for gerada uma resposta, a anotação pode ser uma fonte para a resposta.
Exclua conteúdo HTML
Quando usa o analisador de esquemas para documentos HTML, pode excluir partes específicas do conteúdo HTML do processamento. Para melhorar a qualidade dos dados para aplicações de pesquisa e aplicações RAG, pode excluir texto padrão ou secções como menus de navegação, cabeçalhos, rodapés ou barras laterais.
O layoutParsingConfig
fornece os seguintes campos
para este fim:
excludeHtmlElements
: lista de etiquetas HTML a excluir. O conteúdo dentro destas etiquetas é excluído.excludeHtmlClasses
: lista de atributos de classe HTML a excluir. Os elementos HTML que contêm estes atributos de classe, juntamente com o respetivo conteúdo, são excluídos.excludeHtmlIds
: lista de atributos de ID de elementos HTML a excluir. Os elementos HTML com estes atributos ID, juntamente com o respetivo conteúdo, são excluídos.
Especifique um analisador predefinido
Ao incluir o objeto documentProcessingConfig
quando cria um arquivo de dados, pode especificar um analisador predefinido para esse arquivo de dados. Se não incluir documentProcessingConfig.defaultParsingConfig
, é usado o analisador digital. O analisador digital também é usado se o analisador especificado não estiver disponível para um tipo de ficheiro.
REST
Para especificar um analisador predefinido:
Quando criar um arquivo de dados de pesquisa através da API, inclua
documentProcessingConfig.defaultParsingConfig
no pedido de criação do arquivo de dados. Pode especificar o analisador de OCR, o analisador de esquema ou o analisador digital:Para especificar o analisador de OCR para PDFs:
"documentProcessingConfig": { "defaultParsingConfig": { "ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" } } }
NATIVE_TEXT_BOOLEAN
é opcional. Defina-o apenas se estiver a carregar PDFs. Se estiver definida comotrue
, esta opção ativa o processamento de texto legível por máquina para o analisador de OCR. A predefinição éfalse
.
Para especificar o analisador de esquemas:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": {} } }
Para especificar o analisador digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Consola
Quando cria um arquivo de dados de pesquisa através da consola, pode especificar o analisador predefinido.
Exemplo
O exemplo seguinte especifica, durante a criação do armazenamento de dados, que o analisador de OCR vai ser o analisador predefinido. Uma vez que o analisador de OCR só se aplica a ficheiros PDF, todos os ficheiros PDF carregados são processados pelo analisador de OCR, e todos os outros tipos de ficheiros são processados pelo analisador 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/v1/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"
}
}
}
}'
Especifique substituições do analisador para tipos de ficheiros
Pode especificar que um determinado tipo de ficheiro (PDF, HTML ou DOCX) deve ser analisado por um analisador diferente do analisador predefinido. Para tal, inclua o campo documentProcessingConfig
no seu pedido de criação do armazenamento de dados e especifique o analisador de substituição. Se não especificar um analisador predefinido, o analisador digital é o predefinido.
REST
Para especificar uma substituição do analisador específica do tipo de ficheiro:
Quando criar um arquivo de dados de pesquisa através da API, inclua
documentProcessingConfig.defaultParsingConfig
no pedido de criação do arquivo de dados.Pode especificar um analisador para
pdf
,html
oudocx
:"documentProcessingConfig": { "parsingConfigOverrides": { "FILE_TYPE": { PARSING_CONFIG }, } }
Substitua o seguinte:
FILE_TYPE
: os valores aceites sãopdf
,html
edocx
.PARSING_CONFIG
: especifique a configuração do analisador que quer aplicar ao tipo de ficheiro. Pode especificar o analisador de OCR, o analisador de esquema ou o analisador digital:Para especificar o analisador de OCR para PDFs:
"ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" }
NATIVE_TEXT_BOOLEAN
: opcional. Defina apenas se estiver a carregar PDFs. Se estiver definida comotrue
, esta opção ativa o processamento de texto legível por máquina para o analisador de OCR. A predefinição éfalse
.
Para especificar o analisador de esquemas:
"layoutParsingConfig": {}
Para especificar o analisador digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Consola
Quando cria um arquivo de dados de pesquisa através da consola, pode especificar substituições do analisador para tipos de ficheiros específicos.
Exemplo
O exemplo seguinte especifica, durante a criação do armazenamento de dados, que os ficheiros PDF devem ser processados pelo analisador de OCR e que os ficheiros HTML devem ser processados pelo analisador de esquemas. Neste caso, todos os ficheiros que não sejam PDF nem HTML são processados pelo analisador 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/v1/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": {}
}
}
}
}'
Edite a análise de documentos para arquivos de dados existentes
Se já tiver um arquivo de dados, pode alterar o analisador predefinido e adicionar exceções de formato de ficheiro. No entanto, as definições do analisador atualizadas aplicam-se apenas a novos documentos importados para o repositório de dados. Os documentos já existentes no arquivo de dados não são analisados novamente com as novas definições.
Para alterar as definições de análise de documentos de um arquivo de dados, faça o seguinte:
Na Google Cloud consola, aceda à página Aplicações de IA.
No menu de navegação, clique em Armazenamentos de dados.
Na coluna Nome, clique no arquivo de dados que quer editar.
No separador Configuração de processamento, edite as definições de Análise de documentos.
Não é possível alterar as definições de divisão de documentos. Se o armazenamento de dados não tiver a divisão de documentos ativada, não pode escolher o analisador de esquemas.
Clique em Enviar.
Configure o analisador de esquemas para excluir conteúdo HTML
Pode configurar o analisador de esquemas para
excluir conteúdo HTML especificando
excludeHtmlElements
, excludeHtmlClasses
ou excludeHtmlIds
em
documentProcessingConfig.defaultParsingConfig.layoutParsingConfig
.
REST
Para excluir determinado conteúdo HTML do processamento pelo analisador de esquemas, siga estes passos:
Quando criar um arquivo de dados de pesquisa através da API, inclua
documentProcessingConfig.defaultParsingConfig.layoutParsingConfig
no pedido de criação do arquivo de dados.Para excluir tipos de etiquetas HTML específicos, use:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlElements": ["HTML_TAG_1","HTML_TAG_2","HTML_TAG_N"] } } }
Substitua as variáveis HTML_TAG pelos nomes das etiquetas, por exemplo,
nav
efooter
.Para excluir atributos de classe de elementos HTML específicos, use:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlClasses": ["HTML_CLASS_1","HTML_CLASS_2","HTML_CLASS_N"] } } }
Substitua as variáveis HTML_CLASS por atributos de classe, por exemplo,
overlay
escreenreader
.Para excluir atributos ID de elementos HTML específicos, use:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlIds": ["HTML_ID_1","HTML_ID_2","HTML_ID_N"] } } }
Substitua as variáveis HTML_ID por atributos de ID, por exemplo,
cookie-banner
.
Exemplo
Este exemplo especifica que, quando os ficheiros HTML são processados pelo analisador de esquemas, o analisador ignora o seguinte:
Etiquetas de elementos HTML:
header
,footer
,nav
easide
Atributos de classe de elementos HTML do tipo
overlays
escreenreader
Quaisquer elementos com o ID do atributo
cookie-banner
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/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123&createAdvancedSiteSearch=true" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"contentConfig": "PUBLIC_WEBSITE",
"documentProcessingConfig": {
"chunkingConfig": {
"layoutBasedChunkingConfig": {}
},
"defaultParsingConfig": {
"layoutParsingConfig": {
"excludeHtmlElements": ["header", "footer", "nav", "aside"],
"excludeHtmlClasses": ["overlays", "screenreader"],
"excludeHtmlIds": ["cookie-banner"]
}
}
}
}'
Receba documentos analisados em JSON
Pode obter um documento analisado no formato JSON chamando o método getProcessedDocument
e especificando PARSED_DOCUMENT
como o tipo de documento processado. A obtenção de documentos analisados em JSON pode ser útil se precisar de carregar o documento analisado noutro local ou se decidir voltar a importar documentos analisados para aplicações de IA através da funcionalidade traga o seu próprio documento analisado.
REST
Para receber documentos analisados em JSON, siga este passo:
Chame o método
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"
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto.DATA_STORE_ID
: o ID do seu armazenamento de dados.DOCUMENT_ID
: o ID do documento a obter.
Inclua o seu próprio documento analisado
Pode importar documentos não estruturados e pré-analisados para os arquivos de dados do Vertex AI Search. Por exemplo, em vez de importar um documento PDF não processado, pode analisar o PDF e importar o resultado da análise. Isto permite-lhe importar os seus documentos de forma estruturada, garantindo que a pesquisa e a geração de respostas têm informações sobre o esquema e os elementos do documento.
Um documento não estruturado analisado é representado por JSON que descreve o documento não estruturado através de uma sequência de blocos de texto, tabelas e listas. Pode importar ficheiros JSON com os dados de documentos não estruturados analisados da mesma forma que importa outros tipos de documentos não estruturados, como PDFs. Quando esta funcionalidade está ativada, sempre que um ficheiro JSON é carregado e identificado por um tipo MIME application/json
ou uma extensão .JSON, é tratado como um documento analisado.
Para ativar esta funcionalidade e obter informações sobre como a usar, contacte a Equipa das Contas Google.
Divida documentos em partes para a RAG
Por predefinição, o Vertex AI Search está otimizado para a obtenção de documentos, em que a sua app de pesquisa devolve um documento, como um PDF ou uma página Web, com cada resultado da pesquisa.
As funcionalidades de divisão de documentos estão disponíveis para apps de pesquisa personalizadas com arquivos de dados não estruturados.
Em alternativa, a Vertex AI Search pode ser otimizada para RAG, em que a sua app de pesquisa é usada principalmente para aumentar o resultado do MDI/CE com os seus dados personalizados. Quando a divisão de documentos em partes está ativada, o Vertex AI Search divide os seus documentos em partes. Nos resultados da pesquisa, a sua app de pesquisa pode devolver fragmentos de dados relevantes em vez de documentos completos. A utilização de dados segmentados para a RAG aumenta a relevância das respostas dos modelos de linguagem grandes e reduz a carga computacional para os modelos de linguagem grandes.
Para usar o Vertex AI Search para RAG:
Ative a divisão de documentos em partes quando criar o seu repositório de dados.
Em alternativa, carregue os seus próprios fragmentos (pré-visualização com lista de autorizações) se já tiver fragmentado os seus próprios documentos.
Recupere e veja fragmentos das seguintes formas:
Limitações
Aplicam-se as seguintes limitações à divisão em partes:
- Não é possível ativar nem desativar a divisão de documentos após a criação do arquivo de dados.
- Pode fazer pedidos de pesquisa de documentos em vez de blocos de um repositório de dados com a divisão em blocos de documentos ativada. No entanto, os armazenamentos de dados com a divisão em partes de documentos ativada não estão otimizados para devolver documentos. Os documentos são devolvidos através da agregação de blocos em documentos.
- Quando a divisão de documentos está ativada, os resumos de pesquisa e a pesquisa com seguimentos são suportados na pré-visualização pública, mas não são suportados como GA.
Opções de divisão de documentos
Esta secção descreve as opções que especifica para ativar a divisão de documentos em partes.
Durante a criação do arquivo de dados, ative as seguintes opções para que a pesquisa do Vertex AI possa indexar os seus documentos como blocos.
Divisão de documentos com reconhecimento do esquema. Para ativar esta opção, inclua o campo
documentProcessingConfig
no seu pedido de criação do repositório de dados e especifiqueChunkingConfig.LayoutBasedChunkingConfig
.Quando a divisão em blocos de documentos com reconhecimento do esquema está ativada, o Vertex AI Search deteta o esquema de um documento e tem-no em conta durante a divisão em blocos. Isto melhora a coerência semântica e reduz o ruído no conteúdo quando é usado para obtenção e geração de MDIs. Todo o texto num fragmento é proveniente da mesma entidade de esquema, como cabeçalhos, subtítulos e listas.
Análise do esquema. Para ativar esta opção, especifique
ParsingConfig.LayoutParsingConfig
durante a criação do arquivo de dados.O analisador de esquemas deteta esquemas para ficheiros PDF, HTML e DOCX. Identifica elementos como blocos de texto, tabelas, listas, títulos e cabeçalhos, e usa-os para definir a organização e a hierarquia de um documento.
Para mais informações sobre a análise da disposição, consulte o artigo Análise da disposição.
Ative a divisão de documentos em partes
Pode ativar a divisão de documentos em partes incluindo o objeto documentProcessingConfig
no seu pedido de criação do armazenamento de dados e ativando a divisão de documentos em partes com reconhecimento do esquema e a análise do esquema.
REST
Para ativar a divisão de documentos em partes:
Quando criar um arquivo de dados de pesquisa através da API, inclua o objeto
documentProcessingConfig.chunkingConfig
no pedido de criação do arquivo de dados."documentProcessingConfig": { "chunkingConfig": { "layoutBasedChunkingConfig": { "chunkSize": CHUNK_SIZE_LIMIT, "includeAncestorHeadings": HEADINGS_BOOLEAN, } }, "defaultParsingConfig": { "layoutParsingConfig": {} } }
Substitua o seguinte:
CHUNK_SIZE_LIMIT
: opcional. O limite de tamanho dos tokens para cada fragmento. O valor predefinido é 500. Os valores suportados são 100 a 500 (inclusive).HEADINGS_BOOLEAN
: opcional. Determina se os cabeçalhos estão incluídos em cada bloco. O valor predefinido éfalse
. Anexar o título e os cabeçalhos em todos os níveis aos fragmentos do meio do documento pode ajudar a evitar a perda de contexto na obtenção e na classificação de fragmentos.
Consola
Quando cria um arquivo de dados de pesquisa através da consola, pode ativar a divisão em partes de documentos.
Inclua os seus próprios fragmentos (pré-visualização com lista de autorizações)
Se já tiver dividido os seus próprios documentos em partes, pode carregá-los para o Vertex AI Search em vez de ativar as opções de divisão de documentos em partes.
A utilização dos seus próprios fragmentos é uma pré-visualização com uma funcionalidade de lista de autorizações. Para usar esta funcionalidade, contacte a equipa da sua Conta Google.
Liste os fragmentos de um documento
Para listar todos os fragmentos de um documento específico, chame o método Chunks.list
.
REST
Para listar os fragmentos de um documento, siga este passo:
Chame o método
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"
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto.DATA_STORE_ID
: o ID do seu armazenamento de dados.DOCUMENT_ID
: o ID do documento a partir do qual listar os fragmentos.
Obtenha fragmentos em JSON de um documento processado
Pode obter todos os fragmentos de um documento específico no formato JSON chamando o método getProcessedDocument
. Receber blocos em JSON pode ser útil se precisar de carregar blocos noutro local ou se decidir voltar a importar blocos para aplicações de IA através da funcionalidade traga os seus próprios blocos.
REST
Para obter fragmentos JSON de um documento, siga este passo:
Chame o método
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=CHUNKED_DOCUMENT"
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto.DATA_STORE_ID
: o ID do seu armazenamento de dados.DOCUMENT_ID
: o ID do documento a partir do qual obter fragmentos.
Obtenha partes específicas
Para obter um fragmento específico, chame o método Chunks.get
.
REST
Para obter um fragmento específico, siga este passo:
Chame o método
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"
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto.DATA_STORE_ID
: o ID do seu armazenamento de dados.DOCUMENT_ID
: o ID do documento de origem do fragmento.CHUNK_ID
: o ID do fragmento a devolver.
Devolva fragmentos em pedidos de pesquisa
Depois de confirmar que os dados foram divididos corretamente, a pesquisa do Vertex AI pode devolver dados divididos nos respetivos resultados da pesquisa.
A resposta devolve um fragmento relevante para a consulta de pesquisa. Além disso, pode optar por devolver blocos adjacentes que aparecem antes e depois do bloco relevante no documento de origem. Os fragmentos adjacentes podem adicionar contexto e precisão.
REST
Para obter dados divididos em blocos:
Quando fizer um pedido de pesquisa, especifique
ContentSearchSpec.SearchResultMode
comochunks
.contentSearchSpec": { "searchResultMode": "RESULT_MODE", "chunkSpec": { "numPreviousChunks": NUMBER_OF_PREVIOUS_CHUNKS, "numNextChunks": NUMBER_OF_NEXT_CHUNKS } }
RESULT_MODE
: determina se os resultados da pesquisa são devolvidos como documentos completos ou em partes. Para obter fragmentos, o repositório de dados tem de ter a fragmentação de documentos ativada. Os valores aceites sãodocuments
echunks
. Se a divisão de documentos estiver ativada para o seu repositório de dados, o valor predefinido échunks
.NUMBER_OF_PREVIOUS_CHUNKS
: o número de fragmentos a devolver que precederam imediatamente o fragmento relevante. O valor máximo permitido é 5.NUMBER_OF_NEXT_CHUNKS
: o número de fragmentos a devolver que seguem imediatamente o fragmento relevante. O valor máximo permitido é 5.
Exemplo
O exemplo seguinte de um pedido de consulta de pesquisa define SearchResultMode
como
chunks
, pede um fragmento anterior e um fragmento seguinte, e limita o número
de resultados a um único fragmento relevante através de 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/v1/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
}
}
}'
O exemplo seguinte mostra a resposta devolvida para a consulta de exemplo. A resposta contém os fragmentos relevantes, os fragmentos anteriores e seguintes, os metadados do documento original e o intervalo de páginas do documento a partir do qual cada fragmento foi derivado.
Resposta
{ "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": {} }