OpenAI
Halaman ini diterjemah oleh mesin. Lihat artikel asal dalam bahasa Inggeris.

Mengawal panjang respons model OpenAI

Ketahui cara menetapkan had output untuk model OpenAI menggunakan tetapan token, prompt yang jelas, contoh dan jujukan henti.

Dikemas kini: 9 days ago

Gambaran keseluruhan

Mengawal panjang respons model berguna atas beberapa sebab: ia membantu mengurus kos (kerana anda membayar mengikut token), meningkatkan kependaman/prestasi (respons yang lebih pendek dikembalikan dengan lebih cepat) dan memastikan kerelevanan dengan mengelakkan output yang terlalu panjang atau berjela-jela.

Anda boleh mencapainya menggunakan had token, tetapan penaakulan dan verbosity, arahan yang jelas, contoh dan jujukan henti. Untuk butiran yang paling terkini dan lengkap, sentiasa rujuk rujukan API rasmi di platform.openai.com.

Tetapkan panjang output maksimum

Responses API

Digunakan untuk model GPT-5 dan kebanyakan model siri o: gunakan max_output_tokens untuk mengehadkan bilangan token yang akan dijana oleh model. Untuk permintaan compaction_trigger, sama ada tinggalkan max_output_tokens atau tetapkan kepada sekurang-kurangnya 20000; nilai yang lebih kecil akan ditolak. Responses API tidak menyokong berbilang completion (n).

Chat Completions API

Digunakan untuk GPT-3.5 lama, GPT-4o dan kadangkala siri o.

  • Untuk model penaakulan seperti o3 dan o4-mini, gunakan max_completion_tokens (alias bagi max_tokens)

  • Untuk model terdahulu/bukan penaakulan, max_tokens masih berfungsi

  • Menyokong stop dan n (berbilang completion).

Nota: Tiada tetapan “token minimum”. Jika anda memerlukan panjang minimum, nyatakannya dalam prompt anda.

Had token mengikut kumpulan model

Untuk had token, saiz konteks dan had output yang terkini, sila rujuk dokumentasi model khusus.

Contoh ringkas

Responses API

{ "model": "gpt-5", "input": "Ringkaskan dapatan dalam ~80 patah perkataan.", "max_output_tokens": 120 }

Chat Completions (model penaakulan)

{ "model": "o3-mini", "messages": [{"role": "user", "content": "Write five one-line options."}], "max_completion_tokens": 100 }

Kawalan khusus model GPT-5: verbosity dan reasoning.effort

Kawalan ini hanya tersedia pada model GPT-5 (gpt-5.2, gpt-5.2-chat-latest, gpt-5.2 pro, dsb. Model siri O dan model lama tidak menyokongnya.

`verbosity` menerima "low", "medium" (lalai), atau "high". Ini mempengaruhi tahap perincian, tetapi bukan had tetap.

{ "model": "gpt-5", "input": "Terangkan PageRank secara umum.", "text": { "verbosity": "low" }, "max_output_tokens": 200 }

`reasoning.effort` mengawal bilangan token penaakulan yang dijana sebelum menghasilkan jawapan. GPT-5.2 menyokong none,low, medium, high,and xhigh. gpt-5.2-pro hanya menyokong medium, high,and xhigh. Model penaakulan terdahulu hanya menyokong low, medium, dan high.

{ "model": "gpt-5", "input": "Berapa banyak emas diperlukan untuk menyaluti Patung Liberty dengan lapisan setebal 1mm?", "reasoning": { "effort": "minimal" } }

Anda boleh menetapkan `reasoning.effort` kepada none untuk menjadikan model berkelakuan seperti model bukan penaakulan bagi kes penggunaan yang sensitif kepada kependaman.

Berikan arahan khusus

Minta panjang atau bentuk tepat yang anda mahukan. Contoh:

  • “Senaraikan tepat lima pilihan.”

  • “Tulis ringkasan 50 patah perkataan.”

  • “Tidak lebih daripada 100 token. Jika anda perlukan lebih ruang, nyatakan ‘Perlukan ruang tambahan.’”

Gunakan contoh dengan panjang yang konsisten

Contoh few-shot yang sepadan dengan panjang yang anda inginkan membantu model meneruskan pola tersebut.

Gunakan jujukan henti secara strategik

Gunakan stop untuk menghentikan penjanaan apabila model mencapai pembatas atau sempadan senarai bernombor.

{ "stop": ["\n###", "6."] }

Berbilang calon

  • Chat Completions: n mengembalikan berbilang completion dalam satu panggilan.

  • Responses API: n tidak disokong; buat berbilang panggilan jika anda memerlukan lebih daripada satu output.

Adakah artikel ini membantu?