הוספה וניהול של מקורות נתונים ב-Notebook (API)

אחרי שיוצרים את הנוטבוק, אפשר להוסיף אליו סוגים שונים של תוכן כמקורות נתונים. אפשר לעשות זאת בקבוצות או בקבצים בודדים. חלק מהמקורות כוללים מסמכי Google Docs, מצגות ב-Google Slides, טקסט גולמי, תוכן אינטרנטי וסרטונים ב-YouTube.

בדף הזה מוסבר איך לבצע את המשימות הבאות:

לפני שמתחילים

אם אתם מתכננים להוסיף את Google Docs או Google Slides כמקור הנתונים, אתם צריכים לאשר גישה ל-Google Drive באמצעות פרטי כניסה של משתמש Google. כדי לעשות את זה, מריצים את הפקודה הבאה gcloud auth login ופועלים לפי ההוראות ב-CLI.

gcloud auth login --enable-gdrive-access

הוספה של מקורות נתונים באצווה

כדי להוסיף מקורות ל-Notebook, צריך לבצע קריאה ל-method‏ 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
    }
   ]
  }'

מחליפים את מה שכתוב בשדות הבאים:

  • ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:
    • us לאזור מרובה בארה"ב
    • eu לאזור עם מספר אזורים באיחוד האירופי
    • global למיקום הגלובלי
    מידע נוסף זמין במאמר בנושא הגדרת מאגר נתונים במספר אזורים.
  • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
  • LOCATION: המיקום הגיאוגרפי של מאגר הנתונים, כמו global. מידע נוסף מופיע במאמר מיקומים.
  • NOTEBOOK_ID: המזהה הייחודי של המחברת.
  • USER_CONTENT: התוכן של מקור הנתונים.

אתם יכולים להוסיף רק אחד ממקורות הנתונים הבאים כתוכן:

  • לתוכן ב-Google Drive שכולל מסמכים ב-Google Docs או מצגות ב-Google Slides, מוסיפים:

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

    מחליפים את מה שכתוב בשדות הבאים:

    • DOCUMENT_ID_GOOGLE: מזהה הקובץ ב-Google Drive. המזהה הזה מופיע בכתובת ה-URL של הקובץ. כדי לקבל את מזהה המסמך של קובץ, פותחים את הקובץ. כתובת ה-URL שלה היא בתבנית: https://docs.google.com/FILE_TYPE/d/DOCUMENT_ID_GOOGLE/edit?resourcekey=RESOURCE_KEY.
    • MIME_TYPE: סוג ה-MIME של המסמך שנבחר. משתמשים ב-application/vnd.google-apps.document עבור Google Docs או ב-application/vnd.google-apps.presentation עבור Google Slides.
    • DISPLAY_NAME_GOOGLE: השם המוצג של מקור הנתונים.
  • כדי להוסיף קלט טקסט גולמי:

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

    מחליפים את מה שכתוב בשדות הבאים:

    • DISPLAY_NAME_TEXT: השם המוצג של מקור הנתונים.
    • TEXT_CONTENT: תוכן הטקסט הגולמי שרוצים להעלות כמקור נתונים.
  • לתוכן באינטרנט, מוסיפים:

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

    מחליפים את מה שכתוב בשדות הבאים:

    • URL_WEBCONTENT: כתובת ה-URL של התוכן שרוצים להעלות כמקור נתונים.
    • DISPLAY_NAME_WEB: השם המוצג של מקור הנתונים.
  • לגבי תוכן בווידאו, צריך להוסיף:

     "videoContent": {
       "youtubeUrl": "URL_YOUTUBE"
     }
    

    מחליפים את URL_YOUTUBE בכתובת ה-URL של סרטון YouTube שרוצים להעלות כמקור נתונים.

אם הבקשה מצליחה, אמור להתקבל מופע של אובייקט source כתגובה, בדומה ל-JSON הבא. שימו לב לתווים SOURCE_ID ו-SOURCE_RESOURCE_NAME, שנדרשים לביצוע משימות אחרות, כמו אחזור או מחיקה של מקור הנתונים.

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

