
[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개


아래 글이 좋으시면
X (트위터) 팔로우 좋아요 부탁드립니다.
오늘 500 넘고 싶어요 ^^
x.com (<- 클릭)
달리3가 지피티에 처음 도입됬을 때 저는 하루에 몇 백장이 넘는 그림을 그리면서 프롬프트를 실험했습니다.
그 과정에서 알게된 몇 가지를 제 메타프롬프트 책에 소개드렸습니다.
책에서 소개드리지 못했던 몇 가지 재미있는 프롬프트를 소개드리고자 합니다.
생성형 인공지능이 처음 등장했을 때 부터 사용자들은 일관된 이미지 생성을 위한 방법에 대해서 여러가지로 탐구하였습니다.
이제는 미드저니의 캐릭터 레퍼런스나 스타일 레퍼런스를 이용하여 일관된 이미지 생성이 다소 쉬워졌습니다.
반면에 달리3가 한 참 인기를 끌 때에는 프롬프트 반영 비율이 높다는 이유로 사람들이 좋아했지만 요즘은 미드저니보다는 인기가 덜한 것 같습니다.
달리의 이미지 생성 능력은 그 품질보다는 상상력을 훈련하는 도구로서의 가치로 인정받아야 할 것입니다.
달리를 위한 프롬프트를 어떻게 써야 할까요?
재미있는 예를 하나 소개드리겠습니다.
아래 곰돌이가 햄버거를 먹는 연속적인 장면을 보세요.
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 2](https://server.tilnote.io/images/pages/c31cbaf1-f93c-4cd0-8378-8a61bc013101.webp)
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 3](https://server.tilnote.io/images/pages/3497682e-8121-4c50-b24d-95433abcb7b5.webp)
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 4](https://server.tilnote.io/images/pages/88d18f30-5557-4dfc-a619-b3daac190ce5.webp)
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 5](https://server.tilnote.io/images/pages/3dda6320-fc1b-4063-9b10-2801f92452b0.webp)
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 6](https://server.tilnote.io/images/pages/fdb5e840-5d03-4f13-bbd2-bfbefa717d6c.webp)
약간 곰돌이의 외모나 콜라, 바구니, 배경이 약간 바뀌고 있지만 캐릭터가 햄버거를 먹는 연속적인 동작을 그려주고 있습니다.
저는 이 이미지를 한번에 생성하였습니다.
시간차 연속 이미지 생성 프롬프트라고 이름을 지어보았습니다.
지피티에게는 다음과 같이 프롬프트를 넣어보세요
![[메타프롬프트] 시간차 연속 이미지 생성 프롬프트 공개 image 7](https://server.tilnote.io/images/pages/dd73cd42-2893-46ce-9d54-626a34abde93.png)
곰돌이가 햄버거를 먹는 장면을 10초 간격으로 5장 생성하라.
아래는 지피티스에 넣어서 사용해보시라고 프롬프트 전체를 공유드립니다.
여러가지로 실험해 보시고 더 좋은 방법이 있으시면 저도 알려주시면 감사하겠습니다.
프롬프트 분석:>
프롬프트 분석:
주요 목표/목적:
주어진 주제에 따라 시간이 지나면서 변화하는 일련의 이미지를 생성하기 위해 DALL·E 3에 대한 프롬프트를 작성하는 것.
입력 데이터 유형:
텍스트
입력 데이터 형식:
JSON 형식의 텍스트
명령 복잡성:
중간. 명확한 단계와 반복 피드백 루프가 포함됨.
제약 조건/요구 사항:
XML 구조 사용, 생각 태그, 피드백 루프 및 시스템 프롬프트를 활용할 것.
원하는 출력 형식:
DALL·E 3가 생성한 이미지 시퀀스, 각 이미지에 대한 씨드 값 포함.
프롬프트 엔지니어링 설명:
Step 1: 중심 주제 또는 주제 확인
목적: 전체 이미지 시퀀스의 일관성을 유지하기 위해 중심 주제를 설정.
사용자 프롬프트와의 관계: 첫 번째 이미지 시퀀스의 출발점이 되는 주제를 설정.
구현 제안: 주제를 명확히 정의하고, 모든 이미지는 이 주제를 중심으로 발전하도록 함.
고려 사항: 주제가 너무 복잡하면 일관성 유지가 어려울 수 있음.
Step 2: 초기 이미지에 포함될 주요 요소, 캐릭터 또는 객체 결정
목적: 첫 번째 이미지의 주요 구성 요소를 정의하여 명확한 시작점 제공.
사용자 프롬프트와의 관계: 첫 번째 이미지의 구체적인 내용을 설정.
구현 제안: 주요 요소와 배경을 자세히 설명하여 DALL·E 3가 명확한 이미지를 생성하도록 함.
고려 사항: 요소가 너무 많으면 첫 번째 이미지가 혼잡해질 수 있음.
Step 3: 첫 번째 이미지에 대한 상세하고 설명적인 프롬프트 작성
목적: 첫 번째 이미지 생성 시 구체적인 가이드라인 제공.
사용자 프롬프트와의 관계: 이미지 크기, 스타일, 색상 및 구성을 포함한 첫 번째 프롬프트 작성.
구현 제안: 이미지의 크기(1024x1024), 스타일(예: 부드러운 파스텔 톤), 색상, 구성 요소를 상세히 설명.
고려 사항: 설명이 지나치게 길거나 복잡하면 DALL·E 3가 정확한 이미지를 생성하기 어려울 수 있음.
Step 4: 첫 번째 이미지 분석 및 변화 가능한 요소 식별
목적: 다음 이미지에서 발전할 요소들을 파악.
사용자 프롬프트와의 관계: 첫 번째 이미지의 발전 방향을 설정.
구현 제안: 첫 번째 이미지의 주요 특징을 분석하고, 시간이 지남에 따라 변화할 수 있는 요소(예: 태양의 위치, 캐릭터의 수)를 결정.
고려 사항: 변화가 너무 급격하면 일관성을 잃을 수 있음.
Step 5: 시간 증가분 결정
목적: 각 이미지 간의 시간 간격 설정.
사용자 프롬프트와의 관계: 이미지 시퀀스의 시간 흐름을 정의.
구현 제안: 1시간, 1일, 1년 등 적절한 시간 간격 설정.
고려 사항: 시간 증가분이 너무 작으면 이미지의 차이가 미미할 수 있음.
Step 6: 이전 이미지 기반 프롬프트 작성 및 변화 반영
목적: 이전 이미지의 발전 요소를 반영하여 새로운 프롬프트 작성.
사용자 프롬프트와의 관계: 이전 이미지의 요소를 바탕으로 다음 이미지를 생성.
구현 제안: 이전 이미지에서 변화된 부분을 강조하여 설명.
고려 사항: 변화 요소가 일관성 있게 유지되어야 함.
Step 7: 생성된 이미지 검토 및 개선 사항 확인
목적: 생성된 이미지의 품질을 검토하고, 필요한 경우 수정.
사용자 프롬프트와의 관계: 사용자 피드백을 반영하여 이미지 품질 개선.
구현 제안: 이미지에서 불명확한 부분이나 개선이 필요한 부분을 찾아 수정.
고려 사항: 사용자 피드백이 명확하고 구체적이어야 함.
Step 8: 피드백 반영 후 프롬프트 수정 및 재생성
목적: 피드백을 반영하여 이미지의 품질을 높임.
사용자 프롬프트와의 관계: 사용자의 구체적인 요구사항을 반영하여 프롬프트 수정.
구현 제안: 사용자 피드백을 바탕으로 프롬프트를 수정하고, 필요한 경우 씨드 값을 조정하여 새로운 이미지를 생성.
고려 사항: 피드백을 너무 많이 반영하면 원래의 이미지 시퀀스와의 일관성이 떨어질 수 있음.
이와 같은 과정을 통해 시간이 지남에 따라 발전하는 일련의 이미지를 생성할 수 있습니다.
<metaprompt> <system>
You are an AI prompt engineer tasked with creating a series of prompts for DALL·E 3 to generate a sequence of images that evolve over time based on a given theme. Use the principles of prompt engineering, including XML structure, thinking tags, feedback loops, and system prompts, to guide the image generation process.
</system> <prompt1>
<thinking1>Identify the central theme or subject for the time-evolving image sequence.</thinking1>
<thinking2>Determine the key elements, characters, or objects that will be present in the initial image.</thinking2>
<thinking3>Craft a detailed and descriptive prompt for the first image, including the desired size, style, colors, and composition.</thinking3>
<user>
{
"size": "1024x1024",
"prompts": ["A serene beach scene at sunrise with a lone seagull perched on a weathered wooden post, gentle waves lapping at the shore, and soft pastel hues in the sky."]
}
</user> <assistant>
[First AI-generated image]
Seed value: [Seed1]
</assistant> </prompt1> <prompt2>
<thinking1>Analyze the first image and identify elements that can evolve or change over time.</thinking1>
<thinking2>Determine the time increment for the next image (e.g., 1 hour, 1 day, 1 year).</thinking2>
<thinking3>Create a prompt that builds upon the previous image, incorporating the desired changes and evolution.</thinking3>
<user>
{
"size": "1024x1024",
"prompts": ["The beach scene 1 hour later, with the sun higher in the sky, more seagulls gathering on the shore, and a few beachgoers in the distance setting up umbrellas."],
"seeds": [Seed1]
}
</user> <assistant>
[Second AI-generated image]
Seed value: [Seed2]
</assistant> </prompt2> <feedback1>
<thinking1>Review the generated images and identify areas for improvement or refinement.</thinking1>
<thinking2>Provide specific feedback and suggestions for enhancing the images.</thinking2>
<user>
The second image looks great, but the beachgoers in the distance are a bit too blurry. Can we make them slightly more defined while still keeping them in the background?
</user> <assistant>
{
"size": "1024x1024",
"prompts": ["The beach scene 1 hour later, with the sun higher in the sky, more seagulls gathering on the shore, and a few beachgoers in the distance setting up umbrellas. The beachgoers are slightly more defined while still remaining in the background."],
"seeds": [Seed2]
}
[Refined second AI-generated image]
Seed value: [Seed2_refined]
</assistant> </feedback1> <promptN> <!-- Repeat the process for multiple time increments, generating prompts and images based on the previous output and incorporating feedback as needed. --> </promptN> <result> <assistant>
[Final sequence of AI-generated images showcasing the time-evolving beach scene]
Seed values: [Seed1, Seed2_refined, ..., SeedN]
</assistant> </result>
</metaprompt>