image-create について
テキストの説明から画像を生成する Starchild のスキルです。デザイン、イラスト、ゲーム素材、SNS コンテンツの作成に向けたカテゴリやスタイルのプリセットを備え、モデル、枚数、比率、参照画像を指定できます。
主な機能
- 01テキストからの画像生成
- 02カテゴリとスタイルのプリセット
- 03画像モデルの選択
- 04枚数とアスペクト比の指定
- 05参照画像の入力
活用シーン
- 01ロゴ、ポスター、イラストの作成
- 02ゲーム素材や SNS ビジュアルの生成
- 03教育やファッション向け画像の制作
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ starchild-ai-agent/ official-skills --skill image-createインストール後、Claude Code で/image-createを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
_cost_track.pyexports.pygenerate_image.py詳細
image-create
Starchild 上のすべての純粋なテキストから画像への生成リクエストには、このスキルを使用してください。
対象: ロゴデザイン、ポスターデザイン、イラスト、ミーム作成、ゲームアセット、ソーシャルメディアコンテンツ、3D レンダリング、教育用イラスト、ファッションデザイン、フードフォトグラフィー、ペットのイラスト、ウェディングデザイン、ホリデーマーケティング、芸術的スタイルの作成。
基本原則: 提供されたスクリプトを呼び出してください。プロキシ/課金の配管を再実装しないでください。
image-create と image-portrait の使い分け:
- image-create → ユーザーがテキストの説明から何かを CREATE したい場合(顔/本人性は不要)
- image-portrait → ユーザーが参照写真から顔/本人性を保持したポートレートを希望する場合
1. クイックスタート — 基本的な生成(最も一般的)
⚠️ 実行コンテキスト — まずこれを読んでください。 以下のコードブロックはPythonであり、シェルコマンドではありません。Starchild の
bashツールは/bin/bash -cを実行するため、exec(open(...))を解析できません — これをそのまま bash コマンドに貼り付けるとsyntax error near unexpected token 'open'で失敗します。 また、python3 -c内でのexec(open(...))はNameError: __file__で失敗します。 これはスクリプトがパス解決に__file__を使用しているためです。bash ツール経由で呼び出す場合は、
python3 - <<'EOF'とfrom exports importを使用してください:python3 - <<'EOF' import sys sys.path.insert(0, "skills/image-create") from exports import generate_image result = generate_image( prompt="a futuristic city skyline at sunset with flying cars", ) print(result) EOFヒアドキュメント(
<<'EOF')はすべての引用符と改行を保持します — エスケープは不要です。
exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
prompt="a futuristic city skyline at sunset with flying cars",
)
# result -> {"success": True, "images": [{"local_path": "output/images/..."}], ...}
2. クイックスタート — カテゴリプリセットを使用
exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
prompt="StarChild AI platform",
category="logo",
style="tech",
)
3. クイックスタート — カテゴリのみ(カスタムプロンプトなし)
exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
category="3d",
style="diorama",
)
# Uses the built-in style template as the full prompt
結果をユーザーに配信する — 重要
ユーザーに生の fal.media URL を絶対に渡さないでください。 fal は制限的な CSP ヘッダーでファイルを配信します。信頼できる唯一の配信経路は、すでにダウンロード済みのローカルファイルです:
- 各画像の
local_path(例:output/images/xxx.png)を使用してください — スクリプトは成功時に必ずダウンロードします。 - ファイルは
output/images/に保存され、ワークスペースのファイルパネルで閲覧できることをユーザーに伝えてください。 - Web チャネルでは、ユーザーがチャット内でプレビューできるようにインラインで埋め込んでください:
 - Telegram / WeChat では、
