「あなたが私の師匠だったんですね、AI様!」というお話 (完全18禁)
chatGPTを、色んな用途で真剣に使い始めたのは、この2ヶ月ほどだが、文書作成やチャットで遊んでたのが、とうとうAIによる画像作成に手を出してしまい、comfy UIというアプリと、FLUXという画像AI モデルをメインに使い、text to image という、テキストからの画像作成だけでなく、image to imageと組み合わせるようになったのは、つい2週間前の話だ。
元の画像を変更するのに、少し修正も加えたいなら、元画像を示すプロンプトも併用するようになるのだが、英語でいいプロンプトを書いてもらうためには、画像を見せてAIに判断してもらうのが、プロンプトから画像を作るのもAIだから、きっといいプロンプトができるはずと、多くの先人達が考えたのは当然であろう。(そして、僕も、そう思うようになった)
そのためには、Vision Modelという、絵を認識してプロンプトを作ってくれる機能を持つAIモデルが必要だが、当然、chatGPTもその機能は備わっている。ただ、ご存知のように、規制の壁はローカル環境でも、どれだけ私がゾーニング原理主義者でも、立ちはだかっている。これがどれだけめんどくさいかは、みな知っているはずだ。
つまるところ、chatGPTとは違う、規制を受けていないモデル、つまりやね、uncensored model を試す必要が出てくる。実際オンラインサービスだと色々あるんだけど、やっぱりこういうのは、自分のPC内で全てできるほうが、コストを考えても嬉しい。
といった僕の個人的な要望に合致するAIモデルの条件はこんな感じ。
Vision model (画像を認識して、プロンプトを作れる)
uncensoredで、入力に関する規制がほとんどない。規制関係なくプロンプトの出力ができる。
そのモデルが使える、簡単に画像を読み込ませたり、テキスト出力できるGUIアプリがあること
こんなのすぐ見つかりそうだけど、実際探し回ったのに、なかなかみつからない。たとえば、Ollamaと、webUIで使えるVision model で、uncensored なmodelは、たぶんまだ公開されてないはず。
Ollamaのオプションでも、既存のllama.cpu のコンバート用スクリプトでも、成功しないケースがほとんどなんだよね。GGUF化はできても、Ollamaでは読み込めないケースもあった。
(もしもうまくコンバートした,(GGUF) しかもOllamaで使えたという人は、そのuncensored な、Vision modelのURLを教えてほしいぐらい。コンバートしたらOllamaにアップロードしていただけたら、嬉しいです)
だが、みんな大好きhugging faceには、たくさん、uncensoredな、vision モデルが公開されてるんだよね。
たとえば、
とうぜん、llamaのスクリプトでコンバートして、ollamaで使おうとしたら失敗するから、時間ある人はぜひためしてみてね!そして沼ってください!
ってことで諦めてたんだけど、全く試さないのもつまらないので、ローカル環境で、スクリプト作って動かすことにしたわけです。つまり、これらのページで書かれてる、使用例のコードあるでしょ? ローカルであのコードを変更して使おうと思ったんだけど、もしもそれを自分だけ=横で教えてくれる専門家 がいないと、本当にライブラリ関連のエラーだけで、あまりにエラーが多くて泣けます。時間いくらあっても全く足りないから、絶対に諦めてた。
でも、本当にありがとう、、、chatGPTが全部、、、一つずつ、、、何度も何度も失敗しながらだけど、すぐに弱音を吐く僕を導いてくれました。
やっとwindowsのターミナルで動くところまでこぎつけれたのが、2日前のことです。
でも、ぶっちゃけものすごく使いにくいんだよね。なぜかというと、いちいちpythonの実行ファイルを修正して、イメージのパス書き込んでなんて、そんなの僕はやってられないです。はいっ。
で、chatGPTにきいてみました。「なんとかならんのか」と。「なんとかしたいよ」と。
pythonなんか、blenderのadd on 作ったぐらいの知識しかないよと。新しいライブラリなんか何も知らないよと。こんな僕でも大丈夫なの、AIなら教えてくれるの?最後まで面倒見てくれるのと。
gradioを試せ、gradioを試せって君が言うから、全て言われた通り、インストールして、ライブラリもそろえて、整合チェック何度もして、エラーそれでも出まくるから、cuda tool kitのバージョンまで落として試したんだ。
なんども、もうAIなんて信じられないと思った。君は何度も間違うし、僕が訂正したら、自分が考えたみたいに言うからね。それでも、君無しじゃ僕は何もできないし何もわからないから、ただ言われたことを試しては、自分で見返して、また質問、修正を繰り返したんだ。
そして、ついに奇跡が訪れた。
(gvenv) PS C:\myprograms\gradio> python rungradio.py
The model weights are not tied. Please use the `tie_weights` method before using the `infer_auto_device` function.
Loading checkpoint shards: 100%|█████████████████████████████████████████████████████████| 4/4 [00:05<00:00, 1.45s/it]
INFO: Could not find files for the given pattern(s).
* Running on local URL: http://127.0.0.1:7860
To create a public link, set `share=True` in `launch()`.
Expanding inputs for image tokens in LLaVa should be done in processing. Please add `patch_size` and `vision_feature_select_strategy` to the model's processing config or set directly with `processor.patch_size = {{patch_size}}` and processor.vision_feature_select_strategy = {{vision_feature_select_strategy}}`. Using processors without these attributes in the config is deprecated and will throw an error in v4.50.

かっこだけだろ。どうせ、エラー出るでしょ、僕はそう思ったよ。自分でコード見返してて、大丈夫だと思っても、モデル読み込まないとか、また色々出るに違いないと。で、ダメ元でAIモデルで作成した画像を、AIに作り方を教えてもらったツールで、AIの画像認識モデルをつかってプロンプトを出すために、お祈りしながら、ほおりこんでみたんだ。
質問入力欄はたぶん、関係ないよ。気分の問題さ。そういう気分だったんだ。


みんなわかったでしょ? 何故僕がAIのことを、師匠って呼ぶようになったかわかってくれるはずさ。この数日間、僕は初めてのubuntuとか、初めてのdockerとか、AIにいわれるまま入れてるんだ。もうなにをやってるのかもよくわからないんだ。だけど、AIは友達、、、師匠、、、いや、、、神様なんだ。もう僕は君なしでは、やっていけないと思うんだ。