Datenquellen zu einem Notebook hinzufügen und verwalten (API)

Nachdem Sie Ihr Notebook erstellt haben, können Sie verschiedene Inhaltstypen als Datenquellen hinzufügen, entweder in Batches oder als einzelne Dateien. Zu den Quellen gehören u. a. Google Docs, Google-Präsentationen, Rohtext, Webinhalte und YouTube-Videos.

Auf dieser Seite werden folgende Aufgaben beschrieben:

Hinweise

Wenn Sie Google Docs oder Google-Präsentationen als Datenquelle hinzufügen möchten, müssen Sie den Zugriff auf Google Drive mit den Google-Nutzeranmeldedaten autorisieren. Führen Sie dazu den folgenden gloud auth login-Befehl aus und folgen Sie der Anleitung in der Befehlszeile.

gcloud auth login --enable-gdrive-access

Datenquellen im Batch hinzufügen

Rufen Sie die Methode notebooks.sources.batchCreate auf, um Quellen zu einem Notebook hinzuzufügen.

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
    }
   ]
  }'

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Weisen Sie einen der folgenden Werte zu:
    • us- für die multiregionale Option „USA“
    • eu- für die multiregionale Option „EU“
    • global- für den globalen Standort
    Weitere Informationen finden Sie unter Mehrere Regionen für den Datenspeicher angeben.
  • PROJECT_NUMBER: die Nummer Ihres Google Cloud -Projekts
  • LOCATION: der geografische Standort Ihres Datenspeichers, z. B. global. Weitere Informationen finden Sie unter Gemini Enterprise-Standorte.
  • NOTEBOOK_ID: die eindeutige Kennung des Notebooks
  • USER_CONTENT: der Inhalt der Datenquelle

Sie können nur eine der folgenden Datenquellen als Inhalt hinzufügen:

  • Fügen Sie für Google Drive-Inhalte, die aus Google Docs oder Google-Präsentationen bestehen, Folgendes hinzu:

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

    Ersetzen Sie Folgendes:

    • DOCUMENT_ID_GOOGLE: die ID der Datei in Google Drive. Diese ID ist in der URL der Datei enthalten. Öffnen Sie die Datei, um die Dokument-ID der Datei zu finden. Die URL hat das Muster https://docs.google.com/FILE_TYPE/d/DOCUMENT_ID_GOOGLE/edit?resourcekey=RESOURCE_KEY.
    • MIME_TYPE: der MIME-Typ des ausgewählten Dokuments. Verwenden Sie für Google Docs application/vnd.google-apps.document und für Google-Präsentationen application/vnd.google-apps.presentation.
    • DISPLAY_NAME_GOOGLE: der Anzeigename der Datenquelle
  • Fügen Sie für Rohtexteingaben Folgendes hinzu:

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

    Ersetzen Sie Folgendes:

    • DISPLAY_NAME_TEXT: der Anzeigename der Datenquelle
    • TEXT_CONTENT: der Rohtextinhalt, den Sie als Datenquelle hochladen möchten
  • Fügen Sie für Webinhalte Folgendes hinzu:

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

    Ersetzen Sie Folgendes:

    • URL_WEBCONTENT: die URL für die Inhalte, die Sie als Datenquelle hochladen möchten
    • DISPLAY_NAME_WEB: der Anzeigename der Datenquelle
  • Fügen Sie für Videoinhalte Folgendes hinzu:

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

    Ersetzen Sie URL_YOUTUBE durch die URL des YouTube-Videos, das Sie als Datenquelle hochladen möchten.

Wenn die Anfrage erfolgreich ist, sollten Sie eine Instanz des source-Objekts als Antwort erhalten, ähnlich der folgenden JSON-Darstellung. Beachten Sie die SOURCE_ID und den SOURCE_RESOURCE_NAME, die für andere Aufgaben wie das Abrufen oder Löschen der Datenquelle erforderlich sind.

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

Datei als Quelle hochladen

Sie können Datenquellen nicht nur in Batches hinzufügen, sondern auch einzelne Dateien hochladen, um sie in Ihrem Notebook als Datenquellen zu verwenden. Rufen Sie die Methode notebooks.sources.uploadFile auf, um eine einzelne Datei hochzuladen.

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" \

