正式版を発行しました。
こちらになります。
ーーーーーーーーーーーーーーーーーーーーーーーーーーー
ご参考。分類はThrordainul氏の こちら を参考しました。
大変、参考になりました。有難うございました。
A1111/Forge illustriousの構文で長々とお話した続きです。
(ここの話のつづきなのです)
トークンの制約と、プロンプトの構造の復習です。
1.illustriousトークンは150トークンの制約
これはSD1.5でもSDXLでも持っている制約。FLUXでもトークンの制約はあるみたいですね。
プロンプトは75トークンを1つのまとまり(チャンク)として2チャンク150まで。
それ以上のトークンは切り捨て。
自然言語の仕組みは、言語から読み取れるキーワードをモデルが推測して、プロンプトに置き換えて、トークンに置きかえしているだけで、長文だからトークンの制約はないということではない。プロンプトの羅列と同じでトークン制約がある。
2.プロンプトの構造(キャラを生成する場合)
最初の75トークンで、キャラ名、キャラ固有外見、服装を設定。
次の75トークンで構図、背景、画風補正するという構成にすると、モデルの理解力が深まるそうです。
(こんな感じですね)
【0. 共通・クオリティ】
1girl,solo, etc
【1. キャラ名】
<キャラ名英語>, <別名>, <日本語名>
【2. 固有外見】
髪色, 髪型, 目の色, 特徴的パーツ(リボン・髪飾り・アホ毛など)
【3. 服装】
衣装名, 色, 装飾, 作品固有の服要素
【4. 作品タグ】
作品名, シリーズ名
【5. 構図(最重要)】
私は行為、動作なのだと勝手に理解してます。
solo, single panel, full body / upper body, looking at viewer, standing
【6. 背景】
detailed background, room / outdoor / sky / moonlight など
【7. 画風補正】
sharp lines, vibrant colors, detailed face, clean shading
私は、判らないTAGがたくさんあるので、taggerツールで画像のTAGを拾ったりして、参考にしています。

先日、アップした画像をtaggerツールで、プロンプトを拾ってもらうと、こんな感じ。
1girl, solo, breasts, looking at viewer, blush, brown hair, black hair, long sleeves, hair ornament, red eyes, ribbon, jewelry, medium breasts, brown eyes, upper body, flower, outdoors, earrings, parted lips, japanese clothes, choker, day, hand up, blunt bangs, hair flower, wide sleeves, kimono, hair bun, from side, tree, looking to the side, orange eyes, lips, sash, petals, makeup, floral print, obi, single hair bun, cherry blossoms, pink flower, white kimono, stairs, bush, hair stick, print kimono, falling petals, ribbon choker, kanzashi
taggerツールは画像で、見つけたプロンプトを順不同で表示します。なので、このプロンプトで、何やってるのか?さっぱりです。。
なので、プロンプトの構造を意識して並び替えると、こんな感じになります。
1girl, solo, brown hair, black hair, red eyes, medium breasts, brown eyes, blunt bangs, hair bun, orange eyes, lips, single hair bun, long sleeves, hair ornament, ribbon, jewelry, earrings, japanese clothes, choker, hair flower, wide sleeves, kimono, sash, makeup, floral print, obi, white kimono, hair stick, print kimono, ribbon choker, breasts, looking at viewer, blush, upper body, parted lips, hand up, from side, looking to the side, flower, outdoors, day, tree, petals, cherry blossoms, pink flower, stairs, bush, falling petals, kanzashi
そして、トークンを意識して、break構文を使ってチャンク分けするとこんな感じ。
1girl, solo, brown hair, black hair, red eyes, medium breasts, brown eyes, blunt bangs, hair bun, orange eyes, lips, single hair bun, long sleeves, hair ornament, ribbon, jewelry, earrings, japanese clothes, choker, hair flower, wide sleeves, kimono, sash, makeup, floral print, obi, white kimono, hair stick, print kimono, ribbon choker,
break,
breasts, looking at viewer, blush, upper body, parted lips, hand up, from side, looking to the side, flower, outdoors, day, tree, petals, cherry blossoms, pink flower, stairs, bush, falling petals, kanzashi
breastsで分けた理由は、breasts focusという構図の概念を持ってると思ったからです。
さてさて、このプロンプトを見て、思うのですけど、類似のプロンプトの多さと、プロンプトの並び替え。本当に面倒なのですよね。。
なんとかなりませんか!!
うん 辞書だね! 先述の7つの構成通りにプロンプトを並び替えましょう!
というわけで7つの構成ごとにインデックス番号をつける。
【0. 共通・クオリティ】 idx:0
【1. キャラ名】 idx:100
【2. 固有外見】 idx:200
【3. 服装】 idx:300
【4. 作品タグ】 idx:400
【5. 構図(最重要)】 idx:500
【6. 背景】 idx:600
【7. 画風補正】 idx:700
プロンプトが順不同のファイルを読み込んで、構成ごとにグループ化して並び替えて、プロンプトファイル作ってくれたら凄く楽じゃないですか!つまりインデックス番号順にプロンプトを書き出してくれるみたいな。
ついでに、辞書でヒットしなかったプロンプトは辞書に自動的に追加です。あとで、辞書ファイルを編集して、自分でインデックス番号を入れる。
といわけで、過去に自分で生成した画像とか、拾ったH画像とか、アイマスの300キャラくらいのデータをとりあえず学習素材として、辞書を作ってみました。振り分けは7項目と、少な目なのですけど、単語の意味が分からない。。つど、検索かけて。。
「これ何処にいれたらいいだろう?」
と、
「迷ったときは「6.背景」でいいよね!」
ツールの構成はこんな感じです。
圧縮ファイルを解凍してもらって、適当な場所へどうぞ。相対パスで動きます。

