Giter VIP home page Giter VIP logo

cliouo / suno2openai Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wlhtea/suno2openai

0.0 0.0 0.0 166 KB

以openai格式调用suno api,并将cookie保存为数据库,实现cookie池调用 📈以接入newapi、oneapi中转站,适配chat-next-web等前端项目 || Call suno api in openai format, and save the cookie as a database to realize the cookie pool call to access newapi, oneapi relay station, adapting chat-next-web and other front-end projects

License: MIT License

Python 98.74% Dockerfile 1.26%

suno2openai's Introduction

Suno2openai

基于 SunoSongsCreatorSuno-API 项目整合,提供符合OpenAI格式的接口标准化服务。

中文 | English

✨ 项目特点

  • OpenAI格式调用:支持流式输出内容。
  • 前端兼容性:适配 chat-next-web 等前端项目。
  • Docker部署:简化部署流程,支持 docker-composedocker
  • 多Cookie管理:实现多个Cookie轮询使用。

🚀 后续计划

  • 引入请求队列等待优化。
  • 支持自定义参数(如 tagspromptstyle 及对歌曲的续写)。
  • 探索开发类似官网的前端页面。
  • 欢迎提出宝贵建议!📧 邮箱: [email protected]

🫙 Docker部署

本教程提供如何使用特定的环境变量及端口映射来运行一个Docker容器的分步指导。为了本指南的目的,敏感信息如SQL名称、密码和IP地址将被替换为占位符。

前提条件

  • 你的机器上安装了Docker。
  • 你具有Docker命令行界面的基础知识。

操作步骤

  1. 拉取Docker镜像

    首先,确保你的机器上已经有了Docker镜像wlhtea/suno2openai:latest。如果没有,你可以使用以下命令从Docker仓库中拉取它:

    docker pull wlhtea/suno2openai:latest
  2. 运行Docker容器

    使用必要的环境变量和端口映射来运行Docker容器。将<SQL_NAME><SQL_PASSWORD><SQL_IP>替换为你的SQL数据库连接的实际值。这些值应当保密,不应公开分享。

    docker run -d --name wsunoapi \
    -p 8000:8000 \
    -e BASE_URL='https://studio-api.suno.ai' \
    -e SESSION_ID='<your-session-id 可以不管>' \
    -e SQL_name='<SQL_NAME>' \
    -e SQL_password='<SQL_PASSWORD>' \
    -e SQL_IP='<SQL_IP>' \
    -e SQL_dk=3306 \
    --restart=always \
    wlhtea/suno2openai:latest

    参数说明:

    • -d: 以后台模式运行容器并打印容器ID。
    • --name wsunoapi: 为你的容器命名为wsunoapi,以便于引用。
    • -p 8000:8000: 将容器的8000端口映射到宿主机的8000端口。
    • -e: 为你的容器设置环境变量。
    • --restart=always: 确保容器始终重启,除非手动停止。
  3. 添加cookie进数据库 打开数据库添加cookie即可 count为剩余次数(后续会添加一个自动导入的)

    id = int
    cookie = Cookie
    count = int
    working = 0

数据库可能报错:'NoneType' object has no attribute 'items' ,此处检查是否正确

  1. 访问应用程序

    一旦容器运行,其内部的应用程序应该可以通过http://localhost:8000或你的Docker宿主机的IP地址的8000端口访问。

注意

在运行Docker容器之前,确保你替换了占位符,如<SQL_NAME><SQL_PASSWORD><SQL_IP>以及<your-session-id>为实际值。


📦 docker-compose 部署

更新时间:2024/4/7 18:18

克隆项目到服务器

git clone https://github.com/wlhtea/Suno2openai.git

创建数据库

创建一个数据库(名称随意),记得保存密码,并确保数据库权限正确设置(允许所有IP连接或仅限Docker容器IP)。

配置环境变量

env.example 文件重命名为 .env 并填写相应内容:

BASE_URL=https://studio-api.suno.ai
SESSION_ID=cookie # 此项不需修改
SQL_name=<数据库名称>
SQL_password=<数据库密码>
SQL_IP=<数据库主机IP>
SQL_dk=3306 # 数据库端口

进入项目目录

cd Suno2openai

更新Cookie

编辑 update_cookie_to_sql.py 文件,将你的cookies填入下方数组中:

cookies = ['cookie1', 'cookie2']

cookie位置示例

启动Docker

docker compose build && docker compose up

注意事项

  • 安全组配置:确保8000端口已开放。
  • HTTPS支持:若前端项目使用HTTPS,本项目的反代网址也应使用HTTPS。

🤔 常见问题

  • 直接在 chat-next-web 中使用部署网址可以调用sunoapi,但通过 new-api 就不行。可能需要检查 new-api 的源码。

🔌 接入 new-api(one-api)

在渠道的代理设置中填写本项目地址,格式为:http://<服务器IP>:8000。建议使用HTTPS和域名。

🎉 效果展示

chat-next-web效果图

💌 实习机会征集

若有意向接纳一名拥有数据分析和前后端开发经验的大三学生实习,请联系:

给予支持:如果这个项目对你有帮助,请不吝赐予星标⭐!欢迎任何形式的支持和建议,让我们一起进步!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.