이미지 생성
python3 ~/simcraft/skills/image-gen/scripts/gen_image.py "<프롬프트>" --out <디렉토리> --name <이름> [옵션]
표준 라이브러리만 사용하므로 모든 python3에서 작동합니다.
키
이 스크립트는 환경 변수 GEMINI_API_KEY와 OPENAI_API_KEY를 읽거나, ~/.config/simcraft/keys.env 파일에서 읽습니다 (형식: 한 줄에 NAME=값, 권한 600).
--check를 실행하면 설정된 키를 확인할 수 있습니다. 키 자체는 절대 출력하지 않습니다.- 키가 설정되지 않은 경우, 사용자에게 직접 파일을 열어서(
open -e ~/.config/simcraft/keys.env) 키를 붙여넣도록 안내하세요. 채팅에 키를 붙여넣도록 요청하거나 다른 프로젝트 파일에서 키를 읽지 마세요. - 키는 요청 헤더에만 포함됩니다. URL, 로그 또는 사이드카 파일에 절대 포함되지 않습니다.
- Gemini 키는 aistudio.google.com/apikey에서 얻을 수 있습니다 (무료 티어 제공). OpenAI 키는 platform.openai.com/api-keys에서 얻을 수 있습니다.
옵션
| 옵션 | 설명 |
|---|---|
--n 4 | 병렬로 4가지 변형을 생성하고, 추가로 <이름>_sheet.png 파일을 만들어 선택할 수 있게 합니다. 중요한 이미지에는 이 옵션을 사용하세요. |
--aspect 16:9 | 이미지 비율을 설정합니다: 16:9, 9:16, 1:1, 4:3 또는 3:4. 이미지가 들어갈 위치에 맞게 설정하세요. |
--ref a.png b.png | 참조 이미지. 이미지를 편집하거나 스타일을 일치시키거나 여러 이미지에서 동일한 캐릭터/객체를 유지할 때 사용합니다. |
--cutout | 콜라주용 투명 PNG를 생성합니다. Gemini는 크로마 그린 배경에서 생성하고 스크립트가 깔끔한 가장자리로 키잉합니다. OpenAI는 진정한 투명도를 제공합니다. |
--provider gemini|openai | 제공자를 선택합니다. 기본값: Gemini 키가 설정된 경우 Gemini. |
--model M | 모델을 선택합니다. 기본적으로 Gemini는 키가 사용 가능한 최신 이미지 모델을 선택하고(--models로 목록 확인), OpenAI는 gpt-image-2를 사용합니다. |
--quality low|medium|high | OpenAI 전용. 기본값 high. |
--brand devin | 브랜드 키트의 이미지 스타일과 팔레트를 프롬프트에 추가합니다. 브랜드 작업 시 먼저 brand-kit 스킬을 실행하세요. |
모든 이미지에는 정확한 프롬프트, 모델 및 설정이 포함된 <이름>.json 사이드카 파일이 함께 생성되므로 나중에 다시 만들거나 수정할 수 있습니다.
제공자 선택
- Gemini: 빠르고 저렴합니다. 반복 작업, 편집 및
--ref로 일관성 유지에 가장 적합합니다. - OpenAI gpt-image: 이미지 내 텍스트가 포함된 이미지와 진정한 투명 컷아웃에 가장 적합합니다.
프롬프트 작성법
- 피사체, 매체, 조명 및 구도를 이 순서대로 설명하세요. 생략할 내용도 함께 명시하세요.
- 사용자가 요청하지 않는 한 이미지에 텍스트를 넣지 마세요. 모델은 여전히 단어를 잘못 표기합니다. 텍스트는 이후에 코드로 추가하세요.
- 시리즈의 경우 먼저 앵커 이미지 하나를 생성하세요. 그런 다음 동일한 앵커를 다른 모든 이미지에
--ref로 전달하세요. 이미지 2를 이미지 3에 연결하지 마세요. 작은 오류가 누적되기 때문입니다. - 이미지를 어디에든 사용하기 전에 사용자에게 연락처 시트를 보여주세요. 모든 변형을 다시 생성하는 대신 하나의 변형만 다시 생성하세요.