Skip to content

Tesixki/NAIPGRA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎨 NAIPGRA (ないぴぐら) - チャット形式イラスト生成

Hugging Face Spaces

GradioのWebUIでユーザーが希望するイラストを生成するチャットサービスです。

📋 概要

このプロジェクトは、ユーザーの自然な日本語入力を高品質なアニメイラストに変換するWebアプリケーションです。 複数のキャラクター(1~6人)と柔軟な設定に対応できます。

🔧 更新予定項目

・NextJSプロジェクトでの再設計予定 ・位置関係をGUI操作に ・より精度の高いプロンプト構成 など乞うご期待!

NAIPGRA概要画像

🔄 生成フロー

  1. ユーザー入力 → ユーザーが希望するイラストの詳細をチャットで入力
  2. 最新のGPT-5処理 → LangChainのGPT-5で構造化プロンプト(JSON形式)に変換・補完
  3. NovelAI v4.5生成 → キャラクター座標対応で高品質画像生成(832x1216解像度)
  4. 結果表示 → Gradioチャットに画像とダウンロードボタンを表示

✨ 特徴

  • 🤖 GPT-5活用: 自然な日本語から構造化プロンプト(JSON)への高精度変換
  • 🎯 キャラクター座標対応: 1-6キャラクター、A1-E5座標指定可能
  • 🎨 NovelAI v4.5 Curated: 最新モデルによる高品質アニメ風イラスト生成
  • 🔧 拡張プロンプト機能: 環境変数でメイン・キャラクタープロンプトに共通要素を自動追加
  • 🌐 美しいWebUI: 中央揃え・レスポンシブ対応のGradioインターフェース
  • 📥 ダウンロード機能: 生成画像の簡単ダウンロード
  • 📱 リアルタイム: 処理状況をリアルタイムで表示
  • 🔧 エラーハンドリング: ポート競合時の自動ポート検索

🚀 セットアップ

1. 依存関係のインストール

pip install -r requirements.txt

2. 環境変数の設定

.envファイルを作成し、以下の設定を追加:

# OpenAI API設定
OPENAI_API_KEY=your_openai_api_key_here

# NovelAI API設定
NOVELAI_USERNAME=your_novelai_username_here
NOVELAI_PASSWORD=your_novelai_password_here

# 拡張プロンプト設定
NOVELAI_EXTEND_PROMPT=ultra_detailed, extremely_detailed, photorealistic
NOVELAI_EXTEND_CHARACTER_PROMPT=perfect_face, detailed_eyes, high_quality_skin

# Gradio設定
GRADIO_PORT=7860
GRADIO_HOST=127.0.0.1

3. アプリケーションの起動

python main.py

ブラウザで http://127.0.0.1:7860 にアクセスしてください。

📁 ファイル構成

NAIPGRA/
├── main.py            # メインアプリケーション(Gradio WebUI)
├── chatGPT.py         # GPT-5による構造化プロンプト変換
├── novelai.py         # NovelAI v4.5 API画像生成(キャラクター座標対応)
├── requirements.txt   # 依存パッケージ
├── .env               # 環境変数(作成が必要)
├── .gitignore         # Git除外設定
└── README.md          # このファイル

🛠️ 技術スタック

  • フロントエンド: Gradio WebUI
  • AI処理:
    • OpenAI GPT-5 (LangChain経由)
    • NovelAI v4.5 Curated (novelai-api経由)
  • 画像処理: PIL (Pillow)
  • 並行処理: asyncio, aiohttp
  • 環境管理: python-dotenv

💡 使用例

📝 基本入力例

猫の女の子が花畑で笑っている

🤖 GPT-5構造化出力例

{
  "characterCount": 1,
  "prompt": "flower_field, outdoor, flowers, nature, sunny, best_quality, masterpiece",
  "characterPrompts": [
    {
      "prompt": "1girl, catgirl, cute, smiling, floral_background, standing, full_body, animal_ears, tail",
      "position": "C3"
    }
  ]
}

