Celebrity Look-Alike(look-alike-v1)는 인물 사진 한 장을 요청당 $0.05에 유명인 닮은꼴 생성 이미지로 바꿔 줍니다. 응답은 이미지뿐입니다. 유명인 ID 필드도, 순위도, 유사도 점수도 없습니다. 이미지 자체는 인쇄된 헤드라인, 유명인 이름, 손글씨 느낌의 서명이 들어간 2분할 레이아웃일 수 있고 글자가 깨져 나올 수 있습니다. 공유 카드를 이에 맞춰 설계하고, 이름을 검증된 신원 확인처럼 보여 주지 마세요.
Look-Alike는 자발적인 엔터테인먼트 기능에 맞습니다. 셀카를 올리면 공유할 수 있는 이미지를 받습니다. 프롬프트도, 대상 인물 선택도, 강도 조절도 없으므로 의상 변경처럼 방향을 정한 편집이나 반복 등장하는 가상 캐릭터에는 이미지 편집기를 사용하세요.
알맞은 종류의 '닮은꼴' API 고르기
대부분의 닮은꼴 도구는 실제로는 다른 두 가지 중 하나입니다. 얼굴 인식 서비스와 오픈소스 프로젝트는 얼굴을 벡터로 바꾸고 유명인 데이터베이스를 검색해 점수와 함께 이름을 돌려줍니다. 일반 소비자용 찾기 서비스는 방법 설명 없이 "92% 일치" 같은 퍼센트를 보여 줍니다. Look-Alike는 어느 쪽도 하지 않습니다.
| 원하는 것 | 사용할 것 |
|---|---|
| 사진 한 장으로 만든 공유용 닮은꼴 생성 이미지 | Look-Alike |
| 순위가 매겨진 유명인 이름 또는 유사도 수치 | 인식 서비스, 또는 보유 라이선스가 있는 데이터베이스에 대한 자체 임베딩 검색. Look-Alike는 둘 다 반환하지 않음 |
| 직접 고른 대상 이미지에 한 사람의 얼굴 얹기 | 페이스 스왑 엔드포인트 |
엔드포인트가 받는 입력
| 항목 | 현재 규격 |
|---|---|
| 모델 ID | spicyapi/look-alike-v1/edit |
| 입력 | image_url 하나: JPG, PNG, WEBP 또는 GIF, 최대 10MB |
| 가격 | 요청당 $0.05, 결과가 마음에 들지 않아도 청구됨 |
| 제공되지 않음 | 프롬프트, 대상 유명인, 시드, 크기, 강도, 유사도 |
| 보관 | 원본 이미지는 1일 후, 결과는 14일 후 삭제 |

모델 페이지의 Look-Alike 예시 결과: 반환된 이미지는 헤드라인이 있는 2분할 콜라주이고 실존 인물의 이름이 인쇄되어 있으므로, 깔끔한 단일 인물 사진을 전제로 한 레이아웃은 깨집니다.
모델 페이지의 예시는 인쇄된 이름과 서명이 있는 2분할 콜라주이므로 이미지 안에 글자가 들어간다고 보고 대비하세요. 카드 크기에서 실제 내보내기 결과를 미리 보고, 비율을 유지하세요(정사각형으로 늘리면 얼굴이 왜곡됩니다). 글자를 잘라 내더라도 남은 얼굴이 검증된 일치가 되는 것은 아닙니다.
원본 사진 준비하기
모델 페이지는 실패 사례를 명시합니다. 단체 사진, 옆모습, 선글라스, 손이나 머리카락이 얼굴을 가린 경우, 움직임 흐림, 매우 작은 얼굴은 일치 품질을 떨어뜨리거나 호출이 실패하게 만듭니다. 조명이 좋고 대체로 정면이며 프레임에서 적당한 비중을 차지하고 양쪽 눈과 헤어라인이 보이는 얼굴 하나를 쓰세요. 업로드 전에 방향과 자르기를 적용하세요. 갤러리 썸네일은 회전 메타데이터를 무시할 수 있지만 업로드되는 바이트에는 그 정보가 그대로 남아 있습니다. 단체 사진 속 아주 작은 얼굴을 확대해도 디테일이 늘어나지 않으니 새 사진을 요청하세요.