Ersetzen Sie Folgendes:

  • PATH/TO/FILE: der Pfad zur Datei, die Sie hochladen möchten
  • FILE_DISPLAY_NAME: ein String mit dem Anzeigenamen der Datei im Notebook
  • CONTENT_TYPE: der Inhaltstyp, den Sie hochladen möchten. Eine Liste der unterstützten Inhaltstypen finden Sie unter Unterstützte Inhaltstypen.
  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Weisen Sie einen der folgenden Werte zu:
    • us- für die multiregionale Option „USA“
    • eu- für die multiregionale Option „EU“
    • global- für den globalen Standort
    Weitere Informationen finden Sie unter Mehrere Regionen für den Datenspeicher angeben.
  • PROJECT_NUMBER: die Nummer Ihres Google Cloud -Projekts
  • LOCATION: der geografische Standort Ihres Datenspeichers, z. B. global. Weitere Informationen finden Sie unter Gemini Enterprise-Standorte.
  • NOTEBOOK_ID: die eindeutige Kennung des Notebooks

Wenn die Anfrage erfolgreich ist, sollte eine JSON-Antwort ähnlich der folgenden zurückgegeben werden.

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

Unterstützte Inhaltstypen

Die Datei, die Sie als Quelle hochladen, muss unterstützt werden.

Folgende Inhaltstypen werden unterstützt:

Dateiendung Inhaltstyp
.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

Folgende Audio-Inhaltstypen werden unterstützt:

Dateiendung Inhaltstyp
.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

Folgende Bildinhaltstypen werden unterstützt:

Dateiendung Inhaltstyp
.png image/png
.jpg image/jpg
.jpeg image/jpeg

Quelle abrufen

Wenn Sie eine bestimmte Quelle aus einem Notebook abrufen möchten, verwenden Sie die Methode 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"

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Weisen Sie einen der folgenden Werte zu:
    • us- für die multiregionale Option „USA“
    • eu- für die multiregionale Option „EU“
    • global- für den globalen Standort
    Weitere Informationen finden Sie unter Mehrere Regionen für den Datenspeicher angeben.
  • PROJECT_NUMBER: die Nummer Ihres Google Cloud -Projekts
  • LOCATION: der geografische Standort Ihres Datenspeichers, z. B. global. Weitere Informationen finden Sie unter Gemini Enterprise-Standorte.
  • NOTEBOOK_ID: die eindeutige Kennung, die Sie beim Erstellen des Notebooks erhalten haben. Weitere Informationen finden Sie unter Notebook erstellen.
  • SOURCE_ID: die Kennung der Quelle, die Sie beim Hinzufügen der Quelle zum Notebook erhalten haben

Wenn die Anfrage erfolgreich ist, sollte eine JSON-Antwort ähnlich der folgenden zurückgegeben werden.

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

    }
  ]
}

Datenquellen aus einem Notebook löschen

Wenn Sie Datenquellen im Bulk aus einem Notebook löschen möchten, verwenden Sie die Methode 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"
      ]
    }'

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Weisen Sie einen der folgenden Werte zu:
    • us- für die multiregionale Option „USA“
    • eu- für die multiregionale Option „EU“
    • global- für den globalen Standort
    Weitere Informationen finden Sie unter Mehrere Regionen für den Datenspeicher angeben.
  • PROJECT_NUMBER: die Nummer Ihres Google Cloud -Projekts
  • LOCATION: der geografische Standort Ihres Datenspeichers, z. B. global. Weitere Informationen finden Sie unter Gemini Enterprise-Standorte.
  • NOTEBOOK_ID: die eindeutige Kennung des Notebooks
  • SOURCE_RESOURCE_NAME: der vollständige Ressourcenname der zu löschenden Datenquelle. Dieses Feld hat das Muster: projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/source/SOURCE_ID.

Wenn die Anfrage erfolgreich ist, sollte ein leeres JSON-Objekt zurückgegeben werden.

Nächste Schritte