개요
Grok Imagine 2는 xAI의 최신 2세대 이미지 모델로, 첫 번째 릴리스에서 파라미터 제어와 편집 양쪽 모두에서 완전한 세대 도약을 이뤘습니다. 종횡비와 해상도가 실제로 반영되고, 2K 단계가 제공되며, 한 번의 호출로 최대 10장의 이미지를 반환하고, 참조 편집은 원본 이미지를 정말로 보존합니다. APIYI는 두 가지 버전인grok-imagine-image(표준)과 grok-imagine-image-quality(고품질)을 제공합니다. 둘은 동일한 엔드포인트와 파라미터를 공유하며 — 차이는 출력 충실도와 가격뿐입니다.
2가 포함되지 않습니다. 제품명은 Grok Imagine 2이지만, 호출하는 모델 이름은 **grok-imagine-image**와 **grok-imagine-image-quality**입니다. grok-imagine-2-image라고 쓰지 마십시오. 해당 모델이 없으므로 503이 반환됩니다.텍스트-이미지 API
이미지 편집 API
APIYI에서 Grok Imagine 2를 선택해야 하는 이유
OpenAI 호환 형식
/v1/images/generations 및 /v1/images/edits 엔드포인트. 요청 본문과 응답 필드는 OpenAI 이미지 API와 일치하므로, 공식 OpenAI SDK를 바로 사용할 수 있습니다 — 마이그레이션 작업이 전혀 필요하지 않습니다.동시 실행 수 제한 없음
정액 요금, 예측 가능한 비용
전 세계에서 접근 가능, 장벽 없음
api.apiyi.com에 직접 연결됩니다.전체 모델 생태계
전문 지원
주요 기능
두 가지 해상도 등급
1k 약 1메가픽셀, 2k 4.2~4.5메가픽셀(16:9 기준 2816x1584) — 동일한 가격5가지 화면 비율
1:1 / 16:9 / 9:16 / 4:3 / 3:4, 실측된 픽셀 크기가 정확히 일치합니다호출당 최대 10개
n는 1~10개를 허용하며, 한 번의 요청으로 여러 이미지를 반환합니다 — 배치 선택에 이상적입니다빠른 생성
진정한 참조 편집
다중 이미지 융합
두 가지 응답 형식
url 직접 링크 또는 b64_json 원시 base64를 두 엔드포인트 모두에서 지원합니다OpenAI SDK 바로 사용 가능
client.images.generate()와 client.images.edit()는 바로 작동합니다 — 수동 HTTP 구성은 필요 없습니다요금
- 해상도와 무관:
1k및2k는 비용이 동일합니다 — 2K에는 추가 요금이 없습니다. - 이미지당:
n=4는 prompt 길이에 관계없이 4개 이미지로 과금됩니다. - 편집 요금은 텍스트-이미지와 동일합니다 —
/v1/images/edits에는 추가 요금이 없습니다. usage블록은 정산에 사용할 수 없습니다:prompt_tokens는 항상1000 x n이며, 플레이스홀더입니다. 대신 콘솔 과금 기록을 사용하십시오.
그룹 설정
Grok Imagine 2는 위의 가격표와 일치하는 **Default 그룹(1.0x 요율)**에서 실행됩니다. 그룹 전환은 필요하지 않습니다.
권장 Token 과금 모델: Pay-as-you-go Priority. 이 패밀리는 요청당 과금되며, Pay-as-you-go Priority와 Pay-per-request는 모두 올바르게 라우팅됩니다 — Pay-as-you-go Priority를 선택하면 하나의 Token으로 플랫폼의 다른 token 과금 모델도 함께 사용할 수 있습니다.
기술 사양
엔드포인트
GPT-Image-2에서 이전하기
이미 GPT-Image-2를 통합해 두셨다면, 엔드포인트와 호출 규약은 동일합니다(/v1/images/generations + /v1/images/edits, OpenAI SDK와 호환) — 그러나 파라미터 체계는 다르므로, 모델 이름만 바꿔서는 동작하지 않습니다. 변경해야 할 내용은 다음과 같습니다.
파라미터 매핑
가장 쉽게 하는 세 가지 실수
변경 전과 후
주요 매개변수
aspect_ratio 및 resolution (출력 크기)
이 둘은 함께 실제 출력 픽셀을 결정합니다. 측정된 값은 요청값과 정확히 일치합니다:
aspect_ratio의 enum 범위를 벗어난 값(예: 5:7, 21:9)이나 resolution의 값(예: 1K, 1024x1024)은 조용히 기본값으로 되돌아가며 여전히 이미지를 반환합니다. 잘못된 response_format 역시 url로 되돌아갑니다. 따라서 출력이 예상과 다를 때는 먼저 매개변수 철자를 확인하십시오.유일한 예외는 resolution: "4k"이며, 이는 503 model_service_unavailable를 반환합니다. 이는 티어가 지원되지 않는다는 뜻이지 채널이 중단되었다는 뜻이 아닙니다 — 1k / 2k로 다시 전환하십시오.n (호출당 이미지 수)
1-10을 허용합니다. 반환되는 data 배열 길이는 n와 같으며, 각 이미지는 과금됩니다. 0은 조용히 1로 처리되며, 11 이상이면 400을 반환합니다.
모범 사례
우선 결정합니다: 생성입니까, 편집입니까?
/v1/images/generations. 참조 이미지가 하나라도 있으면, 픽셀 하나만 수정하는 경우라도 → /v1/images/edits. 잘못된 엔드포인트를 선택해도 오류는 발생하지 않고, 예상치 못한 이미지가 나올 뿐입니다.클라이언트 타임아웃을 360초로 설정합니다
구도는 prompt가 아니라 aspect_ratio로 제어합니다
aspect_ratio: "16:9"이 훨씬 더 신뢰할 수 있습니다.대역폭에 따라 해상도 등급을 선택합니다
편집할 때 «다른 모든 것은 그대로 유지»라고 말합니다
융합할 때는 이미지를 명시적으로 참조합니다
image[] 업로드 순서가 “이미지 1 / 이미지 2 / 이미지 3”의 의미입니다. “이미지 1의 주체를 이미지 2의 장면에 넣어 주세요”라고 쓰는 것이 모델에 맡겨 추측하게 하는 것보다 훨씬 더 신뢰할 수 있습니다.재현성을 위해 seed에 의존하지 마십시오
seed을 지원하지 않습니다. 같은 prompt라도 호출마다 다른 결과가 나옵니다. 다시 생성될 것을 기대하기보다 유지하려는 이미지를 보관하십시오.배치 작업은 그냥 동시 실행으로 처리합니다
오류 코드 및 재시도
400와 415은 결정적입니다 — 재시도는 소용이 없으므로 대신 알림을 보내십시오. 429와 네트워크 계층 타임아웃만 재시도할 가치가 있으며, 지수 백오프를 사용하고 최대 3회 시도하십시오.참고로 400 invalid_request는 “bad parameter”와 “content blocked”를 모두 포함하며, 응답 본문으로는 둘을 구분할 수 없습니다. 실용적인 휴리스틱은 지연 시간입니다. 모더레이션 차단은 약 5~6초 만에 반환되며 — 성공적인 생성(~9초)보다 빠릅니다 — 차단이 생성이 시작되기 전에 발생하기 때문입니다.자주 묻는 질문
벤더 문서에는 JSON으로 표시되는데, /v1/images/edits에 JSON을 보내면 왜 400이 반환됩니까?
벤더 문서에는 JSON으로 표시되는데, /v1/images/edits에 JSON을 보내면 왜 400이 반환됩니까?
multipart/form-data만 허용하는 반면, 상위 벤더 문서는 공개 이미지 URL이 포함된 JSON 본문을 설명합니다. 둘은 다릅니다 — 이 사이트의 문서를 따르십시오.올바른 형식은 파일 업로드입니다:텍스트-이미지에 참조 이미지를 보냈더니 200이 왔는데, 결과가 무관한 이유는 무엇입니까?
텍스트-이미지에 참조 이미지를 보냈더니 200이 왔는데, 결과가 무관한 이유는 무엇입니까?
/v1/images/generations은 image / image_url / images를 조용히 무시하고, prompt만으로 생성하며, 과금은 평소와 같이 됩니다.오류 신호가 없으므로 “편집이 고장 났다”고 결론내리기 쉽습니다. 참조 이미지를 사용하는 모든 워크플로는 /v1/images/edits을 사용해야 합니다.편집 엔드포인트에서 resolution / aspect_ratio가 아무런 영향을 주지 않는 이유는 무엇입니까?
편집 엔드포인트에서 resolution / aspect_ratio가 아무런 영향을 주지 않는 이유는 무엇입니까?
resolution이나 aspect_ratio을 전달해도 오류는 발생하지 않지만 아무런 동작도 하지 않습니다.출력 크기를 변경하려면 업로드하기 전에 참조 이미지를 자르거나 크기를 조정하십시오.응답에 revised_prompt가 없는 이유는 무엇입니까?
응답에 revised_prompt가 없는 이유는 무엇입니까?
revised_prompt도 반환하지 않으며, respect_moderation 또는 model 같은 필드도 반환하지 않습니다. 각 data[] 항목에는 response_format에 따라 url 또는 b64_json 중 하나만 포함되며, 둘 다 포함되지는 않습니다.응답을 파싱할 때 이러한 필드가 존재한다고 가정하지 마십시오.usage의 token 개수로 과금을 정산할 수 있습니까?
usage의 token 개수로 과금을 정산할 수 있습니까?
usage.prompt_tokens은 실제 prompt 길이와 관계없이 항상 1000 x n입니다 — 이는 자리표시자입니다.이 계열은 이미지당 정액 요금으로 요청별 과금됩니다. 실제 청구 금액은 APIYI 콘솔의 과금 기록을 사용하십시오.왜 1K는 JPEG인데 2K는 PNG입니까? 크기 차이가 매우 큽니다
왜 1K는 JPEG인데 2K는 PNG입니까? 크기 차이가 매우 큽니다
resolution: 1k는 JPEG(~220-300 KB)를 반환하고 resolution: 2k는 무손실 PNG(~5-6 MB)를 반환하여 대략 20배 차이가 납니다.URL 확장자, HTTP Content-Type, 실제 바이트는 서로 일치하므로 Content-Type에 따라 안전하게 분기할 수 있습니다.대역폭에 민감한 상황(모바일, 대량 전송)에서는 1k을 선호하십시오 — 두 등급의 비용은 같으므로 결정은 순전히 품질에 관한 문제입니다.resolution: 4k에서 503이 반환되는데 — 채널이 다운된 것입니까?
resolution: 4k에서 503이 반환되는데 — 채널이 다운된 것입니까?
4k은 이 계열에서 지원되는 등급이 아니며, 게이트웨이는 503 model_service_unavailable를 반환합니다. 코드는 장애처럼 보이지만 실제로는 파라미터 문제이므로 재시도해도 도움이 되지 않습니다 — 1k 또는 2k으로 다시 전환하십시오.지원되는 것은 1k과 2k뿐입니다.잘못된 파라미터가 오류 대신 잘못된 이미지를 생성하는 이유는 무엇입니까?
잘못된 파라미터가 오류 대신 잘못된 이미지를 생성하는 이유는 무엇입니까?
aspect_ratio(예: 5:7), resolution(예: 1K, 1024x1024) 및 response_format(예: base64)는 모두 조용히 기본값으로 되돌아가며 400 대신 여전히 이미지를 반환합니다.따라서 출력이 기대와 다르다면 먼저 파라미터 철자를 확인하십시오 — 특히 resolution 값은 소문자 1k / 2k입니다.한 번의 호출로 몇 개의 이미지를 생성할 수 있습니까?
한 번의 호출로 몇 개의 이미지를 생성할 수 있습니까?
n은 1-10을 허용하며, 반환되는 data 배열의 길이는 n와 같습니다. 각 이미지는 과금됩니다.0은 조용히 1로 처리되며, 11 이상은 400 invalid_request을 반환합니다.seed 기반 재현성이 지원됩니까?
seed 기반 재현성이 지원됩니까?
seed를 전달해도 오류는 발생하지 않지만 효과는 없습니다 — 동일한 prompt와 동일한 seed라도 호출마다 다른 이미지가 반환됩니다.다시 생성하려 하기보다, 다시 사용할 필요가 있는 이미지는 저장해 두십시오.공식 OpenAI SDK로 이것을 호출할 수 있습니까?
공식 OpenAI SDK로 이것을 호출할 수 있습니까?
base_url을 https://api.apiyi.com/v1에 지정하기만 하면 됩니다:aspect_ratio와 resolution은 표준 OpenAI SDK 필드가 아니므로 extra_body를 통해 전달하십시오.동시 실행 수 제한이 있습니까? 배치 생성이 제한됩니까?
동시 실행 수 제한이 있습니까? 배치 생성이 제한됩니까?
timeout**입니다: 이미지 API는 동기식이므로, 정상적으로 처리 중이면서도 여전히 과금되는 요청을 끊지 않도록 클라이언트 timeout을 360초로 설정하십시오.콘텐츠 검열은 어떻게 동작하며, 차단은 어떻게 감지합니까?
콘텐츠 검열은 어떻게 동작하며, 차단은 어떻게 감지합니까?
400 invalid_request을 반환하므로, 응답 본문만으로는 구분할 수 없습니다.실용적인 휴리스틱은 지연 시간입니다: 검열 차단은 약 5-6초 만에 반환되며(차단이 생성보다 먼저 발생함), 성공적인 이미지는 약 9초가 걸립니다. 검열 결과에는 어느 정도 무작위성도 있으므로 경계선 콘텐츠는 재시도마다 동일하게 동작하지 않을 수 있습니다 — 한 번의 시도만으로 결론을 내리지 마십시오.파라미터가 올바르다고 확인되었는데도 400이 계속된다면, prompt가 검열을 유발했을 가능성이 가장 큽니다. 표현을 수정하십시오./v1/chat/completions을 통해 이미지를 생성할 수 있습니까?
/v1/chat/completions을 통해 이미지를 생성할 수 있습니까?
content은 markdown 이미지 링크입니다:/v1/images/generations 및 /v1/images/edits) — 더 풍부한 파라미터, 더 안정적인 응답 형식, 그리고 이 문서와의 일관성을 제공합니다.관련 문서
- Grok Imagine 2 텍스트-투-이미지 API - 플레이그라운드가 포함된 엔드포인트 레퍼런스
- Grok Imagine 2 이미지 편집 API - 편집 및 다중 이미지 융합 레퍼런스
- Grok 모델 가이드 - xAI 텍스트 모델
- 이미지 API 모범 사례 - 타임아웃, 연결 끊김, 압축
- API 매뉴얼
- 충전 프로모션