🔧 拡張プロンプト適用例

環境変数設定:

NOVELAI_EXTEND_PROMPT=masterpiece, best_quality, ultra_detailed
NOVELAI_EXTEND_CHARACTER_PROMPT=perfect_face, detailed_eyes

最終生成プロンプト:

メインプロンプト: "masterpiece, best_quality, ultra_detailed, flower_field, outdoor, flowers, nature, sunny"
キャラクター: "perfect_face, detailed_eyes, 1girl, catgirl, cute, smiling, animal_ears, tail"

🎨 複数キャラクター例

入力: オレンジ髪の魔法使いが火の魔法を練習している、それを褒めている牧師様
{
  "characterCount": 2,
  "prompt": "magic_academy, training_ground, fire_magic, spell_practice, indoors, best_quality, masterpiece",
  "characterPrompts": [
    {
      "prompt": "1girl, orange_hair, hime_cut, wizard_hat, robe, casting_spell, fireball, focused_expression, full_body",
      "position": "B3"
    },
    {
      "prompt": "1boy, priest, short_hair, smiling, clapping_hands, upper_body",
      "position": "D3"
    }
  ]
}

📱 出力結果

  • 解像度: 832x1216の高品質アニメ風イラスト
  • キャラクター配置: A1-E5座標グリッドに正確配置
  • 品質向上: 拡張プロンプトにより一貫した高品質
  • ダウンロード: 生成完了と同時にダウンロードボタン表示

⚙️ 設定

NovelAI設定

  • モデル: NovelAI v4.5c (Anime_v45_Curated)
  • 解像度: 832x1216(縦長・スマホ壁紙に最適)
  • 品質: 高品質設定(steps=28, scale=5.0)
  • キャラクター座標: A1-E5グリッド対応(A1=左上、E5=右下、C3=中央)
  • 同時生成: 最大6キャラクター対応

拡張プロンプト機能

  • NOVELAI_EXTEND_PROMPT: 全画像のメインプロンプトの先頭に自動追加
    • 例: masterpiece, best_quality, ultra_detailed
    • 効果: 品質タグが最優先で適用される
  • NOVELAI_EXTEND_CHARACTER_PROMPT: 全キャラクタープロンプトの先頭に自動追加
    • 例: perfect_face, detailed_eyes, beautiful
    • 効果: キャラクターの顔・表情品質が向上
  • 配置: 先頭配置により最高優先度で画像生成に影響
  • 使用例: 一貫した品質やスタイルを全生成画像に適用

🔧 トラブルシューティング

よくある問題

  1. APIキーエラー

    • .envファイルの設定を確認
    • OpenAI/NovelAIアカウントの有効性を確認
  2. ポート競合

    • 自動的に利用可能ポートを検索(7860→7861→7862...)
    • 手動設定: .envGRADIO_PORTを変更
  3. LangChain警告

    • BaseChatModel.__call__の非推奨警告は動作に影響なし
    • 将来のアップデートで修正予定
  4. 画像生成失敗

    • NovelAIアカウントクレジット残高を確認
    • ネットワーク接続を確認
  5. 拡張プロンプトが適用されない

    • .envファイルでNOVELAI_EXTEND_PROMPTNOVELAI_EXTEND_CHARACTER_PROMPTを確認
    • アプリケーション再起動で環境変数を再読込
    • ログで「拡張プロンプト追加(先頭)」メッセージを確認

📝 ライセンス

このプロジェクトは個人・学習目的での使用を想定しています。

🙏 謝辞

  • NovelAI - 高品質画像生成API
  • OpenAI - GPT-5言語モデル
  • Gradio - WebUIフレームワーク
  • LangChain - AI統合フレームワーク

注意: このツールはAPIクレジットを消費します。使用前に各サービスの料金体系をご確認ください。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages