建立筆記本後,您可以將各種內容類型新增為資料來源。你可以批次上傳,也可以逐一上傳。來源包括 Google 文件、Google 簡報、原始文字、網頁內容和 YouTube 影片。
本頁面說明如何執行下列工作:
事前準備
如要將 Google 文件或 Google 簡報新增為資料來源,請使用 Google 使用者憑證授權存取 Google 雲端硬碟。如要這麼做,請執行下列
gloud auth login
指令,然後按照 CLI 中的指示操作。
gcloud auth login --enable-gdrive-access
批次新增資料來源
如要將來源新增至筆記本,請呼叫 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
:筆記本的專屬 ID。USER_CONTENT
:資料來源內容。
你只能新增下列其中一個資料來源做為內容:
如果是 Google 文件或 Google 簡報等 Google 雲端硬碟內容,請新增:
"googleDriveContent": { "documentId": "DOCUMENT_ID_GOOGLE", "mimeType": "MIME_TYPE", "sourceName": "DISPLAY_NAME_GOOGLE" }
更改下列內容:
DOCUMENT_ID_GOOGLE
:Google 雲端硬碟中的檔案 ID。這個 ID 會顯示在檔案的網址中。如要取得檔案的文件 ID,請開啟檔案。網址模式為:https://docs.google.com/FILE_TYPE/d/DOCUMENT_ID_GOOGLE/edit?resourcekey=RESOURCE_KEY
。MIME_TYPE
:所選文件的 MIME 類型。使用application/vnd.google-apps.document
適用於 Google 文件,或application/vnd.google-apps.presentation
適用於 Google 簡報。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
:要上傳為資料來源的內容網址。DISPLAY_NAME_WEB
:資料來源的顯示名稱。
如果是影片內容,請新增:
"videoContent": { "url": "URL_YOUTUBE" }
將
URL_YOUTUBE
替換為要上傳做為資料來源的 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
:筆記本的專屬 ID。
如果要求成功,您應該會收到類似以下的 JSON 回應。
{
"sourceId": {
"id": "SOURCE_ID"
}
}
支援的內容類型
上傳做為來源的檔案必須是支援的格式。
支援的文件內容類型如下:
副檔名 | 內容類型 |
---|---|
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 |
擷取來源
如要擷取新增至筆記本的特定來源,請使用 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
:建立筆記本時收到的專屬 ID。詳情請參閱「建立記事本」。SOURCE_ID
:將來源新增至筆記本時收到的來源 ID。
如果要求成功,您應該會收到類似以下的 JSON 回應。
{
"sources": [
{
"sourceId": {
"id": "SOURCE_ID"
},
"title": "DISPLAY_NAME",
"metadata": {
"wordCount": 148,
"tokenCount": 160
},
"settings": {
"status": "SOURCE_STATUS_COMPLETE"
},
"name": "SOURCE_RESOURCE_NAME"
}
]
}
從筆記本中刪除資料來源
如要從筆記本中大量刪除資料來源,請使用 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
:筆記本的專屬 ID。SOURCE_RESOURCE_NAME
:要刪除的資料來源完整資源名稱。這個欄位的格式為:projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID/source/SOURCE_ID
。
如果要求成功,您應該會收到空白的 JSON 物件。