คู่มือการแก้ปัญหา

ใช้คู่มือนี้เพื่อช่วยวินิจฉัยและแก้ปัญหาที่พบบ่อยซึ่งเกิดขึ้นเมื่อคุณเรียกใช้ Gemini API คุณอาจพบปัญหาจากบริการแบ็กเอนด์ของ Gemini API หรือ SDK ของไคลเอ็นต์ SDK ของไคลเอ็นต์ของเราเป็นโอเพนซอร์สในที่เก็บต่อไปนี้

หากพบปัญหาเกี่ยวกับคีย์ API ให้ตรวจสอบว่าคุณได้ตั้งค่า คีย์ API อย่างถูกต้องตามคู่มือการตั้งค่าคีย์ API

รหัสข้อผิดพลาดของบริการแบ็กเอนด์ของ Gemini API

ตารางต่อไปนี้แสดงรหัสข้อผิดพลาดแบ็กเอนด์ที่พบบ่อยซึ่งคุณอาจพบ พร้อมคำอธิบายสาเหตุและขั้นตอนการแก้ปัญหา

รหัส HTTP สถานะ คำอธิบาย ตัวอย่าง Solution
400 INVALID_ARGUMENT เนื้อหาของคำขอมีรูปแบบไม่ถูกต้อง คำขอของคุณมีการพิมพ์ผิดหรือไม่มีข้อมูลในช่องที่ต้องกรอก ตรวจสอบเอกสารอ้างอิง API เพื่อดูรูปแบบคำขอ ตัวอย่าง และเวอร์ชันที่รองรับ การใช้ฟีเจอร์จาก API เวอร์ชันใหม่กว่ากับปลายทางเวอร์ชันเก่าอาจทำให้เกิดข้อผิดพลาด
400 FAILED_PRECONDITION ระดับฟรีของ Gemini API ไม่พร้อมให้บริการในประเทศของคุณ โปรดเปิดใช้การเรียกเก็บเงินในโปรเจ็กต์ของคุณใน Google AI Studio คุณส่งคำขอในภูมิภาคที่ไม่รองรับระดับฟรี และคุณไม่ได้เปิดใช้การเรียกเก็บเงินในโปรเจ็กต์ของคุณใน Google AI Studio หากต้องการใช้ Gemini API คุณจะต้องตั้งค่าแพ็กเกจแบบชำระเงินโดยใช้ Google AI Studio
403 PERMISSION_DENIED คีย์ API ของคุณไม่มีสิทธิ์ที่กำหนด คุณใช้คีย์ API ไม่ถูกต้อง หรือคุณ กำลังพยายามใช้โมเดลที่ปรับแต่งแล้วโดยไม่ได้ผ่านการตรวจสอบสิทธิ์ที่เหมาะสม ตรวจสอบว่าได้ตั้งค่าคีย์ API แล้วและมีสิทธิ์เข้าถึงที่ถูกต้อง และอย่าลืมผ่านการตรวจสอบสิทธิ์ที่เหมาะสมเพื่อใช้โมเดลที่ปรับแต่งแล้ว
404 NOT_FOUND ไม่พบทรัพยากรที่ขอ ไม่พบไฟล์รูปภาพ เสียง หรือวิดีโอที่อ้างอิงในคำขอ ตรวจสอบว่าพารามิเตอร์ทั้งหมดในคำขอใช้ได้กับ API เวอร์ชันของคุณ
429 RESOURCE_EXHAUSTED คุณส่งคำขอเกินขีดจำกัดอัตราแล้ว คุณส่งคำขอต่อนาทีมากเกินไปด้วย Gemini API ระดับฟรี ตรวจสอบว่าคุณส่งคำขอไม่เกินขีดจำกัดอัตราของโมเดล ขอเพิ่มโควต้า หากจำเป็น
500 ภายใน เกิดข้อผิดพลาดที่ไม่คาดคิดจากทางฝั่ง Google บริบทอินพุตยาวเกินไป ตรวจสอบหน้าสถานะของ Gemini API เพื่อดูเหตุการณ์ที่กำลังเกิดขึ้น ลดบริบทอินพุตหรือเปลี่ยนไปใช้โมเดลอื่นชั่วคราว (เช่น จาก Gemini 2.5 Pro เป็น Gemini 2.5 Flash) แล้วดูว่าใช้ได้ไหม หรือรอสักครู่แล้วลองส่งคำขออีกครั้ง หากปัญหายังคงอยู่หลังจากลองอีกครั้ง โปรดรายงานปัญหาโดยใช้ปุ่มส่งความคิดเห็น ใน Google AI Studio
503 UNAVAILABLE บริการอาจทำงานหนักเกินไปหรือหยุดทำงานชั่วคราว บริการมีขีดจำกัดชั่วคราว ตรวจสอบหน้าสถานะของ Gemini API เพื่อดูเหตุการณ์ที่กำลังเกิดขึ้น เปลี่ยนไปใช้โมเดลอื่นชั่วคราว (เช่น จาก Gemini 2.5 Pro เป็น Gemini 2.5 Flash) แล้วดูว่าใช้ได้ไหม หรือรอสักครู่แล้วลองส่งคำขออีกครั้ง หากปัญหายังคงอยู่หลังจากลองอีกครั้ง โปรดรายงานปัญหาโดยใช้ปุ่มส่งความคิดเห็น ใน Google AI Studio
504 DEADLINE_EXCEEDED บริการไม่สามารถประมวลผลให้เสร็จสิ้นภายในกำหนดเวลา พรอมต์ (หรือบริบท) มีขนาดใหญ่เกินกว่าจะประมวลผลได้ทันเวลา ตั้งค่า "การหมดเวลา" ที่นานขึ้นในคำขอของไคลเอ็นต์เพื่อหลีกเลี่ยงข้อผิดพลาดนี้

