你可以使用 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"
}