신청 흐름
OpenAI 이미지 생성 API를 사용하려면 먼저 OpenAI 이미지 생성 API 페이지에서 “Acquire” 버튼을 클릭하여 요청에 필요한 자격 증명을 얻습니다:
로그인 또는 등록이 되어 있지 않으면 자동으로 로그인 페이지로 이동하여 등록 및 로그인을 초대합니다. 로그인 및 등록 후에는 자동으로 현재 페이지로 돌아옵니다.
첫 번째 신청 시 무료 크레딧이 제공되어 해당 API를 무료로 사용할 수 있습니다.
기본 사용
다음으로 인터페이스에 해당 내용을 입력할 수 있습니다, 아래 그림과 같이:
authorization으로, 드롭다운 목록에서 선택하면 됩니다. 또 다른 매개변수는 model로, model은 OpenAI DALL-E 공식 모델 카테고리를 선택하는 것입니다. 여기서는 주로 1종의 모델이 있으며, 자세한 내용은 제공된 모델을 참조할 수 있습니다. 마지막 매개변수는 prompt로, prompt는 우리가 생성할 이미지의 힌트 단어를 입력하는 것입니다.
또한 오른쪽에 해당 호출 코드 생성이 있으며, 코드를 복사하여 직접 실행할 수 있고, “Try” 버튼을 클릭하여 테스트할 수도 있습니다.

created는 이번 이미지 생성의 ID로, 이번 작업을 고유하게 식별하는 데 사용됩니다.data는 이미지 생성의 결과 정보를 포함합니다.
data는 모델이 생성한 이미지의 구체적인 정보를 포함하고 있으며, 그 안의 url은 생성된 이미지의 세부 링크입니다. 아래 그림과 같이 확인할 수 있습니다.

이미지 품질 매개변수 quality
다음으로 이미지 생성 결과의 일부 세부 매개변수를 설정하는 방법을 소개합니다. 이미지 품질 매개변수 quality는 두 가지가 있습니다. 첫 번째 standard는 표준 이미지를 생성하는 것을 의미하고, 두 번째 hd는 생성된 이미지가 더 세밀한 세부 사항과 더 큰 일관성을 갖는 것을 의미합니다.
아래는 이미지 품질 매개변수를 standard로 설정하는 방법입니다. 구체적인 설정은 아래 그림과 같습니다:


standard인 생성 이미지는 아래 그림과 같습니다:

hd로 설정하면 아래 그림과 같은 이미지를 얻을 수 있습니다:

hd가 standard보다 더 세밀한 세부 사항과 더 큰 일관성을 가진 이미지를 생성하는 것을 확인할 수 있습니다.
이미지 크기 매개변수 size
우리는 생성된 이미지의 크기를 설정할 수 있으며, 아래와 같은 설정을 할 수 있습니다.
아래에서 이미지의 크기를 1024 * 1024로 설정하며, 구체적인 설정은 아래 그림과 같습니다:


1024 * 1024인 생성된 이미지는 아래 그림과 같습니다:

1792 * 1024로 설정하면 아래 그림과 같은 이미지를 얻을 수 있습니다:
이미지의 크기가 확연히 다름을 볼 수 있으며, 추가적인 크기도 설정할 수 있습니다. 자세한 정보는 저희 공식 문서를 참조하시기 바랍니다.
이미지 스타일 매개변수 style
이미지 스타일 매개변수 style은 두 가지 매개변수를 포함합니다. 첫 번째는 vivid로, 생성된 이미지가 더 생동감 있게 표현됨을 의미하며, 두 번째는 natural로, 생성된 이미지가 더 자연스럽게 표현됨을 의미합니다.
아래에서 이미지 스타일 매개변수를 vivid로 설정하며, 구체적인 설정은 아래 그림과 같습니다:


vivid인 생성된 이미지는 아래 그림과 같습니다:

natural로 설정하면 아래 그림과 같은 이미지를 얻을 수 있습니다:

vivid가 natural보다 더 생동감 있고 사실적인 이미지를 생성하는 것을 볼 수 있습니다.
이미지 링크의 형식 매개변수 response_format
마지막 이미지 링크의 형식 매개변수 response_format도 두 가지가 있습니다. 첫 번째는 b64_json으로, 이미지 링크를 Base64로 인코딩하며, 두 번째는 url로, 일반 이미지 링크로 직접 이미지를 확인할 수 있습니다.
아래에서 이미지 링크의 형식 매개변수를 url로 설정하며, 구체적인 설정은 아래 그림과 같습니다:


url의 생성된 이미지 링크는 이미지 URL로 직접 접근할 수 있으며, 이미지 내용은 아래 그림과 같다:

b64_json으로 Base64 인코딩된 이미지 링크를 얻을 수 있으며, 구체적인 결과는 아래 그림과 같다:
비동기 콜백
OpenAI 이미지 생성 API가 이미지를 생성하는 데 시간이 다소 걸릴 수 있으므로, API가 오랜 시간 응답하지 않으면 HTTP 요청이 연결을 유지하여 추가 시스템 리소스를 소모하게 된다. 따라서 이 API는 비동기 콜백 지원도 제공한다. 전체 프로세스는 다음과 같다: 클라이언트가 요청을 시작할 때 추가로callback_url 필드를 지정하고, 클라이언트가 API 요청을 시작하면 API는 즉시 결과를 반환하며, 현재 작업 ID를 나타내는 task_id 필드 정보를 포함한다. 작업이 완료되면 생성된 이미지 결과가 POST JSON 형식으로 클라이언트가 지정한 callback_url로 전송되며, 여기에도 task_id 필드가 포함되어 있어 작업 결과를 ID로 연결할 수 있다.
아래 예제를 통해 구체적으로 어떻게 작업하는지 알아보자.
먼저, Webhook 콜백은 HTTP 요청을 수신할 수 있는 서비스로, 개발자는 자신이 구축한 HTTP 서버의 URL로 교체해야 한다. 여기서는 편리한 시연을 위해 공개 Webhook 샘플 사이트인 https://webhook.site/를 사용하며, 해당 사이트를 열면 Webhook URL을 얻을 수 있다. 아래 그림과 같다:
이 URL을 복사하여 Webhook으로 사용할 수 있으며, 여기서의 샘플은 https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab이다.
다음으로, callback_url 필드를 위의 Webhook URL로 설정하고, 아래 코드와 같이 해당 매개변수를 입력할 수 있다:
task_id 필드가 있으며, data 필드는 동기 호출과 동일한 이미지 생성 결과를 포함하고 있으며, task_id 필드를 통해 작업을 연결할 수 있다.
오류 처리
API를 호출할 때 오류가 발생하면 API는 해당 오류 코드와 정보를 반환한다. 예를 들어:400 token_mismatched: 잘못된 요청, 누락되거나 잘못된 매개변수 때문일 수 있다.400 api_not_implemented: 잘못된 요청, 누락되거나 잘못된 매개변수 때문일 수 있다.401 invalid_token: 인증되지 않음, 잘못되었거나 누락된 인증 토큰.429 too_many_requests: 너무 많은 요청, 비율 제한을 초과했다.500 api_error: 내부 서버 오류, 서버에서 문제가 발생했다.

