ภาพรวม
การควบคุมความยาวของคำตอบจากโมเดลมีประโยชน์หลายอย่าง: ช่วยจัดการต้นทุน (เพราะคุณจ่ายตามจำนวนโทเค็น), ลดเวลาแฝง/เพิ่มประสิทธิภาพ (คำตอบที่สั้นกว่าจะส่งกลับได้เร็วกว่า) และทำให้เนื้อหาเกี่ยวข้องกับคำถามโดยหลีกเลี่ยงเอาต์พุตที่ยาวหรือเยิ่นเย้อเกินไป
คุณทำได้โดยใช้เพดานโทเค็น การตั้งค่าการให้เหตุผลและระดับรายละเอียด คำสั่งที่ชัดเจน ตัวอย่าง และลำดับหยุด สำหรับรายละเอียดล่าสุดและครบถ้วนที่สุด โปรดดูเอกสารอ้างอิง API อย่างเป็นทางการบน platform.openai.comเสมอ
กำหนดความยาวเอาต์พุตสูงสุด
Responses API
ใช้กับโมเดล GPT-5 และโมเดล o-series ส่วนใหญ่: ใช้ max_output_tokens เพื่อจำกัดจำนวนโทเค็นที่โมเดลจะสร้าง สำหรับคำขอ compaction_trigger ให้ละ max_output_tokens ไว้หรือกำหนดค่าอย่างน้อย 20000; ค่าที่น้อยกว่านี้จะถูกปฏิเสธ Responses API ไม่รองรับการเติมเต็มหลายรายการ (n)
Chat Completions API
ใช้กับ GPT-3.5, GPT-4o รุ่นเก่า และบางครั้งกับ o-series
สำหรับโมเดลการให้เหตุผล เช่น o3 และ o4-mini ให้ใช้
max_completion_tokens(ชื่อแฝงของmax_tokens)สำหรับโมเดลรุ่นก่อน/โมเดลที่ไม่ใช้การให้เหตุผล
max_tokensยังใช้งานได้รองรับ
stopและn(การเติมเต็มหลายรายการ)
หมายเหตุ: ไม่มีการตั้งค่า “โทเค็นขั้นต่ำ” หากต้องการความยาวขั้นต่ำ ให้ระบุไว้ในคำสั่งของคุณ
ขีดจำกัดโทเค็นตามกลุ่มโมเดล
สำหรับขีดจำกัดโทเค็น ขนาดบริบท และเพดานเอาต์พุตล่าสุด โปรดดูเอกสารของโมเดลนั้นๆ
ตัวอย่างสั้นๆ
Responses API
{ "model": "gpt-5", "input": "สรุปผลการค้นพบในประมาณ 80 คำ", "max_output_tokens": 120 }Chat Completions (โมเดลการให้เหตุผล)
{ "model": "o3-mini", "messages": [{"role": "user", "content": "Write five one-line options."}], "max_completion_tokens": 100 }ตัวควบคุมเฉพาะของโมเดล GPT-5: verbosity และ reasoning.effort
ตัวควบคุมเหล่านี้ใช้ได้เฉพาะกับโมเดล GPT-5 (gpt-5.2, gpt-5.2-chat-latest, gpt-5.2 pro ฯลฯ) โมเดล O-series และโมเดลรุ่นเก่าไม่รองรับตัวควบคุมเหล่านี้
`verbosity` รับค่า "low", "medium" (ค่าเริ่มต้น) หรือ "high" สิ่งนี้มีผลต่อระดับรายละเอียด แต่ไม่ได้กำหนดขีดจำกัดอย่างเข้มงวด
{ "model": "gpt-5", "input": "อธิบาย PageRank แบบภาพรวม", "text": { "verbosity": "low" }, "max_output_tokens": 200 }`reasoning.effort` ควบคุมจำนวนโทเค็นการให้เหตุผลที่จะสร้างก่อนให้คำตอบ GPT-5.2 รองรับ none,low, medium, high,and xhigh gpt-5.2-pro รองรับเฉพาะ medium, high,and xhigh โมเดลการให้เหตุผลรุ่นก่อนรองรับเฉพาะ low, medium และ high
{ "model": "gpt-5", "input": "ต้องใช้ทองคำเท่าไรในการเคลือบเทพีเสรีภาพด้วยชั้นหนา 1 มม.?", "reasoning": { "effort": "minimal" } }คุณสามารถตั้งค่า `reasoning.effort` เป็น none เพื่อให้โมเดลทำงานเหมือนโมเดลที่ไม่ใช้การให้เหตุผล สำหรับกรณีใช้งานที่ไวต่อเวลาแฝง
ให้คำแนะนำที่เฉพาะเจาะจง
ระบุความยาวหรือรูปแบบที่ต้องการให้ชัดเจน ตัวอย่าง:
“แสดงตัวเลือกให้ครบห้าข้อ”
“เขียนสรุปความยาว 50 คำ”
“ไม่เกิน 100 โทเค็น. ถ้าต้องการพื้นที่เพิ่ม ให้ตอบว่า ‘ต้องการพื้นที่เพิ่ม’”
ใช้ตัวอย่างที่มีความยาวสม่ำเสมอ
ตัวอย่างแบบ few-shot ที่ตรงกับความยาวที่คุณต้องการ ช่วยให้โมเดลทำตามรูปแบบต่อไปได้
ใช้ลำดับหยุดอย่างมีกลยุทธ์
ใช้ stop เพื่อหยุดการสร้างเมื่อโมเดลไปถึงตัวคั่นหรือขอบเขตของรายการแบบมีหมายเลข
{ "stop": ["\n###", "6."] }ตัวเลือกคำตอบหลายรายการ
Chat Completions:
nส่งคืนการเติมเต็มหลายรายการในการเรียกครั้งเดียวResponses API: ไม่รองรับ
n; ให้เรียกหลายครั้งหากต้องการเอาต์พุตมากกว่าหนึ่งรายการ
