다음을 통해 공유


DALL-E 모델을 사용하여 작업하는 방법 알아보기

OpenAI의 DALL-E 모델은 사용자가 제공한 텍스트 프롬프트에 따라 이미지를 생성합니다. 이 가이드에서는 DALL-E 모델을 사용하고 REST API 호출을 통해 해당 옵션을 구성하는 방법을 보여 줍니다.

필수 조건

이미지 생성 API 호출

다음 명령은 코드와 함께 DALL-E를 사용하는 가장 기본적인 방법을 보여줍니다. 이러한 모델을 프로그래밍 방식으로 처음 사용하는 경우 DALL-E 빠른 시작으로 시작하는 것이 좋습니다.

POST 요청을 다음으로 보냅니다.

https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/generations?api-version=<api_version>

여기서

  • <your_resource_name> Azure OpenAI 리소스의 이름입니다.
  • <your_deployment_name> DALL-E 3 모델 배포의 이름입니다.
  • <api_version>(은)는 사용하려는 API의 버전입니다. 예들 들어 2024-02-01입니다.

필수 헤더:

  • Content-Type: application/json
  • api-key: <your_API_key>

본문:

다음은 샘플 요청 본문입니다. 이후 섹션에서 정의된 다양한 옵션을 지정합니다.

{
    "prompt": "A multi-colored umbrella on the beach, disposable camera",
    "size": "1024x1024", 
    "n": 1,
    "quality": "hd", 
    "style": "vivid"
}

출력

성공적인 이미지 생성 API 호출의 출력은 다음 예제와 같습니다. url 필드에는 생성된 이미지를 다운로드할 수 있는 URL가 포함되어 있습니다. URL은 24시간 동안 활성 상태로 유지됩니다.

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "url": "<URL_to_generated_image>",
            "revised_prompt": "<prompt_that_was_used>" 
        }
    ]
} 

API 호출 거부

프롬프트 및 이미지는 콘텐츠 정책에 따라 필터링되어 프롬프트 또는 이미지에 플래그가 지정되면 오류를 반환합니다.

프롬프트에 플래그가 지정되면 메시지의 error.code 값이 contentFilter으로 설정됩니다. 예를 들면 다음과 같습니다.

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Your task failed as a result of our safety system."
    }
}

생성된 이미지 자체가 필터링될 수도 있습니다. 이 경우 오류 메시지는 Generated image was filtered as a result of our safety system.로 설정됩니다. 예를 들면 다음과 같습니다.

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Generated image was filtered as a result of our safety system."
    }
}

이미지 프롬프트 작성

이미지 프롬프트는 이미지에 표시할 콘텐츠와 이미지의 비주얼 스타일을 설명해야 합니다.

텍스트 프롬프트를 조정하여 다양한 종류의 이미지를 생성하는 방법을 자세히 알아보려면 Dallery DALL-E 2 프롬프트 북을 참조하세요.

프롬프트를 작성할 때 이미지 생성 API에는 콘텐츠 조정 필터가 함께 제공됩니다. 서비스에서 프롬프트를 유해한 콘텐츠로 인식하면 이미지를 생성하지 않습니다. 자세한 내용은 콘텐츠 필터링을 참조하세요.

프롬프트 변환

DALL-E 3에는 이미지를 향상시키고, 편견을 줄이고, 이미지의 자연스러운 변형을 높이기 위한 기본 제공 프롬프트 다시 쓰기가 포함되어 있습니다.

예제 텍스트 프롬프트 프롬프트 변환 없이 생성된 이미지 예제 프롬프트 변환을 사용하여 생성된 이미지 예제
"시애틀 스카이라인의 수채화 그림" 시애틀 스카이 라인의 수채화 그림(단순). 더 세부 사항과 구조가 있는 시애틀 스카이 라인의 수채화 그림.

업데이트된 프롬프트는 데이터 응답 개체의 revised_prompt 필드에 표시됩니다.

현재 이 기능을 사용하지 않도록 설정할 수는 없지만 다음 I NEED to test how the tool works with extremely simple prompts. DO NOT add any detail, just use it AS-IS:(을)를 추가하여 특수 프롬프트를 사용하여 출력을 원래 프롬프트에 더 가깝게 만들 수 있습니다.

API 옵션 지정

다음 API 본문 매개 변수는 DALL-E 이미지 생성에 사용할 수 있습니다.

크기

생성된 이미지의 크기를 지정합니다. DALL-E 3 모델의 1024x1024, 1792x1024 또는 1024x1792 중 하나여야 합니다. 사각형 이미지는 생성 속도가 더 빠릅니다.

스타일

DALL-E 3에는 naturalvivid 두 가지 스타일 옵션이 도입되었습니다. natural 스타일은 DALL-E 2 기본 스타일과 더 유사하지만 vivid 스타일은 더 많은 하이퍼 리얼 및 시네마틱 이미지를 생성합니다.

natural 스타일은 DALL-E 3이 더 단순하거나 차분하거나 사실적인 주제를 과장하거나 혼동하는 경우에 유용합니다.

기본값은 vivid입니다.

품질

이미지 품질에는 hdstandard의 두 가지 옵션이 있습니다. hd 이미지 전체에서 세부 정보 및 일관성이 더 높은 이미지를 만듭니다. standard 이미지를 더 빠르게 생성할 수 있습니다.

기본값은 standard입니다.

숫자

DALL-E 3에서는 단일 API 호출에서 둘 이상의 이미지를 생성할 수 없습니다. n 매개 변수는 1(으)로 설정해야 합니다. 한 번에 여러 이미지를 생성해야 하는 경우 병렬 요청을 합니다.

응답 형식

생성된 이미지가 반환되는 형식입니다. url (이미지를 가리키는 URL) 또는 b64_json (JSON 형식의 기본 64비트 코드) 중 하나여야 합니다. 기본값은 url입니다.

다음 단계