开头讲一下为什么选择Midjourney和文心一格,首先Midjourney功能效果好不多阐述;其次文心一格再多次迭代优化后效果也不错,重点也免费,支持一下国产。
Midjourney网址:https://midjourney.com/home/
文心一格网址:https://yige.baidu.com/ 进官网注册一下就好,可以把画图prompt技巧在这个上面测试。
首先,你需要注册一个 Discord 账号,然后加入 Midjourney 的 Discord 服务器。或者去 Midjourney 的官网点击右下角的 Join the Beta:
note:目前国内容易被锁还是需要用一下工具的,邮箱账号可以使用谷歌等。
注册并进入到 Midjourney 的服务器后,有可能需要完成各种任务(这个取决于 Midjourney 的运营策略,后续可能会变),如果有,则按照引导完成即可。
接着你就能在 Midjourney 的 Discord 的左侧栏,看到 newbies-XXX 的频道,随便点击一个,进入该频道,这个频道就是给免费用户测试使用的:
然后在输入框里输入 / 然后你能看到输入框上出现一个菜单,一般最顶部就是 /imagine,点击该菜单(如果没有出现该菜单,就输入完 / 后继续输 imagine),就能在 prompt 框里输入图片 prompt 了:
接着你就会看到一个叫 Midjourney 的机器人复述了你的话,在这句话的最后,有一句 Waiting to start,这就意味着你的 prompt ,机器人已经接收到了,正在为你生成图片:
然后过一阵你会看到一张模糊的图,然后段落最后显示 0% 意味着程序正在生成图片:
当你看到图片下方有几个 U1、V1 的按钮,这就意味着图片生成完成了 🎉
生成的四格图,单格图片的分辨率是 512 * 512(如果你是 V5 版本,则是 1024 * 1024),如果你想要生成一个更清晰的图片,则可以点击四宫格图片下的 U 按钮,U1 代表左上角第一张图,U2 是右上角,U3 是左下角,U4 是右下角。点击后,你需要等待一会,就会生成高清图。需要注意,V5 版本,U 按钮已经不会影响分辨率了,只是做为一个裁切图片的功能。换句话说就是将第一次生成的四格图,裁成一张。
说完 U 按钮,说下,V 按钮,这个按钮代表 variation ,点击该按钮后,程序会用你选择的那张图片,再生成新的 4 张图,不过这 4 张图的整体会跟你选择的那张图比较像:
最后一个按钮 🔄 则是 re-roll 重新生成,点击后程序会按照你的 prompt 重新生成 4 张图片。
因为在公共频道上使用,你发的图片会被频道里的人看到,所以如果你不想让自己的图被大量的人看到,可以使用 Midjourney Bot 的方式。
但需要注意,这种方式并不代表「仅有你可见」,你发的图片仍然会在 Midjourney 的会员 Gallery 上显示,目前仅有 Midjourney 的付费 Pro 会员能设置为隐私模式。
使用 Midjourney Bot 也很简单,跟在 Discord 的单聊比较类似,你只需要在 Midjourney 的 newbies-XXX 频道里找到 Midjourney Bot,然后点击它的头像,在弹出的菜单的下方有个「私信 @Midjourney Bot」的输入框,在这个输入框里,随便输入点内容,然后按回车发送。
然后你就会在你的私信列表里看到这个 Midjourney Bot,使用方法就跟上面介绍的方法一样,无任何差别。
保存图片跟使用很多聊天工具一样,点击图片会看到放到的图片,然后右键点击图片可以选择「图像另存为」并保存图片(如果你用的是 Discord 的客户端,右键样式可能与我不一样,但操作基本是一样的):
如果生成的图片你不喜欢,其实你可以不用管它 😂
如果你一定要删,也有一个删除的渠道,但操作跟你日常使用的聊天工具的方式不太一样,在你想要删除的图片消息右上角有个 emoji 按钮(下图标注为 1 的按钮),点击后会 出现一个 emoji 菜单,然后在 emoji 菜单里输入 x (下图标注为 2 的输入框),最后点击 ❌ emoji 即可删除该图片。注意这个删除并不仅仅只是删除聊天信息里的图片,还会将图片从 Midjourney 的会员 Gallery 里删除。
在 Midjourney 的官方介绍文档里,介绍了最简单的 Prompt 结构是这样的:
但我觉得上面那个 Prompt 过于简单了 😂 ,反而 Advanced Prompt 更适合学习:
Prompt 分成三个部分。第一个是 Image,这个属于选填,可以填也可以不填。
先说下这个 Image URL 是干什么用的,有很多玩法,比如将两张图合并为一张,大家可以看看下面这个例子,我就是将一个大理石雕像和花朵的图片上传到 Discord:
然后让 Midjourney blend (混合)一下(后续 blend 章节会介绍更多用法)后,就能生成下面这种图片:
需要注意的是:
如果你不想将图片上传到一些图床服务器,也可以使用 Discord 的图床,你可以私聊 Midjourney Bot 然后通过上传图片的方式,将图片先发到 Discord 上,然后右键复制图片链接,像这样:
这个就是你希望 AI 生成的图片的描述。这个有非常多的技巧,后续会详细介绍。这里我想说下,Midjourney 跟 ChatGPT 有点不一样:
Midjourney 大约有 20 多个参数设置项,我会在下一章介绍几个常用参数。了解完基本参数后,你应该就能用 Midjourney 生成不错的图了。
简单说来,你可以将这些参数理解为官方的固定 prompt 模版,而且这个模板包含了一些特殊字符,让模型能百分百保证输出结果的一致性,并且还能提升 prompt 的准确度和输入效率。
如果你有用过 ChatGPT ,应该会遇到过这种场景,用了别人一样的 prompt 模板,但却没法令 ChatGPT 生成相同的内容。
而 Midjourney 因为是图片类目,相对比较垂直,所以他们将很多图片类的通用 prompt 语句做成了模板,比如图片长宽比,有 1:1、2:3、4:7 等等,如果你要用 ChatGPT 的使用习惯,就需要在 prompt 里不断重复 Aspect Ratios 1:1 等,而且每个人的表达 Aspect Ratios 的方式都不一样,模型还要去理解人说的话,比较麻烦。
所以 Midjourney 就设计了一些参数,让你能快速调用,比如 Aspect Ratio 这个,就只需要输入 — ar 1:1 即可。同时因为固定了表达方式,大家要改长宽比,都会用这种方式表达,Midjourney 调整下模型,就能保证输出的图片的一致性了。
因为其稳定且必须,所以我才会先教各位参数。
目前 Midjourney 支持多个版本,最新的版本是 V5 ,跟 ChatGPT 稍微有点不一样,Midjourney 给我的感觉,并不是版本越大,越厉害,而是擅长的东西不太一样。相关区别请查阅 Midjourney 各版本差异。
Version 参数使用方式见下表。你也可以在设置里,调整默认的版本,相关教程请查阅 Midjourney 基础设置。
调用方法 | 使用案例 | 注意事项 |
---|---|---|
在关键词后加空格,然后带上版本参数:
|
vibrant california poppies --v 5 | 版本仅支持 1、2、3、4、5。 |
因为可以在 prompt 里直接加版本参数,同时又可以在设置里设置版本,所以你有可能会遇到如下图这样的情况(我想生成版本 1 的图,但设置里设置了 5 怎么办?):
此时模型会按照从左往右的顺序运行这些参数,按照上面的例子,其实生成的图片是 V1 版本,可以跟下面的这个 V5 版本对比下:
第一个参数是图片的长宽比,使用方式如下,及版本差异如下:
调用方法 | 使用案例 | 注意事项 | V5 | V4 | V3 | niji |
---|---|---|---|---|---|---|
在关键词后加空格,然后带上长宽比参数:
|
vibrant california poppies --ar 5:4 |
|
✅ 支持任意比例。但2:1以上的宽高比是实验性的,可能会产生不可预测的结果。 | ✅ 1:2 到 2:1 | ✅ 5:2 到 2:5 | ✅ 1:2 到 2:1 |
另外,长宽比在业界也有最佳实践:
这个参数的意思是不要什么,如果你不想让 AI 生成的图片里出现树,那就输入 plants 即可:
调用方法 | 使用案例 | 注意事项 | V5 | V4 | V3 | niji |
---|---|---|---|---|---|---|
在关键词后加空格,然后带上你不想 AI 生成的内容:
|
—no plants | 无 | ✅ | ✅ | ✅ | ✅ |
这个参数跟 ChatGPT 里的 Top P 有点像,主要控制模型的随机性,数字越高,约有可能产生一些意想不到的结果,数字越低一致性会更高。看看官方的例子, prompt 是 watermelon owl hybrid。
这是当 Chaos 为 0 的时候,一致性会比较高,西瓜和猫头鹰的融合的方式,在四次输出里都比较类似,另外在单次输出里,4张图(四宫格)的风格相似度也比较高:
这是 Chaos 为 100 的时候,你会发现多次输出的融合风格都不太一样,且即使是在单次输出里,4 张图的风格区别也比较大。如果你是想让 AI 帮你做一些探索性的事情,我建议初期可以将 Chaos 调高一点,结果会发散一些。
调用方法 | 使用案例 | 注意事项 | V5 | V4 | V3 | niji |
---|---|---|---|---|---|---|
在关键词后加空格,然后带数字:
|
—c 10 | 可以输入 0 - 100,默认是 0 | ✅ | ✅ | ✅ | ✅ |
这个参数跟 ChatGPT 里的 Temperature 有点像,主要是控制生成图片的风格化程度。简单理解,这个值越低会更符合 prompt 的描述,数值越高艺术性就会越强,但跟 prompt 关联性就会比较弱。
我们一起看下官方的例子,prompt 都是 colorful risograph of a fig。Risograph是一种数字印刷机,它使用模板和专用油墨来制作印刷品。Risograph通常用于制作海报、宣传册等低成本印刷品。这种印刷机可以产生特殊的色彩和纹理效果,头三张图基本上契合 risograph 的风格,但右下角那四张就非常不像了,模型加了很多戏 😂
除了在 prompt 里输入外,你也可以在设置里,调整默认的版本,相关教程请查阅 Midjourney 基础设置。
调用方法 | 使用案例 | 注意事项 | V5 | V4 | V3 | niji |
---|---|---|---|---|---|---|
在关键词后加空格,然后带数字:
|
—s 50 | 默认是 100 | ✅ | ✅ | ✅ | ✅ |
这个其实 Niji 模型,是 Midjourney 跟 Spellbrush 一起开发的。「niji」是日语「にじ」,意思是「彩虹」 或者 「2D」。
它在生成动漫类的图片上,比较在行。举个例子,prompt 是 fancy peacock,左图是 v5 模型,右图是 niji v5模型,右图更偏向于漫画风格:
使用方法跟 Version 比较像,只需要在文字 prompt 最后输入 —niji 即可
调用方法 | 使用案例 | 注意事项 |
---|---|---|
在关键词后加空格,然后带上版本参数:
|
vibrant california poppies --niji | 部分参数对 Niji 无效。大家可以在完整列表里查看哪些参数对 Niji 无效。 |
你可以在 Midjourney 的服务器,或者 Midjourney Bot 聊天窗口,输入 /setting,然后按下回车:
接着你就能看到这样的 Bot 消息:
第一二行是版本切换,你可以根据自己的需要切换不同的版本,MJ Version 1-5 分别表示 Midjourney 的不同版本,切换后,输出的所有图,默认都会用该版本生成,各个版本区别请查阅 Midjourney 各版本差异。 2023 年 4 月 5 日,Midjourney 上线了其 Niji 5,所以版本设置截图里会有 Niji 4 和 Niji 5 Mode 按钮,请知悉:
第三行是图像质量设置。注意这个参数并不影响分辨率。它改变的更多的是图片的细节,详细的介绍可以查阅 Midjourney Prompt 高级参数 这一章。
基本上保持默认的就可以了,即图中的 Base quality:
第四行风格设置,风格设置简单理解,这个值越低会更符合 prompt 的描述,数值越高艺术性就会越强,但跟 prompt 关联性就会比较弱。详细的介绍可以查阅 Midjourney Prompt 常用参数 这一章。
这个设置默认是 Public(公开),只有付费的 Pro 用户可以将其设置为 Stealth Mode(隐私),Basic 和 Standard 都没法设置为 Stealth,对 Midjourney 付费感兴趣的可以看看 订阅 Midjourney 会员 这一章。
Remix Mode 目前是一个实验功能,可能会随时更改或删除。
我自己使用下来,有点像 blend(混合)图片模式,使用方法是这样的。首先在 Remix 模式下,点击 Variation 按钮,会弹出一个 Prompt 输入框,输入完后,模型会在不改变第一张图的结构的情况下,增加 Prompt 里提到的内容,比如下面这个例子,第一张图原来是一堆南瓜,点击 Variation 按钮输入 pile of cartoon owls ,就会生成了一张保留原来南瓜图构图,但主体换成了卡通猫头鹰的图。
这个默认是 Fast Mode,这个只有付费的 Standard 和 Pro 用户可以设置,其余用户都是 Fast Mode。Standard 和 Pro 用户可以在 Relax Mode 模式下,生成无限图片。对 Midjourney 付费感兴趣的可以看看 订阅 Midjourney 会员 这一章。
你可以在 Midjourney 的服务器,或者 Midjourney Bot 聊天窗口,输入 /subscribe,然后按下回车:
然后 Bot 就会发送这样的消息,点击 Open subscription 按钮就能进入到付费页面了:
付费的过程还比较简单,我这里就不做介绍了,只是需要注意,Midjourney 的付费功能用的服务提供商是 Stripe ,目前应该只支持信用卡支付,所以如果要买会员需要有一张信用卡。
:
Basic Plan | Standard Plan | Pro Plan | |
---|---|---|---|
月付价格 | $10 / month | $30 / month | $60 / month |
年付价格 | $8 / month | $24 / month | $48 / month |
Fast Generations | 3 hours 左右(大约能生成 200 张图) | 15 hours | 30 hours |
Concurrent Fast Jobs | 3 | 3 | 12 |
Relaxed Generations | ❌ | ✅ | ✅ |
Stealth Mode | ❌ | ❌ | ✅ |
首先,Midjourney 的计费跟 OpenAI 不太一样,OpenAI 计费用的是 Token,Midjourney 用的计费方式是时间,因为其主要的成本在 GPU 计算,Midjourney 采用这种方式,估计也是因为他们的 GPU 也是租的,租用 GPU 的费用也是按时间计算,所以转嫁到消费者上也按照时间算了,Basic 版本看后台,Fast Generation 的时间是 3h 20 min,然后官方说明是应该能生成 200 多张图。
不过每张图所耗的 GPU 时间并不固定,还取决于你的图片质量等,影响费用的因素有以下几种,各个参数对应的影响,可以查阅教程里关于参数的内容。我这不展开解释,简而言之,图片质量越好,个性化因素越多,价格就越贵。
低于平均价格 | 平均价格 | 高于平均价格 | |
---|---|---|---|
不同任务 | Variations(就是生成图片后,图片下的 V 按钮) | /imagine 生成图片 | Upscale(就是生成图片后,图片下的 U 按钮) |
Aspect Ratio 长宽比 | 默认 | tall or wide(换句话说,改这个参数就要花更多的钱) | |
Model Version 模型版本 | 默认(—V 4) | —test or —testp 这两个模型会更贵一些,我一般很少用 | |
Quality Parameter图像质量参数 | --q 0.25 or —q 0.5 | 默认(—q 1) | —q 2 |
Stop Parameter停止参数 | --stop 10 到 —stop 99 | 默认(—stop 100) |
然后 Standard Plan 开始还有一种叫 Relaxed Gerneration 的模式,这种模式下,该套餐付费用户,可以无限出图,但图片生成的速度会变慢,按照官方解释是 0-10 分钟。
其实本质上它是一种 GPU 空闲资源排队方案,切换到 Relax 模式下,所有生成图片请求会进入到一个排队等待状态,当没有 Fast 模式下的用户使用 GPU 时,就会将 GPU 资源给 Relax 模式的用户,所以才需要等待那么长的时间,本质上是闲置资源的利用 。
另外需要注意:
最后还有一个 Stealth 模式,Midjourney 是一个默认开放的社区,所以你在 Midjourney 上生成的图片(包括你私聊 Bot 生成的图片),都是公开的,你可以在会员 Gallery 那看到所有人生成的图片。
只有 Pro 版本可以不公开自己的图片到 Gallery,另外还有一点需要注意,如果你打开了 Stealth 模式,然后在 Midjourney 的 Discord 公开频道生成图片,Stealth 模式不生效,生成的图片依然会被 Discord 公开频道里的人看见。
参考链接:https://github.com/thinkingjimmy/Learning-Prompt