生成系AIでCalibreのプラグインを勝手に改造して使った話
電子書籍というか、そういうのの管理にCalibreを使っている。で、ずっと気になっていたのが、ファイルの名前のナンバー表示とか、半角全角英数字が入り混じっているところとか。
一個ずつ直せばいいんだけど、そんなことやっていると日が暮れるので、気が付いたときに少しやっては飽きてを繰り返していた。
色々ぼんやりした結果、一番楽なのはCalibreのプラグインを作るのが楽なんじゃないかと思い、とりあえずChatGPT先生に丸投げしてプラグインを作ってもらったんだけど、イマイチ動かない。プラグインとしては登録できているんだけど、これ動いてないよね、的な。
やっぱり難しいかなぁと思ってたんだけど、ふと、既存のCalibreのプラグインを勝手に改造すればいいんじゃないかと思いついた。基にしたのはQuality Checkというプラグイン。これに元々やりたかった著者の姓名の順序を入れ替える機能があって、それができるならいろいろできるじゃんって感じ。
CalibreのプラグインはPythonのプログラムが入ったZIPファイルなので、適当に展開して、参考になりそうな部分を探す。なるほど、この辺に登録の設定を、この辺に処理を書けばいいのね。じゃぁこれをこう追加してうんぬんかんぬん。
とりあえず作ったのは以下の機能
– タイトルと著者名をUNICODEのNFKCに変換する
– 著者名から空白文字を削除する
– 著者名の順番を反転する
– タイトルの後ろに数字があったら、ちょいちょい変換して%02dに変換する
大体やりたかったことはできた。ある程度Calibreのプラグインの動作もイメージできたので、どっかで自分用に独立したプラグインを整理したほうが良さそう。Quality Checkも更新できなくなっちゃうし。
とは言いつつ、タイトルにもある通り、実際のプログラミングはほとんど生成系AIに書いてもらった。自分がやったのは一々生成するのが面倒くさいconfig.pyあたりを手動で書き換えたり、関数名とかいじったくらい。
もちろんすべてを勝手に書いてもらったというよりは、こういう風にしろとか、このメソッドの使い方はこれだ、みたいな感じでナビゲートしたし、実際にどうプラグインに組み込むかみたいなことはこっちで考えた。けど、実際のプログラミングを書いたのは間違いなく生成系AI。
要するに、設計の人間と、コーディングの生成系AI。コラボ。今のところ、生成系AIのプログラミング力を発揮するためには、この組み合わせがベターのような気がするけど、それがいつまで続くかは謎い感じある。
今回の例でいえば、そもそもCalibreで管理しているというところ自体が将来的に怪しくて、生成系AIの管理するデータウェアハウスに投げれば勝手にやってくれるようになると思うし、ファイル管理システムを握ってるかもしれない。プログラミング力が高まって、こちらの指示が無くてもすべて完璧にやってくれるようになるかもしれない。
で、なんで今回、わざわざCalibreなんか引っ張り出してきたかというと、どうもGoogleDriveでアップされたePubを検索対象にできるようになったらしいという話が発端。今まで雑多に管理していたファイルを一括管理して、ePubに変換して、GoogleDriveにアップすればいいのでは?的な。
あれ?俺は今、何やってるんだろう。生成系AIを使って、生成系AI用の餌を作っている?
人は生きるために麦を利用しているのではなく、麦が生きるために人は利用されている的なものを感じる…。