將內容上傳至 Google 助理

你可以使用 API 將檔案上傳至助理。與助理對話時,即可使用這些檔案。如要瞭解如何在助理中上傳檔案,請參閱「上傳檔案並與助理對話」。

如要使用 API 將內容上傳至助理,請執行下列 curl 指令:

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Goog-User-Project: PROJECT_ID" \
"https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/sessions/SESSION_ID:addContextFile" \
-d '{
      "name": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/sessions/SESSION_ID",
      "fileName": "FILE_NAME",
      "mimeType": "MIME_TYPE",
      "fileContents": "BASE64_ENCODED_FILE",
    }'

更改下列內容:

  • PROJECT_ID:您的 Google Cloud 專案 ID。
  • APP_ID:應用程式的 ID。
  • SESSION_ID:工作階段 ID。如「儲存工作階段資訊並取得回應」一文所示,您可以從建立工作階段的回應中取得這個 ID。
  • FILE_NAME:檔案名稱。
  • MIME_TYPE:檔案的 MIME 類型。
  • BASE64_ENCODED_FILE:資料的 Base64 表示法 (ASCII 字串)。這個字串應類似下列字串:/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==

指令和回應範例:

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Goog-User-Project: 1234" \
"https://discoveryengine.googleapis.com/v1alpha/projects/1234/locations/global/collections/default_collection/engines/myapp/sessions/16002628354770206943:addContextFile" \
-d '{
      "name": "projects/1234/locations/global/collections/default_collection/engines/myapp/sessions/16002628354770206943",
      "fileName": "Hello World.pdf",
      "mimeType": "application/pdf",
      "fileContents": JVBERi0xLjQKJdPr6eEKMSAwIG9iago8PC9UaXRsZSAoSGVsbG8gd29ybGQpCi9Qcm9kdWNlciAoU2tpYS9QREYgbTEzMCBHb29nbGUgRG9jcyBSZW5kZXJlcik+PgplbmRvYmoKMyAwIG9iago8PC..............KMDAwMDAxNDk0NCAwMDAwMCBuIAp0cmFpbGVyCjw8L1NpemUgMTIKL1Jvb3QgNyAwIFIKL0luZm8gMSAwIFI+PgpzdGFydHhyZWYKMTU0NjYKJSVFT0YK",
    }'
------------------
{
  "session": "projects/1234/locations/global/collections/default_collection/engines/myapp/sessions/16002628354770206943",
  "fileId": "11157546467692423460",
  "tokenCount": "258"
}