AI 초보자 QnA
질문
OpenAI API 이미지 여러 장을 요청했는데 한 장만 저장되면 어떻게 하나요?
답변
이미지 생성 요청에 여러 장을 뜻하는 n 값을 넣었는지와 완료된 응답의
data
에 이미지가 몇 개 있는지부터 확인하세요. 공식 예제는 첫 번째 이미지인
data[0]
만 파일로 저장합니다. 여러 장을 받았더라도 그 줄만 실행하면 로컬에는 한 장만 남습니다.
이 글은 Image API에서 요청 수·반환 수·저장 수를 구분하는 방법입니다. 이전 글의 Base64 디코딩과 파일 형식 설명을 반복하기보다, 결과 배열 전체를 검사하고 각 이미지를 다른 이름으로 저장하는 데 집중합니다.
짧게 답하면
모델의 n 지원 확인 → 실제 n 요청 → data 항목 수 확인 → 항목별 다른 파일명으로 저장 → 파일을 직접 열어 대조 순서로 진행하세요. 요청한 수와 받은 수, 디스크에 남긴 수는 서로 다른 숫자입니다.
요청 개수
Image API의 n은 만들기를 요청하는 수입니다. 선택한 모델이 지원하는 값인지 먼저 확인합니다.
반환 개수
완료된 이미지 생성 응답의 data 항목을 세어 실제로 받은 결과를 확인합니다.
저장 개수
각 항목을 서로 다른 이름으로 기록하고, 열리는 파일만 결과물로 셉니다.
처음 쓰는 사람 기준으로 설명하면
OpenAI의 이미지 생성 가이드는 Image API에서 n을 지정하면 한 요청으로 여러 이미지를 생성할 수 있으며 기본 응답은 한 장이라고 안내합니다. 다만 생성 모델별로 허용 범위가 다릅니다. Create image 문서는 n의 범위를 1부터 10까지로 안내합니다. 사용하려는 GPT Image 모델의 조건을 확인한 뒤 값을 고르세요.
공식 Image API 예제는
result.data[0].b64_json
을 읽고 파일 하나를 만듭니다. 예제는 첫 이미지 저장을 보여 주는 것이지 전체 결과를 저장하는 반복문이 아닙니다. 완료 응답의
data
길이를 먼저 확인한 뒤, 존재하는 각 항목의 이미지 데이터를 따로 저장해야 누락 여부를 알 수 있습니다.
Responses API의 이미지 생성 도구를 썼다면 확인 위치가 다릅니다. 공식 도구 가이드는
response.output
에서
image_generation_call
을 찾아 각
result
를 읽습니다. Image API의 n과 data 사용법을 이 도구의 입력·출력 구조에 그대로 적용하지 마세요.
한 줄 정리: API가 한 장만 돌려준 것인지, 코드가 첫 장만 꺼냈는지, 저장할 때 덮어쓴 것인지를 순서대로 나눠 보면 원인을 좁힐 수 있습니다.
바로 따라 해보기
1단계. 요청 모델과 n을 읽습니다.
Image API를 쓰는지 확인하고 모델의 Create image 지원 범위를 봅니다. 개인정보가 없는 간단한 그림을 요청하면서 지원되는 모델에
n=2
를 넣어 시험하세요. 이전 요청에 n이 빠졌다면 기본 한 장이 나온 것이 정상입니다.
2단계. 반환된 data를 모두 셉니다.
요청 성공 여부와 완료 응답의
data
항목 수를 따로 기록합니다. 첫 항목의
b64_json
만 읽는 예제를 그대로 쓰고 있다면, 나머지 항목도 있는지 살피세요. data가 예상보다 적거나 오류가 있으면 저장 코드를 고치기 전에 응답부터 조사합니다.
3단계. 각 항목을 다른 이름으로 저장합니다.
반환된 항목마다 이미지 데이터를 디코딩해
image-1.png
,
image-2.png
처럼 번호를 붙여 저장합니다. 요청한 출력 형식에 맞춰 확장자를 고르고 파일을 하나씩 열어 장면과 글자를 확인하세요. 파일명이 같으면 뒤의 저장이 앞의 파일을 덮어쓸 수 있습니다.
주의할 점
n=2
를 보냈다는 이유만으로 파일 두 개가 남았다고 보고하지 마세요. 결과가 두 항목이라도 저장 프로그램이 첫 항목만 처리하거나 같은 경로를 재사용할 수 있습니다. 반대로 결과 배열이 한 항목이면 디코딩을 반복해도 다른 그림이 새로 생기지 않습니다.
모델별 제한을 확인하지 않고 모든 이미지 모델이 같은 n 값을 받는다고 가정합니다. 현재 사용할 수 있는 모델의 지원 조건을 확인하세요.
파일 한 개만 보인다는 이유로 같은 생성 요청을 반복합니다. 먼저 data 항목 수와 저장 경로를 대조해 불필요한 호출을 줄이세요.
Base64 원문이나 API 키를 로그·온라인 변환 사이트에 올립니다. 이미지는 로컬에서 저장하고 공개 전 내용과 사용 권한을 확인하세요.
웹사이트와 앱 중 무엇부터 쓰면 좋을까요?
공식 웹 문서에서 범위 확인
Image generation 가이드에서 n의 의미를 보고 Create image의 모델별 제한을 확인하세요. 웹 문서의 한 장 저장 예제를 전체 저장 코드로 오해하지 않는 것이 먼저입니다.
API 개발 환경에서 저장 확인
여러 파일을 실제로 남기는 일은 API 응답을 받은 코드에서 합니다. 사용한 API 종류에 따라 data 배열 또는 response.output을 구분하고, 저장 폴더의 파일 개수와 실제 열림 여부를 확인하세요. 모바일 ChatGPT 앱의 다운로드 메뉴 문제와는 다릅니다.
같이 보면 좋은 질문
확인한 공식 자료
OpenAI 공식 가이드 — Image generation — n으로 여러 이미지 요청 가능, 기본 한 장, data[0]만 저장하는 첫 이미지 예제를 확인했습니다.
OpenAI API 문서 — Create image — n의 범위와 반환 이미지 데이터 구조를 확인했습니다.
OpenAI 공식 가이드 — Image generation tool — Responses API의 image_generation_call 결과 위치를 확인했습니다.
