GPT 5.4
백휘2026년 3월 6일 기준으로, OpenAI 공식 문서상 1M급 컨텍스트를 실제로 쓰는 공식 경로는 거의 이렇게 보시면 됩니다.
첫째, OpenAI API에서 gpt-5.4와 gpt-5.4-pro는 1,050,000 토큰 컨텍스트 윈도우를 갖고 있고, gpt-4.1도 1,047,576 토큰을 지원합니다. 둘째, Codex에서는 GPT‑5.4에 대해 실험적 1M 지원이 문서화돼 있습니다. 셋째, Playground는 이 1M급 모델들을 시험해보는 진입점입니다. 넷째, 일반 ChatGPT 대화창은 현재 공개 기준 1M이 아닙니다. GPT‑5.4 출시 글과 ChatGPT 도움말 모두, ChatGPT의 GPT‑5.4 Thinking 컨텍스트는 기존과 동일하며 수동 선택 기준으로 유료 플랜 256K, Pro 400K라고 안내합니다.
가장 중요한 오해 하나만 먼저 잡으면, “1M 컨텍스트”는 1M 입력만 넣는다는 뜻이 아닙니다. OpenAI 문서 기준으로 컨텍스트 윈도우에는 입력 토큰 + 출력 토큰 + reasoning 토큰이 함께 들어갑니다. GPT‑5.4의 최대 출력은 128,000 토큰이라서, 실제로는 입력을 꽉 채울수록 출력과 reasoning에 쓸 여유가 줄어듭니다.
1) ChatGPT 안에서 1M을 켤 수 있나
공개 문서 기준으로는 아직 안 됩니다. ChatGPT에서는 Auto가 필요할 때 GPT‑5.4 Thinking으로 전환될 수 있고, 유료 플랜은 수동 선택도 가능하지만, 컨텍스트 자체는 유료 256K / Pro 400K로 안내됩니다. GPT‑5.4 출시 글도 “ChatGPT에서의 GPT‑5.4 Thinking 컨텍스트 윈도우는 GPT‑5.2 Thinking과 동일”하다고 못 박고 있습니다. 그래서 지금 ChatGPT 대화창에서 “1M 모드”를 따로 켜는 방법은 공개되어 있지 않습니다.
즉, “ChatGPT에서 버튼 하나 눌러 1M 쓰기”는 현재 공개 기준 불가이고, 1M을 진짜 쓰려면 아래의 API / Playground / Codex로 가는 게 맞습니다.
2) 가장 확실한 방법: OpenAI API에서 쓰기
지금 가장 정석적인 경로는 **Responses API + gpt-5.4**입니다. OpenAI는 GPT‑5.4가 여러 엔드포인트에서 동작한다고 문서화해 두었지만, 별도 가이드에서는 reasoning 모델은 Chat Completions보다 Responses API에서 더 잘 동작하고, 특히 GPT‑5.4는 Responses API가 이전 추론 상태 전달, 캐시 효율, 지연 시간 측면에서 더 유리하다고 설명합니다.
실무적으로는 이렇게 고르시면 됩니다.
- 가장 범용적:
gpt-5.4 - 가장 어려운 문제용:
gpt-5.4-pro - 1M은 필요하지만 더 싸고 빠른 편이 좋음:
gpt-4.1
최소 형태 예시
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": [
{
"role": "user",
"content": [
{"type": "input_text", "text": "여기에 아주 긴 텍스트를 넣는다"}
]
}
],
"reasoning": {"effort": "low"},
"max_output_tokens": 8000
}'
이 흐름은 OpenAI가 GPT‑5.4에 권장하는 Responses API 패턴에 맞춘 예시입니다. GPT‑5.4는 reasoning.effort를 none / low / medium / high / xhigh로 조절할 수 있고, max_output_tokens로 출력 길이를 제한할 수 있습니다. 긴 문서 요약처럼 “생각을 깊게 할 필요는 적고, 입력을 많이 넣고 싶다”면 실무적으로는 none이나 low가 유리한 편입니다. reasoning 토큰도 컨텍스트를 먹기 때문입니다.
3) 1M 넣기 전에 꼭 해야 하는 것: 토큰 수 먼저 재기
1M급 입력은 감으로 넣으면 쉽게 터집니다. OpenAI는 POST /responses/input_tokens 엔드포인트를 따로 제공해서, 실제 요청이 몇 토큰인지 먼저 계산하게 해 둡니다. 이 엔드포인트는 텍스트뿐 아니라 메시지, 이미지, 파일, 툴, 대화 상태까지 같은 형태로 넣어서 미리 계산할 수 있습니다.
curl https://api.openai.com/v1/responses/input_tokens \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": [
{
"role": "user",
"content": [
{"type": "input_text", "text": "여기에 긴 입력"}
]
}
]
}'
1M을 실제로 다루려면 이 단계가 거의 필수입니다. 특히 출력 토큰과 reasoning 토큰까지 감안해야 하므로, 입력을 1,040,000쯤까지 꽉 채워 넣는 식은 위험합니다.
4) 큰 문서/PDF를 통째로 넣는 방법
Responses API는 큰 문서를 직접 파일로 넣을 수 있습니다. 공식 문서 기준으로 파일은 base64, Files API로 올린 file_id, 외부 URL 방식 중 하나로 전달할 수 있습니다. 업로드 파일의 purpose는 user_data를 사용합니다.
문서 업로드 후 분석 예시
curl https://api.openai.com/v1/files \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -F purpose="user_data" \ -F file="@big.pdf"
그다음 반환된 file_id를 Responses에 넣습니다.
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": [
{
"role": "user",
"content": [
{"type": "input_file", "file_id": "file_..."},
{"type": "input_text", "text": "이 문서 전체를 장별로 요약하고 핵심 주장 10개를 뽑아줘"}
]
}
]
}'
지원 파일 형식은 꽤 넓습니다. 공식 문서에는 pdf, txt/md/json/html/xml, 코드 파일, doc/docx/rtf/odt, ppt/pptx, csv/xls/xlsx 등이 포함됩니다. 다만 각 파일은 50MB 미만, 그리고 한 요청에서 합산 50MB 미만이어야 합니다. PDF는 문서 처리 시 추출 텍스트 + 페이지 이미지 방식으로 들어가고, 스프레드시트는 별도 증강 처리가 적용되며 시트당 처음 1,000행만 파싱됩니다. 그래서 엑셀 전체를 원본 그대로 1M에 태워 넣는 느낌과는 다를 수 있습니다.
실전 팁을 하나 덧붙이면, 문서가 “몇 개 안 되는 아주 큰 파일”이면 파일 직접 입력, **문서가 “많고 그중 일부만 매 턴 관련”이면 file_search**가 더 낫습니다.
5) 문서가 많을 때는 1M에 다 밀어 넣지 말고 file_search
OpenAI의 file_search는 파일을 벡터 스토어에 올려 두고, 질문마다 관련 조각만 키워드 + 시맨틱 검색으로 꺼내 모델에 붙입니다. 큰 지식베이스를 매번 통째로 컨텍스트에 넣는 방식보다, 실제로는 이쪽이 비용·속도·정확성에서 유리한 경우가 많습니다.
그래서 사용 패턴은 보통 이렇게 나뉩니다.
- 한 권짜리 큰 책 / 하나의 긴 보고서 / 하나의 거대한 PRD: 1M 직접 입력이 잘 맞음
- 수십~수백 개 문서 집합:
file_search가 더 현실적 - 대형 에이전트에 툴이 많은 경우:
tool_search까지 같이 쓰면 툴 정의를 매번 컨텍스트에 다 싣지 않아도 됨
6) 여러 턴 이어서 1M급 대화를 유지하는 방법
긴 입력 뒤에 계속 후속 질문을 던질 거면 Responses API의 **previous_response_id**나 Conversations를 쓰면 됩니다. 문서상 이 방식은 대화 상태를 이어 주지만, 이전 입력 토큰은 여전히 입력 토큰으로 과금됩니다. “서버가 기억하니까 공짜로 이어진다”는 뜻은 아닙니다.
예를 들면 이런 식입니다.
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"previous_response_id": "resp_...",
"input": "이제 3장만 자세히 파고들어줘"
}'
이런 멀티턴 작업에서 중요한 게 compaction입니다. OpenAI는 긴 대화에서 컨텍스트를 줄이기 위한 서버 측 compaction을 문서화해 두었고, context_management로 자동 compaction 임계값을 줄 수 있습니다. 아주 긴 워크플로라면 이걸 안 쓰면 금방 비효율적이 됩니다.
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": "긴 대화 시작",
"context_management": [
{
"type": "compaction",
"compact_threshold": 200000
}
]
}'
compact_threshold의 숫자는 업무 패턴에 따라 바뀝니다. 핵심은 컨텍스트 한도에 닿기 전에 미리 압축하도록 잡는 것입니다. OpenAI는 별도의 /responses/compact 엔드포인트도 제공합니다.
7) 오래 걸리는 1M 작업은 background mode
1M급 입력에 고난도 추론까지 겹치면 응답이 오래 걸립니다. OpenAI는 background mode를 공식 제공하고, 특히 GPT‑5.4 Pro는 일부 요청이 수 분 걸릴 수 있어 background mode를 권장합니다.
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4-pro",
"background": true,
"input": "매우 긴 문서와 복잡한 지시"
}'
이 모드는 백그라운드 작업 ID를 반환하고, 나중에 조회해서 결과를 가져오는 구조입니다. 스트리밍도 지원하지만, background mode는 응답 데이터를 잠시 저장하므로 Zero Data Retention과는 호환되지 않는다고 문서에 적혀 있습니다.
8) Playground에서는 어떻게 쓰나
Playground는 코드 없이 1M급 모델을 가장 쉽게 시험하는 경로입니다. GPT‑5.4와 GPT‑4.1 모델 페이지 모두 “Try in Playground” 진입점을 제공합니다. 다만 제가 확인한 공개 문서 기준으로는 “1M 토글” 같은 별도 스위치가 문서화돼 있지는 않았습니다. 그래서 Playground에서의 실제 사용법은 “1M-capable 모델을 선택하고, 총 컨텍스트가 그 한도를 넘지 않게 요청을 구성”하는 방식으로 이해하는 게 안전합니다.
즉 Playground는 진입은 쉽지만, 대규모 운영·자동화·세밀한 토큰 제어는 API가 낫다고 보시면 됩니다.
9) Codex에서 1M 쓰는 방법
OpenAI는 GPT‑5.4 출시 글에서 **“Codex의 GPT‑5.4는 실험적 1M 컨텍스트 지원을 포함하며, model_context_window와 model_auto_compact_token_limit를 설정해서 시도할 수 있다”**고 명시했습니다. 별도의 Codex 설정 문서도 이 두 키의 의미를 설명합니다. 또한 예시에서 codex --model gpt-5.4 형태를 보여 줍니다.
핵심은 이겁니다.
model_context_window: 활성 모델에 허용할 컨텍스트 크기model_auto_compact_token_limit: 히스토리를 자동 compact할 임계값
공개 문서에서 이 두 값을 **숫자까지 꽂아 둔 “정답 템플릿”**은 제가 찾지 못했습니다. 그래서 가장 안전한 해석은, model_context_window를 GPT‑5.4의 공식 윈도우인 1,050,000에 맞추고, model_auto_compact_token_limit는 그보다 낮게 둬서 자동 compaction이 먼저 일어나게 설계하는 것입니다. 이건 공식 키 이름 + 모델 스펙을 합친 실무 해석입니다.
예시를 하나 들면 이런 느낌입니다.
model = "gpt-5.4" model_context_window = 1050000 # model_auto_compact_token_limit = <이보다 낮게 설정>
Codex 접근 방식도 알아둘 만합니다. OpenAI 문서상 Codex는 ChatGPT 계정 로그인이나 API 키로 쓸 수 있고, Codex cloud는 ChatGPT가 필요합니다. 또 Codex는 ChatGPT Plus, Pro, Business, Edu, Enterprise에 포함된다고 안내됩니다. 그래서 “코드베이스를 1M로 넘기고 싶다”면, 일반 ChatGPT 대화창보다 Codex 쪽이 더 직접적인 경로입니다.
10) 비용은 어떻게 되나
여기서 진짜 중요합니다. GPT‑5.4와 GPT‑5.4 Pro는 입력이 272K를 넘는 세션부터 가격 체계가 올라갑니다. OpenAI 가격표 기준으로 gpt-5.4는 272K 이하일 때 입력이 $2.50 / 1M tokens, 출력이 $15 / 1M tokens이고, 272K 초과 세션은 입력이 $5.00, 출력이 $22.50로 올라갑니다. gpt-5.4-pro는 훨씬 비싸고, gpt-4.1은 gpt-5.4보다 대체로 더 저렴합니다. OpenAI는 1.05M 컨텍스트 모델에 대해 272K 초과 가격이 “입력 2배, 출력 1.5배”를 세션 전체에 적용하는 방식이라고 설명합니다. reasoning 토큰은 출력 토큰으로 과금됩니다.
그래서 비용 관점에서는 보통 이렇게 정리됩니다.
- 정말 고급 추론이 필요:
gpt-5.4 - 최고 난도지만 매우 비쌈:
gpt-5.4-pro - 긴 문서 읽기 중심, 비용 민감:
gpt-4.1
대량 배치 처리라면 OpenAI 가격표의 Batch / Flex 옵션도 검토할 만합니다. 운영형 대규모 처리라면 비용 차이가 꽤 커질 수 있습니다.
11) 긴 입력에서 캐시와 툴 최적화
긴 프롬프트를 반복해서 쓸 거면 prompt caching이 중요합니다. OpenAI는 1024토큰 이상 프롬프트에서 자동 캐시가 동작할 수 있다고 설명하고, 공통 prefix를 유지하면 캐시 효율이 좋아집니다. GPT‑5.4는 최대 24시간 extended retention도 문서화되어 있습니다.
또, 에이전트에 툴이 많다면 tool_search를 쓰면 됩니다. 이 기능은 필요한 툴 정의만 런타임에 불러와 컨텍스트를 덜 쓰게 해 주므로, 긴 입력에서 특히 유리합니다. “문서도 크고 툴도 많은 에이전트”일수록 효과가 큽니다.
12) 상황별로 가장 현실적인 선택
“ChatGPT 창에서 그냥 쓰고 싶다”
현재 공개 기준으로는 1M 불가입니다. ChatGPT의 GPT‑5.4 Thinking은 256K/400K입니다.
“코딩 조금 가능하고, 가장 확실하게 1M 쓰고 싶다”
**Responses API + gpt-5.4**가 제일 정석입니다. 토큰 수는 /responses/input_tokens로 먼저 재고, 큰 파일은 file_id로 넣고, 긴 작업은 background mode, 긴 멀티턴은 compaction을 붙이면 됩니다.
“대형 코드베이스를 오래 붙들고 코딩 에이전트처럼 쓰고 싶다”
Codex + GPT‑5.4 experimental 1M이 제일 직접적입니다. model_context_window와 model_auto_compact_token_limit를 설정하는 경로가 공식 문서에 나옵니다.
“1M은 필요한데 너무 비싸면 곤란하다”
**gpt-4.1**이 유력합니다. 1M급 컨텍스트를 지원하면서 GPT‑5.4보다 저렴하고, 문서상 더 낮은 지연 시간 특성을 갖습니다.
13) 제가 추천하는 실제 세팅
문서 분석이 목적이면 보통 이렇게 시작하는 게 안정적입니다.
- 모델:
gpt-4.1또는gpt-5.4 - API: Responses API
- 사전 검사:
/responses/input_tokens로 전체 크기 계산 - 입력 방식: 텍스트 몇 개면 직접 넣고, 큰 PDF는
file_id, 문서가 많으면file_search - reasoning: 요약/추출은
none또는low, 복잡한 검토는medium이상 - 멀티턴:
previous_response_id+ compaction - 긴 작업: background mode
- 반복 업무: prompt caching 고려
한 줄 결론으로 압축하면, 지금 1M을 가장 제대로 쓰는 길은 ChatGPT 대화창이 아니라 Responses API나 Codex입니다. ChatGPT는 아직 공개 기준 1M이 아니고, API/Codex가 실제 장문 처리의 본 무대입니다.
다음 답변에서 바로 실행 가능한 Python용 1M 문서 분석 템플릿, Node.js 템플릿, Codex 설정 예시를 한 번에 붙여드릴 수 있습니다.