logo
開發者文件
搜尋
新增文字類型文件

新增文字類型文件

批量上傳文字類型文件,這些文件將依序進行分段/切片、嵌入/向量表示及儲存,以取得新的文件 ID。

注意:
可透過 embedding_model_version_id 指定嵌入模型;未填寫時使用系統預設的嵌入模型。
僅提供上傳結果,最終的嵌入結果可透過「查詢文件狀態」API 獲取。

請求方法

POST

請求 URL

https://api-${endpoint}.gptbots.ai/v1/bot/doc/text/add

請求驗證

請參閱概覽了解驗證詳情。

請求

請求範例

curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/text/add' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "knowledge_base_id": "67457fea6f658672d6482542", "embedding_model_version_id": "6620f06262390a0be1411c5d", "chunk_token": 700, "splitter": "\n", "files": [ { "file_url": "https://www.gptbots.ai/zh_TW/docs/article_1.pdf", "file_base64": "SGVsbG8sIEJhc2U2NCBFbmNvZGluZyE=", "source_url": "https://www.gptbots.ai/zh_TW/docs/article_1.pdf", "file_name": "article_1.pdf" } ] }'
                      
                      curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/text/add' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
    "knowledge_base_id": "67457fea6f658672d6482542",
    "embedding_model_version_id": "6620f06262390a0be1411c5d",
    "chunk_token": 700,
    "splitter": "\n",
    "files": [
        {
            "file_url": "https://www.gptbots.ai/zh_TW/docs/article_1.pdf",
            "file_base64": "SGVsbG8sIEJhc2U2NCBFbmNvZGluZyE=",
            "source_url": "https://www.gptbots.ai/zh_TW/docs/article_1.pdf",
            "file_name": "article_1.pdf"
        }
    ]
}'

                    
此代碼塊在浮窗中顯示

請求標頭

欄位 類型 描述
Authorization Bearer ${API Key} 使用 Authorization: Bearer ${API Key} 進行驗證。API Key 可從 API Key 頁面獲取。
Content-Type application/json 資料類型,設為 application/json

請求參數

欄位 類型 必填 描述
knowledge_base_id String 文件新增的目標知識庫。如果未填,預設為「Default」知識庫。
files Array<Object> 要新增的文件列表。支援一次最多新增 20 個文件。
file_url String 要新增文件的 URL。支援格式:pdf/txt/md/doc/docx。PDF 最大 30MB,其他格式最大 10MB。注意:URL 或 base64 必須擇一提供,若兩者皆有則以 base64 為主。
file_base64 String 要新增文件的 base64。支援格式:pdf/txt/md/doc/docx。PDF 最大 30MB,其他格式最大 10MB。注意:URL 或 base64 必須擇一提供,若兩者皆有則以 base64 為主。
file_name String 要新增文件的名稱,1-200 字元。
source_url String 要新增文件的來源 URL。必須符合 URL 格式規範。
embedding_model_version_id String 用於向量化本批文件的嵌入模型版本 ID。未填寫時使用系統預設的嵌入模型。取值為取得模型清單 API 回傳的 EMBEDDING 分組下的 modelId
chunk_token Integer 分段時每個知識段的最大 token 數量。預設值為 600,有效範圍為 1-1000。
注意chunk_tokensplitter 必須指定其一,當兩者皆指定時,以 splitter 為主。若皆未提供,介面仍會回傳成功,但文件會在向量化階段處理失敗(狀態為 FAIL_STORE),請務必至少提供其一。
splitter String 用於文字分段的分段符。預設為空,可自訂字串作為分段符。
注意chunk_tokensplitter 必須指定其一,當兩者皆指定時,以 splitter 為主。若皆未提供,介面仍會回傳成功,但文件會在向量化階段處理失敗(狀態為 FAIL_STORE),請務必至少提供其一。

回應

回應範例

{ "doc": [ { "doc_id": "xxxxxx", "doc_name": "test_1.txt" }, { "doc_id": "xxxxxx", "doc_name": "test_2.pdf" } ], "failed": [ "file_1", "file_2" ] }
                      
                      {
    "doc": [
        {
            "doc_id": "xxxxxx",
            "doc_name": "test_1.txt"
        },
        {
            "doc_id": "xxxxxx",
            "doc_name": "test_2.pdf"
        }
    ],
    "failed": [
        "file_1",
        "file_2"
    ]
}

                    
此代碼塊在浮窗中顯示

成功回應

欄位 類型 描述
doc Array<Object> 新增文件的列表。
doc_id String 新增文件的 ID。
doc_name String 新增文件的名稱。
failed Array<Object> 新增失敗的文件名稱列表。

失敗回應

欄位 類型 描述
code Int 錯誤代碼。
message String 錯誤詳情。

錯誤碼

Code Message
40000 參數錯誤
40000 The embedding_model_version_id does not exist: 傳入的模型版本 ID 在平台模型目錄中不存在
40000 The embedding_model_version_id is not an embedding model: 傳入的模型不是嵌入模型(例如傳了對話模型的 modelId
40000 The embedding_model_version_id is not an available embedding model: 該嵌入模型的廠商暫不支援透過 API 指定
40127 開發者驗證失敗
20059 代理已刪除

注意:embedding_model_version_id 驗證未通過時,整批文件都不會被建立,也不會出現在 failed 清單中,而是直接回傳上述錯誤回應。