{
  "aboutHtml": "<h4>Krea 2 제품군에서 빠르게 방향 탐색하기</h4><p>Krea 2 Medium Turbo는 Krea가 Krea 2 Turbo로 소개하는 생성 에디션입니다. 모델별 인터페이스는 Medium Turbo 변형을 지정하며, Krea 사용자 가이드는 이미지 생성에 필요한 작업량을 줄이는 증류된 샘플링 스케줄을 설명합니다. Krea는 이를 폭넓은 창작 탐색, 표현적인 러프 초안, 일러스트레이션, 그래픽 방향을 위한 제품군의 가장 빠른 선택지로 소개합니다.</p><p>표지 구도 대안, 캠페인의 시각 처리, 같은 장면의 서로 다른 일러스트 스타일처럼 아이디어를 비교하는 것이 당장의 목표일 때 사용하세요. 간결하고 구체적인 시작 지시가 비교에 도움이 됩니다. 예를 들어 “연한 파란색 책상 위의 접은 빨간 종이 새, 대담한 에디토리얼 일러스트, 경계가 선명한 오후의 그림자, 단순한 기하학 형태, 하단에 분명한 여백이 있는 세로 구도”라고 요청할 수 있습니다. 주제와 프레임을 유지한 채 시각 처리를 탐색하고 선택한 방향을 더 발전시키세요.</p><p>Krea의 에디션 가이드는 더 안정적인 일러스트 표현에는 Medium을, 사진이나 원재료 질감을 살린 최종 방향에는 Large를 권합니다. Turbo는 별개의 에디션입니다. 이후 다른 모델에서 작업하는 것은 별도 생성이며, 자동 품질 업그레이드나 동일한 연속 작업이 아닙니다.</p><h4>프롬프트와 시각 입력 준비하기</h4><p>모델 생성 스키마에는 prompt, aspect ratio, resolution이 필수입니다. 선택적인 image-to-image 입력은 순수 노이즈 대신 원본 이미지에서 생성을 시작합니다. denoising strength는 0부터 1까지이며, 0은 입력을 유지하고 1은 완전히 대체합니다. 문서화된 기본값은 0.99입니다. 시작 구도를 신중하게 준비하고 바꿀 내용을 설명하세요. 높은 강도는 원본을 상당히 대체할 수 있게 합니다.</p><p>스타일 참조는 시작 이미지 강도를 바꾸는 대신 이미지를 통해 외관을 제공합니다. 모델별 스키마는 원본 이미지와 스타일 참조 URI 문자열을 1,024자로 제한합니다. 모델별 요청 스키마는 최대 열 개의 참조를 허용하고, 각각의 influence 범위는 0부터 1, 기본값은 0.5입니다. 색상 팔레트, 그림 처리, 조명 방향처럼 역할이 뚜렷한 참조를 선택하세요. 별도의 Krea 워크스페이스 가이드는 해당 인터페이스에서 최대 네 개의 스타일 참조를 설명합니다. 각 인터페이스의 한도에 맞춰 준비해야 합니다.</p><p>무드보드는 일관된 시각 방향을 재사용 가능한 입력으로 구성합니다. 먼저 무드보드를 만든 뒤 생성할 때 기존 식별자를 사용하세요. 모델 스키마는 하나의 무드보드를 허용하며 influence는 0부터 1, 기본값은 0.23입니다. 일반적으로 LoRAs인 학습된 스타일은 식별자와 -2부터 2까지의 strength로 선택하는 또 다른 입력입니다. 원본 이미지, 스타일 참조, 무드보드, 학습된 스타일은 역할이 다르므로 모든 세부 요소를 보존하는 동일한 방법처럼 취급하지 마세요.</p><h4>Creativity와 세 가지 시각 슬라이더 조정하기</h4><p>Creativity는 프롬프트 확장을 제어합니다. Raw는 확장을 끄며 low, medium, high는 지시에 추가하는 해석의 정도를 바꿉니다. 모델별 스키마 기본값은 low입니다. 정확한 지시를 비교할 때는 절제된 설정을 사용하고, 더 넓은 아이디어 범위를 찾을 때는 해석의 폭을 늘릴 수 있습니다.</p><p>Intensity, Complexity, Movement는 각각 -100부터 100까지의 독립적인 정수 슬라이더이며 0은 중립입니다. Intensity는 차분한 처리와 대담한 처리 사이를 조절합니다. Complexity는 단순한 구도와 밀도 높은 세부 묘사 사이를 조절합니다. Movement는 포즈, 시각적 에너지, 암시되는 움직임을 바꿉니다. 이 슬라이더는 참조·무드보드와 함께 사용할 수 있으며 Creativity의 프롬프트 확장과는 별개입니다.</p><p>종이 새 지시에서는 다른 설정을 유지하면서 먼저 깔끔한 구도와 더 상세한 구도를 비교하세요. 다음으로 더 강한 시각 처리나 역동적인 포즈를 탐색합니다. 한 번에 하나의 제어만 바꾸고, 선택적 seed, prompt, 참조 구성을 기록하세요. Movement는 정지 이미지의 인상을 바꿉니다. 움직이는 새, 카메라 이동, 동영상 시퀀스를 생성하는 기능은 아닙니다.</p><h4>프레임, 배치, 완성된 이미지</h4><p>모델별 생성 스키마는 1K 해상도와 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3, 9:16의 아홉 종횡비를 제공합니다. Krea의 Turbo 워크스페이스 가이드는 배치에서 최대 네 이미지를 생성하는 방법도 설명합니다. 이 배치 설정은 문서화된 워크스페이스 워크플로에 속하며 개별 생성 요청 스키마와 구별됩니다.</p><p>생성 전에 의도한 에셋에 맞는 프레임을 선택하세요. 세로 표지는 가로 에디토리얼 이미지와 주제·여백의 균형이 다릅니다. 생성 해상도와 이후 향상 처리 또는 최종 레이아웃 내보내기를 구분합니다.</p><p>Krea의 문서화된 생성 흐름은 처음에는 pending일 수도 있는 작업을 반환합니다. 완료까지 작업을 추적하고 결과 이미지 위치를 가져오세요. 실제 완성 후보의 구도, 형태, 질감, 팔레트, 보이는 텍스트를 비교하고 선택한 이미지와 입력·설정을 함께 보관합니다. 정밀한 글자가 필요하다면 완성 디자인에서 배치하거나 수정하세요.</p><p>Turbo의 빠른 탐색 역할이 특정 완료 시간, 완벽한 글자, 참조 이미지의 정확한 재구성을 보장하지는 않습니다. 원본 이미지 강도와 참조 influence는 결과를 확인해야 합니다. 에디션을 활용해 시각 방향을 효율적으로 정하고 구체적인 후보를 선택한 뒤, 의도한 용도에 필요한 최종 세부 사항·레이아웃·제작 수정 작업을 수행하세요.</p>",
  "aboutText": "### Krea 2 제품군에서 빠르게 방향 탐색하기\n\nKrea 2 Medium Turbo는 Krea가 Krea 2 Turbo로 소개하는 생성 에디션입니다. 모델별 인터페이스는 Medium Turbo 변형을 지정하며, Krea 사용자 가이드는 이미지 생성에 필요한 작업량을 줄이는 증류된 샘플링 스케줄을 설명합니다. Krea는 이를 폭넓은 창작 탐색, 표현적인 러프 초안, 일러스트레이션, 그래픽 방향을 위한 제품군의 가장 빠른 선택지로 소개합니다.\n\n표지 구도 대안, 캠페인의 시각 처리, 같은 장면의 서로 다른 일러스트 스타일처럼 아이디어를 비교하는 것이 당장의 목표일 때 사용하세요. 간결하고 구체적인 시작 지시가 비교에 도움이 됩니다. 예를 들어 “연한 파란색 책상 위의 접은 빨간 종이 새, 대담한 에디토리얼 일러스트, 경계가 선명한 오후의 그림자, 단순한 기하학 형태, 하단에 분명한 여백이 있는 세로 구도”라고 요청할 수 있습니다. 주제와 프레임을 유지한 채 시각 처리를 탐색하고 선택한 방향을 더 발전시키세요.\n\nKrea의 에디션 가이드는 더 안정적인 일러스트 표현에는 Medium을, 사진이나 원재료 질감을 살린 최종 방향에는 Large를 권합니다. Turbo는 별개의 에디션입니다. 이후 다른 모델에서 작업하는 것은 별도 생성이며, 자동 품질 업그레이드나 동일한 연속 작업이 아닙니다.\n\n### 프롬프트와 시각 입력 준비하기\n\n모델 생성 스키마에는 prompt, aspect ratio, resolution이 필수입니다. 선택적인 image-to-image 입력은 순수 노이즈 대신 원본 이미지에서 생성을 시작합니다. denoising strength는 0부터 1까지이며, 0은 입력을 유지하고 1은 완전히 대체합니다. 문서화된 기본값은 0.99입니다. 시작 구도를 신중하게 준비하고 바꿀 내용을 설명하세요. 높은 강도는 원본을 상당히 대체할 수 있게 합니다.\n\n스타일 참조는 시작 이미지 강도를 바꾸는 대신 이미지를 통해 외관을 제공합니다. 모델별 스키마는 원본 이미지와 스타일 참조 URI 문자열을 1,024자로 제한합니다. 모델별 요청 스키마는 최대 열 개의 참조를 허용하고, 각각의 influence 범위는 0부터 1, 기본값은 0.5입니다. 색상 팔레트, 그림 처리, 조명 방향처럼 역할이 뚜렷한 참조를 선택하세요. 별도의 Krea 워크스페이스 가이드는 해당 인터페이스에서 최대 네 개의 스타일 참조를 설명합니다. 각 인터페이스의 한도에 맞춰 준비해야 합니다.\n\n무드보드는 일관된 시각 방향을 재사용 가능한 입력으로 구성합니다. 먼저 무드보드를 만든 뒤 생성할 때 기존 식별자를 사용하세요. 모델 스키마는 하나의 무드보드를 허용하며 influence는 0부터 1, 기본값은 0.23입니다. 일반적으로 LoRAs인 학습된 스타일은 식별자와 -2부터 2까지의 strength로 선택하는 또 다른 입력입니다. 원본 이미지, 스타일 참조, 무드보드, 학습된 스타일은 역할이 다르므로 모든 세부 요소를 보존하는 동일한 방법처럼 취급하지 마세요.\n\n### Creativity와 세 가지 시각 슬라이더 조정하기\n\nCreativity는 프롬프트 확장을 제어합니다. Raw는 확장을 끄며 low, medium, high는 지시에 추가하는 해석의 정도를 바꿉니다. 모델별 스키마 기본값은 low입니다. 정확한 지시를 비교할 때는 절제된 설정을 사용하고, 더 넓은 아이디어 범위를 찾을 때는 해석의 폭을 늘릴 수 있습니다.\n\nIntensity, Complexity, Movement는 각각 -100부터 100까지의 독립적인 정수 슬라이더이며 0은 중립입니다. Intensity는 차분한 처리와 대담한 처리 사이를 조절합니다. Complexity는 단순한 구도와 밀도 높은 세부 묘사 사이를 조절합니다. Movement는 포즈, 시각적 에너지, 암시되는 움직임을 바꿉니다. 이 슬라이더는 참조·무드보드와 함께 사용할 수 있으며 Creativity의 프롬프트 확장과는 별개입니다.\n\n종이 새 지시에서는 다른 설정을 유지하면서 먼저 깔끔한 구도와 더 상세한 구도를 비교하세요. 다음으로 더 강한 시각 처리나 역동적인 포즈를 탐색합니다. 한 번에 하나의 제어만 바꾸고, 선택적 seed, prompt, 참조 구성을 기록하세요. Movement는 정지 이미지의 인상을 바꿉니다. 움직이는 새, 카메라 이동, 동영상 시퀀스를 생성하는 기능은 아닙니다.\n\n### 프레임, 배치, 완성된 이미지\n\n모델별 생성 스키마는 1K 해상도와 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3, 9:16의 아홉 종횡비를 제공합니다. Krea의 Turbo 워크스페이스 가이드는 배치에서 최대 네 이미지를 생성하는 방법도 설명합니다. 이 배치 설정은 문서화된 워크스페이스 워크플로에 속하며 개별 생성 요청 스키마와 구별됩니다.\n\n생성 전에 의도한 에셋에 맞는 프레임을 선택하세요. 세로 표지는 가로 에디토리얼 이미지와 주제·여백의 균형이 다릅니다. 생성 해상도와 이후 향상 처리 또는 최종 레이아웃 내보내기를 구분합니다.\n\nKrea의 문서화된 생성 흐름은 처음에는 pending일 수도 있는 작업을 반환합니다. 완료까지 작업을 추적하고 결과 이미지 위치를 가져오세요. 실제 완성 후보의 구도, 형태, 질감, 팔레트, 보이는 텍스트를 비교하고 선택한 이미지와 입력·설정을 함께 보관합니다. 정밀한 글자가 필요하다면 완성 디자인에서 배치하거나 수정하세요.\n\nTurbo의 빠른 탐색 역할이 특정 완료 시간, 완벽한 글자, 참조 이미지의 정확한 재구성을 보장하지는 않습니다. 원본 이미지 강도와 참조 influence는 결과를 확인해야 합니다. 에디션을 활용해 시각 방향을 효율적으로 정하고 구체적인 후보를 선택한 뒤, 의도한 용도에 필요한 최종 세부 사항·레이아웃·제작 수정 작업을 수행하세요.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "37dafa0ea1b7806cb8482c49b19c51ebfee111001c060a05d0636b68fa04fd27",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ko",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Krea: Krea 2 Medium Turbo</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"닫기\">×</button></div><div class=\"idline\"><span>Krea /</span><code>krea/krea-2-medium-turbo</code><button type=\"button\" id=\"copy-id\">ID 복사</button></div><nav class=\"card-jump-nav\" aria-label=\"모델 카드 섹션\"><button type=\"button\" data-card-jump=\"overview\">시작하기</button><button type=\"button\" data-card-jump=\"methods\">입력 및 메서드</button><button type=\"button\" data-card-jump=\"pricing\">요금</button><button type=\"button\" data-card-jump=\"examples\">예제</button><button type=\"button\" data-card-jump=\"results\">결과</button><button type=\"button\" data-card-jump=\"aliases\">별칭</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API 메서드\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|images|/v1/images/generations|krea%2Fkrea-2-medium-turbo\">이미지</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">시작하기</h3><p class=\"mdesc-full\">Krea 2 Medium Turbo는 시각 아이디어 탐색과 표현력 있는 초안을 위한 Krea의 빠른 이미지 생성 버전입니다. 증류된 샘플링 일정에 텍스트, 원본 이미지·스타일 제어를 결합하며 강도, 복잡도·암시적 움직임을 각각 조정할 수 있습니다.</p><dl class=\"card-io\" data-card-io><div><dt>허용 입력</dt><dd>텍스트 · 이미지</dd></div><div><dt>결과</dt><dd>이미지</dd></div></dl><details class=\"card-about\"><summary>모델 소개</summary><p class=\"note-s\" data-model-method-boundary>이 설명은 모델의 기능을 다룹니다. Ailoot에서 사용할 수 있는 입력, 출력 및 옵션은 아래에 선택한 메서드별로 표시됩니다.</p><div class=\"mabout\" id=\"m-about\"><h4>Krea 2 제품군에서 빠르게 방향 탐색하기</h4><p>Krea 2 Medium Turbo는 Krea가 Krea 2 Turbo로 소개하는 생성 에디션입니다. 모델별 인터페이스는 Medium Turbo 변형을 지정하며, Krea 사용자 가이드는 이미지 생성에 필요한 작업량을 줄이는 증류된 샘플링 스케줄을 설명합니다. Krea는 이를 폭넓은 창작 탐색, 표현적인 러프 초안, 일러스트레이션, 그래픽 방향을 위한 제품군의 가장 빠른 선택지로 소개합니다.</p><p>표지 구도 대안, 캠페인의 시각 처리, 같은 장면의 서로 다른 일러스트 스타일처럼 아이디어를 비교하는 것이 당장의 목표일 때 사용하세요. 간결하고 구체적인 시작 지시가 비교에 도움이 됩니다. 예를 들어 “연한 파란색 책상 위의 접은 빨간 종이 새, 대담한 에디토리얼 일러스트, 경계가 선명한 오후의 그림자, 단순한 기하학 형태, 하단에 분명한 여백이 있는 세로 구도”라고 요청할 수 있습니다. 주제와 프레임을 유지한 채 시각 처리를 탐색하고 선택한 방향을 더 발전시키세요.</p><p>Krea의 에디션 가이드는 더 안정적인 일러스트 표현에는 Medium을, 사진이나 원재료 질감을 살린 최종 방향에는 Large를 권합니다. Turbo는 별개의 에디션입니다. 이후 다른 모델에서 작업하는 것은 별도 생성이며, 자동 품질 업그레이드나 동일한 연속 작업이 아닙니다.</p><h4>프롬프트와 시각 입력 준비하기</h4><p>모델 생성 스키마에는 prompt, aspect ratio, resolution이 필수입니다. 선택적인 image-to-image 입력은 순수 노이즈 대신 원본 이미지에서 생성을 시작합니다. denoising strength는 0부터 1까지이며, 0은 입력을 유지하고 1은 완전히 대체합니다. 문서화된 기본값은 0.99입니다. 시작 구도를 신중하게 준비하고 바꿀 내용을 설명하세요. 높은 강도는 원본을 상당히 대체할 수 있게 합니다.</p><p>스타일 참조는 시작 이미지 강도를 바꾸는 대신 이미지를 통해 외관을 제공합니다. 모델별 스키마는 원본 이미지와 스타일 참조 URI 문자열을 1,024자로 제한합니다. 모델별 요청 스키마는 최대 열 개의 참조를 허용하고, 각각의 influence 범위는 0부터 1, 기본값은 0.5입니다. 색상 팔레트, 그림 처리, 조명 방향처럼 역할이 뚜렷한 참조를 선택하세요. 별도의 Krea 워크스페이스 가이드는 해당 인터페이스에서 최대 네 개의 스타일 참조를 설명합니다. 각 인터페이스의 한도에 맞춰 준비해야 합니다.</p><p>무드보드는 일관된 시각 방향을 재사용 가능한 입력으로 구성합니다. 먼저 무드보드를 만든 뒤 생성할 때 기존 식별자를 사용하세요. 모델 스키마는 하나의 무드보드를 허용하며 influence는 0부터 1, 기본값은 0.23입니다. 일반적으로 LoRAs인 학습된 스타일은 식별자와 -2부터 2까지의 strength로 선택하는 또 다른 입력입니다. 원본 이미지, 스타일 참조, 무드보드, 학습된 스타일은 역할이 다르므로 모든 세부 요소를 보존하는 동일한 방법처럼 취급하지 마세요.</p><h4>Creativity와 세 가지 시각 슬라이더 조정하기</h4><p>Creativity는 프롬프트 확장을 제어합니다. Raw는 확장을 끄며 low, medium, high는 지시에 추가하는 해석의 정도를 바꿉니다. 모델별 스키마 기본값은 low입니다. 정확한 지시를 비교할 때는 절제된 설정을 사용하고, 더 넓은 아이디어 범위를 찾을 때는 해석의 폭을 늘릴 수 있습니다.</p><p>Intensity, Complexity, Movement는 각각 -100부터 100까지의 독립적인 정수 슬라이더이며 0은 중립입니다. Intensity는 차분한 처리와 대담한 처리 사이를 조절합니다. Complexity는 단순한 구도와 밀도 높은 세부 묘사 사이를 조절합니다. Movement는 포즈, 시각적 에너지, 암시되는 움직임을 바꿉니다. 이 슬라이더는 참조·무드보드와 함께 사용할 수 있으며 Creativity의 프롬프트 확장과는 별개입니다.</p><p>종이 새 지시에서는 다른 설정을 유지하면서 먼저 깔끔한 구도와 더 상세한 구도를 비교하세요. 다음으로 더 강한 시각 처리나 역동적인 포즈를 탐색합니다. 한 번에 하나의 제어만 바꾸고, 선택적 seed, prompt, 참조 구성을 기록하세요. Movement는 정지 이미지의 인상을 바꿉니다. 움직이는 새, 카메라 이동, 동영상 시퀀스를 생성하는 기능은 아닙니다.</p><h4>프레임, 배치, 완성된 이미지</h4><p>모델별 생성 스키마는 1K 해상도와 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3, 9:16의 아홉 종횡비를 제공합니다. Krea의 Turbo 워크스페이스 가이드는 배치에서 최대 네 이미지를 생성하는 방법도 설명합니다. 이 배치 설정은 문서화된 워크스페이스 워크플로에 속하며 개별 생성 요청 스키마와 구별됩니다.</p><p>생성 전에 의도한 에셋에 맞는 프레임을 선택하세요. 세로 표지는 가로 에디토리얼 이미지와 주제·여백의 균형이 다릅니다. 생성 해상도와 이후 향상 처리 또는 최종 레이아웃 내보내기를 구분합니다.</p><p>Krea의 문서화된 생성 흐름은 처음에는 pending일 수도 있는 작업을 반환합니다. 완료까지 작업을 추적하고 결과 이미지 위치를 가져오세요. 실제 완성 후보의 구도, 형태, 질감, 팔레트, 보이는 텍스트를 비교하고 선택한 이미지와 입력·설정을 함께 보관합니다. 정밀한 글자가 필요하다면 완성 디자인에서 배치하거나 수정하세요.</p><p>Turbo의 빠른 탐색 역할이 특정 완료 시간, 완벽한 글자, 참조 이미지의 정확한 재구성을 보장하지는 않습니다. 원본 이미지 강도와 참조 influence는 결과를 확인해야 합니다. 에디션을 활용해 시각 방향을 효율적으로 정하고 구체적인 후보를 선택한 뒤, 의도한 용도에 필요한 최종 세부 사항·레이아웃·제작 수정 작업을 수행하세요.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailoot에서 사용 가능 · 입력 및 메서드</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · 이미지</b> <code>POST /v1/images/generations</code></summary><dl class=\"method-capabilities\"><div><dt>입력</dt><dd><code>text</code>, <code>image</code></dd></div><div><dt>출력</dt><dd><code>image</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>필드</th><th>유형</th><th>요건</th><th>값과 한도</th><th>기본값</th></tr></thead><tbody><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>필수</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>krea/krea-2-medium-turbo</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>필수</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>최소 길이: 1</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>1K</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">aspect_ratio</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>1:1, 4:3, 3:2, 16:9, 4:5, 2:3, 9:16</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">input_references</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>array</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>최소 항목 수: 0</div><div>최대 항목 수: 1</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>object</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>메서드 매개변수와 수명 주기</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>매개변수</th><th>명세</th></tr></thead><tbody><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>content_type</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>application/json</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>required</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>model, prompt</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>material_types</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>text, image</td></tr></tbody></table></div><p>수명 주기: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · 실제로 반환된 task_id 또는 미디어 라이브러리 기록</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">요금</h3><div class=\"card-result-process\" data-billing-basis><h5>최종 요금 계산 방식</h5><p class=\"note-s\">표시된 요율은 생성 전 비용을 예상하는 데 사용됩니다. 최종 청구액은 최초 생성에 기록된 비용으로 계산됩니다. 측정된 출력 길이와 예상 수량은 최종 청구 수량이 아닙니다.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>요금 정보는 요청 옵션을 추가하지 않습니다. 지원되는 매개변수는 선택한 메서드에 표시됩니다.</p><dl data-price-conditions><dt>빠른 모드</dt><dd>미지정 <span class=\"note-s\">빠른 모드를 선택한 경우</span></dd><dt>Flex 모드</dt><dd>미지정 <span class=\"note-s\">flex 모드를 선택한 경우</span></dd><dt>최대 추론 수준</dt><dd>미지정 <span class=\"note-s\">최대 추론 수준에 default 조정값을 적용하는 경우</span></dd></dl></div><div data-declared-tariff-pricing><h4>비교용 예상 요금</h4><h4>설정별 가격</h4><p class=\"note-s\">각 요금을 표시된 조건과 대조하세요. 서로 대체되는 설정 묶음마다 하나의 요금만 적용하세요.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>설정</th><th>요금표</th><th>예측 수량</th><th>요금</th></tr></thead><tbody><tr><th data-cell-label=\"설정\" scope=\"row\"><span class=\"card-cell-label\">설정</span>기본 토큰 요금</th><td data-cell-label=\"요금표\"><span class=\"card-cell-label\">요금표</span>기본 요금</td><td data-cell-label=\"예측 수량\"><span class=\"card-cell-label\">예측 수량</span>—</td><td data-cell-label=\"요금\"><span class=\"card-cell-label\">요금</span><div><span>입력 · 입력 토큰 · 비교 전용 추정치</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>출력 · 출력 토큰 · 비교 전용 추정치</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 읽기 · 비교 전용 추정치</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 쓰기 · 비교 전용 추정치</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 쓰기, 1시간 · 비교 전용 추정치</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div></td></tr><tr><th data-cell-label=\"설정\" scope=\"row\"><span class=\"card-cell-label\">설정</span>예상 생성 비용</th><td data-cell-label=\"요금표\"><span class=\"card-cell-label\">요금표</span>—</td><td data-cell-label=\"예측 수량\"><span class=\"card-cell-label\">예측 수량</span>1회 생성 예상치</td><td data-cell-label=\"요금\"><span class=\"card-cell-label\">요금</span><div><span>출력 · 예상 생성 비용 · 비교 전용 추정치</span> <b>$0.03</b> <span class=\"price-unit\">생성 전 추정치</span></div><p class=\"note-s\">이 예상 금액은 추가 요금이나 생성 완료 시 적용되는 고정 요금이 아닙니다.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot는 요청 전에 예상 금액을 미리 확보합니다. 결과를 받은 뒤 측정된 사용량을 기준으로 최종 요금을 정산합니다. 스트리밍 정산에는 최종 사용량 기록을 사용합니다. <a href=\"/docs/ko/billing/reserve/\">금액 확보와 정산 방식 →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">요청 예제</h3><h4>Ailoot Ultra · 이미지</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"코드 예제 형식\"><button class=\"cg-tab\" id=\"model-code-1777-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1777-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"코드 복사\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1777-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1777-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np={&#39;model&#39;: &#39;krea/krea-2-medium-turbo&#39;, &#39;prompt&#39;: &#39;a red panda astronaut floating in space, studio lighting&#39;}\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(&quot;No completed images; retain the full response&quot;)\n    for index, item in enumerate(items):\n        encoded=item.get(&quot;b64_json&quot;)\n        uri=item.get(&quot;url&quot;, &quot;&quot;)\n        if not encoded and uri.startswith(&quot;data:image/&quot;):\n            header, separator, encoded=uri.partition(&quot;,&quot;)\n            if not separator or &quot;;base64&quot; not in header: raise SystemExit(&quot;Unsupported image data URI&quot;)\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(&quot;https://api.ailoot.ai&quot;,uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=&quot;https&quot; or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(&quot;Invalid returned image URL&quot;)\n            owned=parsed.netloc==&quot;api.ailoot.ai&quot; and parsed.path.startswith(&quot;/v1/media/assets/&quot;) and parsed.path.endswith(&quot;/content&quot;)\n            args=[&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,uri]\n            if owned: args += [&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;]]\n            temporary=Path(f&quot;image-{index}.bin&quot;)\n            subprocess.run(args+[&quot;-o&quot;,str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(&quot;Image has neither bytes nor URL&quot;)\n        if not raw: raise SystemExit(&quot;Empty image result&quot;)\n        ext=&quot;png&quot; if raw.startswith(b&quot;\\x89PNG&quot;) else &quot;jpg&quot; if raw.startswith(b&quot;\\xff\\xd8&quot;) else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;svg&quot; if raw.lstrip().startswith((b&quot;&lt;svg&quot;,b&quot;&lt;?xml&quot;)) else &quot;bin&quot;\n        Path(f&quot;image-{index}.{ext}&quot;).write_bytes(raw)\n    print(&quot;Every returned image saved; complete response metadata retained&quot;)\nsave_images(json.loads(Path(&quot;result.json&quot;).read_text())[&quot;data&quot;])\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">결과 수신 및 저장</h3><h4>Ailoot Ultra · 이미지</h4><p class=\"note-s\">반환된 각 이미지를 다운로드하거나 Base64 내용을 저장하세요</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>기타 콘텐츠 조회</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"코드 예제 형식\"><button class=\"cg-tab\" id=\"model-code-1778-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1778-panel-0\" aria-selected=\"true\" tabindex=\"0\">내 소유의 기존 자산 조회</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"코드 복사\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1778-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1778-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>완료된 결과 모두 보관</h5><p class=\"note-s\">완료된 이미지를 모두 저장하세요. 반환된 각 URL에서 가져오거나 Base64 내용을 디코딩하세요.</p><p class=\"note-s\">전체 응답과 헤더, 실제로 생성된 모든 출력, 최초로 반환된 식별자와 모든 사용량 필드를 보관하세요. 생성 요청을 다시 제출하지 말고 최초 작업을 복구하세요.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>원래 응답을 확인해야 할 경우</h5><p class=\"note-s\">정산 대조를 위해 반환된 X-Client-Request-ID를 보관하세요. 실제로 반환된 task_id/asset_id 값이나 소유한 미디어 라이브러리만 조회하세요. 작업 ID로 태스크 URL을 만들거나 생성 요청을 다시 제출하지 마세요.</p></div><details class=\"card-about\" data-output-fields><summary>응답 필드</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>필드</th><th>유형</th></tr></thead><tbody><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">created</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span></td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">data[].url</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span></td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">data[].b64_json</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span></td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span></td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">별칭</h3><h4>모델 별칭</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=krea%2Fkrea-2-medium-turbo&amp;route=Ultra&amp;caller=krea%2Fkrea-2-medium-turbo&amp;fmt=images\"><code>krea/krea-2-medium-turbo</code></a></span></p><h4>메서드 경로 별칭</h4><p class=\"note-s\"><code>/v1/images</code></p><h4>관련 호출용 ID</h4><p class=\"note-s\"><a href=\"#m=krea%2Fkrea-2-medium-turbo&amp;route=Ultra&amp;caller=krea%2Fkrea-2-medium-turbo&amp;fmt=images\"><code>krea/krea-2-medium-turbo</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "krea/krea-2-medium-turbo",
        "fmt": "images",
        "http": "POST",
        "path": "/v1/images/generations",
        "request_model_id": "krea/krea-2-medium-turbo",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|images|/v1/images/generations|krea%2Fkrea-2-medium-turbo",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "표시된 요율은 생성 전 비용을 예상하는 데 사용됩니다. 최종 청구액은 최초 생성에 기록된 비용으로 계산됩니다. 측정된 출력 길이와 예상 수량은 최종 청구 수량이 아닙니다.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "정산 대조를 위해 반환된 X-Client-Request-ID를 보관하세요. 실제로 반환된 task_id/asset_id 값이나 소유한 미디어 라이브러리만 조회하세요. 작업 ID로 태스크 URL을 만들거나 생성 요청을 다시 제출하지 마세요."
            },
            "outputs": {
              "all_results": "전체 응답과 헤더, 실제로 생성된 모든 출력, 최초로 반환된 식별자와 모든 사용량 필드를 보관하세요. 생성 요청을 다시 제출하지 말고 최초 작업을 복구하세요.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "krea/krea-2-medium-turbo"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:2",
                  "16:9",
                  "4:5",
                  "2:3",
                  "9:16"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:2",
                    "16:9",
                    "4:5",
                    "2:3",
                    "9:16"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "krea/krea-2-medium-turbo"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "krea/krea-2-medium-turbo",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "실제로 반환된 task_id 또는 미디어 라이브러리 기록",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "이 예상 금액은 추가 요금이나 생성 완료 시 적용되는 고정 요금이 아닙니다.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "예상 생성 비용",
            "units": [
              {
                "amount": "0.03",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.03",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'krea/krea-2-medium-turbo', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "이미지",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.03",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.03",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "krea/krea-2-medium-turbo",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.03",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.03",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "krea/krea-2-medium-turbo",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "1f912a1c46de3274e1c2880c90fbc732588b287fbe3f72cc6ce6dd7e5fd1951c",
    "input_html_sha256": "a33aa3f9203aafa533cb799b59f2fbfd2b5f3f95c5dcaed7df57109f21be2392",
    "private_audit_sha256": "fbaf97da37bbcc15070538a47a295168224970d345e4172ef5117272e32bd6ef",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ko/krea-krea-2-medium-turbo/",
    "description": "Krea 2 Medium Turbo는 시각 아이디어 탐색과 표현력 있는 초안을 위한 Krea의 빠른 이미지 생성 버전입니다. 증류된 샘플링 일정에 텍스트, 원본 이미지·스타일 제어를 결합하며 강도, 복잡도·암시적 움직임을 각각 조정할 수 있습니다.",
    "locale": "ko",
    "md_url": "https://ailoot.ai/models/ko/krea-krea-2-medium-turbo/index.md",
    "title": "Krea: Krea 2 Medium Turbo — Ailoot",
    "url": "https://ailoot.ai/models/ko/krea-krea-2-medium-turbo/"
  },
  "rawModel": {
    "about": "### Krea 2 제품군에서 빠르게 방향 탐색하기\n\nKrea 2 Medium Turbo는 Krea가 Krea 2 Turbo로 소개하는 생성 에디션입니다. 모델별 인터페이스는 Medium Turbo 변형을 지정하며, Krea 사용자 가이드는 이미지 생성에 필요한 작업량을 줄이는 증류된 샘플링 스케줄을 설명합니다. Krea는 이를 폭넓은 창작 탐색, 표현적인 러프 초안, 일러스트레이션, 그래픽 방향을 위한 제품군의 가장 빠른 선택지로 소개합니다.\n\n표지 구도 대안, 캠페인의 시각 처리, 같은 장면의 서로 다른 일러스트 스타일처럼 아이디어를 비교하는 것이 당장의 목표일 때 사용하세요. 간결하고 구체적인 시작 지시가 비교에 도움이 됩니다. 예를 들어 “연한 파란색 책상 위의 접은 빨간 종이 새, 대담한 에디토리얼 일러스트, 경계가 선명한 오후의 그림자, 단순한 기하학 형태, 하단에 분명한 여백이 있는 세로 구도”라고 요청할 수 있습니다. 주제와 프레임을 유지한 채 시각 처리를 탐색하고 선택한 방향을 더 발전시키세요.\n\nKrea의 에디션 가이드는 더 안정적인 일러스트 표현에는 Medium을, 사진이나 원재료 질감을 살린 최종 방향에는 Large를 권합니다. Turbo는 별개의 에디션입니다. 이후 다른 모델에서 작업하는 것은 별도 생성이며, 자동 품질 업그레이드나 동일한 연속 작업이 아닙니다.\n\n### 프롬프트와 시각 입력 준비하기\n\n모델 생성 스키마에는 prompt, aspect ratio, resolution이 필수입니다. 선택적인 image-to-image 입력은 순수 노이즈 대신 원본 이미지에서 생성을 시작합니다. denoising strength는 0부터 1까지이며, 0은 입력을 유지하고 1은 완전히 대체합니다. 문서화된 기본값은 0.99입니다. 시작 구도를 신중하게 준비하고 바꿀 내용을 설명하세요. 높은 강도는 원본을 상당히 대체할 수 있게 합니다.\n\n스타일 참조는 시작 이미지 강도를 바꾸는 대신 이미지를 통해 외관을 제공합니다. 모델별 스키마는 원본 이미지와 스타일 참조 URI 문자열을 1,024자로 제한합니다. 모델별 요청 스키마는 최대 열 개의 참조를 허용하고, 각각의 influence 범위는 0부터 1, 기본값은 0.5입니다. 색상 팔레트, 그림 처리, 조명 방향처럼 역할이 뚜렷한 참조를 선택하세요. 별도의 Krea 워크스페이스 가이드는 해당 인터페이스에서 최대 네 개의 스타일 참조를 설명합니다. 각 인터페이스의 한도에 맞춰 준비해야 합니다.\n\n무드보드는 일관된 시각 방향을 재사용 가능한 입력으로 구성합니다. 먼저 무드보드를 만든 뒤 생성할 때 기존 식별자를 사용하세요. 모델 스키마는 하나의 무드보드를 허용하며 influence는 0부터 1, 기본값은 0.23입니다. 일반적으로 LoRAs인 학습된 스타일은 식별자와 -2부터 2까지의 strength로 선택하는 또 다른 입력입니다. 원본 이미지, 스타일 참조, 무드보드, 학습된 스타일은 역할이 다르므로 모든 세부 요소를 보존하는 동일한 방법처럼 취급하지 마세요.\n\n### Creativity와 세 가지 시각 슬라이더 조정하기\n\nCreativity는 프롬프트 확장을 제어합니다. Raw는 확장을 끄며 low, medium, high는 지시에 추가하는 해석의 정도를 바꿉니다. 모델별 스키마 기본값은 low입니다. 정확한 지시를 비교할 때는 절제된 설정을 사용하고, 더 넓은 아이디어 범위를 찾을 때는 해석의 폭을 늘릴 수 있습니다.\n\nIntensity, Complexity, Movement는 각각 -100부터 100까지의 독립적인 정수 슬라이더이며 0은 중립입니다. Intensity는 차분한 처리와 대담한 처리 사이를 조절합니다. Complexity는 단순한 구도와 밀도 높은 세부 묘사 사이를 조절합니다. Movement는 포즈, 시각적 에너지, 암시되는 움직임을 바꿉니다. 이 슬라이더는 참조·무드보드와 함께 사용할 수 있으며 Creativity의 프롬프트 확장과는 별개입니다.\n\n종이 새 지시에서는 다른 설정을 유지하면서 먼저 깔끔한 구도와 더 상세한 구도를 비교하세요. 다음으로 더 강한 시각 처리나 역동적인 포즈를 탐색합니다. 한 번에 하나의 제어만 바꾸고, 선택적 seed, prompt, 참조 구성을 기록하세요. Movement는 정지 이미지의 인상을 바꿉니다. 움직이는 새, 카메라 이동, 동영상 시퀀스를 생성하는 기능은 아닙니다.\n\n### 프레임, 배치, 완성된 이미지\n\n모델별 생성 스키마는 1K 해상도와 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3, 9:16의 아홉 종횡비를 제공합니다. Krea의 Turbo 워크스페이스 가이드는 배치에서 최대 네 이미지를 생성하는 방법도 설명합니다. 이 배치 설정은 문서화된 워크스페이스 워크플로에 속하며 개별 생성 요청 스키마와 구별됩니다.\n\n생성 전에 의도한 에셋에 맞는 프레임을 선택하세요. 세로 표지는 가로 에디토리얼 이미지와 주제·여백의 균형이 다릅니다. 생성 해상도와 이후 향상 처리 또는 최종 레이아웃 내보내기를 구분합니다.\n\nKrea의 문서화된 생성 흐름은 처음에는 pending일 수도 있는 작업을 반환합니다. 완료까지 작업을 추적하고 결과 이미지 위치를 가져오세요. 실제 완성 후보의 구도, 형태, 질감, 팔레트, 보이는 텍스트를 비교하고 선택한 이미지와 입력·설정을 함께 보관합니다. 정밀한 글자가 필요하다면 완성 디자인에서 배치하거나 수정하세요.\n\nTurbo의 빠른 탐색 역할이 특정 완료 시간, 완벽한 글자, 참조 이미지의 정확한 재구성을 보장하지는 않습니다. 원본 이미지 강도와 참조 influence는 결과를 확인해야 합니다. 에디션을 활용해 시각 방향을 효율적으로 정하고 구체적인 후보를 선택한 뒤, 의도한 용도에 필요한 최종 세부 사항·레이아웃·제작 수정 작업을 수행하세요.",
    "alias_of": null,
    "aliases": [],
    "author": "Krea",
    "capabilities": {
      "context_length": 65536,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "image"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.03",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.03",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ],
        "summary": "구성의 전체 요금 정보는 상세 정보에서 확인할 수 있습니다."
      }
    ],
    "ctx": null,
    "formats": [
      "images"
    ],
    "id": "krea/krea-2-medium-turbo",
    "input": [
      "text",
      "image"
    ],
    "kind": "image",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "표시된 요율은 생성 전 비용을 예상하는 데 사용됩니다. 최종 청구액은 최초 생성에 기록된 비용으로 계산됩니다. 측정된 출력 길이와 예상 수량은 최종 청구 수량이 아닙니다.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "정산 대조를 위해 반환된 X-Client-Request-ID를 보관하세요. 실제로 반환된 task_id/asset_id 값이나 소유한 미디어 라이브러리만 조회하세요. 작업 ID로 태스크 URL을 만들거나 생성 요청을 다시 제출하지 마세요."
            },
            "outputs": {
              "all_results": "전체 응답과 헤더, 실제로 생성된 모든 출력, 최초로 반환된 식별자와 모든 사용량 필드를 보관하세요. 생성 요청을 다시 제출하지 말고 최초 작업을 복구하세요.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "krea/krea-2-medium-turbo"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:2",
                  "16:9",
                  "4:5",
                  "2:3",
                  "9:16"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:2",
                    "16:9",
                    "4:5",
                    "2:3",
                    "9:16"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "krea/krea-2-medium-turbo"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "krea/krea-2-medium-turbo",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "실제로 반환된 task_id 또는 미디어 라이브러리 기록",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "이 예상 금액은 추가 요금이나 생성 완료 시 적용되는 고정 요금이 아닙니다.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "예상 생성 비용",
            "units": [
              {
                "amount": "0.03",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.03",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'krea/krea-2-medium-turbo', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "이미지",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.03",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.03",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "krea/krea-2-medium-turbo",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.03",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.03",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "krea/krea-2-medium-turbo",
        "request_model_id": "krea/krea-2-medium-turbo",
        "route_label": "Ultra"
      }
    ],
    "name": "Krea: Krea 2 Medium Turbo",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.03,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.03,
      "varies": false
    },
    "short": "Krea 2 Medium Turbo는 시각 아이디어 탐색과 표현력 있는 초안을 위한 Krea의 빠른 이미지 생성 버전입니다. 증류된 샘플링 일정에 텍스트, 원본 이미지·스타일 제어를 결합하며 강도, 복잡도·암시적 움직임을 각각 조정할 수 있습니다."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Krea 2 Medium Turbo는 시각 아이디어 탐색과 표현력 있는 초안을 위한 Krea의 빠른 이미지 생성 버전입니다. 증류된 샘플링 일정에 텍스트, 원본 이미지·스타일 제어를 결합하며 강도, 복잡도·암시적 움직임을 각각 조정할 수 있습니다.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "03ac4f2c99897420b9bf6108b3d7ffbcb91dcf0248ffb53e98e5bb0f5802feb9",
    "renderer_sha256": "6825a317438b70ab0939441dcebefece462384e77f7e96cce899605c4b208caa"
  },
  "sourceRevision": "60fee9f28daaa177f17240525b68af0ec2cd3f782eb4e9b934d330fff79de8da"
}
