필수 조건
생성 전에 다음 스킬을 설치하고 로드하세요. (@pruna를 통해 이미 컨텍스트에 있다면 건너뛰기):
| 스킬 | 설명 | 설치 |
|---|---|---|
generation-diversity | 생성적 프롬프트를 작성할 때 사용 — 유료 API 호출 전에 의식적인 시드, 명시적 구조, 시나리오 축 및 품질 게이트. | npx skills add PrunaAI/pruna-skills@generation-diversity -y |
video-prompting | 모든 생성 모델에 대한 비디오 또는 모션 프롬프트를 작성할 때 사용 — 극작법, 카메라, 물리적으로 안전한 모션, 프레임 앵커 및 클립 체이닝. | npx skills add PrunaAI/pruna-skills@video-prompting -y |
audio-prompting | 모든 생성 오디오 모델에 대한 TTS, 음악 또는 배경 프롬프트를 작성할 때 사용 — 감독 스타일, 곡 구조 및 후반 작업 레이어링. | npx skills add PrunaAI/pruna-skills@audio-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-video-2-pro`는 영화 같은 생성 클립 (텍스트 / 첫 프레임 / 첫+마지막 프레임)이며 생성된 오디오가 포함됩니다. 브리프에 1080p, 가져온 오디오 또는 초안 미리보기가 필요한 경우 `p-video-2`를 사용하십시오. 더 저렴하고 빠른 초안에는 `p-video`를 사용하십시오. 화면에 머리만 나오는 호스트 (자연스러운 장면 오디오 없음) → `p-video-avatar`. 기존 푸티지에 대한 명령어 편집 → `p-video-edit`.
첫 응답에서 `p-video-2-pro`를 백틱 안에 명명하고, PRUNA_API_KEY를 확인한 후 (또는 pruna-api의 가입 링크로 중단), 필요한 입력을 물어보십시오. 접수 시작 → 첫 POST 전에 generation-diversity 명확화 접수를 수행하십시오. 모션 프롬프트를 작성할 때는 프롬프트 작성 (동적 + 충실도) 및 video-prompting (p-video-2-pro-prompting)을 따르십시오 — 스킬 예제를 붙여넣지 마십시오. 사용하지 말아야 할 때가 더 적합한 경우 리디렉션하십시오.
프롬프트 작성 (동적 + 충실도)
모든 input.prompt는 신선하고 구체적이어야 하며 사용자의 비트와 일치해야 합니다. 다양성이 브리프를 무시하지 않습니다. p-video-2와의 차이점 작성: video-prompting (p-video-2-pro-prompting). 프롬프트에 소리 또는 대화를 작성하십시오 — 이 모델에는 audio 업로드가 없습니다.
| 수행 | 수행 금지 |
|---|---|
generation-diversity 무작위 시드 의식을 실행하고 명시하십시오; 브리프가 허용할 때 자유 축 2개 이상을 회전시키십시오 (카메라 움직임, 조명 변화, 질감, 페이싱) | 이 스킬의 curl 예제 (스포츠카, 사람이 돌아서다, …)를 복사하거나 이전 세션의 프롬프트를 재사용하지 마십시오 |
| 먼저 사용자가 요구한 사실을 고정하십시오 (주제, 동작, 장면; 프레임 앵커가 있는 경우 OPEN/MID/CLOSE; 오디오가 브리프의 일부인 경우 음성 대사 / SFX) | 요청을 무시하는 "더 멋진" 클립을 위해 주제나 동작을 바꾸지 마십시오 |
video-prompting 극작법으로 구조화하십시오 — 주제 + 동작 + 장면; 확정된 최종본을 위해 카메라, 조명, 스타일 및 오디오 의도를 추가하십시오 | 막연한 분위기만의 문자열 (영화 같은 분위기, 네온 에너지) 또는 브리프가 음성이나 악보를 요청했을 때 무음 프롬프트를 사용하지 마십시오 |
| 화자를 1~2명으로 유지하십시오; 프롬프트에 대사를 명시하십시오 | 3명 이상의 말하는 얼굴로 클립을 채우거나, audio / draft / fps를 보내지 마십시오 (이 API에는 없음) |
사용자가 문구를 확정하지 않은 경우, POST 전에 초안 프롬프트 + mode / prompt_upsampler / duration / resolution을 보여주십시오 | 승인된 것과 다른 주제나 비트로 무음 재생성하지 마십시오 |
충실도 확인 (지불 전): 사용자의 명명된 주제/동작/설정을 프롬프트에서 제거했다면 작업이 잘못된 것입니다 — 다시 작성하십시오. 자유 축은 브리프가 비워둔 부분만 채웁니다.
초안 프롬프트를 보여줄 때도 `p-video-2-pro`를 명명하십시오 (가이드는 제작에 도움을 주지만, 이 도구가 호출을 소유합니다).
스킬 경계
이 스킬 = 호출당 하나의 p-video-2-pro 예측.
범위 외 (이 스킬에서 실행하지 마십시오):
- 다중 장면 조립, 연결, 하위 에이전트 오케스트레이션 또는 병렬 장면 배치
- 가져온 오디오 / 혼합 VO / 1080p / 초안 미리보기 →
p-video-2 - 템플릿 비디오에서 모션 전송 →
p-video-animate - 화면에 머리만 나오는 호스트 / 립싱크 호스트 (자연스러운 장면 오디오 없음) →
p-video-avatar - 기존 푸티지에 대한 명령어 편집 →
p-video-edit
요청이 하나의 클립을 초과하는 경우 중단하고 다음을 권장하십시오: image-to-video (단일 비트), visual-transition-reel (다중 장면 시각적), 또는 narrated-multi-scene (다중 장면 + 업로드된 VO — 해당 경로는 p-video-2를 사용).
사용하지 말아야 할 때
대신 다른 스킬을 사용하십시오:
| 스킬 | 설명 | 설치 |
|---|---|---|
p-video-2 | 누군가가 텍스트, 이미지 또는 가져온 오디오로 정교한 짧은 클립을 원할 때 사용 — 1080p B-roll, 시작/종료 프레임 애니메이션 또는 혼합 트랙이 있는 모션 샷. 영화 같은 생성 오디오 클립 또는 화면에 머리만 나오는 호스트에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-2 -y |
p-video | 누군가가 텍스트나 이미지로 간단한 짧은 클립을 원할 때 사용 — 빠른 B-roll, 초안 또는 시작/종료 프레임 애니메이션. 브리프에 영화 같은 생성, 최고 품질, 정확한 립싱크 또는 1080p에서 가져온 오디오가 필요할 때는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video -y |
p-video-avatar | 누군가가 카메라에서 대본을 말하는 사람을 원할 때 사용 — 립싱크 호스트, 대변인 또는 초상화 사진에서 서사 아바타. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | 누군가가 사진을 다른 비디오처럼 움직이게 하고 싶을 때 사용 — 모션 전송, 댄스 리믹스 또는 템플릿 클립에서 성능 변형. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
p-video-replace | 누군가가 카메라 움직임과 오디오를 유지하면서 기존 푸티지에서 사람, 의상 또는 제품을 교체하고 싶을 때 사용. | npx skills add PrunaAI/pruna-skills@p-video-replace -y |
p-video-edit | 누군가가 텍스트 명령어로 기존 비디오를 편집하고 싶을 때 사용 — 색상 변경, 스타일 변경, 개체 제거 또는 추가, 환경 또는 조명 변경, 화면 텍스트 업데이트, 또는 선택적 참조 가이드 제품 및 액세서리 편집 적용. 처음부터 새 클립을 만들거나 ffmpeg 조립에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-edit -y |
video-editing | 이미 렌더링된 클립을 ffmpeg로 조립하거나 다듬을 때 사용 — 연결, 크로스페이드, 삽입 자막 및 자막, 텍스트/로고 오버레이, 전후 슬라이더, 배경 음악 배드, 플랫폼 내보내기 — 또는 Hyperframes로 다중 레이어 HTML 조합 비디오를 구성할 때. AI 비디오 생성, 프롬프트 제작 또는 모델 기반 비디오 편집에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@video-editing -y |
HTTP (curl)
이미지-투-비디오 / 프레임 앵커 업로드
curl -X POST "https://api.pruna.ai/v1/files" \
-H "apikey: ${PRUNA_API_KEY}" \
-F "content=@/path/to/first-frame.png"
urls.get를 input.image (첫 번째 프레임) 및/또는 input.last_frame_image (마지막 프레임)으로 전달하십시오. 이 모델에 오디오를 업로드하지 마십시오.
생성 (비동기 텍스트-투-비디오 — 권장)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "네온 불빛이 가득한 도시의 밤을 질주하는 스포츠카, 영화 같은 항공 샷",
"duration": 5,
"resolution": "768p",
"aspect_ratio": "16:9"
}
}'
폴링 및 다운로드: pruna-api를 따르십시오.
프롬프트를 작성하기 전에 generation-diversity의 무작위 시드 의식을 완료하십시오 — 의식 문자열을 API seed로 전달하지 마십시오.
과금은 요청된 duration이 아닌 반환된 초당으로 청구됩니다. 속도 제한: 분당 250개 요청.
| 해상도 | mode=cost | mode=speed (기본값) | mode=quality |
|---|---|---|---|
| 480p | $0.01 / s | $0.02 / s | $0.04 / s |
| 768p | $0.025 / s | $0.035 / s | $0.075 / s |
cost는 speed와 동일한 출력 품질이지만 더 저렴하고 느립니다. prompt_upsampler는 가격을 변경하지 않습니다.
이미지-투-비디오 (첫 번째 프레임)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "카메라가 천천히 밀고 들어가며, 사람이 고개를 돌리고 미소를 짓습니다",
"image": "https://api.pruna.ai/v1/files/FIRST_ID",
"duration": 5,
"resolution": "768p"
}
}'
첫 번째 / 마지막 프레임 (시각적 전환)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "정지된 제품 히어로 샷에서 시작합니다. 카메라가 고정되다가, 빛이 금속을 가로질러 움직이면서 천천히 밀고 들어갑니다. 정확히 마지막 프레임의 패키지 샷에서 끝나며, 라벨을 읽을 수 있고 추가 소품이 없습니다.",
"image": "https://api.pruna.ai/v1/files/START_ID",
"last_frame_image": "https://api.pruna.ai/v1/files/END_ID",
"duration": 8,
"resolution": "768p",
"mode": "speed",
"prompt_upsampler": "turbo"
}
}'
이 모델에는 장면-앵커 트리플이 없습니다 (audio가 노출되지 않음). 업로드된 VO / 음악 → p-video-2.
생성 (동기 — 빠른 테스트 전용)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-H 'Try-Sync: true' \
-d '{
"input": {
"prompt": "네온 불빛이 가득한 도시의 밤을 질주하는 스포츠카, 영화 같은 항공 샷",
"duration": 5,
"resolution": "480p",
"mode": "cost"
}
}'
생성 전
- 필수 조건 가이드 읽기 순서 완료 (
generation-diversity→video-prompting). - 의식 시드 → 동적 + 충실도 모션 프롬프트 초안 작성 (위 섹션) → 모드 (T2V / I2V / 프레임 쌍),
duration(5–15s, 기본값 5),resolution(480p / 768p),mode(cost/speed/quality),prompt_upsampler및prompt를 사용자와 확인. - Pruna 참고 사항:
image또는last_frame_image가 설정되면aspect_ratio는 무시됩니다 (캔버스는 스틸 이미지를 따릅니다). 출력은 24 fps입니다 —fps를 보내지 마십시오. 출력에는 생성된 오디오가 포함됩니다; 프롬프트에 소리나 대화를 작성하십시오.audio,draft,save_audio또는prompt_upsampling을 보내지 마십시오. 가격이 우선 순위일 때는mode: cost로 반복하십시오 (speed와 동일한 품질이지만 더 저렴하고 느림); 실제 시간이 중요할 때는mode: speed로 (기본값); 그런 다음 충실도가 중요할 때mode: quality로 마무리하십시오. 요청이 다중 장면인 경우 중단하십시오 (스킬 경계 참조). 네이티브 4K는 지원되지 않습니다. 1080p / 가져온 오디오 / 초안 →p-video-2.
필수 입력
prompt(문자열)
일반적인 선택적 필드
| 필드 | 역할 |
|---|---|
prompt_upsampler | 생성 전 프롬프트 확장: off, turbo (기본값) 또는 max. mode와 독립적 |
image | 첫 번째 프레임 참조; 설정되면 aspect_ratio는 무시됨 (jpg, jpeg, png, webp) |
last_frame_image | 선택적 종료 프레임 스틸 |
duration | 5–15초 (기본값 5) |
resolution | 768p (기본값) 또는 480p |
mode | 생성 레시피: cost (speed와 동일한 품질이지만 더 저렴하고 느림), speed (기본값, 더 빠름) 또는 quality (더 느리지만 더 높은 충실도) |
aspect_ratio | 참조 이미지가 없을 때: 16:9 (기본값), 9:16, 4:3, 3:4, 3:2, 2:3, 1:1 |
seed | 재현 가능한 재실행을 위한 정수; 무작위를 원하면 생략 |
보내지 마십시오: audio, draft, fps, save_audio, prompt_upsampling.
관련
관련 스킬:
| 스킬 | 설명 | 설치 |
|---|---|---|
p-video-2 | 누군가가 텍스트, 이미지 또는 가져온 오디오로 정교한 짧은 클립을 원할 때 사용 — 1080p B-roll, 시작/종료 프레임 애니메이션 또는 혼합 트랙이 있는 모션 샷. 영화 같은 생성 오디오 클립 또는 화면에 머리만 나오는 호스트에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video-2 -y |
p-video | 누군가가 텍스트나 이미지로 간단한 짧은 클립을 원할 때 사용 — 빠른 B-roll, 초안 또는 시작/종료 프레임 애니메이션. 브리프에 영화 같은 생성, 최고 품질, 정확한 립싱크 또는 1080p에서 가져온 오디오가 필요할 때는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@p-video -y |
gemini-3.1-flash-tts | 누군가가 음성 나레이션 또는 음성 해설이 필요할 때 사용 — 설명 트랙, 다큐멘터리 대사 또는 생성된 비디오와 짝을 이룰 음성. | npx skills add PrunaAI/[email protected] -y |
image-to-video | 누군가가 이미지로 하나의 짧은 영화 비트를 원할 때 사용 — 나레이션이 있는 장면, 스토리 순간 또는 선택적 음성 해설이 있는 영화 같은 B-roll. | npx skills add PrunaAI/pruna-skills@image-to-video -y |
visual-transition-reel | 누군가가 샷 간 전환이 있는 몽타주를 원할 때 사용 — 액션 시퀀스 릴 또는 나레이션이 선택적인 다중 장면 작품. | npx skills add PrunaAI/pruna-skills@visual-transition-reel -y |
narrated-multi-scene | 누군가가 음성 해설이 있는 다중 파트 스토리를 원할 때 사용 — 에피소드식 B-roll, 챕터별 프로모션 또는 카메라 내 대화 없이 연결된 여러 비디오 장면. | npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y |
p-video-avatar | 누군가가 카메라에서 대본을 말하는 사람을 원할 때 사용 — 립싱크 호스트, 대변인 또는 초상화 사진에서 서사 아바타. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | 누군가가 사진을 다른 비디오처럼 움직이게 하고 싶을 때 사용 — 모션 전송, 댄스 리믹스 또는 템플릿 클립에서 성능 변형. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
video-editing | 이미 렌더링된 클립을 ffmpeg로 조립하거나 다듬을 때 사용 — 연결, 크로스페이드, 삽입 자막 및 자막, 텍스트/로고 오버레이, 전후 슬라이더, 배경 음악 배드, 플랫폼 내보내기 — 또는 Hyperframes로 다중 레이어 HTML 조합 비디오를 구성할 때. AI 비디오 생성, 프롬프트 제작 또는 모델 기반 비디오 편집에는 적합하지 않습니다. | npx skills add PrunaAI/pruna-skills@video-editing -y |