개요
모델 응답의 길이를 제어하는 것은 여러 이유로 유용합니다. 토큰 단위로 과금되므로 비용을 관리하는 데 도움이 되고, 지연/성능을 개선하며(짧은 응답이 더 빨리 반환됨), 지나치게 길거나 장황한 출력물을 피해서 관련성을 보장할 수 있습니다.
이는 토큰 상한, 추론 및 장황함 설정, 명확한 지시문, 예시, 그리고 중지 시퀀스를 통해 달성할 수 있습니다. 가장 최신이면서 완전한 세부 정보는 항상 platform.openai.com의 공식 API 레퍼런스를 참고하세요.
최대 출력 길이 설정
Responses API
GPT-5 모델과 대부분의 o-시리즈 모델에 사용합니다. 모델이 생성할 토큰 수에 상한을 두려면 max_output_tokens를 사용하세요. stop는 지원하지만, 다중 완료(n)는 지원하지 않습니다.
Chat Completions API
레거시 GPT-3.5, GPT-4o, 그리고 경우에 따라 o-시리즈에 사용합니다.
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": "한 줄짜리 선택지 5개를 써줘."}], "max_completion_tokens": 100 }GPT-5 모델 전용 제어: verbosity 및 reasoning.effort
이 제어 기능은 GPT-5 모델에서만 사용 가능합니다(gpt-5.2, gpt-5.2-chat-latest, gpt-5.2 pro 등). O-시리즈 및 레거시 모델은 이를 지원하지 않습니다.
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": "자유의 여신상을 1mm 두께로 도금하려면 금이 얼마나 필요할까?", "reasoning": { "effort": "minimal" } }지연 시간에 민감한 사용 사례에서는 reasoning.effort를 none으로 설정해 모델이 비추론 모델처럼 동작하도록 할 수 있습니다.
구체적인 지시 제공
원하는 정확한 길이 또는 형태를 요청하세요. 예:
“정확히 다섯 가지 옵션을 나열해 줘.”
“50단어 요약을 작성해 줘.”
“100 토큰을 넘지 마. 더 필요하면 ‘공간이 더 필요해요.’라고 말해.”
일관된 길이의 예시 사용
원하는 길이와 일치하는 few-shot 예시는 모델이 그 패턴을 계속 이어가도록 돕습니다.
전략적 중지 시퀀스 적용
stop를 사용해 모델이 구분자 또는 번호 목록 경계에 도달했을 때 생성을 중단하게 하세요.
{ "stop": ["\n###", "6."] }여러 후보
Chat Completions:
n은 한 번의 호출로 여러 완료 결과를 반환합니다.Responses API:
n을 지원하지 않습니다. 출력이 2개 이상 필요하면 여러 번 호출하세요.
