Preparar dados para fontes de dados personalizadas

As empresas geralmente têm aplicativos personalizados criados internamente. Se você quiser que o Gemini Enterprise se conecte às fontes de dados nesses aplicativos personalizados, primeiro prepare os dados. A forma como você prepara os dados depende do tipo de dados que você está importando da sua fonte de dados personalizada e da maneira como você escolhe importá-los. Comece com o tipo de dados que você planeja importar:

Para limitações da pesquisa combinada, em que vários repositórios de dados podem ser conectados a um único app, consulte Sobre como conectar vários repositórios de dados.

Dados não estruturados

O Gemini Enterprise oferece suporte à pesquisa em documentos nos formatos TXT, PDF, HTML, DOCX, PPTX, XLSX e XLSM.

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

Tipo de arquivo Importação padrão
Arquivos de texto, como HTML, TXT, JSON, XHTML e XML < 200 MB
PPTX, DOCX, XLSX e XLSM < 200 MB
PDF < 200 MB

Se você planeja incluir embeddings nos seus dados não estruturados, consulte Usar embeddings personalizados na documentação da Vertex AI Search.

Se você tiver PDFs não pesquisáveis (PDFs digitalizados ou PDFs com texto dentro de imagens, como infográficos), recomendamos ativar o analisador de layout durante a criação do repositório de dados. Isso permite que o Gemini Enterprise 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.

Se você quiser usar o Gemini Enterprise para geração aumentada por 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 usando Google Cloud o console, 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 importação de dados é recursiva. Ou seja, se houver pastas dentro do bucket ou da pasta especificada, os arquivos dessas pastas 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 testes, você pode usar 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ê forneça durante a importação.

Seus documentos não estruturados podem estar no mesmo bucket do Cloud Storage que os metadados ou em um bucket 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 destes 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 de

Confira 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 para esse documento. As duas primeiras linhas usam jsonData e as duas segundas linhas usam structData. Com structData não é necessário fazer o escape de aspas que aparecem dentro de aspas.

{"id":"doc-0","jsonData":"{\"title\":\"test_doc_0\",\"uri\":\"https://test_doc_0.html\",\"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\",\"uri\":\"https://test_doc_1.html\",\"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","uri":"https://test_doc_2.html","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","uri":"https://test_doc_3.html","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 Conectar uma fonte de dados do Google.

BigQuery

Se você planeja importar metadados do BigQuery, siga estas etapas:

  1. Crie uma tabela do BigQuery que contenha metadados. O ID do documento é um exemplo de metadados.

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

    É possível importar usando Google Cloud console, pelo método ImportDocuments ou pela ingestão de streaming por métodos CRUD. Para informações de referência da API, consulte DocumentService e documents.

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",
    "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 Conectar uma fonte de dados do Google.

Google Drive

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

Se você planeja importar dados do Google Drive, configure o Google Identity como seu provedor de identidade no Gemini Enterprise. Para informações sobre como configurar o controle de acesso, consulte Identidade e permissões.

Para criar seu repositório de dados, consulte Conectar uma fonte de dados do Google.

Dados estruturados

Prepare seus dados de acordo com o método de importação que você planeja usar.

É 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. Os dados estruturados com metadados 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ê edite o esquema detectado automaticamente para mapear propriedades importantes, como títulos. Se você importar usando a API em vez do Google Cloud console, terá a opção de 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 na documentação da Vertex AI Search.

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ê. A inclusão de 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 importações de dados estruturados com metadados:

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

Para criar seu repositório de dados, consulte Conectar uma fonte de dados do Google.

Cloud Storage

Os dados estruturados no Cloud Storage precisam estar no formato JSON Lines ou NDJSON. Cada arquivo precisa ter menos de 2 GB e cada linha do arquivo menos de 1 MB. É possível importar até 1.000 arquivos em uma única solicitação de importação .

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 na documentação da Vertex AI Search.

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.

{"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 seu repositório de dados, consulte Conectar uma fonte de dados do Google.

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 melhores resultados. Se você não fornecer seu próprio esquema, o esquema será detectado automaticamente. Após a importação, recomendamos editar 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 na documentação da Vertex AI Search.

Para criar seu repositório de dados, consulte Conectar uma fonte de dados do Google.