Adicione e faça a gestão de origens de dados num notebook (API)

Depois de criar o bloco de notas, pode adicionar-lhe vários tipos de conteúdo como fontes de dados. Pode fazê-lo em lotes ou como ficheiros individuais. Algumas das fontes incluem o Google Docs, o Google Slides, texto simples, conteúdo Web e vídeos do YouTube.

Esta página descreve como realizar as seguintes tarefas:

Antes de começar

Se planear adicionar o Google Docs ou o Google Slides como origem de dados, tem de autorizar o acesso ao Google Drive através das credenciais de utilizador da Google. Para o fazer, execute o seguinte comando gloud auth login e siga as instruções na CLI.

gcloud auth login --enable-gdrive-access

Adicione origens de dados em lote

Para adicionar fontes a um notebook, chame o método notebooks.sources.batchCreate.

REST

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
     "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/sources:batchCreate" \
  -d '{
  "userContents": [
    {
    USER_CONTENT
    }
   ]
  }'

Substitua o seguinte:

  • ENDPOINT_LOCATION: a região múltipla para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_NUMBER: o número do seu projeto Google Cloud .
  • LOCATION: a localização geográfica do seu repositório de dados, como global. Para mais informações, consulte o artigo Localizações.
  • NOTEBOOK_ID: o identificador exclusivo do bloco de notas.
  • USER_CONTENT: o conteúdo da origem de dados.

Só pode adicionar uma das seguintes origens de dados como conteúdo:

  • Para conteúdo do Google Drive composto por ficheiros do Google Docs ou Google Slides, adicione:

     "googleDriveContent": {
       "documentId": "DOCUMENT_ID_GOOGLE",
       "mimeType": "MIME_TYPE",
       "sourceName": "DISPLAY_NAME_GOOGLE"
     }
    

    Substitua o seguinte:

    • DOCUMENT_ID_GOOGLE: o ID do ficheiro que se encontra no Google Drive. Este ID aparece no URL do ficheiro. Para obter o ID do documento de um ficheiro, abra o ficheiro. O respetivo URL tem o padrão: https://docs.google.com/FILE_TYPE/d/DOCUMENT_ID_GOOGLE/edit?resourcekey=RESOURCE_KEY.
    • MIME_TYPE: o tipo MIME do documento selecionado. Use application/vnd.google-apps.document para o Google Docs ou application/vnd.google-apps.presentation para o Google Slides.
    • DISPLAY_NAME_GOOGLE: o nome a apresentar da origem de dados.
  • Para a introdução de texto simples, adicione:

      "textContent": {
        "sourceName": "DISPLAY_NAME_TEXT",
        "content": "TEXT_CONTENT"
      }
    

    Substitua o seguinte:

    • DISPLAY_NAME_TEXT: o nome a apresentar da origem de dados.
    • TEXT_CONTENT: o conteúdo de texto não processado que quer carregar como origem de dados.
  • Para conteúdo Web, adicione:

     "webContent": {
       "url": "URL_WEBCONTENT",
       "sourceName": "DISPLAY_NAME_WEB"
     }
    

    Substitua o seguinte:

    • URL_WEBCONTENT: o URL do conteúdo que quer carregar como origem de dados.
    • DISPLAY_NAME_WEB: o nome a apresentar da origem de dados.
  • Para conteúdo de vídeo, adicione:

     "videoContent": {
       "url": "URL_YOUTUBE"
     }
    

    Substitua URL_YOUTUBE pelo URL do vídeo do YouTube que quer carregar como origem de dados.

Se o pedido for bem-sucedido, deve receber uma instância do objeto source como resposta, semelhante ao seguinte JSON. Tenha em atenção os elementos SOURCE_ID e SOURCE_RESOURCE_NAME, que são necessários para realizar outras tarefas, como obter ou eliminar a origem de dados.

{
  "sources": [
    {
      "sourceId": {
        "id": "SOURCE_ID"
      },
      "title": "DISPLAY_NAME",
      "metadata": {
        "xyz": "abc"
      },
      "settings": {
        "status": "SOURCE_STATUS_COMPLETE"
      },
      "name": "SOURCE_RESOURCE_NAME"
    }
  ]
}

Carregue um ficheiro como fonte

Além de adicionar origens de dados em lotes, pode carregar ficheiros individuais que podem ser usados como origens de dados no seu bloco de notas. Para carregar um único ficheiro, chame o método notebooks.sources.uploadFile.

REST

curl -X POST --data-binary "@PATH/TO/FILE" \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "X-Goog-Upload-File-Name: FILE_DISPLAY_NAME" \
  -H "X-Goog-Upload-Protocol: raw" \
  -H "Content-Type: CONTENT_TYPE" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/upload/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/sources:uploadFile" \

