周末卷一卷,一个音乐生成AI网站写好了,开源啦

好消息,好消息,江南皮革。。

开个玩笑,大家好,我是橙子三个半。

今天为大家分享一个我最近开源的项目,基于 JS 逆向调用 suno.ai 接口生成音乐的网站。项目功能不复杂,仅有登录和生成音乐功能(后续考虑接入支付)的demo级产品。

技术栈:

前后端:NextJS、tailwindcss 
登录:clerk
支付:正在申请 Lemon Squeezy (待接入)
部署:vercel => GCP (原因在后面有说明)

你可以基于项目快速开发你的音乐产品,求 Star

项目地址:https://github.com/Alvin-Liu/suno-music-generator

为什么做这个项目?

ChatGPT 的火爆带动了整个 AI 领域的新一轮热潮,最近一个音乐生成网站 [suno.ai](https://www.suno.ai) 成功的带火了娱乐类 AI。Sora 没来, suno.ai 成功的吸引了一大波关注。然而由于官方没有开放 api,想要套壳一个音乐生成网站也不容易。等到官方出来 api,这波热度怕是赶不上了,鉴于身边有一些朋友有了套壳的想法,于是乎,搞点黑科技,周末卷一卷,一个音乐生成 AI 网站写好了。

网站地址:sunomusic.fun

实现原理

官方没有开放 api,但是官方网站通过 ajax 请求的接口我们可以很容易的获取到

作为一个前端开发,看到这一堆请求,很容易去搞点事情。分析下请求的链路,大概逻辑如下:

1. 通过 /v1/client?_clerk_js_version=4.70.5 获取 sid;
2. 上一步获取的 sid 拼接路径生成 token 请求路径:/v1/client/sessions/${sid}/tokens/api?_clerk_js_version=4.70.5
3. 执行生成音乐接口:/api/generate/v2/

由于生成音乐的时间较长,需要一直调用 /api/feed 接口解析 feed 信息,过程中可能出现 token 过期等情况,此时需要重新刷新 token 操作,直到获取到最终生成的音乐。

代码已开源,实现细节可访问 Github:https://github.com/Alvin-Liu/suno-music-generator

## 部署

开始从狗爹买的域名,太过慢了...
迁移到 cloudflare 略有改善,国内访问还是有点慢,折腾了好久就这样吧

最开始部署在 vercel, 然而生成歌曲的接口较为耗时,流程没有进行优化导致 vercel Hobby 用户部署会报错,因为 maxDuration 最大只支持 10s。没有升级弃了,目前部署在服务器,后续优化,有兴趣部署玩玩的同学如果是vercel Hobby 用户注意这个坑

## 欢迎使用

最后,欢迎大家下载体验:https://github.com/Alvin-Liu/suno-music-generator

由于部署的网站(sunomusic.fun)对应的账号没有充值,可能出现无法生成的问题,建议大家关注项目,下载体验,项目会保持更新...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值