일러스트이며 Look-Alike 결과가 아님: 대체로 정면인 성인 인물 사진으로 읽기 쉬운 입력 프레이밍을 보여 줍니다.
먼저 Playground에서 시도하기
- Look-Alike 페이지를 열고 Playground 탭의 Form 보기에 머무르세요. 실행하려면 잔액이 있는 계정으로 로그인하세요.
- 동의한 성인의 인물 사진을 Input image(JPG, PNG, WEBP 또는 GIF, 최대 10MB)에 끌어다 놓거나 Asset URL로 직접 링크를 붙여 넣으세요. 설정할 항목은 더 없습니다.
- 실행한 뒤 반환된 이미지 전체를 열고 아래 설명대로 검토하세요.
코드를 쓰기 전에 가장 까다로운 원본 사진을 여기서 먼저 시험하세요. Playground에서 일치가 틀리면 API에서도 틀리며, 해결책은 더 나은 사진입니다.
그다음 코드로 호출하기
Python SDK를 설치하고(pip install spicyapi), 서버 환경에 SPICY_API_KEY를 설정한 뒤 실행하세요.
import urllib.request
import uuid
from spicyapi import SpicyClient, output_assets
client = SpicyClient() # reads SPICY_API_KEY from the environment
photo = client.upload_file("./authorized-adult-portrait.jpg") # becomes a spicy:// URI
task = client.create_task(
model="spicyapi/look-alike-v1/edit",
input_data={"image_url": photo["uri"]},
idempotency_key=str(uuid.uuid4()), # new key per new request; reuse only to retry the same one
)
final = client.wait_for_terminal(task["taskId"])
if final["state"] != "succeeded":
raise RuntimeError(f"Task {task['taskId']} ended as {final['state']}")
url = output_assets(final)[0]["url"]
# some script clients get 403 without a User-Agent
request = urllib.request.Request(url, headers={"User-Agent": "look-alike-example/1.0"})
with urllib.request.urlopen(request) as response, open("look-alike.webp", "wb") as out:
out.write(response.read())image_url만 전송해야 합니다. 유명인 이름 같은 추가 속성은 거부됩니다. 업로드, 대기, 재시도는 태스크 가이드와 Python SDK 레퍼런스에서 설명합니다. 웹훅은 폴링과 웹훅 비교 가이드를 참고해 주세요. 결과는 14일 후 삭제되므로 사용자가 이미지를 저장하면 자체 스토리지로 복사해야 합니다.
또는 Agent가 실행하게 하기
어시스턴트가 요청을 실행하게 할 때 CLI와 MCP 서버는 가격을 보여 주고 유료 호출 전에 확인을 묻습니다. Skill은 지침만 추가합니다.
- CLI.
spicyapi는 터미널에서 태스크 하나를 실행합니다(npx @spicyapi/cli는 설치 없이 동작). 업로드가 반환하는 URI로{"image_url": "spicy://..."}를 작성해input.json에 저장해야 합니다.
``bash spicyapi files upload ./authorized-adult-portrait.jpg spicyapi tasks create --model spicyapi/look-alike-v1/edit --input-file input.json --wait ``
- MCP 서버. 어시스턴트에 MCP 서버를 추가한 뒤 "Run Look-Alike on ./authorized-adult-portrait.jpg."라고 요청하세요.
spicyapi_upload_file을 호출하고, 이어서 가격 확인을 위해 멈추는spicyapi_task_create, 그다음spicyapi_task_wait를 호출합니다. - Skill.
npx skills add spicyapi-ai/spicy-skill은 Agent Skill을 설치하며, 코딩 어시스턴트가 필드를 추측하지 않고 라이브 모델 스키마를 읽게 합니다. 혼자서는 태스크를 실행할 수 없으니 CLI나 MCP와 함께 사용하세요.
공유 카드를 만들기 전에 결과 검토하기
얼굴 크롭이 아니라 반환된 이미지 전체를 여세요. 추가 패널, 헤드라인 문구, 실제 이름, 서명, 추가 얼굴, 달라진 겉보기 나이를 확인하세요. 결과에는 Generated look-alike portrait(생성된 닮은꼴 인물 사진) 라벨을 붙이세요. 이름을 보여 주고 싶지 않다면 글자를 잘라 내거나 가리세요. 남은 얼굴이 검증된 일치가 되는 것은 아닙니다. 옆에 "93% 일치"나 "검증된 유명인 신원"이라고 쓰지 말고, 다른 모델이 이미지에서 추출한 이름을 Look-Alike가 판정한 것처럼 보여 주지도 마세요. 이미지에 들어간 글자는 생성된 콘텐츠이며 틀릴 수 있습니다.

