Preparar dados para ingestão

A forma como você prepara os dados depende do tipo de dados que está importando e da maneira como decidir importá-la. Comece com os tipos de dados que você planeja importar:

Para informações sobre a pesquisa combinada, em que vários repositórios de dados podem ser estiver conectado a um único app de pesquisa genérica, consulte Sobre a conexão de vários dados .

Dados do site

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

Antes de indexar os dados do seu site:

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

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

      Por exemplo, os padrões de URL das páginas da Web que exibem a pesquisa resultados, como www.example.com/search/*. Suponha que um usuário pesquise a frase Nobel prize. O URL da 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 URLs de pesquisa dinâmicos e exclusivos que seguem esse padrão são indexados. Isso resulta em um índice inflado e em 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 conferir 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.

  • É possível incluir padrões de URL de domínios iguais ou diferentes que precisam ser indexados e excluir padrões que não precisam ser indexados. O número de padrões de URL que você pode incluir e excluir é diferente 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 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 seu repositório de dados.

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

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

Dados não estruturados

A Vertex AI para Pesquisa oferece suporte à pesquisa de documentos em HTML, PDF com texto incorporado e formato TXT. Os formatos PPTX e DOCX estão disponíveis nos Prévia.

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

Os arquivos HTML e TXT precisam ter até 2,5 MB. Arquivos PDF, PPTX e DOCX precisa ter até 100 MB. É possível importar até 100.000 arquivos por vez.

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

Se você tiver PDFs não pesquisáveis (PDFs digitalizados ou PDFs 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 a Vertex AI para Pesquisa para extrair elementos como blocos de texto e tabelas. Se você tem PDFs pesquisáveis que são compostos principalmente por arquivos legíveis 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 análise. Para mais informações, consulte Analisar e dividir documentos.

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

É 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 específica, os arquivos dentro dessas pastas não serão importados.

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

Para testar, 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 contém os metadados em um bucket do Cloud Storage em que você 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:

  • Como usar 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 Cloud Storage o documento.

Aqui está um exemplo de um arquivo de metadados NDJSON para um documento não estruturado. Em neste exemplo, cada linha do arquivo de metadados aponta para um documento PDF e que contém os metadados desse documento. As duas primeiras linhas usam jsonData e as duas segundas linhas usam structData. Com structData, não é necessário escapar 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 seu repositório de dados, consulte Criar um repositório de dados de pesquisa ou Criar um repositório de dados de recomendações.

BigQuery

Se você planeja importar metadados do BigQuery, crie um Tabela do BigQuery que contém metadados. O ID do documento é um exemplo de metadados.

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

Use o esquema do BigQuery a seguir. 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",
    "mode": "NULLABLE",
    "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 seu repositório de dados, consulte Criar um repositório de dados de pesquisa ou Criar um repositório de dados de recomendações.

Google Drive

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

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

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

Dados estruturados

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

É possível importar dados estruturados das seguintes fontes:

Quando você importa dados estruturados do BigQuery ou do Cloud Storage, você tem a opção de importar os dados com metadados. (Estruturado com também são chamados de dados estruturados aprimorados.

BigQuery

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

Seu esquema é detectado automaticamente. Após a importação, o Google recomenda que você editar o esquema detectado automaticamente para mapear as propriedades principais, como títulos. Se você usando a API em vez do console do Google Cloud, é possível para fornecer seu próprio esquema como um objeto JSON. Para mais informações, consulte Fornecer ou detectar automaticamente um esquema.

Para conferir 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ê optar por importar 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 é gerado para você. Como 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 seu 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 linhas JSON ou NDJSON. Cada arquivo precisa ter 2 GB ou menos. É possível importar até 100 arquivos por vez.

Para conferir exemplos de dados estruturados disponíveis publicamente, consulte os seguintes diretórios 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 dados estruturados, consulte Usar embeddings personalizados.

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

{"hotel_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"]}
{"hotel_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"]}
{"hotel_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 seu 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 de um documento ou objeto JSON diretamente usando a API.

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

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

Para criar o 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:

Origens de dados de terceiros

A ingestão de fontes de dados de terceiros é uma visualização com o recurso de lista de permissões.

As conexões de fontes de dados de terceiros são compatíveis com a pesquisa genérica.

Quando você conecta uma fonte de dados de terceiros, os dados são ingeridos inicialmente e sincronizados com a Vertex AI para Pesquisa na frequência especificada.

Antes de configurar a conexão da fonte de dados, é necessário definir o controle de acesso para ela. Para informações sobre como configurar o controle de acesso, consulte Usar o controle de acesso à fonte de dados.

Para conferir as credenciais necessárias para se conectar a uma fonte de dados, acesse a documentação para conectar a fonte de dados de terceiros que você planeja usar para transferência:

Dados FHIR de saúde

Se você planeja processar dados FHIR da API Cloud Healthcare, siga estas instruções:

  • Local: o repositório FHIR de origem precisa estar em um conjunto de dados da API Cloud Healthcare no local us-central1, us ou eu. Para mais informações, consulte Criar e gerenciar conjuntos de dados na API Cloud Healthcare.
  • Tipo de repositório FHIR: o repositório FHIR de origem precisa ser um repositório de dados R4. É possível verificar as versões dos armazenamentos FHIR listando-os no seu conjunto de dados. Para criar um repositório de FHIR R4, consulte Criar repositórios de FHIR.
  • Quota de importação: a loja FHIR de origem precisa ter menos de 1 milhão de recursos FHIR. Se houver mais de um milhão de recursos 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 arquivos 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 com suporte da Pesquisa da Vertex AI. Para mais informações, consulte a Referência do esquema de dados do FHIR R4 para cuidados de saúde.