如果您使用 Midjourney 一段时间,您就会注意到这项了不起的技术缺少一个非常重要的功能: API 。
有迹象表明会有相关功能推出(例如,你可以在个人资料中生成密钥)。但是,目前还没有官方的Python 库、npm 模块或 REST 接口可以用来简化操作。你必须费力地将每个提示信息复制粘贴到 Discord 的 /imagine 界面中。唉。
当然,缺乏任何官方规定从来都阻止不了DIY精神驱使人们绕过这一限制。
即使没有官方 API,是否也可以使用 Midjourney 实现自动化?答案是肯定的!让我们来看一些方法。
警告!
Midjourney 的服务条款明确规定:
您不得使用自动化工具通过服务访问、交互或生成资产。
这其中颇具讽刺意味。
Discord 的准则规定:
请勿使用自造机器人或用户机器人。每个账户必须与真人关联,而非机器人。
我不是律师,所以你需要自己决定是否采用这些方法。
选项 1:PyAutoGUI
我们之前介绍过一种方法,即使用 PyAutoGUI 以机器人方式驱动浏览器。
这种方法使用一个驱动图形用户界面 (GUI) 的 Python 脚本来发出命令,从而控制 Discord 的 GUI。它是一种机器人流程自动化 ( RPA) 技术。早期自动化重复性任务的方法侧重于使用 API 和脚本来绕过面向人类的 GUI。RPA 使用与人类相同的 GUI,但配备了自动化界面的工具。例如,RPA 可以控制浏览器、解释结果、进行分支操作等等。
与企业级 RPA 相比,PyAutoGUI 功能相当基础,但它可以完成任务。
选项二:Microsoft Excel
Midjourney 的实用之处之一在于它能生成所有可能性。你绝不会为了从中挑选一幅而聘请一位艺术家画 50 幅相同的画作,但这正是你使用 Midjourney 可以做到的,而且你经常会这样做。
如果你只是偶尔写一些有趣的题目,那可能没什么大不了的。但有些人则希望通过循序渐进的迭代反馈循环,根据反馈情况不断调整和完善题目。
但使用 Midjourney,你往往需要提交几十个提示才能找到你想要扩展或进一步完善的那个。这很容易导致提示组合的爆炸式增长,因为你可以尝试所有描述场景的词语组合,以及不同的风格、视角、宽高比、模型等等。
Midjourney Prompter(一个Microsoft Excel 电子表格)负责跟踪所有这些变量,然后生成可能的提示。

选项三:无尽的中途之旅
有一款名为Endless Midjourney的 Chrome 扩展程序,可让您在浏览器中驾驶 Midjourney。
它要求您在 Chrome 中连接到 Discord,并且您需要像往常一样设置自己的 Discord 服务器并将 Midjourney 机器人添加到其中(请参阅官方文档),您可能已经完成了这些操作。
添加扩展程序后,请在浏览器中登录 Discord。以下是插件的界面:

输入提示后,它将生成、放大、保存图像,甚至通过电子邮件通知您任务完成情况。
这款扩展程序唯一的缺点就是它并非免费,无法满足专业用户的需求。虽然它提供免费套餐,但每天只能使用 10 兆焦耳,大多数用户还是会选择支付 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 美元:

选项五:旅途自动化机器人
以下是该机器人在 GitHub 上的自我描述:
Midjourney 自动化机器人是一款高效的基于 Python 的自动化程序,旨在利用 Discord 上的 Midjourney 机器人生成并下载独特的图像。该脚本使用 OpenAI 的 GPT-3 构建图像提示,并使用 Playwright(一个用于控制 Chromium、Firefox 和 WebKit 浏览器的 Node.js 库)在浏览器环境中与 Discord 应用程序进行交互。
我还没试过,但上次提交是在不到 10 天前,所以它仍在积极开发中。
如果您想走这条路,您可能也会对这篇关于 Puppeteer 的文章感兴趣。