Reve Art API 문서

Reve Art의 이미지 생성 API를 이용해 주셔서 감사합니다. 이 서비스는 고급 AI 기반 이미지 생성 기능을 간단한 REST API를 통해 제공합니다.

Reve Image 1.0 개요

Reve Image 1.0은 다음과 같은 기능을 가진 저희의 주력 텍스트-이미지 생성 모델입니다.

  • 뛰어난 프롬프트 준수
  • 높은 심미적 품질
  • 정확한 타이포그래피 렌더링
  • 직관적인 텍스트-이미지 생성

이 모델은 고급 프롬프트 엔지니어링 전문 지식 없이도 초보자와 숙련된 사용자 모두 쉽게 이용할 수 있습니다. 이미지 생성에서 무료로 체험해 보세요.

사용 예시

Reve Art API는 다양한 애플리케이션에 통합될 수 있습니다.

  • 콘텐츠 제작: 블로그, 기사 및 소셜 미디어용 고유한 시각 자료 생성
  • 전자상거래: 제품 목업 및 변형 생성
  • 디자인 및 프로토타이핑: 디자인 컨셉 빠르게 시각화
  • 게임 및 엔터테인먼트: 게임 자산 및 캐릭터 디자인 생성
  • 교육: 교육 자료 및 일러스트 생성

인증

모든 API 요청에는 API 키를 사용한 인증이 필요합니다.

API 키를 Authorization 헤더에 추가합니다.

curl -X POST https://reve-art.com/v1/reve-image/generate \
-H "Authorization: Bearer your_api_key" \
-H "Content-Type: application/json" \
-d '{"prompt": "원하는 프롬프트 입력", "aspect_ratio": "1:1"}'

API 키 얻는 방법

로그인 후 대시보드 > API 키 페이지에서 API 키를 추가하세요.

그런 다음 API 키를 사용하여 이미지를 생성합니다.

이미지 생성

이미지 생성 엔드포인트를 사용하면 텍스트 설명에서 이미지를 생성할 수 있습니다. 매개변수를 통해 생성 프로세스의 다양한 측면을 제어할 수 있습니다.

모범 사례

  1. 프롬프트 엔지니어링

    • 프롬프트는 구체적이고 상세하게 작성합니다.
    • 스타일 가이드에 예술 용어를 사용합니다.
    • 조명, 원근감, 분위기에 대한 세부 정보를 포함합니다.
  2. 가로 세로 비율 선택

    • 의도한 사용 사례에 따라 선택합니다.
    • 소셜 미디어 게시물의 경우 1:1
    • 프레젠테이션/배너의 경우 16:9
    • 모바일 콘텐츠의 경우 9:16
  3. 비동기 생성

    • 긴 생성 시간에는 async=true를 사용합니다.
    • 더 나은 사용자 경험을 위해 상태 폴링을 구현합니다.

POST /v1/images/generate

요청 본문

{
  "prompt": "string",           // 필수: 이미지 생성 프롬프트
  "negative_prompt": "string",  // 선택: 이미지에서 피해야 할 것들
  "aspect_ratio": "string",    // 필수: 이미지 가로 세로 비율 (기본값: "1:1")
  "async": boolean             // 선택: 비동기 생성 (기본값: false)
}

가로 세로 비율

이미지의 가로 세로 비율입니다. 지원되는 비율: "1:1", "16:9", "4:3", "3:4", "9:16", "2:3", "3:2".

동기 응답

{
  "id": "img_123",
  "status": "completed",
  "url": "https://cdn.reve-art.com/img_123.png",
  "metadata": {
    "prompt": "입력한 프롬프트",
    "width": 1024,
    "height": 1024,
    "created_at": "2024-01-01T00:00:00Z"
  }
}

비동기 응답

{
  "id": "img_123",
  "status": "pending"
}

사용 예시

Python:

import requests

api_key = "your_api_key"
headers = {
    "Authorization": f"Bearer {api_key}",
    "Content-Type": "application/json"
}

response = requests.post(
    "https://api.reve-art.com/v1/reve-image/generate",
    headers=headers,
    json={
        "prompt": "아름다운 산 위의 일몰",
        "aspect_ratio": "16:9"
    }
)

if response.ok:
    result = response.json()
    print(f"이미지 URL: {result['url']}")
else:
    print(f"오류: {response.text}")

Node.js:

async function generateImage(prompt: string) {
  const response = await fetch("https://api.reve-art.com/v1/reve-image/generate", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      prompt,
      aspect_ratio: "1:1",
      async: true,
    }),
  });

  if (!response.ok) {
    throw new Error(`이미지 생성 실패: ${response.statusText}`);
  }

  const result = await response.json();
  
  if (result.status === "pending") {
    // 완료될 때까지 폴링
    return await checkImageStatus(result.id);
  }

  return result;
}

이미지 상태 확인

GET /v1/reve-image/status/image_id

응답

{
  "id": "img_123",
  "status": "completed",
  "url": "https://cdn.reve-art.com/img_123.png",
  "metadata": {
    "prompt": "원본 프롬프트",
    "width": 1024,
    "height": 1024,
    "model": "text2image_v1",
    "created_at": "2024-01-01T00:00:00Z"
  }
}

사용 예시

async function checkImageStatus(imageId: string) {
  const response = await fetch(
    `https://reve-art.com/v1/reve-image/status/${imageId}/`,
    {
      headers: {
        "Authorization": `Bearer ${apiKey}`,
      },
    }
  );

  if (!response.ok) {
    throw new Error(`상태 확인 실패: ${response.statusText}`);
  }

  return await response.json();
}

사용량 제한

API 요청은 구독 플랜 및 사용 가능한 크레딧에 따라 제한됩니다.

  • 이미지 생성 시마다 1 크레딧이 소모됩니다.
  • 무료 플랜: 3 크레딧 포함
  • 기본 플랜: 월 100 크레딧
  • 사용량 제한: 분당 10개 요청
  • 더 많은 크레딧이 필요한 경우 플랜 업그레이드 또는 크레딧 추가 구매를 하십시오.