ตรวจสอบการเรียกใช้ API เพื่อดูข้อผิดพลาดของพารามิเตอร์โมเดล

ตรวจสอบว่าพารามิเตอร์โมเดลอยู่ในค่าต่อไปนี้

พารามิเตอร์โมเดล ค่า (ช่วง)
จำนวนผู้สมัคร 1-8 (จำนวนเต็ม)
อุณหภูมิ 0.0-1.0
โทเค็นเอาต์พุตสูงสุด ใช้หน้าโมเดล เพื่อกำหนดจำนวนโทเค็นสูงสุดสำหรับโมเดลที่คุณใช้
TopP 0.0-1.0

นอกเหนือจากการตรวจสอบค่าพารามิเตอร์แล้ว ให้ตรวจสอบว่าคุณใช้ API เวอร์ชันที่ถูกต้อง (เช่น /v1 หรือ /v1beta) และ โมเดลที่รองรับฟีเจอร์ที่คุณต้องการ เช่น หากฟีเจอร์อยู่ในเวอร์ชันเบต้า ฟีเจอร์ดังกล่าวจะใช้ได้เฉพาะใน API เวอร์ชัน /v1beta

ตรวจสอบว่าคุณใช้โมเดลที่ถูกต้อง

ตรวจสอบว่าคุณใช้โมเดลที่รองรับซึ่งแสดงอยู่ใน หน้าโมเดลของเรา

เวลาในการตอบสนองที่นานขึ้นหรือการใช้โทเค็นที่มากขึ้นกับโมเดล 2.5

หากคุณพบว่าเวลาในการตอบสนองนานขึ้นหรือมีการใช้โทเค็นมากขึ้นกับโมเดล 2.5 Flash และ Pro อาจเป็นเพราะโมเดลเหล่านี้เปิดใช้การคิดไว้โดยค่าเริ่มต้น เพื่อปรับปรุงคุณภาพ หากคุณให้ความสำคัญกับความเร็วหรือต้องการลดค่าใช้จ่าย คุณสามารถปรับหรือปิดใช้การคิดได้

โปรดดูคำแนะนำและโค้ดตัวอย่างในหน้าการคิดสำหรับ

ปัญหาด้านความปลอดภัย

