Contact
Line : comsiam
Contact
Line : comsiam

Gemini อัปโหลดไฟล์ไม่ได้เกิดได้จากหลายสาเหตุ ตั้งแต่ไฟล์มีขนาดใหญ่เกินข้อจำกัด จำนวนไฟล์มากเกินไป รูปแบบไฟล์ไม่รองรับ ไฟล์เสีย การเชื่อมต่ออินเทอร์เน็ตมีปัญหา ไปจนถึงการเลือกวิธีส่งไฟล์ผิดใน Gemini API
สิ่งแรกที่ต้องแยกให้ออกคือกำลังใช้ Gemini Apps หรือ Gemini API เพราะทั้งสองระบบมีข้อจำกัดและวิธีแก้แตกต่างกัน
สำหรับ Gemini Apps ปัจจุบันสามารถอัปโหลดไฟล์ที่รองรับได้สูงสุดประมาณ 10 ไฟล์ต่อ Prompt โดยวิดีโอแต่ละไฟล์รองรับขนาดสูงสุด 2 GB ส่วนไฟล์ประเภทอื่นที่รองรับมีขนาดสูงสุด 100 MB
สำหรับ Gemini API วิธีส่งไฟล์มีหลายแบบ เช่น Inline Data, Files API, Google Cloud Storage Registration และ External URL โดยควรเลือกตามขนาดและตำแหน่งของไฟล์
แนวทางแก้แบบเร็วคือ
อัปโหลดไม่ได้
↓
ตรวจว่าใช้ Gemini Apps หรือ Gemini API
↓
ตรวจชนิดไฟล์
↓
ตรวจขนาด
↓
ลดจำนวนไฟล์
↓
ลองอัปโหลดไฟล์เดียว
↓
อัปโหลดใหม่
↓
ตรวจ Account / Permission
↓
ตรวจ Error
↓
เปลี่ยนวิธีส่งไฟล์ถ้าใช้ API
คำว่า Gemini อัปโหลดไฟล์ไม่ได้สามารถหมายถึงสองระบบ
คือหน้า Chat ที่ผู้ใช้เปิด Gemini แล้วกดเพิ่มไฟล์เพื่อ
คือ Developer ส่งไฟล์จาก
ไปให้ Gemini ผ่าน API
ตัวอย่าง
Gemini Apps
User → Gemini → File
Gemini API
Application → File API → Gemini
ดังนั้นก่อนแก้ต้องรู้ว่า Error เกิดที่ระบบไหน
Gemini Apps ปัจจุบันรองรับการเพิ่มไฟล์ที่รองรับได้สูงสุดประมาณ
10 ไฟล์ต่อ Prompt
ขึ้นอยู่กับ Availability ของ Feature
หาก Upload Folder แต่ใน Folder มีหลายไฟล์ ระบบจะนับไฟล์แต่ละไฟล์รวมเข้า Limit ด้วย
ตัวอย่าง
Folder
├── file1.pdf
├── file2.pdf
├── file3.pdf
├── file4.pdf
└── file5.pdf
=
5 files
ถ้าอัปโหลดไฟล์จำนวนมากแล้วไม่ผ่าน ให้ลองลดเหลือ
1 ไฟล์
ก่อน
ถ้าไฟล์เดียวผ่าน แสดงว่าปัญหาอาจเกี่ยวกับจำนวนไฟล์หรือ Request ที่ใหญ่เกินไป
ข้อจำกัดปัจจุบันที่สำคัญคือ
แต่ละวิดีโอสูงสุด
2 GB
โดยทั่วไปสูงสุด
100 MB ต่อไฟล์
ดังนั้นหาก PDF มีขนาด
145 MB
ก็อาจอัปโหลดผ่าน Gemini Apps ไม่ได้
วิธีแก้คือ
ขนาดไฟล์ไม่ใช่ Limit เดียว
Gemini Apps ยังมีข้อจำกัดเรื่องความยาววิดีโอ
สำหรับบัญชีพื้นฐานปัจจุบัน Total Video Length ที่อัปโหลดใน Prompt อยู่ที่ประมาณ
5 นาที
ส่วน Google AI Pro หรือ Google AI Ultra สามารถรองรับ Total Upload Length สูงขึ้นตาม Plan ปัจจุบัน
ดังนั้น Video
500 MB
แต่ยาว 40 นาที
อาจติดข้อจำกัดด้าน Duration แม้ขนาดไม่ถึง 2 GB
Gemini Apps ปัจจุบันมี Total Audio Length สำหรับระดับพื้นฐานประมาณ
10 นาที
และ Plan ที่สูงขึ้นสามารถรองรับระยะเวลามากขึ้น
หาก Audio File มีขนาดเล็กแต่ยาวมาก อาจชน Duration Limit ได้
ดังนั้นต้องดูทั้ง
File Size
+
Duration
ไม่ใช่ดู MB อย่างเดียว
Gemini Apps รองรับ ZIP ตามข้อจำกัดปัจจุบัน แต่ ZIP มีเงื่อนไขเฉพาะ
โดยทั่วไป ZIP สามารถมีไฟล์ได้ประมาณ
สูงสุด 10 ไฟล์
และ ZIP มีขนาดสูงสุด
100 MB
อีกข้อสำคัญคือ ZIP สำหรับ Workflow นี้ไม่ควรมี
Video
หรือ
Audio
อยู่ภายใน
ถ้า ZIP อัปโหลดไม่ผ่าน ให้ลอง Extract แล้วส่งไฟล์ที่ต้องการโดยตรงแทน
Gemini Apps สามารถเพิ่ม Code Folder หรือ GitHub Repository ใน Chat ได้ตาม Feature ที่รองรับ
ข้อจำกัดปัจจุบันสำหรับ Code Folder/Repository คือประมาณ
1 Code Folder หรือ 1 GitHub Repository ต่อ Chat
โดยรองรับไฟล์ภายในสูงสุดประมาณ
5,000 files
และขนาดรวมสูงสุดประมาณ
100 MB
ถ้า Project มี
node_modules
vendor
build
dist
cache
logs
จำนวนมาก ควรตัดไฟล์ที่ไม่จำเป็นออกก่อน
การอัปโหลด Dependency ทั้งหมดมักไม่ได้ช่วยให้ Gemini วิเคราะห์ Source Code ดีขึ้น
ก่อนส่ง Codebase ควรเหลือเฉพาะ
src/
app/
config/
package.json
requirements.txt
README
ไฟล์ที่เกี่ยวกับปัญหา
ไม่จำเป็นต้องส่ง
node_modules/
vendor/
.cache/
tmp/
logs/
large binaries/
ช่วยลดทั้ง
ทำให้ AI วิเคราะห์ได้ตรงจุดมากขึ้น
เริ่มจากตรวจ
Gemini Apps ใช้ Limit ของไฟล์ประเภททั่วไปประมาณ 100 MB
ลองเปิด PDF ด้วย Browser หรือ PDF Reader
ถ้าเปิดไม่ได้หรือมี Page เสีย ควร Export ใหม่
แม้ Upload สำเร็จ ไฟล์ขนาดใหญ่มากก็อาจใช้ Context มาก
เช่น
document.pdf
↓
part-1.pdf
part-2.pdf
part-3.pdf
จากนั้นวิเคราะห์ทีละส่วน
สำหรับ API ต้องระวังว่า Inline PDF มี Limit ที่แตกต่างจาก Gemini Apps ซึ่งจะอธิบายต่อด้านล่าง
Google แนะนำตรง ๆ ว่าหาก Gemini Apps แจ้งว่าไม่สามารถวิเคราะห์ไฟล์ได้อย่างถูกต้อง ให้ลอง
อัปโหลดไฟล์ใหม่
ดังนั้นขั้นตอนแรกไม่จำเป็นต้องซับซ้อน
ใช้ Workflow
Remove file
↓
Upload again
↓
ส่ง Prompt สั้น ๆ
เช่น
สรุปไฟล์นี้เป็น 5 ข้อ
อย่าเริ่มด้วย Prompt ยาวหลายพันคำใน Test แรก
หาก Upload 8 ไฟล์แล้ว Error
อย่าแก้ทั้ง 8 ไฟล์พร้อมกัน
ทดลอง
File 1
→ ผ่าน?
File 2
→ ผ่าน?
File 3
→ ผ่าน?
จะช่วยหาได้ว่า
นี่เป็นวิธี Debug ที่เร็วกว่าการ Upload ทุกไฟล์ซ้ำพร้อมกัน
ในบางระบบชื่อไฟล์ที่ซับซ้อนมากอาจทำให้ Workflow จัดการยาก
สำหรับการทดสอบสามารถเปลี่ยนชื่อเป็นแบบง่าย เช่น
report.pdf
invoice.xlsx
video.mp4
photo.jpg
แทนชื่อที่มี
แม้ไม่ใช่ข้อจำกัดหลักของ Gemini แต่ช่วยตัดปัจจัยปัญหาในขั้น Debug
Gemini Apps ระบุว่ารองรับ File Type ส่วนใหญ่
แต่ไม่ได้หมายความว่า
ทุก Extension บนโลก
จะรองรับ
หากไฟล์เฉพาะทางไม่ผ่าน เช่น Format จาก Software เฉพาะ
ให้ Export เป็น Format ทั่วไปก่อน
ตัวอย่าง
Special format
↓
PDF
CSV
TXT
PNG
JPEG
ตามประเภทข้อมูล
ถ้า Excel หรือ Spreadsheet มีปัญหา ลอง
ข้อมูลตารางไม่จำเป็นต้องส่ง Workbook ขนาดใหญ่มากเสมอไป
ถ้าต้องวิเคราะห์เพียง Sheet เดียว การ Export เฉพาะ Sheet นั้นช่วยลด Complexity ได้มาก
ตรวจว่าเป็น Format ทั่วไป เช่น
JPEG
PNG
WebP
BMP
สำหรับ Gemini API File Input ปัจจุบันรองรับ MIME Type รูปภาพหลักเหล่านี้
ถ้ารูปมาจาก Software เฉพาะหรือมี Format แปลก ให้ Convert เป็น
.jpg
หรือ
.png
ก่อน
ไฟล์ใหญ่ต้องใช้เวลาส่งข้อมูล
หาก Connection
หลุด
ช้า
Packet loss สูง
สลับ Wi-Fi/มือถือ
ระหว่าง Upload อาจทำให้ Upload ไม่สมบูรณ์
ลอง
ถ้าไฟล์ 1 MB ผ่านแต่ไฟล์ 90 MB ล้มเหลวซ้ำ อาจเกี่ยวข้องกับทั้ง Network และ Limit
ถ้า Mobile App Upload ไม่ผ่าน สามารถลอง Gemini Web App จาก Browser
หรือหาก Browser หนึ่งมีปัญหา ลอง Browser อีกตัวที่อัปเดตล่าสุด
เป้าหมายคือแยกว่า
ปัญหาอยู่ที่ File
หรือ
Application/Browser
ถ้าไฟล์เดียวกัน Upload ได้จากอีกอุปกรณ์ แสดงว่า File อาจไม่ได้เสีย
Browser Extension บางประเภทสามารถรบกวน
หากพบ Error แปลก ๆ สามารถทดลอง
Incognito / Private Window
หรือปิด Extension ชั่วคราว
ถ้าทำงานได้ แสดงว่าปัญหาอาจอยู่ใน Browser Environment มากกว่าตัวไฟล์
การ Upload และวิเคราะห์ไฟล์ใน Gemini Apps ต้องใช้ Account และ Feature ที่รองรับ
ตรวจว่า Login Google Account ถูกบัญชี
โดยเฉพาะผู้ที่มี
Personal Account
Work Account
School Account
พร้อมกันใน Browser
บางครั้ง User คิดว่ากำลังใช้บัญชีส่วนตัว แต่ Tab เปิดด้วยบัญชีองค์กร
หากใช้บัญชีองค์กรหรือโรงเรียน และต้องการเพิ่มไฟล์จาก Google Drive
Google ระบุว่า Administrator ของ Workspace ต้องเปิดสิทธิ์ที่เกี่ยวข้องกับ Gemini Apps ให้กับองค์กรก่อน
ดังนั้นถ้า
Upload จากเครื่องได้
แต่
Add from Drive ไม่ได้
ควรตรวจ Workspace Permission
ไม่จำเป็นต้องเป็นปัญหาที่ไฟล์
ถ้าไฟล์อยู่ใน Drive แต่ Account ที่เปิด Gemini ไม่มี Permission
Gemini ก็ไม่สามารถเข้าถึงไฟล์ได้ตามปกติ
ตรวจ
Owner
Viewer
Editor
Shared account
และ Account ที่กำลังใช้งาน
โดยเฉพาะองค์กรที่มีหลาย Workspace Account
นี่เป็นจุดที่ Developer มักสับสน
ตัวอย่าง
Gemini Apps:
ไฟล์ทั่วไปสูงสุด 100 MB
Gemini API Inline PDF:
สูงสุด 50 MB
ดังนั้น PDF ขนาด 70 MB อาจอยู่ในสถานการณ์ที่
Gemini Apps
→ อาจอยู่ภายใน File Size Limit
Gemini API Inline
→ ใหญ่เกิน Inline PDF Limit
แต่สามารถเปลี่ยนไปใช้ Files API ตามวิธีที่รองรับ
ปัจจุบันมีวิธีสำคัญ ได้แก่
| วิธี | เหมาะกับ |
|---|---|
| Inline Data | ไฟล์เล็ก ใช้ครั้งเดียว |
| Files API | ไฟล์ใหญ่ หรือใช้ซ้ำ |
| GCS URI Registration | ไฟล์ใหญ่ที่อยู่ใน Google Cloud Storage |
| External URL | ไฟล์ Public/Signed URL ที่เข้าถึงได้ |
การเลือกวิธีผิดเป็นสาเหตุหนึ่งที่ทำให้ File Request Error
Inline Data คือใส่ข้อมูลไฟล์เข้า Request โดยตรง
แนวคิด
Application
↓
Base64 / Binary Data
↓
Gemini Request
เหมาะกับ
ข้อจำกัดปัจจุบันคือ Request/Payload รวมประมาณ
100 MB
และ PDF แบบ Inline จำกัดประมาณ
50 MB
ดังนั้นถ้า Request ใหญ่เกินนี้ควรเปลี่ยนวิธี
Files API ถูกออกแบบมาสำหรับไฟล์ขนาดใหญ่หรือไฟล์ที่ต้องใช้กับหลาย Request
ข้อจำกัดพื้นฐานปัจจุบันคือ
สูงสุดประมาณ 2 GB ต่อไฟล์
และสามารถเก็บไฟล์ใน Project รวมประมาณ
20 GB
ไฟล์ที่ Upload ผ่าน Files API จะถูกเก็บชั่วคราวประมาณ
48 ชั่วโมง
หลังจากนั้นไม่ควรออกแบบระบบให้พึ่ง URI เดิมตลอดไป
คือ Storage รวมต่อ Project สำหรับไฟล์ที่ Upload ผ่าน Files API ตามข้อจำกัดปัจจุบัน
สมมติมี
10 Files
×
2 GB
=
20 GB
ก็อาจใช้ Storage Allowance เต็ม
ดังนั้น Application ที่ Upload ไฟล์จำนวนมากควรจัดการ Lifecycle ของไฟล์
ไม่ใช่ Upload ทุกอย่างไว้แล้วไม่ตรวจสถานะ
Files API เป็น Temporary Storage
เหมาะกับ Workflow
Upload
↓
Analyze
↓
Ask Follow-up
↓
Complete
ภายในช่วงเวลาที่ไฟล์ยังอยู่
ถ้าต้องการ File Persistence ระยะยาวควรเก็บ Original File ใน Storage ของ Application เอง
แล้ว Upload/Register ใหม่เมื่อจำเป็น
หาก File อยู่ใน Google Cloud Storage อยู่แล้ว สามารถพิจารณา GCS URI Registration ตาม API ปัจจุบัน
ข้อดีคือไม่ต้อง Upload File เดิมผ่าน Client ซ้ำ
เหมาะกับ
ข้อจำกัดและ Permission ต้องตั้งให้ถูกตาม Project
Gemini API รองรับ Public HTTPS URL หรือ Signed URL ตาม Input Method ปัจจุบัน
เหมาะกับไฟล์ที่อยู่บน
โดยไม่ต้อง Download แล้ว Upload ใหม่ทุกครั้ง
แต่ URL ต้องเข้าถึงได้ตามเงื่อนไข
ถ้า URL ต้อง Login ผ่าน Browser Session
Gemini Server อาจไม่สามารถดึงไฟล์นั้นได้
สมมติ URL เปิดได้เฉพาะเมื่อ
User Login
+
Cookie
Gemini API Server ไม่มี Browser Session ของ User
จึงอาจ Fetch ไม่ได้
สำหรับ Private Object Storage ควรใช้
Signed URL
ที่มี Permission และ Expiration เหมาะสม
หรือใช้วิธี Input อื่นที่ Google รองรับ
Gemini API ใช้ MIME Type เพื่อรู้ว่า Input คืออะไร
ตัวอย่าง
application/pdf
image/jpeg
image/png
video/mp4
text/plain
text/csv
ถ้าส่ง
ไฟล์ PDF
แต่ประกาศ MIME Type ผิด
API อาจอ่านผิดหรือ Error
จึงควรตรวจ MIME Type ที่ Upload Response ให้มา หรือกำหนดให้ตรงกับ File จริง
รายการสำคัญที่รองรับใน File Input Method ปัจจุบันมี เช่น
text/plain
text/html
text/css
text/xml
text/csv
text/rtf
text/javascript
application/json
application/pdf
image/jpeg
image/png
image/webp
image/bmp
รวมถึง Video Format หลักหลายชนิด
ทั้งนี้ Google ระบุว่ารายการที่รองรับสามารถเปลี่ยนตาม Model และ Tokenizer ได้
ดังนั้นหาก Format ไม่ผ่านควรตรวจ Documentation ของ Model ปัจจุบัน
นี่เป็นสาเหตุสำคัญของ Developer Error
หลัง Upload Video ไป Files API ไม่ควรคิดว่าไฟล์พร้อมใช้ทันทีเสมอไป
File อาจอยู่สถานะ
PROCESSING
ต้องรอจนเป็น
ACTIVE
ก่อนส่งไปให้โมเดลวิเคราะห์
ถ้าส่งเร็วเกินไปอาจเกิด Error หรือผลลัพธ์ไม่เป็นไปตามที่คาด
แนวคิดตาม SDK ปัจจุบัน
import time
from google import genai
client = genai.Client()
video = client.files.upload(
file="video.mp4"
)
while (
not video.state
or video.state.name != "ACTIVE"
):
time.sleep(5)
video = client.files.get(
name=video.name
)
print("Video is ready")
จากนั้นจึงนำ URI ไปใช้กับ Gemini
Production Code ไม่ควร Loop รอ ACTIVE ตลอดไป
ต้องตรวจ
FAILED
ด้วย
แนวคิดที่เหมาะคือ
PROCESSING
↓
ตรวจซ้ำ
ACTIVE
↓
ใช้งาน
FAILED
↓
หยุดและแจ้ง Error
พร้อมมี Timeout ของ Application
ถ้า File Processing มีปัญหา
Code แบบ
while not ACTIVE:
wait
โดยไม่มี
สามารถทำให้ Worker ค้าง
Production ต้องกำหนด Failure Policy
ถ้า Gemini API คืน
400 Bad Request
ควรตรวจ
400 ไม่ได้หมายความว่า API Key ผิดเสมอไป
มักเป็น Request ที่ API ไม่สามารถประมวลผลตาม Format ที่ส่ง
หาก Upload หรืออ่าน Resource ไม่ได้และได้
403
ควรตรวจ
โดยเฉพาะเมื่อ File อยู่ใน Resource ภายนอก
ถ้า File URI หรือ Resource ไม่พบ
อาจได้
404
Files API เก็บ File ชั่วคราว 48 ชั่วโมง
ดังนั้น Application ที่เก็บ URI ไว้นานแล้วนำกลับมาใช้ภายหลังต้องคำนึงถึง Expiration
วิธีแก้อาจต้อง
Upload File ใหม่
↓
รับ URI ใหม่
↓
ส่ง Request
ถ้า Upload หรือ Analysis เกิดพร้อมกันจำนวนมาก
อาจชน
แล้วได้
429 RESOURCE_EXHAUSTED
โดยเฉพาะ File Request ที่มี Token สูง
วิธีแก้ไม่ใช่เพิ่ม API Key
ควร
ตาม Project
สมมติ Upload สำเร็จ
แต่ตอนวิเคราะห์ File Context มีขนาดใหญ่
หากส่ง
20 files
×
large context
พร้อมกันหลาย Request
สามารถชน Input Tokens per Minute
ดังนั้น
Upload สำเร็จ
ไม่ได้หมายความว่า
วิเคราะห์ได้ไม่จำกัด
Upload Limit กับ Model Rate Limit เป็นคนละเรื่อง
File สามารถ Upload ผ่านได้ แต่เนื้อหาที่โมเดลต้องประมวลผลยังอยู่ภายใต้ข้อจำกัดของ Model และ Context
ดังนั้น File ใหญ่มากอาจต้อง
ไม่ควรคิดว่า 2 GB File API หมายถึง Model จะนำข้อมูล 2 GB ทั้งหมดมา Reason พร้อมกันแบบไม่มีข้อจำกัด
จำง่าย ๆ
File Size Limit
=
อัปโหลดไฟล์ได้ใหญ่แค่ไหน
Context Limit
=
โมเดลประมวลผลข้อมูลได้มากแค่ไหน
สองสิ่งนี้ไม่เหมือนกัน
Developer ต้องตรวจทั้งคู่
เริ่มจาก
ลดไฟล์
↓
ลดขนาด
↓
Re-upload
↓
Refresh
↓
ตรวจ Account
เริ่มจาก
ตรวจ Payload
↓
MIME Type
↓
Input Method
↓
File State
↓
HTTP Error
↓
Rate Limit
การใช้วิธีแก้ของอีกระบบอาจไม่ช่วย
ถ้ามี 10 ไฟล์
อย่าทดสอบ 10 ไฟล์พร้อมกันทุกครั้ง
ใช้แนวคิด Binary Search
10 files
↓
ลอง 5
ถ้าผ่าน
↓
ปัญหาอยู่ในอีก 5
ถ้าไม่ผ่าน
↓
แบ่ง 5 เป็น 2 + 3
ช่วยหาไฟล์เสียได้เร็วขึ้นเมื่อมีไฟล์จำนวนมาก
ถ้าไฟล์ขนาดไม่เกิน Limit แต่ยัง Error ซ้ำ
ลองเปิดด้วยโปรแกรมต้นทางแล้ว
Save As
หรือ
Export
เป็นไฟล์ใหม่
เช่น
PDF → PDF ใหม่
XLSX → XLSX ใหม่
XLSX → CSV
Image → PNG
Video → MP4
ช่วยแก้ File Structure ที่ผิดปกติในบางกรณี
เช่น Spreadsheet มี
50 Sheets
แต่ต้องวิเคราะห์ Sheet เดียว
ไม่จำเป็นต้อง Upload Workbook ทั้งหมด
หรือ PDF 1,000 หน้าแต่ต้องวิเคราะห์หน้า 1–30
ควร Extract เฉพาะส่วน
ช่วย
บางครั้ง User เข้าใจว่า Upload ไม่สำเร็จ แต่จริง ๆ File ถูก Upload แล้ว เพียงคำตอบไม่ตรง
หลัง Upload ให้ลอง Prompt Diagnostic เช่น
บอกชื่อและประเภทเนื้อหาที่พบในไฟล์นี้
หรือ
สรุปเฉพาะข้อมูลที่อยู่ในไฟล์นี้เป็น 5 ข้อ
หาก Gemini อ้างเนื้อหาจาก File ได้ แสดงว่า Upload ผ่าน
ปัญหาอาจอยู่ที่ Prompt ไม่ใช่ File
ใช้
1 ไฟล์
+
Prompt สั้น
เช่น
อ่านข้อความในไฟล์นี้และบอกหัวข้อหลัก
ถ้าผ่าน ให้เพิ่ม
ไฟล์ที่ 2
↓
Prompt ยาวขึ้น
↓
Task ซับซ้อนขึ้น
ทีละขั้น
ลด Request เหลือ
1 Model
1 File
1 Prompt
No Search
No Function Calling
No Streaming
ถ้าผ่านจึงเพิ่ม Feature กลับทีละส่วน
นี่ช่วยแยกได้ว่า Error มาจาก File หรือ Tool อื่น
| อาการ | สิ่งที่ควรตรวจ |
|---|---|
| เลือกไฟล์ไม่ได้ | File Type / Browser / App |
| Upload เริ่มแล้วหยุด | Network / Size |
| Upload หลายไฟล์ไม่ได้ | จำนวนไฟล์ |
| Video ไม่ผ่าน | Size / Duration |
| Audio ไม่ผ่าน | Duration |
| ZIP ไม่ผ่าน | Size / จำนวนไฟล์ / Media ใน ZIP |
| Drive ไม่ขึ้น | Account / Workspace Permission |
| API 400 | Payload / MIME / File State |
| API 403 | Credential / Permission |
| API 404 | URI / File Expired |
| API 429 | Rate Limit / TPM / RPM |
| Video API ใช้ไม่ได้หลัง Upload | รอ File ACTIVE |
ตารางนี้ใช้เป็นจุดเริ่มต้นก่อนลงรายละเอียด
อย่าสับสน Limit
ตัดปัญหาจำนวนไฟล์
เทียบ Limit
Convert ถ้าจำเป็น
ยืนยันว่า File ใช้งานได้
ช่วย Debug
Google แนะนำวิธีนี้เมื่อ Analyze ไม่สำเร็จ
แยก Client Problem
โดยเฉพาะ Work/School
ถ้าใช้ Add from Drive
Inline หรือ Files API
ให้ตรงกับ File
โดยเฉพาะ Video
400/403/404/429
ถ้าเป็น Bulk Processing
เมื่อ Upload ผ่านแต่ Analyze ไม่ผ่าน
สำหรับ Workflow ของ comsiam การเริ่มจากไฟล์เดียวและ Prompt สั้นก่อน จะช่วยแยกปัญหาได้เร็วที่สุดว่าติดที่ไฟล์ Account หรือ API Configuration
node_modules จำนวนมหาศาลการแก้ต้องตรงกับสาเหตุ ไม่ใช่ Re-upload แบบไม่จำกัด
หากตรวจครบนี้จะครอบคลุมสาเหตุส่วนใหญ่ของ File Upload Error
Gemini Apps ปัจจุบันรองรับไฟล์ที่รองรับประมาณสูงสุด 10 ไฟล์ใน Prompt เดียว โดยขึ้นกับ Availability และเมื่อ Upload Folder ระบบจะนับไฟล์แต่ละไฟล์ภายใน Folder ด้วย
ใน Gemini Apps ไฟล์ประเภททั่วไปที่รองรับมีขนาดสูงสุดประมาณ 100 MB ต่อไฟล์ แต่ Gemini API แบบ Inline จำกัด PDF ประมาณ 50 MB หากใหญ่กว่านั้นควรใช้ Files API ตามข้อกำหนดปัจจุบัน
Files API ปัจจุบันรองรับไฟล์สูงสุดประมาณ 2 GB ต่อไฟล์ มี Storage รวมประมาณ 20 GB ต่อ Project และไฟล์ถูกเก็บชั่วคราวประมาณ 48 ชั่วโมง
Video ที่ส่งผ่าน Files API อาจต้องใช้เวลาประมวลผลก่อน ต้องรอ File State เป็น ACTIVE หากเป็น PROCESSING ยังไม่ควรนำไปใช้งาน และหากเป็น FAILED ต้องจัดการ Error
Google แนะนำให้ลอง Upload File ใหม่ก่อน หากยังไม่ผ่านให้ลดเหลือหนึ่งไฟล์ ตรวจขนาด Format และ Account/Permission ตามลำดับ
หากใช้บัญชี Work หรือ School การเข้าถึง Drive ผ่าน Gemini อาจต้องให้องค์กรเปิด Apps in Gemini ผ่าน Workspace Administrator และ Account ที่ใช้งานต้องมี Permission เข้าถึงไฟล์นั้น
Gemini อัปโหลดไฟล์ไม่ได้ต้องเริ่มจากการแยกก่อนว่าเป็น Gemini Apps หรือ Gemini API เพราะข้อจำกัดต่างกัน
Gemini Apps ปัจจุบันรองรับไฟล์ประมาณ 10 ไฟล์ต่อ Prompt วิดีโอแต่ละไฟล์สูงสุด 2 GB และไฟล์ประเภทอื่นที่รองรับสูงสุดประมาณ 100 MB พร้อมข้อจำกัดเพิ่มเติมด้านระยะเวลาของ Video และ Audio ตาม Plan
ถ้า Gemini Apps แจ้งว่าวิเคราะห์ File ไม่สำเร็จ วิธีแรกที่ Google แนะนำคืออัปโหลดไฟล์ใหม่ จากนั้นควรลดเหลือไฟล์เดียว ตรวจขนาด Format Account และ Drive Permission ก่อนแก้ส่วนอื่น
สำหรับ Gemini API ต้องเลือก File Input Method ให้เหมาะสม Inline Data เหมาะกับไฟล์เล็ก โดย Payload รวมสูงสุดประมาณ 100 MB และ Inline PDF จำกัดประมาณ 50 MB ส่วน Files API เหมาะกับไฟล์ใหญ่หรือใช้ซ้ำ รองรับสูงสุดประมาณ 2 GB ต่อไฟล์ มี Storage รวมประมาณ 20 GB ต่อ Project และเก็บ File ชั่วคราว 48 ชั่วโมง
Video ที่ Upload ผ่าน Files API อาจต้องรอ Processing จน State เป็น ACTIVE ก่อนใช้กับ Model และ Application ควรตรวจ FAILED กับ Timeout ด้วย ไม่ควร Loop รอไม่มีที่สิ้นสุด
หาก Upload สำเร็จแต่ Analyze ไม่สำเร็จ ต้องตรวจ Context Limit, RPM, TPM และ Error 429 เพิ่ม เพราะ File Upload Limit กับ Model Processing Limit เป็นคนละเรื่อง
แนวทางของ comsiam คือใช้วิธี Debug แบบลดระบบให้เหลือ 1 File + 1 Prompt + 1 Model ก่อน เมื่อทำงานแล้วจึงเพิ่มไฟล์ Tool และ Feature กลับทีละส่วน วิธีนี้ช่วยหา Root Cause ได้เร็วกว่าการเปลี่ยนหลายอย่างพร้อมกัน