欠けているMidjourney APIの使い方:コード、ロボット、さらにはMicrosoft Excelを使ってMidjourneyを自動化する5つの方法
Midjourney をしばらく使用してきた方なら、この素晴らしいテクノロジーに非常に重要な機能が 1 つ欠けていることに気付いたでしょう。それは API です。
ヒントはいくつかあります(例えば、プロフィールでキーを生成できます)。しかし、作業を効率化するために使える公式のPythonライブラリ、npmモジュール、RESTインターフェースはありません。その代わりに、プロンプトを一つ一つ、Discordの/imagineインターフェースにコピー&ペーストするという面倒な作業が必要です。うーん。
もちろん、公式なものが何もないからといって、DIY 国家がその制限を回避することを止めることはできません。
公式APIがないにもかかわらず、Midjourneyで自動化することは可能ですか? はい!いくつかの方法を見てみましょう。
警告!
Midjourney の利用規約には次のように明記されています。
サービスを通じてアセットにアクセスしたり、アセットとやり取りしたり、アセットを生成したりするために、自動化ツールを使用することはできません。
そこにはある種の皮肉がある。
Discord のガイドラインには次のように書かれています:
セルフボットやユーザーボットは使用しないでください。各アカウントはボットではなく、人間に関連付けられている必要があります。
私は弁護士ではないので、これらの手法を進めるかどうかはあなた自身で判断する必要があります。
オプション1: PyAutoGUI
先ほど、PyAutoGUI を使用してブラウザをロボット的に操作する方法を 1 つ説明しました。
この方法では、GUIを操作するPythonスクリプトを使用して、DiscordのGUIを操作するコマンドを発行します。これはロボティック・プロセス・オートメーション(RPA)の一種です。反復タスクの自動化の初期段階では、APIとスクリプトを用いて人間向けのGUIを操作していました。RPAは人間と同じGUIを使用しますが、インターフェースを自動化するためのツールを備えています。例えば、RPAはブラウザの操作、結果の解釈、分岐などを行うことができます。
PyAutoGUI は、エンタープライズ グレードの RPA と比較するとかなり基本的なものですが、目的を達成できます。
オプション2:Microsoft Excel
Midjourney の便利な点の一つは、あらゆる可能性を生成してくれることです。たった 1 つを選ぶためだけに、同じ絵を 50 枚も描かせるアーティストを雇う人はいません。しかし、Midjourney を使えば、まさにそれが可能になり、しかも頻繁に実現できます。
たまに楽しいプロンプトをいくつか出すだけなら、それほど大きな問題にはならないかもしれません。また、段階的にフィードバックを繰り返し、プロンプトの反応を見ながら微調整して完璧なものにしていくような、段階的な反復的なフィードバックループを求める人もいます。
しかし、Midjourneyでは、数十個のプロンプトを提出して初めて、サイズアップしたり、さらに洗練させたいものを見つけることがよくあります。希望するシーンを表現する言葉のあらゆるバリエーションを試し、スタイル、視点、アスペクト比、モデルなどを検討することで、プロンプトの組み合わせが爆発的に増えるのは非常に簡単です。
これらすべての変数を追跡し、可能なプロンプトを生成するのは、 Microsoft Excel スプレッドシートである Midjourney Prompter の役割です。

オプション3:終わりのない途中の旅
「Endless Midjourney」という Chrome 拡張機能があり、これを使用するとブラウザで Midjourney を操作できます。
Chrome で Discord に接続する必要があり、独自の Discord サーバーをセットアップして Midjourney ボットを追加するという通常の作業が必要になります (公式ドキュメントを参照)。これはおそらくすでに実行されているでしょう。
拡張機能を追加したら、ブラウザでDiscordにログインしてください。プラグインの外観は以下のとおりです。

プロンプトを入力すると、生成、拡大、保存が行われ、ジョブの完了時に電子メールで通知されます。
この拡張機能の唯一の欠点は、本格的な用途では無料ではないことです。1日に10MJまでしか生成できない無料プランもありますが、ほとんどの人は9.99ドルを払って無制限に生成できるようになるでしょう。アカウントと詳細については、ウェブサイトをご覧ください。
オプション4:thenextleg.io
私が個人的にプレイしたことがないのが、thenextleg.io です。
The Next Legは、Midjourneyのコミュニティ拡張機能であり、プラットフォームの機能とサービスへのAPIアクセスを提供します。The Next Legをアプリケーションに統合することで、Midjourneyのパワーを活用し、自社製品のユーザーエクスペリエンスを向上させることができます。
REST呼び出し(例えば「POST https://api.thenextleg.io/v2/imagine」)に使用します。APIは非常に充実しており、禁止語の異議申し立てを自動化できるほどです。ドキュメントにはJavaScriptとPythonの両方の例が豊富に掲載されています。
ただし、月額 40 ドルの料金がかかります。

オプション5:中間段階の自動化ボット
このボットがGitHub 上で自分自身について説明しているのがこれです:
Midjourney Automation Botは、Discord上のMidjourneyボットを使用して独自の画像を生成・ダウンロードするために設計された、非常に効率的なPythonベースの自動化プログラムです。このスクリプトは、OpenAIのGPT-3を用いて画像プロンプトを構築し、Chromium、Firefox、WebKitブラウザを制御するNode.jsライブラリであるPlaywrightを使用して、ブラウザ環境でDiscordアプリケーションと対話します。
まだ試していませんが、最後のコミットから 10 日未満しか経っていないため、まだ積極的に作業が続けられています。
これがあなたが進みたい道である場合、 Puppeteer に関するこの記事も興味深いかもしれません。