send_to_telegram(file_path="output/images/...", message_type="image")またはsend_to_wechat(file_path="output/images/...", message_type="image")で送信してください。
4. パラメータ
| パラメータ | 必須 | デフォルト | 説明 |
|---|---|---|---|
prompt | yes* | — | 生成したい画像のテキスト説明 |
category | yes* | — | プリセットカテゴリ(§5 を参照) |
style | no | "default" | カテゴリ内のサブスタイル(§5 を参照) |
model | no | "nanopro" | モデル: "nano2"(最速 ~15s)、"nanopro"(バランス ~25s、デフォルト)、または "gpt"(最高品質 ~150s) |
count | no | 1 | 生成する画像の数(1~4) |
aspect_ratio | no | auto | 出力比率: 1:1、2:3、3:2、3:4、4:3、4:5、5:4、9:16、16:9、21:9。設定しない場合、カテゴリに応じて自動選択されます。 |
image_path | no | — | 参照/インスピレーション画像用の任意のローカルファイルパス |
image_url | no | — | 参照/インスピレーション画像用の任意の公開 URL |
*prompt または category の少なくとも一方を指定する必要があります。
プロンプトの優先順位: prompt + category/style(拡張) > prompt のみ > category + style > category デフォルト。
アスペクト比の自動選択: 明示的に設定されていない場合、スクリプトはカテゴリに最適な比率を選択します(例: ロゴには 1:1、ポスターには 3:4、バナーには 16:9)。
5. カテゴリとスタイルのプリセット
E: デザイン — ロゴ(category="logo")
⚠️ AI はテキストを確実にレンダリングできません。 アイコン/シンボルのみを生成し、テキスト/ワードマークはデザインツール(Figma、Canva、Illustrator)で追加してください。
| スタイル | キー | 最適な用途 |
|---|---|---|
| 抽象的幾何学 | abstract | テック、コンセプトブランド(Nike スウッシュ風) |
| 具象アイコン | pictorial | ユニバーサルブランド、テキストなしで機能(Apple 風) |
| マスコットキャラクター | mascot | 親しみやすいブランド、食品、スポーツ(KFC 風) |
| テック企業 | tech | SaaS、AI、フィンテックのスタートアップ |
| 食品ブランド | food | レストラン、ベーカリー、オーガニック |
| ファッションブランド | fashion | ラグジュアリー、アパレル、ビューティー |
| ゲーミング | gaming | eスポーツ、ゲームスタジオ |
| 汎用 | default | あらゆるプロフェッショナルなロゴ |
ロゴプロンプトのアンチパターン(避けてください):
- ❌
"logo with text 'Company Name'"— テキストが文字化けします - ❌
"photorealistic logo"— ロゴは写真ではありません - ❌
"3D rendered logo"— 複雑すぎて、縮小してもきれいになりません - ✅
"flat vector logo of [subject], minimal geometric style, single color, white background"
E: デザイン — ポスター(category="poster")
| スタイル | キー | 最適な用途 | 推奨比率 |
|---|---|---|---|
| 映画ポスター | movie | 映画プロモーション、シネマティック | 3:4 |
| 音楽フェス | music_festival | コンサート、フェス | 3:4 |
| テックカンファレンス | tech_conference | テックイベント、ハッカソン | 3:4 |
| 旅行先 | travel | 観光、旅行欲 | 3:4 |
| 製品発表 | product_launch | 製品アナウンス | 3:4 |
| ミニマリストアート | minimalist | インテリア、ギャラリー | 3:4 |
| スポーツイベント | sports | スポーツイベント | 3:4 |
| 汎用 | default | あらゆるポスター | 3:4 |
E: デザイン — イラスト(category="illustration")
| スタイル | キー | 最適な用途 |
|---|---|---|
| ファンタジー | fantasy | ファンタジーの世界、魔法、ドラゴン |
| SF | scifi | 未来的なシーン、宇宙 |
| 絵本 | children | 子ども向けコンテンツ、絵本(3〜5歳) |
| エディトリアル | editorial | 雑誌、記事のヘッダー |
| ボタニカル | botanical | 科学植物イラスト |
| 汎用 | default | あらゆるイラスト |
E: デザイン — ミーム(category="meme")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 動物ミーム | animal | かわいい/おかしな動物ミーム |
| リアクション | reaction | リアクションテンプレート |
| シュール | surreal | 不条理なインターネットユーモア |
| 汎用 | default | あらゆるミーム |
K: ゲームアセット(category="game_asset")
| スタイル | キー | 最適な用途 | 一般的なサイズ |
|---|---|---|---|
| キャラクターコンセプト | character | RPG キャラクター、ヒーロー | 1024x1024 |
| 環境 | environment | ゲームの世界、レベル | 1920x1080 |
| 武器/小道具 | weapon | アイテム、武器、アーティファクト | 1024x1024 |
| UI アイコン | ui_icon | ゲーム UI、モバイルアイコン | 32x32〜128x128 |
| ピクセルスプライト | pixel_sprite | レトロゲームのキャラクター | 32x32〜64x64 |
| タイルセット | tileset | シームレスな環境タイル | 256x256〜512x512 |
| 汎用 | default | あらゆるゲームアセット | 1024x1024 |
M: ソーシャルメディア(category="social_media")
| スタイル | キー | 最適な用途 | 推奨比率 | 解像度 |
|---|---|---|---|---|
| Instagram 投稿 | instagram | IG フィード投稿 | 1:1 | 1080x1080 |
| 小紅書 | xiaohongshu | 小紅書の投稿 | 3:4 | 1080x1440 |
| TikTok カバー | tiktok_cover | TikTok サムネイル | 9:16 | 1080x1920 |
| YouTube サムネイル | youtube_thumbnail | YT サムネイル | 16:9 | 1280x720 |
| バナー | banner | Twitter/YouTube バナー | 16:9 | 1920x1080 |
| ストーリー | story | IG/FB ストーリー | 9:16 | 1080x1920 |
| 汎用 | default | あらゆるソーシャルコンテンツ | 1:1 | 1024x1024 |
N: 3D (category="3d")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 3D キャラクター | character | ピクサー風のキャラクター |
| 商品レンダリング | product | 商品のビジュアライゼーション |
| ジオラマ | diorama | ミニチュアシーン、アイソメトリック |
| アプリアイコン | icon | iOS/Android のアプリアイコン |
| 3D テキスト | text | クローム/メタリックなテキスト |
| 3D シーン | scene | ローポリの環境 |
| 汎用 | default | あらゆる 3D レンダリング |
P: 教育 (category="education")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 教科書 | textbook | 教科書のイラスト |
| インフォグラフィック | infographic | データのビジュアライゼーション |
| 科学 | science | 科学図、解剖図 |
| 歴史 | history | 歴史的な情景の再現 |
| 図解 | diagram | 技術的なプロセス図 |
| 汎用 | default | あらゆる教育コンテンツ |
Q: ファッション (category="fashion")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 衣類デザイン | clothing | 衣服のスケッチ、ファッションプレート |
| アクセサリー | accessory | ジュエリー、バッグ、靴 |
| ネイルアート | nail_art | ネイルデザイン |
| テキスタイルパターン | textile | 生地のパターン、サーフェスデザイン |
| 汎用 | default | あらゆるファッションデザイン |
R: フード (category="food")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 料理写真 | dish | フードフォトグラフィー、エディトリアル |
| メニューデザイン | menu | レストランのメニュー |
| パッケージ | packaging | 食品パッケージのデザイン |
| レシピカード | recipe_card | レシピのイラスト |
| 汎用 | default | あらゆるフードコンテンツ |
S: ペット (category="pet")
| スタイル | キー | 最適な用途 |
|---|---|---|
| 擬人化ペット | humanized | 人間の服を着たペット |
| ルネサンス | renaissance | 王室風/高貴なペットの肖像画 |
| カートゥーン | cartoon | ディズニー/ピクサー風のペット |
| マーチャンダイズ | merchandise | ペットをテーマにした商品パターン |
| メモリアル | memorial | ペットへの追悼アートワーク |
| 汎用 | default | かわいいペットのイラスト |
I: 商品写真 (category="product")
product-photography スキルのベストプラクティスから派生したものです。
| スタイル | キー | 最適な用途 |
|---|---|---|
| ヒーローショット | hero | メインの商品画像、雑誌広告 |
| パックショット | packshot | EC リスティング、Amazon(純白背景) |
| ライフスタイル | lifestyle | 文脈の中の商品、エディトリアル |
| フラットレイ | flat_lay | Instagram、真上からの配置 |
| 汎用 | default | あらゆる商品写真 |
商品写真のヒント:
- ヒーローショット: 商品がフレームの 80% を占め、立体感を出すために 15~30° のわずかな角度をつけます
- パックショット(Amazon): 純白の背景、商品が 85% 以上を占め、小道具/テキスト/ウォーターマークはなし
- 必ずライティングを指定します:「柔らかなスタジオ照明」、「ドラマチックなリムライト」
- EC 向けには:「シャープなフォーカス」、「影なし」または「ごく薄い影のみ」
Y: ウェディング (category="wedding")
| スタイル | キー | 最適な用途 | フォーマット |
|---|---|---|---|
| クラシックな招待状 | invitation | 花柄のエレガントな招待状 | 5x7 インチ |
| モダンな招待状 | invitation_modern | ミニマリストな招待状 | 5x7 インチ |
| ラスティックな招待状 | invitation_rustic | ボヘミアンな招待状 | 5x7 インチ |
| 会場プレビュー | venue | 会場装飾のプレビュー | — |
| セーブ・ザ・デート | save_the_date | 事前案内カード | 4x6 インチ |
| 汎用 | default | あらゆるウェディングデザイン | — |
Z: ホリデーマーケティング(category="holiday")
| スタイル | キー | 最適な用途 |
|---|---|---|
| クリスマスカード | christmas_card | クリスマスの挨拶 |
| 旧正月 | chinese_new_year | 春節のデザイン |
| 新年 | new_year | 新年のお祝い |
| バレンタイン | valentines | バレンタインデー |
| ハロウィン | halloween | ハロウィンのデザイン |
| プロモーション | promotional | セールバナー、販促 |
| 中秋 | mid_autumn | 中秋節のデザイン |
| 一般 | default | あらゆるホリデーコンテンツ |
キャンペーン計画のための主要な祝日カレンダー:
| 祝日 | 時期 | 最適な用途 |
|---|---|---|
| 旧正月 | 1月〜2月 | ギフト、家族、食べ物 |
| バレンタインデー | 2月14日 | ロマンス、ギフト |
| 女性の日 | 3月8日 | エンパワーメント、ギフト |
| 520(5/20) | 5月20日 | ロマンス(中国のバレンタイン) |
| 618ショッピング | 6月 | Eコマースセール |
| 七夕 | 7月〜8月 | ロマンス |
| 中秋 | 9月 | 家族、月餅 |
| 国慶節 | 10月1日 | 旅行、ショッピング |
| 11.11 独身の日 | 11月11日 | 大規模セール |
| 12.12 ダブル12 | 12月12日 | 年末セール |
| クリスマス | 12月25日 | ギフト、冬 |
C: アートスタイル(category="art_style")
| スタイル | キー | 最適な用途 |
|---|---|---|
| スタジオジブリ | ghibli | ジブリ風のシーン |
| アメリカンコミック | american_comic | マーベル/DCスタイル |
| 日本漫画 | manga | 漫画のイラスト |
| ピクセルアート | pixel_art | レトロゲームスタイル |
| 鉛筆スケッチ | pencil_sketch | 手描きの風合い |
| 3Dカートゥーン | 3d_cartoon | ピクサー/ディズニースタイル |
| スチームパンク | steampunk | ヴィクトリア朝SF |
| ファンタジー魔法 | fantasy_magic | 魔法のシーン |
| 武侠/仙侠 | wuxia | 中国武術 |
| SF宇宙 | scifi_space | 宇宙のシーン |
| ポップアート | pop_art | ウォーホルスタイル |
| 浮世絵 | ukiyo_e | 日本の木版画 |
| 印象派 | impressionist | モネ/ルノワールスタイル |
| アール・ヌーヴォー | art_nouveau | ミュシャスタイル |
| 一般 | default | あらゆる芸術スタイル |
6. モデル選択ガイド
| モデル | キー | 速度 | 品質 | 最適な用途 |
|---|---|---|---|---|
| NanoPro | nanopro | 約25秒 | 良好 | すべてのリクエストのデフォルト。高速な反復。 |
| GPT Image 2 | gpt | 約150秒 | 最高 | ユーザーが明示的に「最高品質」または「ベスト品質」を求めた場合。テキストの多いデザイン。 |
判断ルール:
- デフォルト: ユーザーが明示的に高品質を要求しない限り、常に
nanoproを使用します。 gptを使用する場合: ユーザーが「最高品質」「ベスト品質」「プレミアム」と言った場合、またはデザインに正確なテキストレンダリングが必要な場合(特定のテキストを含むロゴ、タイポグラフィを使ったポスター)。nanoproを使用する場合: ユーザーが迅速な結果を求めている、デザインを反復している、または複数のバリエーションを生成している場合。
# Default (fast)
result = generate_image(prompt="cute cat logo", category="logo")
# High quality (user requested)
result = generate_image(prompt="cute cat logo", category="logo", model="gpt")
7. アスペクト比ガイド
| カテゴリ | デフォルト比率 | 備考 |
|---|---|---|
| ロゴ | 1:1 | 正方形、拡大縮小可能 |
| ポスター | 3:4 | 縦向き |
| イラスト | 4:3 | 横向き、ワイドなシーン |
| ミーム | 1:1 | 正方形、共有しやすい |
| ゲームアセット | 1:1 | 正方形、一貫性 |
| ソーシャルメディア | 1:1 | プラットフォームによって異なる |
| 3D | 1:1 | 正方形レンダー |
| 教育 | 4:3 | 横向き、読みやすい |
| ファッション | 3:4 | 縦向き、衣装全体 |
| フード | 4:3 | 横向き、食欲をそそる |
| ペット | 1:1 | 正方形、かわいい |
| 商品 | 1:1 | 正方形、Eコマース |
| ウェディング | 3:4 | 縦向き、エレガント |
| ホリデー | 4:3 | 横向き、お祝い |
| アートスタイル | 4:3 | 横向き、風景 |
プラットフォーム固有の上書き(自動適用):
- TikTokカバー →
9:16(1080x1920) - Instagramストーリー →
9:16(1080x1920) - YouTubeサムネイル →
16:9(1280x720) - ソーシャルメディアバナー →
16:9(1920x1080) - 小红书 →
3:4(1080x1440)
aspect_ratio が明示的に設定されていない場合、スクリプトが最適な比率を自動選択します。
8. プロンプトエンジニアリングのベストプラクティス
5要素のプロンプト構造
効果的な画像プロンプトにはすべて、以下を含める必要があります:
[subject/content], [style/aesthetic], [composition/layout], [lighting/atmosphere], [quality modifiers]
主要な原則
-
主題を具体的に指定する:
- ❌「ロゴ」
- ✅「ペットトリミング店向けのミニマリストな猫のシルエットロゴ、クリーンなベクタースタイル」
-
ビジュアルスタイルを指定する:
- 「フラットデザイン」「3D レンダー」「水彩画」「フォトリアル」
- 「ミニマリスト」「詳細」「抽象的」「幾何学的」
-
構図のガイダンスを含める:
- 「中央配置の構図」「三分割法」「対称レイアウト」
- 「クローズアップ」「ワイドショット」「アイソメトリックビュー」「俯瞰視点」
-
ライティングは重要です:
- スタジオ: 「柔らかく拡散したスタジオ照明」「レンブラントのキアロスクーロ」
- 自然: 「ゴールデンアワーの暖かな光」「木々の間から差し込む木漏れ日」
- ドラマチック: 「ドラマチックなリムライト」「ボリュメトリックライトビーム」「ネオングロー」
- フラット: 「影のない均一なフラットライティング」(アイコンや図表向け)
-
品質のアンカー:
- 「プロフェッショナル品質」「印刷可能」「4K 解像度」
- 「Octane レンダー」「Unreal Engine 品質」「雑誌品質」
-
画像内のテキストについて(
gptモデルを使用):- テキストを明示的に記述する:
text reading "SALE 50% OFF" - フォントスタイルを指定する: 「太字のサンセリフ書体」「エレガントなスクリプトフォント」
- GPT モデルは nanopro よりもはるかに優れたテキストレンダリングを処理します
- テキストを明示的に記述する:
ロゴ固有のプロンプトのヒント(logo-design-guide より)
効果的なキーワード:
flat vector logo, simple minimal icon, single color silhouette,
geometric logo mark, clean lines, negative space design,
line art logo, flat design icon, minimalist symbol
失敗するキーワード:
❌ photorealistic logo (contradiction — logos aren't photos)
❌ 3D rendered logo (too complex, won't scale down)
❌ gradient logo (inconsistent results, hard to reproduce)
❌ logo with text "Company Name" (text rendering fails)
ロゴ用のプロンプト構造:
flat vector logo of [subject], [style], [color constraint], [background], [additional detail]
子ども向けイラストのヒント(book-illustrator より)
- 0〜2 歳: シンプル、大胆、高コントラスト、明快な形
- 3〜5 歳: カラフル、表現豊か、動きのある魅力的なキャラクター
- 6〜8 歳: 視覚的なストーリーテリングを伴う、より詳細なシーン
- 9〜12 歳: テキストを補完する洗練されたイラスト
- 3 色のルール: 視覚的な明快さのために、各キャラクターを 3〜4 色の主要色に制限する
ゲームアセットのヒント(game-asset-generation より)
- スプライトには常にピクセル寸法を指定する: 「32x32」「64x64」「128x128」
- シームレステクスチャの場合: 「繰り返しても目に見える継ぎ目がないよう、完全にタイル化する必要がある」
- スプライトシートの場合: グリッドレイアウトを指定する「4x2 グリッド(合計 256x64)」
- アイコンの場合: 「32x32 ピクセルで判読できる明快なシルエット」
例: カスタムプロンプトの構築
ユーザー: 「Bean Dream という名前のコーヒーショップのロゴをデザインして」
result = generate_image(
prompt=(
"flat vector logo of a coffee bean morphing into a crescent moon, "
"minimalist design, warm brown and cream color palette, "
"clean lines, white background, "
"professional branding quality, works at any size"
),
category="logo",
model="gpt", # GPT for better detail
)
例: ゲームキャラクターのコンセプト
ユーザー: 「RPG ゲーム用の戦士キャラクターを作成して」
result = generate_image(
prompt=(
"female warrior character, ornate golden armor with dragon motifs, "
"flowing red cape, wielding a glowing enchanted sword, "
"determined fierce expression, battle-ready stance, "
"front view T-pose, clean white background"
),
category="game_asset",
style="character",
)
例: ソーシャルメディアコンテンツ
ユーザー: 「料理のコツについての TikTok カバーを作って」
result = generate_image(
prompt=(
"cooking tips video thumbnail, colorful kitchen scene, "
"fresh ingredients flying in the air, chef's hands visible, "
"fun energetic vibe, bold visual impact"
),
category="social_media",
style="tiktok_cover",
# aspect_ratio auto-set to 9:16
)
9. 意図認識ガイド
この表を使用して、ユーザーのリクエストを正しいカテゴリ/スタイル/パラメータにマッピングしてください:
| ユーザーの発言 | カテゴリ | スタイル | 備考 |
|---|---|---|---|
| "design a logo", "make a logo" | logo | 自動検出 | スタイルのために業界について質問する |
| "create a poster", "event poster" | poster | 自動検出 | |
| "draw an illustration", "illustrate" | illustration | 自動検出 | |
| "make a meme", "funny image" | meme | 自動検出 | |
| "game character", "RPG asset" | game_asset | character | |
| "game environment", "level design" | game_asset | environment | |
| "weapon design", "sword/shield" | game_asset | weapon | |
| "game icon", "UI icon" | game_asset | ui_icon | |
| "pixel art sprite" | game_asset | pixel_sprite | |
| "tileable texture", "seamless tile" | game_asset | tileset | |
| "Instagram post", "IG content" | social_media | instagram | |
| "小红书", "xiaohongshu" | social_media | xiaohongshu | |
| "TikTok cover", "抖音封面" | social_media | tiktok_cover | 9:16 |
| "YouTube thumbnail" | social_media | youtube_thumbnail | 16:9 |
| "banner", "cover image" | social_media | banner | 16:9 |
| "story template" | social_media | story | 9:16 |
| "3D character", "Pixar style" | 3d | character | |
| "product render", "3D product" | 3d | product | |
| "diorama", "miniature scene" | 3d | diorama | |
| "app icon", "3D icon" | 3d | icon | |
| "3D text", "chrome text" | 3d | text | |
| "textbook illustration" | education | textbook | |
| "infographic", "data viz" | education | infographic | |
| "scientific diagram" | education | science | |
| "historical scene" | education | history | |
| "fashion sketch", "clothing design" | fashion | clothing | |
| "accessory design", "jewelry" | fashion | accessory | |
| "nail art", "nail design" | fashion | nail_art | |
| "textile pattern", "fabric design" | fashion | textile | |
| "food photo", "dish" | food | dish | |
| "menu design" | food | menu | |
| "food packaging" | food | packaging | |
| "recipe card" | food | recipe_card | |
| "product photo", "product shot" | product | hero | |
| "Amazon listing", "e-commerce photo" | product | packshot | 白背景 |
| "lifestyle product", "product in context" | product | lifestyle | |
| "flat lay", "top-down product" | product | flat_lay | |
| "pet in clothes", "humanized pet" | pet | humanized | |
| "royal pet", "renaissance pet" | pet | renaissance | |
| "cartoon pet", "Disney pet" | pet | cartoon | |
| "pet merchandise", "pet pattern" | pet | merchandise | |
| "pet memorial", "rainbow bridge" | pet | memorial | |
| "wedding invitation", "请柬" | wedding | invitation | |
| "modern invitation" | wedding | invitation_modern | |
| "rustic invitation" | wedding | invitation_rustic | |
| "wedding venue", "婚礼布置" | wedding | venue | |
| "save the date" | wedding | save_the_date | |
| "Christmas card", "圣诞贺卡" | holiday | christmas_card | |
| "春节", "Chinese New Year" | holiday | chinese_new_year | |
| "New Year design", "新年" | holiday | new_year | |
| "Valentine's card", "情人节" | holiday | valentines | |
| "Halloween", "万圣节" | holiday | halloween | |
| "sale banner", "promotional" | holiday | promotional | |
| "中秋节", "Mid-Autumn" | holiday | mid_autumn | |
| "Ghibli style", "吉卜力" | art_style | ghibli | |
| "comic style", "漫画风" | art_style | american_comic or manga | |
| "pixel art", "像素风" | art_style | pixel_art | |
| "pencil sketch", "素描" | art_style | pencil_sketch | |
| "steampunk", "蒸汽朋克" | art_style | steampunk | |
| "fantasy", "魔法" | art_style | fantasy_magic | |
| "wuxia", "武侠", "仙侠" | art_style | wuxia | |
| "space", "太空", "sci-fi" | art_style | scifi_space | |
| "pop art", "波普" | art_style | pop_art | |
| "ukiyo-e", "浮世绘" | art_style | ukiyo_e | |
| "impressionist", "印象派" | art_style | impressionist | |
| "Art Nouveau", "新艺术" | art_style | art_nouveau | |
| "highest quality", "best quality" | any | any + model="gpt" | |
| プリセットにないカスタム説明 | — | — | prompt= を直接使用してください |
10. 参照画像を使用する場合(任意)
このスキルは主にテキストから画像を生成するものですが、デザインのインスピレーションとして参照画像を指定できます。
# Reference image for design guidance
result = generate_image(
prompt="redesign this logo in a modern minimalist style",
category="logo",
image_path="uploads/old_logo.png",
)
# Reference URL
result = generate_image(
prompt="create a similar style illustration but with a forest theme",
image_url="https://example.com/reference.jpg",
)
参照画像が指定された場合、スクリプトは generate エンドポイントではなく /edit エンドポイントを使用します。
11. 複数の画像
# Generate 4 logo variants
result = generate_image(
prompt="minimalist mountain logo for outdoor brand",
category="logo",
count=4,
)
# result["images"] -> list of 4 image dicts
12. アンチパターン(これらは避けてください)
| 避けるべきもの | 理由 | 代わりに |
|---|---|---|
"logo with text 'My Brand'" | AI がテキストを崩す | アイコンのみを生成し、Figma/Canva でテキストを追加する |
"photorealistic logo" | ロゴは写真ではない | 「flat vector logo」を使用する |
"3D rendered logo" | favicon にスケールしない | 「flat minimal icon」を使用する |
| 「nice image」のような曖昧なプロンプト | 結果が悪い | 被写体、スタイル、色、ライティングを具体的に指定する |
| 1 つのプロンプトに多すぎるコンセプト | 出力が混乱する | 1 つの明確なコンセプトに集中する |
| 正確なピクセル寸法の要求 | サポートされていない | aspect_ratio パラメータを使用する |
テキストの多いデザインに nanopro を使用 | テキストのレンダリングが苦手 | テキストには model="gpt" を使用する |
13. 提供されるスクリプト
| ファイル | 目的 |
|---|---|
generate_image.py | コアスクリプト: プロンプト構築 → 送信 → ポーリング → ダウンロード。すべてのカテゴリ、スタイル、2 つのモデルを処理します。 |
exports.py | プログラムから利用するために generate_image、CATEGORY_STYLES、MODELS を再エクスポートします。 |
_cost_track.py | コスト追跡ヘルパー — sc-proxy ヘッダーを介して呼び出しごとのコストを記録します。自己完結型で、外部依存関係はありません。 |
14. ローカルテスト
FAL_KEY 環境変数を設定すると、fal.ai を直接呼び出します(sc-proxy をバイパスします):
# Basic generation
FAL_KEY=your-fal-key python3 skills/image-create/generate_image.py "a cute robot" illustration fantasy 1 nanopro
# Args: <prompt> [category] [style] [count] [model]
15. トラブルシューティング
| 問題 | 解決方法 |
|---|---|
Either 'prompt' or 'category' must be provided | 少なくともプロンプトまたはカテゴリを指定してください |
File not found: ... | 参照画像のワークスペースパスを確認してください |
Unsupported image format | .jpg、.jpeg、.png、.webp、または .bmp を使用してください |
Image too large | 参照画像を 10 MB 未満にリサイズしてください |
HTTP 402 insufficient_credits | 残高をチャージしてください。コストは送信時に事前課金されます |
HTTP 403 endpoint_not_allowed | sc-proxy は承認された fal エンドポイントのみを許可します。管理者に連絡してください |
生成が上流で FAILED | プロンプトを簡略化して、再試行してください |
ジョブが IN_PROGRESS のまま 10 分以上停滞 | request_id を保存し、後で再試行してください |
| テキストがうまくレンダリングされない | model="gpt" に切り替えてください — GPT はテキストをはるかにうまく処理します |
gpt モデルが遅すぎる | より速い結果を得るには nanopro(デフォルト)に切り替えてください |
| ロゴが複雑すぎてスケールしない | プロンプトに「flat vector」、「minimal」、「single color」を使用してください |
| シームレステクスチャに継ぎ目が見える | プロンプトに「must tile perfectly with no visible seams」を追加してください |
16. インフラストラクチャ(参考)
- 呼び出し元 →
sc-proxy→queue.fal.run/{model}→ fal モデルプロバイダー - すべてのリクエストには
Authorization: Key fake-falai-key-12345を含める必要があります(プロキシが実際のFAL_KEYを注入します) - 事前課金は送信時に発生します。ポーリング/結果の呼び出しは無料です。
- 最終的な画像は
https://*.fal.media/...に配置されます — パブリック CDN であり、ダウンロードに認証は不要です。 - コスト追跡は
_cost_track.pyを介して行います — sc-proxy のレスポンスヘッダーからX-Credits-Usedを記録します。 - 各スキルには独自の
_cost_track.pyのコピーが含まれています(スキルは個別にデプロイされます)。
モデルエンドポイント
| モデル | 生成(テキストのみ) | 編集(参照画像あり) |
|---|---|---|
| nanopro | fal-ai/nano-banana-pro | fal-ai/nano-banana-pro/edit |
| gpt | openai/gpt-image-2 | openai/gpt-image-2/edit |