필수 조건
생성 전에 아래 스킬들을 설치하고 로드하세요 (@pruna로 이미 컨텍스트에 있다면 건너뛰세요):
| 스킬 | 설명 | 설치 |
|---|---|---|
generation-diversity | 생성형 프롬프트를 작성할 때마다 사용 — 유료 API 호출 전 리추얼 시드, 명시적 구조, 시나리오 축, 품질 게이트. | npx skills add PrunaAI/pruna-skills@generation-diversity -y |
image-prompting | 모든 생성형 모델의 정지 이미지 프롬프트를 작성할 때 사용 — 구성, 아이덴티티 시트, 편집, 가상 피팅, 포토리얼 페르소나. | npx skills add PrunaAI/pruna-skills@image-prompting -y |
video-prompting | 모든 생성형 모델의 동영상 또는 모션 프롬프트를 작성할 때 사용 — 드라마투르기, 카메라, 물리적으로 안전한 모션, 프레임 앵커, 클립 체이닝. | npx skills add PrunaAI/pruna-skills@video-prompting -y |
pruna-api | Pruna 또는 Replicate HTTP 호출 전에 사용 — 자격 증명, 업로드/폴링/다운로드, 병렬 배치, 에이전트 안전. | npx skills add PrunaAI/pruna-skills@pruna-api -y |
또는 전체 제품군을 한 번에 설치: npx skills add PrunaAI/pruna-skills@pruna -y
각 스킬의 생성 전 / 제작 섹션을 따르세요. 여기에 가이드 내용을 다시 설명하지 않습니다.
에이전트 습관
첫 번째 답변에서 `p-image-edit`를 백틱으로 표시하고 PRUNA_API_KEY를 확인한 후, 원본 사진(과 편집 요청)을 물어보세요. 의도 파악 → 필요 시 generation-diversity 명확화 의도 파악 진행. 프롬프트 제작 (동적 + 충실) 방식을 사용하여 편집문을 작성하세요. 작업이 제품 사진에서 옷 핏 적용인 경우 p-image-try-on으로 리디렉션하세요.
프롬프트 제작 (동적 + 충실)
편집 프롬프트는 수술적이어야 하고 요청에 고정되어야 합니다. 사용자가 요청한 것만 변경하고 나머지는 모두 동일하게 유지하세요. 다양성은 변경 사항을 어떻게 표현하는지에 적용되며, 새로운 장면을 창조하는 데 적용되지 않습니다.
| 권장 사항 | 금지 사항 |
|---|---|
공식: [특정 부분] 변경. [아이덴티티 / 포즈 / 조명 / 배경] 동일 유지. (image-prompting 편집 제작) | 더 좋게 만들어 줘 / 요청을 무시하는 분위기만 바꾸는 재작성 |
| 사용자가 지정한 반드시 유지할 사항(얼굴, 옷, 포즈, 배경, 제품)을 모두 언급 | 유지 절을 생략하고 모델이 알아서 보존하리라 기대 |
초안 작성 전 generation-diversity로 새로운 리추얼 시드 생성; 요청이 허용하는 범위 내에서 자유롭게 어휘 변경(재질, 헥스 코드, 카메라 뉘앙스) | 사용자가 다른 것을 요청했는데 이 스킬의 샘플(soft gradient)을 그대로 복사 |
합성 시 참조 이미지 지정: 이미지 1의 얼굴, 이미지 2의 옷 | 막연한 이 이미지들 합쳐 줘 |
문구가 확정되지 않았을 때는 편집 프롬프트를 POST 전에 먼저 보여줌 | 피사체, 종, 나이, 또는 요청되지 않은 영역을 변경하는 무음 편집 |
충실도 확인 (결제 전): 프롬프트가 사용자의 변경 요청 및 명시된 모든 유지 조건을 충족해야 합니다. 유지 조건이 누락되면 추가하세요. 사용자가 배경만 교체해 달라고 했는데 배경/캐스트를 "스파이스"하지 마세요.
사용하지 말아야 할 경우
대신 다른 스킬을 사용하세요:
| 스킬 | 설명 | 설치 |
|---|---|---|
p-image | 가장 빠르고 저렴한 사진 생성이 명시적으로 필요할 때 사용 — 무드 보드, 대량 패널, 빠른 반복. 통제된 포토리얼 또는 이미지 내 텍스트가 필요할 때는 사용하지 마세요. | npx skills add PrunaAI/pruna-skills@p-image -y |
p-image-try-on | 가상 피팅이 필요할 때 사용 — 패션이나 전자상거래를 위해 참조 사진의 옷을 사람에게 입힙니다. | npx skills add PrunaAI/pruna-skills@p-image-try-on -y |
p-image-upscale | 인쇄용, 큰 크롭, 또는 고품질 전달을 위해 기존 이미지를 업스케일하거나 선명하게 할 때 사용합니다. | npx skills add PrunaAI/pruna-skills@p-image-upscale -y |
HTTP (curl)
참조 이미지 업로드
curl -X POST "https://api.pruna.ai/v1/files" \
-H "apikey: ${PRUNA_API_KEY}" \
-F "content=@/path/to/reference.png"
각 응답의 urls.get을 input.images에 사용하세요.
생성 (비동기 — 권장)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-image-edit' \
-d '{
"input": {
"prompt": "Change background to soft gradient, keep subject identical",
"images": ["https://api.pruna.ai/v1/files/FILE_ID"],
"aspect_ratio": "9:16"
}
}'
폴링 및 다운로드는 pruna-api를 따르세요.
프롬프트 작성 전 generation-diversity의 랜덤 시드 의식을 완료하세요. 리추얼 문자열을 API seed로 전달하지 마세요. 사용자가 재현성을 요청한 경우에만 선택적으로 seed를 사용하세요.
생성 (동기 — 빠른 테스트 전용)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-image-edit' \
-H 'Try-Sync: true' \
-d '{
"input": {
"prompt": "Change background to soft gradient, keep subject identical",
"images": ["https://api.pruna.ai/v1/files/FILE_ID"],
"aspect_ratio": "9:16"
}
}'
편집 흐름
generation-diversity 정지 이미지 프롬프트 흐름 (편집 섹션)을 따르세요:
- 변경 사항 및 유지 사항 확정 — 사용자의 수술적 요청; 프롬프트 제작 (동적 + 충실) 의 공식을 따름.
- 참조 이미지 업로드 —
POST /v1/files;urls.get→input.images(1–5개). 파일 URL을 임의로 생성하지 마세요. - 리추얼 시드 → 편집 프롬프트 초안 작성 (
image-prompting편집 제작) → 충실도 확인 (모든 유지 절이 포함되었는지 확인). - 확인 —
prompt, 참조 이미지,aspect_ratio,turbo(어려운 편집의 경우 끄기). - POST — 아래 비동기 curl; 업스케일/비디오 전에 체크리스트 확인.
종횡비: 편집 시 match_input_image 선호; 출력물은 원본 판의 종횡비를 유지해야 합니다. 드리프트 발생 시 동일한 참조 URL과 명시적 유지 절로 재시도하세요.
Pruna 참고: 아바타 파이프라인 — 업스케일된 히어로 URL에서 편집; p-video* 전에 다시 업스케일 — 가공되지 않은 편집 URL을 비디오 모델에 절대 전달하지 마세요.
편집하지 않음: 처음부터 새 피사체 생성 → p-image. 제품 사진에서 옷 핏 적용 → p-image-try-on.
다중 참조 (최대 5개): 역할별로 참조 이미지 색인 — 예: 세 개의 참조 이미지 합성: 이미지 1의 얼굴, 이미지 2의 옷, 이미지 3의 카페; 어려운 합성의 경우 turbo: false. 전체 패턴은 image-prompting의 p-image-edit-prompting 참조.
필수 입력
prompt(문자열)images(1–5개 URL 배열, 일반적으로https://api.pruna.ai/v1/files/{id})
일반적인 선택적 필드
aspect_ratio:match_input_image,1:1,16:9,9:16등turbo(부울, 기본값 true; 어려운 편집에서는 끄기)seed,disable_safety_checker
일반적인 다음 단계
이 스킬 이후 일반적인 후속 작업:
| 스킬 | 설명 | 설치 |
|---|---|---|
p-image-upscale | 인쇄용, 큰 크롭, 또는 고품질 전달을 위해 기존 이미지를 업스케일하거나 선명하게 할 때 사용합니다. | npx skills add PrunaAI/pruna-skills@p-image-upscale -y |
p-video-2-pro | 텍스트 또는 시작/종료 프레임에서 영화 같은 클립을 만들 때 사용 — 제품 광고, 다큐멘터리 샷, 생성 오디오가 포함된 대화. 1080p, 가져온 오디오 트랙 또는 헤드톡 전용 호스트에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-2-pro -y |
p-video-2 | 텍스트, 이미지 또는 가져온 오디오에서 세련된 짧은 클립을 만들 때 사용 — 1080p B-롤, 시작/종료 프레임 애니메이션 또는 혼합 트랙이 있는 모션 샷. 영화 같은 생성 오디오 클립 또는 헤드톡 전용 호스트에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-2 -y |
p-video | 텍스트 또는 이미지에서 간단한 짧은 클립을 만들 때 사용 — 빠른 B-롤, 초안 또는 시작/종료 프레임 애니메이션. 영화 같은 생성, 최고 품질, 엄격한 립싱크 또는 1080p에서 가져온 오디오가 필요한 경우에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video -y |
p-video-edit | 텍스트 명령으로 기존 비디오를 편집할 때 사용 — 색상 재지정, 스타일 변경, 개체 제거/추가, 환경 또는 조명 변경, 화면 텍스트 업데이트 또는 선택적 참조 가이드 제품 및 액세서리 편집 적용. 처음부터 새 클립을 만들거나 ffmpeg 어셈블리에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-edit -y |
p-video-avatar | 카메라 앞에서 대본을 말하는 사람이 필요할 때 사용 — 초상화 사진에서 립싱크 호스트, 대변인 또는 내레이션 아바타. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
avatar-multi-scene | 동일한 사람이 여러 클립을 호스팅할 때 사용 — 다중 세그먼트 UGC, 비교 릴 또는 연속성이 있는 혼합 음성 및 애니메이션 장면. | npx skills add PrunaAI/pruna-skills@avatar-multi-scene -y |
narrated-multi-scene | 음성 해설이 포함된 여러 부분으로 구성된 이야기를 원할 때 사용 — 에피소드 B-롤, 챕터별 프로모션 또는 카메라 대화 없이 연결된 여러 비디오 장면. | npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y |
visual-transition-reel | 샷 사이에 전환이 있는 몽타주를 원할 때 사용 — 액션 시퀀스 릴 또는 내레이션이 선택적인 여러 장면 구성. | npx skills add PrunaAI/pruna-skills@visual-transition-reel -y |