Preparar dados para ingestão

A preparação dos dados depende do tipo de informação que você está importando e da forma como você escolhe fazer isso. Comece com o tipo de dados que você planeja importar:

Para informações sobre a pesquisa combinada, em que vários repositórios de dados podem ser conectados a um único app de pesquisa personalizada, consulte Como se conectar a vários repositórios de dados.

Dados de sites

Ao criar um repositório de dados para dados de sites, você fornece os URLs das páginas da Web que o Google deve rastrear e indexar para pesquisa ou recomendação.

Antes de indexar os dados do seu site:

  • Decida quais padrões de URL incluir e excluir da indexação.

    • Exclua os padrões de URLs dinâmicos. Eles mudam no momento da veiculação, dependendo da solicitação.

      Por exemplo, os padrões de URL das páginas da Web que veiculam os resultados da pesquisa, como www.example.com/search/*. Suponha que um usuário pesquise a frase Nobel prize. O URL de pesquisa dinâmica pode ser um URL exclusivo: www.example.com/search?q=nobel%20prize/UNIQUE_STRING. Se o padrão de URL www.example.com/search/* não for excluído, todos os URLs de pesquisa dinâmica exclusivos que seguem esse padrão serão indexados. Isso resulta em um índice inchado e uma qualidade de pesquisa diluída.

    • Elimine URLs duplicados usando padrões de URL canônicos. Isso fornece um único URL canônico para a Pesquisa Google ao rastrear o site e remove a ambiguidade. Para exemplos de canonização e mais informações, consulte O que é canonização de URL e Como especificar um URL canônico com rel="canonical" e outros métodos.

  • Você pode incluir padrões de URL do mesmo domínio ou de domínios diferentes que precisam ser indexados e excluir padrões que não devem ser indexados. O número de padrões de URL que você pode incluir e excluir difere da seguinte maneira:

    Tipo de indexação Sites incluídos Sites excluídos
    Pesquisa básica no site Máximo de 50 padrões de URL Máximo de 50 padrões de URL
    Indexação avançada de sites Máximo de 500 padrões de URL Máximo de 500 padrões de URL

  • Verifique se as páginas da Web que você planeja fornecer não estão usando o robots.txt para bloquear a indexação. Para mais informações, consulte Introdução ao robots.txt.

  • Se você planeja usar a indexação avançada de sites, é necessário verificar os domínios dos padrões de URL no repositório de dados.

  • Adicione dados estruturados na forma de tags meta e PageMaps ao esquema do repositório de dados para enriquecer a indexação, conforme explicado em Usar dados estruturados para indexação avançada de sites.

Dados não estruturados

A Vertex AI para Pesquisa é compatível com a pesquisa em documentos nos formatos HTML, PDF com texto incorporado e TXT. Os formatos PPTX e DOCX estão disponíveis na prévia.

Você importa seus documentos de um bucket do Cloud Storage. É possível importar usando o console Google Cloud , o método ImportDocuments ou a ingestão de streaming por métodos CRUD. Para informações de referência da API, consulte DocumentService e documents.

A tabela a seguir lista os limites de tamanho de arquivo de cada tipo com diferentes configurações. Para mais informações, consulte Analisar e dividir documentos em partes. É possível importar até 100.000 arquivos por vez.

Tipo de arquivo Importação padrão Importar com divisão de documentos com reconhecimento de layout Importar com o analisador de layout
Arquivos baseados em texto, como HTML, TXT, JSON, XHTML e XML < 2,5 MB < 10 MB < 10 MB
PPTX, DOCX e XLSX < 200 MB < 200 MB < 200 MB
PDF < 200 MB < 200 MB < 40 MB

Se você planeja incluir embeddings nos seus dados não estruturados, consulte Usar embeddings personalizados.

Se você tiver PDFs que não podem ser pesquisados (digitalizados ou com texto dentro de imagens, como infográficos), recomendamos ativar o processamento de reconhecimento óptico de caracteres (OCR) durante a criação do repositório de dados. Isso permite que a Vertex AI Search extraia elementos como blocos de texto e tabelas. Se você tiver PDFs pesquisáveis que são compostos principalmente de texto legível por máquina e contêm muitas tabelas, considere ativar o processamento de OCR com a opção de texto legível por máquina ativada para melhorar a detecção e a análise. Para mais informações, consulte Analisar e dividir documentos em partes.

Se você quiser usar a Vertex AI para Pesquisa na geração aumentada de recuperação (RAG), ative o chunking de documentos ao criar o repositório de dados. Para mais informações, consulte Analisar e dividir documentos em partes.

É possível importar dados não estruturados das seguintes fontes:

Cloud Storage

É possível importar dados do Cloud Storage com ou sem metadados.

A importação de dados não é recursiva. Ou seja, se houver pastas dentro do bucket ou da pasta especificada, os arquivos dentro delas não serão importados.

Se você planeja importar documentos do Cloud Storage sem metadados, coloque os documentos diretamente em um bucket do Cloud Storage. O ID do documento é um exemplo de metadados.

Para teste, use as seguintes pastas do Cloud Storage disponíveis publicamente, que contêm PDFs:

  • gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs
  • gs://cloud-samples-data/gen-app-builder/search/CUAD_v1
  • gs://cloud-samples-data/gen-app-builder/search/kaiser-health-surveys
  • gs://cloud-samples-data/gen-app-builder/search/stanford-cs-224

Se você planeja importar dados do Cloud Storage com metadados, coloque um arquivo JSON que contenha os metadados em um bucket do Cloud Storage cujo local você fornece durante a importação.

Os documentos não estruturados podem estar no mesmo bucket do Cloud Storage que os metadados ou em um diferente.

O arquivo de metadados precisa ser um arquivo JSON Lines ou NDJSON. O ID do documento é um exemplo de metadados. Cada linha do arquivo de metadados precisa seguir um dos seguintes formatos JSON:

  • Usando jsonData:
    • { "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
  • Usando structData:
    • { "id": "<your-id>", "structData": { <JSON object> }, "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }

Use o campo uri em cada linha para apontar para o local do documento no Cloud Storage.

Este é um exemplo de arquivo de metadados NDJSON para um documento não estruturado. Neste exemplo, cada linha do arquivo de metadados aponta para um documento PDF e contém os metadados desse documento. As duas primeiras linhas usam jsonData e as duas últimas usam structData. Com structData, não é necessário fazer escape de aspas que aparecem dentro de aspas.

{"id":"doc-0","jsonData":"{\"title\":\"test_doc_0\",\"description\":\"This document uses a blue color theme\",\"color_theme\":\"blue\"}","content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_0.pdf"}}
{"id":"doc-1","jsonData":"{\"title\":\"test_doc_1\",\"description\":\"This document uses a green color theme\",\"color_theme\":\"green\"}","content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_1.pdf"}}
{"id":"doc-2","structData":{"title":"test_doc_2","description":"This document uses a red color theme","color_theme":"red"},"content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_3.pdf"}}
{"id":"doc-3","structData":{"title":"test_doc_3","description":"This is document uses a yellow color theme","color_theme":"yellow"},"content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_4.pdf"}}

Para criar um repositório de dados, consulte Criar um repositório de dados de pesquisa.

BigQuery

Se você planeja importar metadados do BigQuery, crie uma tabela do BigQuery que contenha metadados. O ID do documento é um exemplo de metadados.

Coloque os documentos não estruturados em um bucket do Cloud Storage.

Use o seguinte esquema do BigQuery. Use o campo uri em cada registro para apontar para o local do documento no Cloud Storage.

[
  {
    "name": "id",
    "mode": "REQUIRED",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "jsonData",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "content",
    "type": "RECORD",
    "mode": "NULLABLE",
    "fields": [
      {
        "name": "mimeType",
        "type": "STRING",
        "mode": "NULLABLE"
      },
      {
        "name": "uri",
        "type": "STRING",
        "mode": "NULLABLE"
      }
    ]
  }
]

Para mais informações, consulte Criar e usar tabelas na documentação do BigQuery.

Para criar um repositório de dados, consulte Criar um repositório de dados de pesquisa.

Google Drive

A sincronização de dados do Google Drive é compatível com a pesquisa personalizada.

Se você planeja importar dados do Google Drive, configure o Google Identity como seu provedor de identidade nos aplicativos de IA. Para informações sobre como configurar o controle de acesso, consulte Usar o controle de acesso à fonte de dados.

Para criar um repositório de dados, consulte Criar um repositório de dados de pesquisa.

Dados estruturados

Prepare seus dados de acordo com o método de importação que você planeja usar. Se você planeja ingerir dados de mídia, consulte também Dados estruturados de mídia.

É possível importar dados estruturados das seguintes fontes:

Ao importar dados estruturados do BigQuery ou do Cloud Storage, você tem a opção de importar os dados com metadados. (Dados estruturados com metadados também são chamados de dados estruturados avançados.)

BigQuery

É possível importar dados estruturados de conjuntos de dados do BigQuery.

Seu esquema é detectado automaticamente. Depois da importação, o Google recomenda que você edite o esquema detectado automaticamente para mapear propriedades importantes, como títulos. Se você importar usando a API em vez do console Google Cloud , poderá fornecer seu próprio esquema como um objeto JSON. Para mais informações, consulte Fornecer ou detectar automaticamente um esquema.

Para exemplos de dados estruturados disponíveis publicamente, consulte os conjuntos de dados públicos do BigQuery.

Se você planeja incluir embeddings nos seus dados estruturados, consulte Usar embeddings personalizados.

Se você selecionar a importação de dados estruturados com metadados, inclua dois campos nas tabelas do BigQuery:

  • Um campo id para identificar o documento. Se você importar dados estruturados sem metadados, o id será gerado para você. Incluir metadados permite especificar o valor de id.

  • Um campo jsonData que contém os dados. Para exemplos de strings jsonData, consulte a seção anterior Cloud Storage.

Use o seguinte esquema do BigQuery para dados estruturados com importações de metadados:

[
  {
    "name": "id",
    "mode": "REQUIRED",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "jsonData",
    "mode": "NULLABLE",
    "type": "STRING",
    "fields": []
  }
]

Para instruções sobre como criar um repositório de dados, consulte Criar um repositório de dados de pesquisa ou Criar um repositório de dados de recomendações.

Cloud Storage

Os dados estruturados no Cloud Storage precisam estar no formato JSON Lines ou NDJSON. Cada arquivo precisa ter 2 GB ou menos. É possível importar até 100 arquivos por vez.

Para exemplos de dados estruturados disponíveis publicamente, consulte as seguintes pastas no Cloud Storage, que contêm arquivos NDJSON:

  • gs://cloud-samples-data/gen-app-builder/search/kaggle_movies
  • gs://cloud-samples-data/gen-app-builder/search/austin_311

Se você planeja incluir embeddings nos seus dados estruturados, consulte Usar embeddings personalizados.

Este é um exemplo de arquivo de metadados NDJSON de dados estruturados. Cada linha do arquivo representa um documento e é composta por um conjunto de campos.

{"id": 10001, "title": "Hotel 1", "location": {"address": "1600 Amphitheatre Parkway, Mountain View, CA 94043"}, "available_date": "2024-02-10", "non_smoking": true, "rating": 3.7, "room_types": ["Deluxe", "Single", "Suite"]}
{"id": 10002, "title": "Hotel 2", "location": {"address": "Manhattan, New York, NY 10001"}, "available_date": "2023-07-10", "non_smoking": false, "rating": 5.0, "room_types": ["Deluxe", "Double", "Suite"]}
{"id": 10003, "title": "Hotel 3", "location": {"address": "Moffett Park, Sunnyvale, CA 94089"}, "available_date": "2023-06-24", "non_smoking": true, "rating": 2.5, "room_types": ["Double", "Penthouse", "Suite"]}

Para criar um repositório de dados, consulte Criar um repositório de dados de pesquisa ou Criar um repositório de dados de recomendações.

Dados JSON locais

É possível fazer upload direto de um documento ou objeto JSON usando a API.

O Google recomenda fornecer seu próprio esquema como um objeto JSON para ter resultados melhores. Se você não fornecer seu próprio esquema, ele será detectado automaticamente. Depois da importação, recomendamos que você edite o esquema detectado automaticamente para mapear propriedades importantes, como títulos. Para mais informações, consulte Fornecer ou detectar automaticamente um esquema.

Se você planeja incluir embeddings nos seus dados estruturados, consulte Usar embeddings personalizados.

Para criar um repositório de dados, consulte Criar um repositório de dados de pesquisa ou Criar um repositório de dados de recomendações.

Dados de mídia estruturados

Se você planeja ingerir dados de mídia estruturados, como vídeos, notícias ou músicas, analise o seguinte:

Dados de FHIR saúde

Se você planeja ingerir dados FHIR da API Cloud Healthcare, verifique o seguinte:

  • Local: o repositório FHIR de origem precisa estar em um conjunto de dados da API Cloud Healthcare que esteja no local us-central1, us ou eu. Para mais informações, consulte Criar e gerenciar conjuntos de dados na API Cloud Healthcare.
  • Tipo de armazenamento FHIR: o armazenamento FHIR de origem precisa ser um repositório de dados R4. Para verificar as versões dos seus armazenamentos de FHIR, liste os armazenamentos de FHIR no seu conjunto de dados. Para criar um armazenamento FHIR R4, consulte Criar armazenamentos FHIR.
  • Cota de importação: o repositório FHIR de origem precisa ter menos de 1 milhão de recursos FHIR. Se houver mais de um milhão de recursos do FHIR, o processo de importação será interrompido quando esse limite for atingido. Para mais informações, consulte Cotas e limites.
  • Os arquivos referenciados em um recurso DocumentReference precisam ser PDF, RTF ou de imagem armazenados no Cloud Storage. O link para os arquivos referenciados precisa estar no campo content[].attachment.url do recurso no formato de caminho padrão do Cloud Storage: gs://BUCKET_NAME/PATH_TO_REFERENCED_FILE.
  • Consulte a lista de recursos do FHIR R4 compatíveis com a Vertex AI Search. Para mais informações, consulte Referência do esquema de dados R4 do FHIR de saúde.
  • Referências de recursos: verifique se as referências relativas estão no formato Resource/resourceId. Por exemplo, subject.reference precisa ter o valor Patient/034AB16. Para mais informações sobre como a API Cloud Healthcare oferece suporte a referências de recursos FHIR, consulte Referências de recursos FHIR.