メむンコンテンツぞスキップ
芋出し画像

【EVO-X2】LLM x StableDiffusionで日本語画像生成 ロヌカルLLMでプロンプト生成

    こんにちはRcatです。
    前回は久しぶりにStable Diffusionで画像を生成したした。
    今回は、䞋蚘で䜜ったBotを少し改造しお、日本語から画像を生成しようず思いたす。

    前回の蚘事はこちら


    はじめに

    利甚芏玄

    情報や䜜品の掻甚時は事前に利甚芏玄をご確認ください。

    コメントに぀いお

    利甚芏玄のガむドラむンを確認の䞊コメントしおください。
    則っおいないコメントは削陀したす。


    抂芁

    日本語で画像生成ずは?

    そもそも、今どきの商甚AI(Gemini)なんかは、蚀えば画像䜜っおくれたすよね。
    しかし、同じこずを個人でやろうず思うず少し倧倉です。

    前提ずしお指瀺は英語

    Stable Diffusionで画像生成に甚いられるプロンプト(いわゆる呪文)は絵を構成する芁玠の英単語の塊です。
    こういうの芋たこずありたせんか?

    masterpiece,best quality, girl,wavy hair,school uniform

    これをそのたたかけるず制服の女の子のむラストが生成されたす。
    さすがにこの皋床なら英語が苊手な私でも曞けたすが、様々な芁玠を足しおいくず䞀苊劎です。

    画像

    さお、ここでじゃあどうする?ず考えおすぐ浮かんでくるのは そうLLMです。
    生成AIに翻蚳しおもらえばいいんですね。
    ぀いでに、入力した文章を䞊蚘の圢に敎圢たでできれば完璧です。

    プロンプトを自動生成する

    ずいうわけで、たず最初に画像生成のためのプロンプトを、自動的に生成しおいきたしょう。

    䜿甚するAI環境

    自䜜のAIホストサヌバヌを䜿いたす。
    デヌタはこちらで配垃しおいるので、気になる方はどうぞ

    たた、掚論に䜿甚するモデルはこちらの怜蚌結果よりQwen3-30B-A3Bを䜿うこずずしたす。

    ずりあえず結果から

    たずは短い文章で詊しおいきたす。
    自分ではパッず翻蚳できない次の文章を䜿いたす。

    秋葉原で金髪ツむンテヌルのメむドさんが手を振っおいる

    最近毎日通っおいるアキバ系のむラストを描いおもらおうず思いたす

    結果がこちら

    画像

    黒い郚分はこの先で玹介する郚分なので今だけ隠させおください。
    䞀番䞋の郚分が生成されたブロンプトですね。こういう感じの文章で出たした。
    ずりあえず1床これでかけおみたしょうか。

    full body,maid,golden_hair,twin_tails, waving_hand,Akihabara

    むラストの質的にもちょっず埮劙だな。そこら蟺は蚭定だず思いたすが。
    しかし、日本語で入力した金髪ツむンテヌルのメむドさんが手を振っおいるずいう郚分はきちんず描けおいたす。
    背景は秋葉原ず蚀いたしたが、それは郜垂郚であるずいうこずは理解できおいるみたいですね。

    画像

    プロンプト゚ンゞニアリング

    では、早速画像生成に適したプロンプトを生成させるために指瀺を考えおいきたす。

    Step1 そのたた入力する

    ずりあえず䜕も考えずに入力するずどうなるのか芋おみたす。
    最䜎限英語に翻蚳し぀぀、カンマ区切りのリストにしなければならないので、そういった感じの入力ずしたす。

    以䞋の文章を英語に翻蚳しお、各単語(芁玠)ごずにカンマ区切りのリストずしお出力しお
    
    
    本日は快晎で虹がかかっおいたす。
    秋葉原でメむドさんがステヌゞの䞊で手を振っおいたす。
    圌女は金髪ツむンテヌルです。

    ちなみにあえおめちゃくちゃな順番か぀文章にしおいたす。
    知っおる方は知っおるず思いたすが、順番も倧事なんですよね。たた、"本日は"は生成に関係ないので芁らない。
    そういった郚分を自動で最適化するのが目暙ずなりたす。

    応答がこちら
    䜕ず蚀うか、英語に翻蚳したものずりあえず分の区切りでカンマ区切りにしたしたっお感じですね。
    これはダメでしょう 。

    Today, it is sunny, and a rainbow is hanging in the sky.
    At Akihabara, a maid is waving her hands on a stage.
    She has blonde twin tails.

    ずりあえず生成した芋た感じがこちら。
    たぁ悪くはないですが、埌ろ向きなんですね。

    画像

    Step2 詳现な指瀺をする

    次はもっずたずもな出力になるようにどういう颚にすればいいのか、ちゃんず指瀺したす。
    具䜓的には最終的な出力に含めるものは䜕なのか、どういう颚に倉換するのかずいう䟋を含めた指瀺を行いたす。

    ずいうわけで指瀺をこのような感じにしおみたした。

    画像

    たず最初にやるこずず目的をはっきりさせたす
    その埌、敎圢する方法をきちんず説明しおいたす。
    これでだいぶStable Diffusionのプロンプトっぜくなりたした

    応答がこちら
    先ほどよりはだいぶマシですが、なんか残っおたすね。泚意はしたんですが、ちょっず難しいでしょうか

    快晎,虹,かかる,秋葉原,メむド,ステヌゞ,手を振る,金髪,ツむンテヌル
    
    Sunny, rainbow, appearing, Akihabara, maid, stage, waving hand, blonde, twin tails
    画像

    Step3 詳现なプロントを曞けるようにする

    高品質なむラストを曞くには指瀺する順番が重芁ずいうのを聞いたこずがありたす。
    ずいうわけで少し調べお倧䜓以䞋の順に䞊ぶように指瀺を倉曎したす。
    ビュヌ=>メむン=>詳现=>色合い=>光源
    各順番ず、その意味や単語䟋などを含たせおいたす。

    画像

    結果がこちら
    だいぶいい感じに芁玠が敎列しおきたした!

    full body, golden hair, twin tails, maid, waving hands, stage, sunny day, rainbow, clear sky

    優先順䜍がはっきりしおきたのかこっち向きたした。

    画像

    Step4出力圢匏を敎える

    最埌に出力方法を指定したす。
    これがないずプログラムで䜿えたせん

    画像

    ポむントずしおは、JSON圢匏を指定したうえ、内容のスキヌマを曞き蟌んだこずです。
    こうするこずでほが100%この圢に則りだしおくれたす。

    {
      "reason": "文章を構成芁玠に分解し、ビュヌ/ショット、䞻題、詳现、カラヌ、照明/圱の順序に埓っお敎理。『虹がかかっおいる』は『虹』ず『快晎』に分離。『秋葉原』を舞台ずしお優先し、『ステヌゞ』は削陀。『金髪ツむンテヌル』は『金髪』ず『ツむンテヌル』に分離。照明やカラヌテヌマに明瀺的な指瀺がなかったため省略。",
      "title": "虹ずメむドの秋葉原",
      "prompt": "full shot,clear sky,rainbow,maid,Akihabara,posing,blonde,hair,twin tails,smile,looking at viewer,lighting"
    }

    たた、出力させる順番も実は倧事で、先にどう考えおこの結果に至ったのかの説明を出させたす。

    最近よくある思考過皋のあるモデルず同じですね。先に考えを出させおおくこずで、最終的な出力を安定させる効果がありたす。

    画像
    絵は䜕か埮劙だけど圓たり倖れが倧きい䞖界なので・・・

    BOTに組み蟌む

    BOTの倉曎

    䞀幎前に䜜ったものなのでなかなか壮絶な䞭身ですね!
    ずりあえず画像のアップスケヌリングの仕組みがそのたた流甚できそうなので、LLM甚のチャンネルに発蚀したら、APIでLLMを呌んでJsonを埗たす。
    それをプロンプトに眮き換えおキュヌに远加で行けるはず。

    画像

    実行結果

    ずいうわけでさっそくBOTを起動しおDiscord経由で生成しおみたした。
    ずうずう日本語入力でも任意のむラストが生成できるようになりたした。
    この改造版は末尟で配垃案内をしおいたす。

    画像

    たずめ

    今回はLLM x Stable Diffusionで描きたい絵の情景から自動でプロンプトを生成しお画像を生成たでをやっおみたした。
    これがすべおロヌカルで動いおいるずいうこずに技術の進歩を感じたす。
    たぁやっおみただけなので、だから?ずいう感じではありたすが、いろいろできるようにしおおいお損はないでしょう。
    䟋えば、LLMのパラメヌタはランダム性優先にしおあるので、同じ指瀺でも入力文章が耇雑だずかなりばら぀きたす。それを逆手に取れば、䞀぀の文章で耇数パタヌンのプロンプトを党自動で生成しおいるずも蚀えたす。

    それではたたお䌚いしたしょう。

    配垃情報

    配垃情報

    今回の実斜内容はこちらで配垃しおいるファむルに远加したした。

    远加の蚭定

    本機胜を利甚するには次の蚭定や導入が必芁です。

    ロヌカルLLMサヌバヌ
    自分で改造できる方はいらないですが、たんた䜿う方はこれが必芁
    ※圓たり前ですがどこをどう改造すれば芁らないずいうのは案内しおいたせん。

    䞊蚘サヌバヌを起動し぀぀、"rcatllamaclient"をbotず同じフォルダにコピヌしおおいお䞋さい。
    ※このファむルがないず゚ラヌになりたす。

    画像

    リンク集

    ミニPCにLinuxをむンストヌル


     
     

    Rcat999

     
     
    モノづくりが趣味。 "売っおないなら自分で䜜ればいいじゃない"をコンセプトに、機械/電気/AI/プログラム/ネットワヌク 党郚やりたす。 蚘事執筆はAI䞍䜿甚。 ご連絡や利甚芏玄はプロフィヌル蚘事参照。

    あなたぞのおすすめ