เพิ่มเอกสารประเภทข้อความ
เพิ่มเอกสารประเภทข้อความ
อัปโหลดเอกสาร ประเภทข้อความ แบบกลุ่ม ระบบจะประมวลผลทีละไฟล์ด้วยกระบวนการตัดแบ่งเนื้อหา (chunking/slicing), ฝังข้อมูล (embedding/vectorization) และจัดเก็บเพื่อให้ได้รหัสเอกสารใหม่
หมายเหตุ:
โมเดล embedding จะใช้โมเดลค่าเริ่มต้น ไม่สามารถกำหนดเองใน API ได้
ผลลัพธ์ที่ได้จะเป็นเพียงผลการอัปโหลด ยังไม่ใช่ผล embedding สุดท้าย สามารถตรวจสอบผลลัพธ์สุดท้ายได้ผ่าน API "Query Document Status"
วิธีการเรียกใช้งาน
POST
URL สำหรับเรียกใช้งาน
https://api-${endpoint}.gptbots.ai/v1/bot/doc/text/add
การยืนยันตัวตนในการเรียกใช้งาน
โปรดดูรายละเอียดการยืนยันตัวตนในหัวข้อ Overview
ตัวอย่างการเรียกใช้งาน
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",
"chunk_token": 700,
"splitter": "\n",
"files": [
{
"file_url": "https://www.gptbots.ai/docs/article_1.pdf",
"file_base64": "SGVsbG8sIEJhc2U2NCBFbmNvZGluZyE=",
"source_url": "https://www.gptbots.ai/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",
"chunk_token": 700,
"splitter": "\n",
"files": [
{
"file_url": "https://www.gptbots.ai/docs/article_1.pdf",
"file_base64": "SGVsbG8sIEJhc2U2NCBFbmNvZGluZyE=",
"source_url": "https://www.gptbots.ai/docs/article_1.pdf",
"file_name": "article_1.pdf"
}
]
}'
บล็อกโค้ดนี้ในหน้าต่างลอย
Header ของคำขอ
| ชื่อฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| 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 |
| chunk_token | Integer | ไม่จำเป็น | จำนวน token สูงสุดต่อหนึ่ง chunk ขณะตัดแบ่งเนื้อหา ค่าเริ่มต้น 600 ช่วงที่รองรับ 1-1000 หมายเหตุ: ต้องระบุ chunk_token หรือ splitter อย่างใดอย่างหนึ่ง หากไม่ระบุจะเกิดข้อผิดพลาด หากระบุทั้งสองจะใช้ splitter เป็นหลัก |
| splitter | String | ไม่จำเป็น | ตัวแบ่งข้อความขณะตัด chunk ค่าเริ่มต้นว่าง สามารถใช้ "custom string" ได้ หมายเหตุ: ต้องระบุ chunk_token หรือ splitter อย่างใดอย่างหนึ่ง หากไม่ระบุจะเกิดข้อผิดพลาด หากระบุทั้งสองจะใช้ splitter เป็นหลัก |
การตอบกลับ
ตัวอย่างการตอบกลับ
{
"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 | รหัสเอกสารที่เพิ่ม |
| doc_name | String | ชื่อเอกสารที่เพิ่ม |
| failed | Array<Object> | รายชื่อไฟล์ที่เพิ่มไม่สำเร็จ |
การตอบกลับเมื่อไม่สำเร็จ
| ชื่อฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| code | Int | รหัสข้อผิดพลาด |
| message | String | รายละเอียดข้อผิดพลาด |
