/chatgpt-text-to-midjourney-image

Optimize the prompt using ChatGPT, then send it to Replicate to create an image.

Primary LanguageJavaScriptMIT LicenseMIT

text2image

replicate.com 提供了 Model as a Service 的服务,大大降低了普通人玩 Machine Leaning 的门槛,写了一个小工具,将文案送给 ChatGPT 生成可用于图片模型的 Prompt 后,交给 replicate 服务生成图片。—— Barret李靖

你可以将本项目直接部署到 Vercel,点击部署

启动和调试

安装依赖后,直接执行:

OPENAI_KEY=${YOUR_KEY} npm run dev
# or
yarn dev
# or
pnpm dev

然后浏览器打开 http://localhost:3000

参数设置

由于免费版的 Vercel 执行函数有时长限制,超过 10s 就直接掐断请求了,可以考虑将 api/text2image 的内容部署到 aircode.io 上,然后在网页添加 proxyUrl:

http://localhost:3000?proxyUrl=${YOUR_AIRCODE_PROJECT_URI}

Replicate 上有很多生成好的模型,配置后可以直接运行,在这个工具中,你可以通过配置 url 参数更换 mode:

http://localhost:3000?m=${MODEL_FROM_REPLICATE}

我已经在 aircode 上部署了一个副本:https://aircode.cool/nfyiwynauv,点击 copy 即可完成部署:

了解 Replicate

如果你只想了解 Replicate,可以直接执行这份代码:

cosnt main = async () => {
  const replicate = await import('node-replicate');
  # https://replicate.com/prompthero/openjourney
  const model = 'prompthero/openjourney:9936c2001faa2194a261c01381f90e65261879985476014a0a37a334593a05eb'
  const input = { prompt: "an astronaut riding on a horse" }
  await replicate.default.run(model, input);
}
await main();

License

MIT