העלאת קובץ כמקור

בנוסף להוספת מקורות נתונים באצווה, אפשר להעלות קבצים בודדים שאפשר להשתמש בהם כמקורות נתונים במחברת. כדי להעלות קובץ אחד, קוראים לשיטה 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" \

מחליפים את מה שכתוב בשדות הבאים:

  • PATH/TO/FILE: הנתיב לקובץ שרוצים להעלות.
  • FILE_DISPLAY_NAME: מחרוזת שמציינת את השם המוצג של הקובץ במחברת.
  • CONTENT_TYPE: סוג התוכן שרוצים להעלות. רשימה של סוגי התוכן הנתמכים מופיעה במאמר סוגי תוכן נתמכים.
  • ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:
    • us לאזור מרובה בארה"ב
    • eu לאזור עם מספר אזורים באיחוד האירופי
    • global למיקום הגלובלי
    מידע נוסף זמין במאמר בנושא הגדרת מאגר נתונים במספר אזורים.
  • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
  • LOCATION: המיקום הגיאוגרפי של מאגר הנתונים, כמו global. מידע נוסף מופיע במאמר מיקומים.
  • NOTEBOOK_ID: המזהה הייחודי של המחברת.

אם הבקשה מצליחה, אמורה להתקבל תגובת JSON שדומה לזו.

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

סוגי התוכן הנתמכים

הקובץ שמעלים כמקור חייב להיות בפורמט נתמך.

סוגי התוכן הבאים של מסמכים נתמכים:

סיומת הקובץ סוג תוכן
‫.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

סוגי תוכן האודיו הבאים נתמכים:

סיומת הקובץ סוג תוכן
‫‎.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

סוגי התוכן הבאים של תמונות נתמכים:

סיומת הקובץ סוג תוכן
‎.png image/png
‎.jpg image/jpg
‎.jpeg image/jpeg

אחזור מקור

כדי לאחזר מקור ספציפי שנוסף ל-Notebook, משתמשים בשיטה 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"

מחליפים את מה שכתוב בשדות הבאים:

  • ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:
    • us לאזור מרובה בארה"ב
    • eu לאזור עם מספר אזורים באיחוד האירופי
    • global למיקום הגלובלי
    מידע נוסף זמין במאמר בנושא הגדרת מאגר נתונים במספר אזורים.
  • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
  • LOCATION: המיקום הגיאוגרפי של מאגר הנתונים, כמו global. מידע נוסף מופיע במאמר מיקומים.
  • NOTEBOOK_ID: המזהה הייחודי שקיבלתם כשנוצר מחברת ה-Notebook. מידע נוסף זמין במאמר יצירת מחברת.
  • SOURCE_ID: המזהה של המקור שקיבלתם כשנוסף ל-Notebook.

אם הבקשה מבוצעת בהצלחה, אמורה להתקבל תגובת JSON שדומה לזו:

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

    }
  ]
}

מחיקת מקורות נתונים מ-Notebook

כדי למחוק מקורות נתונים בכמות גדולה ממחברת, משתמשים בשיטה 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"
      ]
    }'

מחליפים את מה שכתוב בשדות הבאים:

  • ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:
    • us לאזור מרובה בארה"ב
    • eu לאזור עם מספר אזורים באיחוד האירופי
    • global למיקום הגלובלי
    מידע נוסף זמין במאמר בנושא הגדרת מאגר נתונים במספר אזורים.
  • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
  • LOCATION: המיקום הגיאוגרפי של מאגר הנתונים, כמו global. מידע נוסף מופיע במאמר מיקומים.
  • NOTEBOOK_ID: המזהה הייחודי של המחברת.
  • SOURCE_RESOURCE_NAME: שם המשאב המלא של מקור הנתונים שרוצים למחוק. התבנית של השדה הזה היא: projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/source/SOURCE_ID.

אם הבקשה מצליחה, אמור להתקבל אובייקט JSON ריק.

המאמרים הבאים