NAko3 commited on
Commit
4634e0a
·
verified ·
1 Parent(s): 5a70f3c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +137 -4
app.py CHANGED
@@ -257,6 +257,91 @@ with tab3:
257
  help="画像の構図テクニックを指定します"
258
  )
259
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
260
  advanced_params = st.text_area(
261
  "カスタムパラメータ (JSONフォーマット)",
262
  "{}",
@@ -318,7 +403,7 @@ if st.button("🚀 プロンプトを生成", type="primary", use_container_widt
318
  "input": user_input,
319
  "mode": mode.lower(),
320
  "complexity": complexity,
321
- "model": model, # 選択されたモデルを追加
322
  "aspect_ratio": aspect_ratio,
323
  "quality": quality,
324
  "style": style,
@@ -338,11 +423,59 @@ if st.button("🚀 プロンプトを生成", type="primary", use_container_widt
338
  }
339
  }
340
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
341
  # 実験的機能の詳細
342
- if use_pattern_interrupt and pattern_concepts:
343
  params["experimental"]["pattern_concepts"] = [c.strip() for c in pattern_concepts.split(",")]
344
 
345
- if use_emotion_matrix:
346
  params["experimental"]["emotions"] = {
347
  "primary": primary_emotion,
348
  "secondary": secondary_emotion
@@ -380,4 +513,4 @@ if st.button("🚀 プロンプトを生成", type="primary", use_container_widt
380
 
381
  # フッター
382
  st.markdown("---")
383
- st.markdown("© 2025 AI Art Prompt Generator - Powered by Groq & Hugging Face")
 
257
  help="画像の構図テクニックを指定します"
258
  )
259
 
260
+ # MidJourney特有のパラメータセクションを追加
261
+ st.markdown("### MidJourney/nijiJourney特有のパラメータ")
262
+
263
+ # タブでパラメータをカテゴリ分け
264
+ param_tab1, param_tab2, param_tab3 = st.tabs(["スタイル参照", "パーソナライズ", "その他"])
265
+
266
+ with param_tab1:
267
+ # スタイルリファレンス (--sref) 設定
268
+ use_style_reference = st.checkbox("スタイルリファレンス (--sref) を使用",
269
+ help="別画像のスタイルを参照し、色調や質感を新規生成に適用します")
270
+
271
+ if use_style_reference:
272
+ sref_type = st.radio("参照方法", ["ランダム", "画像URL", "コード指定"], horizontal=True)
273
+
274
+ if sref_type == "ランダム":
275
+ st.info("ランダムに選ばれたスタイルが適用されます (--sref random)")
276
+ sref_value = "random"
277
+ elif sref_type == "画像URL":
278
+ sref_value = st.text_input("画像URL", help="スタイル参照する画像のURLを入力してください")
279
+ else:
280
+ sref_value = st.text_input("スタイルコード", help="以前生成されたsrefコードを入力 (例: 1234567)")
281
+
282
+ # スタイルウェイト
283
+ style_weight = st.slider("スタイルウェイト (--sw)", 0, 1000, 100,
284
+ help="参照画像の影響度を調整します。高いほど強く反映されます")
285
+
286
+ # スタイルバージョン
287
+ style_version = st.radio("スタイルバージョン (--sv)", [1, 2, 3, 4], index=3, horizontal=True,
288
+ help="Style Referenceアルゴリズムのバージョンを選択します")
289
+
290
+ with param_tab2:
291
+ # パーソナライゼーション (--p) 設定
292
+ use_personalization = st.checkbox("パーソナライゼーション (--p) を使用",
293
+ help="自身の好みに学習させたプロファイルを適用します")
294
+
295
+ if use_personalization:
296
+ personalization_type = st.radio("適用方法", ["デフォルト", "プロファイルID", "コード指定"], horizontal=True)
297
+
298
+ if personalization_type == "デフォルト":
299
+ st.info("設定済みのデフォルトプロファイルが適用されます (--p)")
300
+ personalization_value = ""
301
+ elif personalization_type == "プロファイルID":
302
+ personalization_value = st.text_input("プロファイルID", help="使用するプロファイルIDを入力")
303
+ else:
304
+ personalization_value = st.text_input("パーソナライズコード", help="以前生成されたコードを入力")
305
+
306
+ # パーソナライズ強度は --stylize を共用
307
+ st.caption("パーソナライズの適用度はスタイル強度 (--s) パラメータで調整されます")
308
+
309
+ with param_tab3:
310
+ # その他のパラメータ
311
+ col1, col2 = st.columns(2)
312
+
313
+ with col1:
314
+ use_character_reference = st.checkbox("キャラクター参照 (--cref)",
315
+ help="複数シーンで同一キャラクターを維持します")
316
+
317
+ if use_character_reference:
318
+ cref_value = st.text_input("キャラクター参照URL", help="キャラクターが写っている画像のURLを入力")
319
+
320
+ use_repeat = st.checkbox("繰り返し生成 (--repeat / --r)",
321
+ help="同一プロンプトで複数グリッドを生成します")
322
+
323
+ if use_repeat:
324
+ repeat_count = st.number_input("繰り返し回数", min_value=1, max_value=10, value=2)
325
+
326
+ with col2:
327
+ use_image_weight = st.checkbox("画像プロンプトの影響度 (--iw)",
328
+ help="画像プロンプト(イメージURL)の影響度を調整します")
329
+
330
+ if use_image_weight:
331
+ image_weight = st.slider("画像ウェイト", 0.0, 2.0, 1.0, 0.1)
332
+
333
+ generation_mode = st.radio("生成モード",
334
+ ["デフォルト", "fast", "relax", "turbo", "draft"],
335
+ index=0, horizontal=True,
336
+ help="GPU速度やコストを最適化するモードを選択")
337
+
338
+ visibility = st.radio("共有設定",
339
+ ["デフォルト", "public", "stealth"],
340
+ index=0, horizontal=True,
341
+ help="MidJourneyサイトへの���開/非公開を制御")
342
+
343
+ # カスタムパラメータセクション
344
+ st.markdown("### カスタムパラメータ")
345
  advanced_params = st.text_area(
346
  "カスタムパラメータ (JSONフォーマット)",
347
  "{}",
 
403
  "input": user_input,
404
  "mode": mode.lower(),
405
  "complexity": complexity,
406
+ "model": model,
407
  "aspect_ratio": aspect_ratio,
408
  "quality": quality,
409
  "style": style,
 
423
  }
424
  }
425
 
426
+ # MidJourney特有のパラメータを追加
427
+
428
+ # スタイルリファレンス
429
+ if 'use_style_reference' in locals() and use_style_reference:
430
+ params["advanced"]["style_reference"] = {
431
+ "use": True,
432
+ "value": sref_value,
433
+ "style_weight": style_weight,
434
+ "style_version": style_version
435
+ }
436
+
437
+ # パーソナライゼーション
438
+ if 'use_personalization' in locals() and use_personalization:
439
+ params["advanced"]["personalization"] = {
440
+ "use": True,
441
+ "type": personalization_type,
442
+ "value": personalization_value
443
+ }
444
+
445
+ # キャラクター参照
446
+ if 'use_character_reference' in locals() and use_character_reference:
447
+ params["advanced"]["character_reference"] = {
448
+ "use": True,
449
+ "value": cref_value
450
+ }
451
+
452
+ # 繰り返し生成
453
+ if 'use_repeat' in locals() and use_repeat:
454
+ params["advanced"]["repeat"] = {
455
+ "use": True,
456
+ "count": repeat_count
457
+ }
458
+
459
+ # 画像プロンプトの影響度
460
+ if 'use_image_weight' in locals() and use_image_weight:
461
+ params["advanced"]["image_weight"] = {
462
+ "use": True,
463
+ "value": image_weight
464
+ }
465
+
466
+ # 生成モード
467
+ if 'generation_mode' in locals() and generation_mode != "デフォルト":
468
+ params["advanced"]["generation_mode"] = generation_mode
469
+
470
+ # 共有設定
471
+ if 'visibility' in locals() and visibility != "デフォルト":
472
+ params["advanced"]["visibility"] = visibility
473
+
474
  # 実験的機能の詳細
475
+ if use_pattern_interrupt and 'pattern_concepts' in locals() and pattern_concepts:
476
  params["experimental"]["pattern_concepts"] = [c.strip() for c in pattern_concepts.split(",")]
477
 
478
+ if use_emotion_matrix and 'primary_emotion' in locals() and 'secondary_emotion' in locals():
479
  params["experimental"]["emotions"] = {
480
  "primary": primary_emotion,
481
  "secondary": secondary_emotion
 
513
 
514
  # フッター
515
  st.markdown("---")
516
+ st.markdown("© 2025 AI Art Prompt Generator")