หากเห็นว่าระบบบล็อกพรอมต์เนื่องจากการตั้งค่าความปลอดภัยในการเรียก API ให้ตรวจสอบพรอมต์โดยพิจารณาจากตัวกรองที่คุณตั้งค่าในการเรียก API

หากเห็น BlockedReason.OTHER หมายความว่าคำค้นหาหรือการตอบกลับอาจละเมิดข้อกำหนด ในการให้บริการหรือไม่ได้รับการรองรับ

ปัญหาการท่องจำ

หากเห็นว่าโมเดลหยุดสร้างเอาต์พุตเนื่องจากเหตุผล RECITATION หมายความว่าเอาต์พุตโมเดลอาจคล้ายกับข้อมูลบางอย่าง หากต้องการแก้ไขปัญหานี้ ให้พยายามทำให้พรอมต์ / บริบทไม่ซ้ำกันมากที่สุดและใช้อุณหภูมิที่สูงขึ้น

ปัญหาโทเค็นซ้ำ

หากเห็นโทเค็นเอาต์พุตซ้ำ ให้ลองทำตามคำแนะนำต่อไปนี้เพื่อช่วยลดหรือกำจัดโทเค็นเหล่านั้น

คำอธิบาย สาเหตุ วิธีแก้ปัญหาที่แนะนำ
ยัติภังค์ซ้ำในตารางมาร์กดาวน์ ปัญหานี้อาจเกิดขึ้นเมื่อเนื้อหาของตารางยาวเนื่องจากโมเดลพยายาม สร้างตารางมาร์กดาวน์ที่จัดแนวให้ดูดี อย่างไรก็ตาม การจัดแนวใน มาร์กดาวน์ไม่จำเป็นสำหรับการแสดงผลที่ถูกต้อง

เพิ่มวิธีการในพรอมต์เพื่อกำหนดหลักเกณฑ์เฉพาะสำหรับโมเดล ในการสร้างตารางมาร์กดาวน์ ระบุตัวอย่างที่เป็นไปตามหลักเกณฑ์เหล่านั้น นอกจากนี้ คุณยังลองปรับอุณหภูมิได้ด้วย สำหรับการสร้าง โค้ดหรือเอาต์พุตที่มีโครงสร้างชัดเจนมาก เช่น ตารางมาร์กดาวน์ พบว่าอุณหภูมิสูง (>= 0.8) ได้ผลดีกว่า

ต่อไปนี้เป็นชุดหลักเกณฑ์ตัวอย่างที่คุณเพิ่มลงใน พรอมต์เพื่อป้องกันปัญหานี้ได้

          # Markdown Table Format
          
          * Separator line: Markdown tables must include a separator line below
            the header row. The separator line must use only 3 hyphens per
            column, for example: |---|---|---|. Using more hypens like
            ----, -----, ------ can result in errors. Always
            use |:---|, |---:|, or |---| in these separator strings.

            For example:

            | Date | Description | Attendees |
            |---|---|---|
            | 2024-10-26 | Annual Conference | 500 |
            | 2025-01-15 | Q1 Planning Session | 25 |

          * Alignment: Do not align columns. Always use |---|.
            For three columns, use |---|---|---| as the separator line.
            For four columns use |---|---|---|---| and so on.

          * Conciseness: Keep cell content brief and to the point.

          * Never pad column headers or other cells with lots of spaces to
            match with width of other content. Only a single space on each side
            is needed. For example, always do "| column name |" instead of
            "| column name                |". Extra spaces are wasteful.
            A markdown renderer will automatically take care displaying
            the content in a visually appealing form.
        
โทเค็นซ้ำในตารางมาร์กดาวน์ ปัญหานี้เกิดขึ้นเมื่อโมเดลพยายามจัดแนวเนื้อหาของตารางให้ดูดี ซึ่งคล้ายกับยัติภังค์ซ้ำ การจัดแนวในมาร์กดาวน์ไม่จำเป็นสำหรับการแสดงผลที่ถูกต้อง
  • ลองเพิ่มวิธีการต่อไปนี้ลงในพรอมต์ระบบ
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • ลองปรับอุณหภูมิ โดยทั่วไปแล้วอุณหภูมิที่สูงขึ้น (>= 0.8) จะช่วยกำจัดการทำซ้ำใน เอาต์พุต
บรรทัดใหม่ (\n) ซ้ำในเอาต์พุตที่มีโครงสร้าง เมื่ออินพุตของโมเดลมี Unicode หรือลำดับการหลีก เช่น \u หรือ \t อาจทำให้เกิดบรรทัดใหม่ซ้ำ
  • ตรวจสอบและแทนที่ลำดับการหลีกที่ไม่อนุญาตด้วยอักขระ UTF-8 ในพรอมต์ เช่น ลำดับการหลีก \u ในตัวอย่าง JSON อาจทำให้โมเดลใช้ลำดับการหลีกดังกล่าว ในเอาต์พุตด้วย
  • แจ้งให้โมเดลทราบเกี่ยวกับลำดับการหลีกที่อนุญาต เพิ่มวิธีการของระบบดัง นี้
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
ข้อความซ้ำเมื่อใช้เอาต์พุตที่มีโครงสร้าง เมื่อเอาต์พุตโมเดลมีลำดับของช่องต่างจากสคีมาที่มีโครงสร้างที่กำหนดไว้ อาจทำให้เกิดข้อความซ้ำ
  • อย่าระบุลำดับของช่องในพรอมต์
  • กำหนดให้ช่องเอาต์พุตทั้งหมดเป็นช่องที่ต้องกรอก
การเรียกใช้เครื่องมือซ้ำ ปัญหานี้อาจเกิดขึ้นหากโมเดลสูญเสียบริบทของความคิดก่อนหน้าและ/หรือเรียกใช้ปลายทางที่ไม่พร้อมใช้งานซึ่งโมเดลถูกบังคับให้เรียกใช้ สั่งให้โมเดลรักษาสถานะไว้ในกระบวนการคิด เพิ่มข้อความนี้ที่ส่วนท้ายของวิธีการของระบบ
        When thinking silently: ALWAYS start the thought with a brief
        (one sentence) recap of the current progress on the task. In
        particular, consider whether the task is already done.
      
ข้อความซ้ำซึ่งไม่ได้เป็นส่วนหนึ่งของเอาต์พุตที่มีโครงสร้าง ปัญหานี้อาจเกิดขึ้นหากโมเดลติดอยู่กับคำขอที่โมเดลไม่สามารถแก้ไขได้
  • หากเปิดใช้การคิดอยู่ ให้หลีกเลี่ยงการสั่งอย่างชัดเจนเกี่ยวกับวิธี คิดเพื่อแก้ปัญหาในวิธีการ เพียงแค่ขอเอาต์พุตสุดท้าย
  • ลองใช้อุณหภูมิที่สูงขึ้น >= 0.8
  • เพิ่มวิธีการ เช่น "กระชับ", "อย่าพูดซ้ำ" หรือ "ระบุคำตอบเพียงครั้งเดียว"

คีย์ API ที่ถูกบล็อกหรือไม่ทำงาน

ส่วนนี้อธิบายวิธีตรวจสอบว่าคีย์ Gemini API ถูกบล็อกหรือไม่ และสิ่งที่ต้องทำ

ทำความเข้าใจสาเหตุที่คีย์ถูกบล็อก

เราพบช่องโหว่ที่คีย์ API บางรายการอาจถูกเปิดเผยต่อสาธารณะ เพื่อปกป้องข้อมูลของคุณและป้องกันการเข้าถึงที่ไม่ได้รับอนุญาต เราจึงบล็อกคีย์ที่รั่วไหลซึ่งทราบกันดีเหล่านี้ไม่ให้เข้าถึง Gemini API

ยืนยันว่าคีย์ของคุณได้รับผลกระทบหรือไม่

หากทราบว่าคีย์ของคุณรั่วไหล คุณจะไม่สามารถใช้คีย์ดังกล่าวกับ Gemini API ได้อีกต่อไป คุณสามารถใช้ Google AI Studio เพื่อดูว่าคีย์ API รายการใดของ คุณถูกบล็อกไม่ให้เรียกใช้ Gemini API และสร้างคีย์ ใหม่ นอกจากนี้ คุณอาจเห็นข้อผิดพลาดต่อไปนี้แสดงขึ้นเมื่อพยายามใช้คีย์เหล่านี้

Your API key was reported as leaked. Please use another API key.

การดำเนินการสำหรับคีย์ API ที่ถูกบล็อก

คุณควรสร้างคีย์ API ใหม่สำหรับการผสานรวม Gemini API โดยใช้ Google AI Studio เราขอแนะนำอย่างยิ่งให้ตรวจสอบแนวทางปฏิบัติในการจัดการคีย์ API เพื่อให้แน่ใจว่าคีย์ใหม่ของคุณจะปลอดภัยและไม่ถูกเปิดเผยต่อสาธารณะ

การเรียกเก็บเงินที่ไม่คาดคิดเนื่องจากช่องโหว่

ยื่นเคสขอรับความช่วยเหลือเกี่ยวกับการเรียกเก็บเงิน ทีมเรียกเก็บเงินกำลังดำเนินการแก้ไขปัญหานี้ และเราจะแจ้งให้คุณทราบทันทีที่ได้รับข้อมูลอัปเดต

มาตรการรักษาความปลอดภัยของ Google สำหรับคีย์ที่รั่วไหล

Google จะช่วยรักษาความปลอดภัยให้บัญชีของฉันจากการใช้จ่ายเกินงบประมาณและการละเมิดได้อย่างไรหากคีย์ API ของฉันรั่วไหล

  • เรากำลังเปลี่ยนไปใช้การออกคีย์ API เมื่อคุณขอคีย์ใหม่โดยใช้ Google AI Studio ซึ่งโดยค่าเริ่มต้นจะ จำกัดไว้เฉพาะ Google AI Studio และไม่รับคีย์จากบริการอื่นๆ ซึ่งจะช่วยป้องกันการใช้คีย์ข้ามบริการโดยไม่ตั้งใจ
  • เราจะบล็อกคีย์ API ที่รั่วไหลและใช้กับ Gemini API โดยค่าเริ่มต้น ซึ่งจะช่วยป้องกันการละเมิดค่าใช้จ่ายและข้อมูลแอปพลิเคชันของคุณ
  • คุณจะดูสถานะของคีย์ API ได้ภายใน Google AI Studio และเราจะแจ้งให้คุณทราบ ล่วงหน้าเมื่อพบว่าคีย์ API ของคุณรั่วไหลเพื่อให้คุณดำเนินการได้ทันที

ปรับปรุงเอาต์พุตโมเดล

หากต้องการให้เอาต์พุตของโมเดลมีคุณภาพสูงขึ้น ให้ลองเขียนพรอมต์ที่มีโครงสร้างมากขึ้น หน้า คู่มือวิศวกรรมพรอมต์จะแนะนำแนวคิด กลยุทธ์ และแนวทางปฏิบัติแนะนำเบื้องต้นเพื่อช่วยให้คุณ เริ่มต้นใช้งานได้

ทำความเข้าใจขีดจำกัดของโทเค็น

อ่านคู่มือโทเค็นเพื่อทำความเข้าใจวิธี นับโทเค็นและขีดจำกัดของโทเค็นให้ดียิ่งขึ้น

ปัญหาที่ทราบ

  • API รองรับเฉพาะบางภาษาเท่านั้น การส่งพรอมต์ในภาษาที่ไม่รองรับอาจทำให้เกิดการตอบกลับที่ไม่คาดคิดหรือแม้แต่การตอบกลับที่ถูกบล็อก ดู ภาษาที่ใช้ได้เพื่อรับ ข้อมูลอัปเดต

รายงานข้อบกพร่อง

เข้าร่วมการสนทนาใน ฟอรัมสำหรับนักพัฒนาแอป Google AI หากมีข้อสงสัย