フォルダ名は日本語は止めた方がいいです。あとフォルダ名称に空白を入れるのも危険です。
inに「*.txt」とテキストファイル形式で、順不同のプロンプトファイルを置きます。
バッチファイルを起動すると、「out」フォルダに結果が出力されます。
辞書は最初、「dicフォルダ」においていたのですけど、つどフォルダ移動が面倒になってきたので、バッチ、パイソンファイルと同じフォルダに置きました。

#はコメントの意味です
自動でカテゴリ分類の予測できるようにしています。
でも、この分類も辞書レコードが多くなってきたら、あまり意味を持たなくなったかもです。
なので、不要だな!と思ったときは
こんな感じで キーワードヒットしないようにしたらいいと思います。

青の箇所を変更して、絶対にヒットしないキー「200idx」とかを入力しておく

辞書ファイルはカンマ区切りのcsvファイルなのでエクセルとかで編集できます。
保存の時にcsvが崩れないようにご注意。
辞書は列1(A)、2(B),3(C),4(D),5(E)と使ってます。
列4(D)~列5(E)はツールでは使ってないません。ユーザーで勝手に情報を入力できます。
つまり列4以降はいくらでも増やしてもOKです
読み込んで、辞書でヒットしなかったら、最終行に「unkown」で表示されてます。なので自分でインデックス番号を入力します。

「kanzasi」は服でいいかな。300ですね!

この辞書は、別にソートしなくてもいいです。追加し放題なので。
でも「index」ー「trigger」でソートすると見やすいかもですね!
とりあえず辞書は仮りバージョンです。
辞書分類で間違いとか、ご指摘していただけると助かります。
<<< 使用上のご注意 >>>
あくまでも自己責任でお願いします。何かあっても私は対応できません。すでに自分で数百回、動作させて、動いているツールですけど、環境違いとかで動作しない場合もあります。あと、辞書データはバックアップしてから実行するのが安全です。
辞書ファイルは必ずエクセルを閉じてから実行してください。
データが壊れた!みたいなときの保証ができないので。。
ちなみにwindows11環境で動かしています。
(今後)
出来上がったプロンプト見て思います。「なんでこんなに類似語が並んでる?削減できるよね!」
「類似語のグループ化できたらなぁ~~」と。
<最後に自然言語とダンボールの組み合わせ>
general, sfw, masterpiece, best quality, high detail,
1girl,
<lora:Mizuno_Midori_Cinderella:0.7>,lips,
Mizuno_Midori_Cinderella, black hair, long hair, ponytail, brown eyes, parted bangs, hair bow, sidelocks, medium breasts,
blue sundress,
BREAK
A young girl sits alone on a park bench at lunchtime.
As she eats her homemade lunch, a small blue bird gently perches on her shoulder, watching her meal with curiosity.
前半のチャンクで品質、キャラ名、キャラ特徴、服装、(小物や背景で出したいもの)
後半のチャンクで構図的なものを自然言語で。注意点は、前半のチャンクと矛盾しないこと(色とか動作とか)