Substitua o seguinte:

  • PATH/TO/FILE: o caminho para o ficheiro que quer carregar.
  • FILE_DISPLAY_NAME: uma string que indica o nome a apresentar do ficheiro no bloco de notas.
  • CONTENT_TYPE: o tipo de conteúdo que quer carregar. Para ver uma lista dos tipos de conteúdo suportados, consulte o artigo Tipos de conteúdo suportados.
  • ENDPOINT_LOCATION: a região múltipla para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_NUMBER: o número do seu projeto Google Cloud .
  • LOCATION: a localização geográfica do seu repositório de dados, como global. Para mais informações, consulte o artigo Localizações.
  • NOTEBOOK_ID: o identificador exclusivo do bloco de notas.

Se o pedido for bem-sucedido, deve receber uma resposta JSON semelhante à seguinte.

{
  "sourceId": {
    "id": "SOURCE_ID"
  }
}

Tipos de conteúdo suportados

O ficheiro que carrega como origem tem de ser compatível.

Os seguintes tipos de conteúdo de documentos são suportados:

Extensão de ficheiro Tipo de conteúdo
.pdf application/pdf
.txt text/plain
.md text/markdown
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.pptx application/vnd.openxmlformats-officedocument.presentationml.presentation
.xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Os seguintes tipos de conteúdo de áudio são suportados:

Extensão de ficheiro Tipo de conteúdo
.3g2 audio/3gpp2
.3gp audio/3gpp
.aac audio/aac
.aif audio/aiff
.aifc audio/aiff
.aiff audio/aiff
.amr audio/amr
.au audio/basic
.avi video/x-msvideo
.cda application/x-cdf
.m4a audio/m4a
.mid audio/midi
.midi audio/midi
.mp3 audio/mpeg
.mp4 video/mp4
.mpeg audio/mpeg
.ogg audio/ogg
.opus audio/ogg
.ra audio/vnd.rn-realaudio
.ram audio/vnd.rn-realaudio
.snd audio/basic
.wav audio/wav
.weba audio/webm
.wma audio/x-ms-wma

São suportados os seguintes tipos de conteúdo de imagem:

Extensão de ficheiro Tipo de conteúdo
.png image/png
.jpg image/jpg
.jpeg image/jpeg

Recupere uma fonte

Para obter uma fonte específica adicionada a um notebook, use o método notebooks.sources.get.

REST

curl -X GET \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/sources/SOURCE_ID"

Substitua o seguinte:

  • ENDPOINT_LOCATION: a região múltipla para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_NUMBER: o número do seu projeto Google Cloud .
  • LOCATION: a localização geográfica do seu repositório de dados, como global. Para mais informações, consulte o artigo Localizações.
  • NOTEBOOK_ID: o identificador exclusivo que recebeu quando criou o bloco de notas. Para mais informações, consulte o artigo Crie um bloco de notas.
  • SOURCE_ID: o identificador da fonte que recebeu quando adicionou a fonte ao seu bloco de notas.

Se o pedido for bem-sucedido, deve receber uma resposta JSON semelhante à seguinte.

{
  "sources": [
    {
      "sourceId": {
        "id": "SOURCE_ID"
      },
      "title": "DISPLAY_NAME",
      "metadata": {
        "wordCount": 148,
        "tokenCount": 160
      },
      "settings": {
        "status": "SOURCE_STATUS_COMPLETE"
      },
     "name": "SOURCE_RESOURCE_NAME"

    }
  ]
}

Elimine origens de dados de um bloco de notas

Para eliminar origens de dados em massa de um bloco de notas, use o método notebooks.sources.batchDelete.

REST

  curl -X POST \
    -H "Authorization:Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/"NOTEBOOK_ID"/sources:batchDelete"
    -d '{
      "names": [
        "SOURCE_RESOURCE_NAME_1",
        "SOURCE_RESOURCE_NAME_2"
      ]
    }'

Substitua o seguinte:

  • ENDPOINT_LOCATION: a região múltipla para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_NUMBER: o número do seu projeto Google Cloud .
  • LOCATION: a localização geográfica do seu repositório de dados, como global. Para mais informações, consulte o artigo Localizações.
  • NOTEBOOK_ID: o identificador exclusivo do bloco de notas.
  • SOURCE_RESOURCE_NAME: o nome completo dos recursos da origem de dados a eliminar. Este campo tem o padrão: projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/source/SOURCE_ID.

Se o pedido for bem-sucedido, deve receber um objeto JSON vazio.

O que se segue?