일러스트이며 Look-Alike 결과가 아님: 내보내기를 고르기 전에 이미지 전체와 얼굴 주변의 모든 것을 검토하세요.
참여자가 이미지를 마음에 들어 하지 않으면 삭제하거나 다른 사진으로 시도하도록 제안하세요. 결과를 특정 유명인 쪽으로 유도하는 방법이 없으므로 다시 실행하면 개선이 아니라 $0.05짜리 새 후보가 나옵니다.
| 문제 | 다음 조치 |
|---|---|
| 요청 거부됨 | 프롬프트, 시드, 크기, 이름 필드를 제거하고 image_url만 보내세요. |
| 원본을 가져올 수 없음 | 로그인 페이지, 만료된 URL, HTML 응답을 접근 가능한 이미지나 spicy:// 참조로 교체하세요. |
| 얼굴이 불분명하거나 엉뚱한 사람이 일치함 | 충분한 해상도의 원본에서 얼굴 하나만 자른 이미지를 쓰거나 더 선명한 사진을 요청하세요. |
| 이미지 속 이름이나 서명을 보여 주고 싶지 않음 | 공유를 보류하고 표시 방식을 바꾸세요. 이름은 요청하거나 제거할 수 있는 응답 필드가 아닙니다. |
| 참여자가 특정 캐릭터나 의상을 원함 | 대신 참조 이미지를 지원하는 이미지 편집기를 사용하세요. |
| 완료된 태스크의 다운로드가 실패함 | 다운로드를 다시 시도하고 새 요청은 만들지 마세요. |
동의와 공유
입력은 항상 실존 인물의 얼굴이므로 법적 의무를 따질 때는 얼굴 인식과 같은 기능으로 취급하세요. 생체 정보는 EU와 미국 일부 지역에서 별도로 규제됩니다. 예를 들어 일리노이주 BIPA는 생체 식별자를 수집하기 전에 서면 고지와 정보에 입각한 동의를 요구합니다. 이 목적에 알고 동의한 성인의 사진만 사용하고, 공인의 사진이나 다른 곳에서 가져온 이미지는 쓰지 마세요. Look-Alike를 신원 확인, 검증, 감시, 얼굴 데이터베이스 구축에 사용하지 마세요. 생성에 대한 허락과 원본 또는 결과 게시에 대한 허락은 별개로 다루세요.
Look-Alike는 안전 검사기 없이 실행되므로 제품이 직접 연령 및 콘텐츠 규칙을 적용해야 합니다. 실존 인물의 인물 사진으로 성적이거나 사적이거나 명예를 훼손하는 자료를 만들지 말고, 결과를 실존 인물에 대한 주장처럼 제시하지 마세요. 옷을 모두 갖춰 입은 성인의 상반신 인물 사진이 공개 엔터테인먼트 기능에 가장 안전한 기본 입력입니다.
좁은 흐름을 만드세요. 비공개 원본 미리보기, 처리 중 상태, 전체 결과, 명시적인 저장 또는 공유 동작 순서입니다. 생성이 끝났다고 자동으로 게시하지 마세요.






