ノートブックを作成したら、さまざまなコンテンツ タイプをデータソースとして追加できます。ファイルは一括でアップロードすることも、個別にアップロードすることもできます。ソースには、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 マルチリージョンの場合:
eu-
- グローバル ロケーションの場合は
global-
- 米国のマルチリージョンの
PROJECT_NUMBER
: Google Cloud プロジェクトの番号。LOCATION
: データストアの地理的なロケーション(global
など)。詳細については、ロケーションをご覧ください。NOTEBOOK_ID
: ノートブックの固有識別子。USER_CONTENT
: データソースのコンテンツ。
コンテンツとして追加できるデータソースは、次のいずれか 1 つのみです。
Google ドキュメントまたは Google スライドで構成される Google ドライブのコンテンツの場合は、以下を追加します。
"googleDriveContent": { "documentId": "DOCUMENT_ID_GOOGLE", "mimeType": "MIME_TYPE", "sourceName": "DISPLAY_NAME_GOOGLE" }
次のように置き換えます。
DOCUMENT_ID_GOOGLE
: Google ドライブ内のファイルの ID。この ID はファイルの URL に表示されます。ファイルのドキュメント ID を取得するには、ファイルを開きます。URL のパターンはhttps://docs.google.com/FILE_TYPE/d/DOCUMENT_ID_GOOGLE/edit?resourcekey=RESOURCE_KEY
です。MIME_TYPE
: 選択したドキュメントの MIME タイプ。Google ドキュメントの場合はapplication/vnd.google-apps.document
、Google スライドの場合はapplication/vnd.google-apps.presentation
を使用します。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": { "url": "URL_YOUTUBE" }
URL_YOUTUBE
は、データソースとしてアップロードする YouTube 動画の URL に置き換えます。
リクエストが成功すると、次の JSON のような source
オブジェクトのインスタンスがレスポンスとして返されます。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 マルチリージョンの場合:
eu-
- グローバル ロケーションの場合は
global-
- 米国のマルチリージョンの
PROJECT_NUMBER
: Google Cloud プロジェクトの番号。LOCATION
: データストアの地理的なロケーション(global
など)。詳細については、ロケーションをご覧ください。NOTEBOOK_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 マルチリージョンの場合:
eu-
- グローバル ロケーションの場合は
global-
- 米国のマルチリージョンの
PROJECT_NUMBER
: Google Cloud プロジェクトの番号。LOCATION
: データストアの地理的なロケーション(global
など)。詳細については、ロケーションをご覧ください。NOTEBOOK_ID
: ノートブックの作成時に受け取った一意の識別子。詳細については、ノートブックを作成するをご覧ください。SOURCE_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 マルチリージョンの場合:
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 オブジェクトが返されます。
次のステップ
- プログラムでノートブックの音声概要を作成します。