acestep.cpp  by ServeurpersoCom

AI music generation server with multi-backend GPU acceleration

Created 3 months ago
320 stars

Top 84.5% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

acestep.cpp offers a portable C++17 implementation of the ACE-Step 1.5 AI music generator, enabling local text-to-music synthesis. It accepts text prompts and lyrics to output stereo 48kHz MP3/WAV audio, running efficiently on CPU, CUDA, ROCm, Metal, and Vulkan for broad hardware support.

How It Works

This project utilizes GGML for efficient AI model inference. It orchestrates a pipeline involving Language Models (LM), Text Encoder, Diffusion Transformer (DiT), and Variational Autoencoder (VAE) for text-to-audio generation. The architecture supports on-demand model loading and swapping, optimized with hardware acceleration across multiple backends.

Quick Start & Requirements

  • Installation: Clone (git clone --recurse-submodules), then build using platform scripts (buildcuda.cmd/./buildcuda.sh, etc.). Temporary Windows binaries are available.
  • Models: Download GGUF models from Hugging Face Serveurperso/ACE-Step-1.5-GGUF or use ./models.sh (requires pip install hf).
  • Prerequisites: C++17 compiler. Optional: CUDA Toolkit, Vulkan SDK. macOS auto-enables Metal/Accelerate BLAS.
  • Running: Execute ./server.sh or server.cmd. Access UI at http://localhost:8085.
  • Documentation: docs/ARCHITECTURE.md.

Highlighted Details

  • Multi-Backend Support: CPU, CUDA, ROCm, Metal, Vulkan.
  • LoRA Adapter Integration: Supports PEFT directories and ComfyUI .safetensors.
  • Rich API & CLI: RESTful API endpoints (/lm, /synth, etc.) and CLI tools (ace-lm, ace-synth).
  • On-Demand Model Loading: Models load only when requested, with automatic swapping.

Maintenance & Community

No specific maintainers, sponsorships, or official community channels are detailed. Third-party UIs like acestep-cpp-ui are mentioned.

Licensing & Compatibility

The license for the acestep.cpp codebase is unspecified. It acts as a native backend for model weights from ACE Studio and StepFun. The lack of a clear C++ code license may hinder commercial use or integration.

Limitations & Caveats

Windows pre-built binaries are temporary ("until CI is set up"). The unspecified license for the C++ implementation is a significant adoption blocker.

Health Check
Last Commit

1 week ago

Responsiveness

Inactive

Pull Requests (30d)
4
Issues (30d)
7
Star History
64 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.