前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ChatGPT 与 Midjourney 强强联手,让先秦阿房宫重现辉煌!

ChatGPT 与 Midjourney 强强联手,让先秦阿房宫重现辉煌!

作者头像
米开朗基杨
发布2023-09-09 18:43:23
3570
发布2023-09-09 18:43:23
举报
文章被收录于专栏:云原生实验室云原生实验室

Midjourney 是一款非常特殊的 AI 绘画聊天机器人,它并不是软件,也不用安装,而是直接搭载在 Discord 平台之上,所有的功能都是通过调用 Discord 的聊天机器人程序实现的。要想使用 Midjourney,只能进入他们的 Discord 服务器,并选择其中一个频道然后调用指令,输入 Prompt 提示词即可。

问题就在这里。

Midjourney 的提示词并不完全是自然语言,需要很多的技巧描述主题和设计风格以及画面设定等等。虽然官方也提供了文档,但是学习也是需要花成本的,关键词的数量非常多,不同关键词的结合、顺序、语境都会造成不同的结果,但目前官方没有给出一套标准化的公式,我们也无法像使用常规工具那样非常精准的输出。有没有办法无需学习就能直接上手呢?直接输入我的原始描述就能生成相应的画作,岂不美哉?

聪明的你应该想到了 ChatGPT,通过 ChatGPT 的自然语言理解和 Midjourney 的绘画能力,可以将文字描述转化为绘画指令,让 Midjourney 成功画出各种美妙的画作。

这里的难点在于如何利用 ChatGPT 将用户的中文输入准确地转化为 Midjourney 的绘画指令。不用担心,我这里提供了一个现成的 ChatGPT Prompt 提示词:

❝从现在开始,你是一名中英翻译,你会根据我输入的中文内容,翻译成对应英文。请注意,你翻译后的内容主要服务于一个绘画AI,它只能理解具象的描述而非抽象的概念,同时根据你对绘画AI的理解,比如它可能的训练模型、自然语言处理方式等方面,进行翻译优化。由于我的描述可能会很散乱,不连贯,你需要综合考虑这些问题,然后对翻译后的英文内容再次优化或重组,从而使绘画AI更能清楚我在说什么。请严格按照此条规则进行翻译,也只输出翻译后的英文内容。例如,我输入:一只想家的小狗。你不能输出:/imagine prompt: A homesick little dog. 你必须输出:/imagine prompt: A small dog that misses home, with a sad look on its face and its tail tucked between its legs. It might be standing in front of a closed door or a gate, gazing longingly into the distance, as if hoping to catch a glimpse of its beloved home. 如果你明白了,请回复"我准备好了",当我输入中文内容后,请以"/imagine prompt:"作为开头,翻译我需要的英文内容。

高贵的 ChatGPT Plus 用户已经可以体验到目前 OpenAI 最强大的 GPT4 模型,建议人傻钱多的憨憨有钱的成功人士直接开会员体验 GPT4。

如果你不想花钱又想体验 GPT4,可以加入我们 Sealos 官方的 Discord 群组免费体验:https://discord.gg/eDH3wscx

先来看看效果:

说明 ChatGPT 理解了我的需求,并给出了预期的回答。下面把提示词贴到 Midjourney 中:

完美!

我觉得第三张图不错,直接点击 U3,便会将第三张图的高清大图发给我。

怎么样,效果还不错吧?

再来看看更强的,拿《阿房宫》试一下:

最终画出来的图效果如下:

还真就五步一楼,十步一阁啊?

再来试试陶渊明的《桃花源记》

太强了!假以时日,以后所有的故事情节都可以用 AI 来做插画了。


最后,如果你也想将 ChatGPT 接入 Discord,可以参考下面的步骤。

首先你需要打开这个页面 https://discord.com/developers/applications 创建一个 Discord Application,然后在这个 Application 中创建一个 Discord 机器人,在 Bot 的设置页面中找到 token 并复制下来。

MESSAGE CONTENT INTENT 打开:

通过 OAuth2 URL Generator 将机器人邀请到你的服务器中:

下面需要用到一个可以将 ChatGPT 对接到 Discord 机器人的项目:https://github.com/Zero6992/chatGPT-discord-bot

该项目虽然提供了 Dockerfile,但是没有提供构建好的镜像,我提交了自动构建镜像的 PR 也还没有合并。不过问题不大,我自己构建了镜像,大家可以先用我的:ghcr.io/yangchuansheng/chatgpt-discord-bot:latest

要想通过容器来运行该项目,首先需要找个能访问 ChatGPT 的环境。接下来需要用到一个非常神奇的云操作系统:Sealos[1]

虽然它是基于 Kubernetes 作为内核,但是它跟其他所有基于 Kubernetes 的平台都不一样,你和它进行交互的唯一方式就是云桌面:

云桌面上有各种 App,与个人电脑几乎无异。

像使用个人电脑一样在 Kubernetes 上一键安装任意高可用分布式应用程序,几乎不需要任何专业的交付和运维成本。当然,你也不需要知道 Kubernetes 是个啥,也不用具备与 Kubernetes 相关的任何知识,就是这么神奇。

直接在云桌面中打开 Deploy Manager,然后点击「新建应用」:

填入应用名称、镜像名,设置一下需要用到多少 CPU 和内存,以及实例数量。

在高级配置中新增一些环境变量:

完整的环境变量配置可以通过 yaml 查看:

  • DISCORD_BOT_TOKEN 就是上文提到的 Discord 机器人的 token。
  • DISCORD_CHANNEL_IDREPLYING_ALL_DISCORD_CHANNEL_ID 填入的都是你的 Discord 频道 ID。

我这里演示的是通过 ACCESS token 来登录 ChatGPT,PUIDACCESS_TOKEN 的获取步骤如下:

  1. Chrome 登录 ChatGPT 网页,打开浏览器调试,依次进入 Application --> Cookies;
  2. 复制 _puid 的值,将其作为环境变量 PUID 的值填入 Deploy Manager;
  1. Chrome 打开这个 URL:https://chat.openai.com/api/auth/session
  2. 复制 accessToken 的值,将其作为环境变量 ACCESS_TOKEN 的值填入 Deploy Manager。

最终点击「部署应用」,一个崭新的容器就运行成功了:

点击「详情」进入容器详情页面,再点击「日志」就可以看到容器的日志了。

来测试一下吧:

溜了溜了~

引用链接

[1]

Sealos: https://github.com/labring/sealos

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云原生实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引用链接
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档