Skip to main content

FurChain is an innovative toolkit for creating and interacting with digital personas, complete with voice cloning and role-playing capabilities. It offers a suite of tools for real-time voice manipulation, chatbot creation, and text-based RPG adventures, all while being open-source and operable offline.

Project description

🦊🔗 FurChain

🌟 Create Lifelike Digital Personas 🌟

Empower your digital experiences with lifelike characters, complete with their own voices and personalities. FurChain is your toolkit for creating and interacting with digital personas that feel real.

🚀 Features

  • 🎤 Voice Cloning: Instantly clone any voice and generate speech with unparalleled realism.
  • 🎭 Effortless & Rapid Role-Play Creation: Instantly bring to life endless role-play scenarios with minimal effort and maximum speed.
  • 🛠️ Offline and Open Source: Full control and customization without the need for an internet connection.

🌐 Examples

  • 🎶 Music Voice Alteration: Change the voice in a song on-the-fly while preserving the original background music. Check examples/singer_change.py.
  • 🤖 Self-Clone Chatbots: Craft your own chatbot with a cloned voice and character in mere seconds. See examples/clone_me.py for a demonstration.
  • 🎲 Text-Based RPGs: Kickstart a text RPG adventure swiftly. Experience it in examples/adventure_with_fox.py.

📋 Requirements

To ensure the best experience with FurChain, your system should meet the following requirements:

  • CPU: X86_64 architecture
  • GPU: Nvidia GPU (recommend >= 12GB VRAM)
  • Docker Compose: For managing multi-container Docker applications.
  • NVIDIA Container Toolkit: For GPU support within Docker containers.

🏃‍♂️ How to Run

Starting the API Service

Run the following command to launch the service:

docker compose up -d

This spins up 5 containers, each serving a unique purpose:

  • text-mongo: Manages chat history with MongoDB, optimized for CPU usage.
  • text-llama-cpp: Hosts the Llama-cpp server for large language models, utilizing GPU.
  • audio-gpt-sovits: Runs the GPT-SoVITS server for voice synthesis, leveraging GPU.
  • audio-funasr: Powers the FunASR online server for speech recognition, optimized for CPU usage.
  • audio-rvc: Operates the RVC server for voice conversion, utilizing GPU.

Initiating FurChain

You can use docker to have a quick glance at the capabilities of FurChain:

docker run --rm --gpus all --network host -v ./data:/app/data -it markyfsun/furchain python3 examples/adventure_with_fox.py

The data directory serves as the central hub for your models, audio files, and chat logs:

  • gpt-sovits: Holds reference audio for speech generation.
  • llama-cpp: Contains LLM GGUF files available for download from huggingface.
  • mongo: Archives chat history.
  • rvc: Stores models for voice conversion.

Should you wish to contribute or customize furchain, clone this repository and install it as an editable package:

git clone https://github.com/furchain/FurChain.git
cd FurChain
pip install -e .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

furchain-0.1.0.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

furchain-0.1.0-py3-none-any.whl (35.3 kB view details)

Uploaded Python 3

File details

Details for the file furchain-0.1.0.tar.gz.

File metadata

  • Download URL: furchain-0.1.0.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for furchain-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c74f4196a6c5cc5029a3e6fbf65fe3f31cbd8214275bb2350445e87de97f83ed
MD5 75dde54198a3a26d80d181b43a3ce50c
BLAKE2b-256 2e5e4ccd047c54fd08d61b223f48523b6914e760f49f50b336f1eeba9db0da88

See more details on using hashes here.

File details

Details for the file furchain-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: furchain-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 35.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for furchain-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3100192292d89a91cbe2075d9edb1a01d241d7886a49f00195c7979ba86cd36f
MD5 e141c0a07229652a545dde28e620c2c7
BLAKE2b-256 d7ad8935c410b359df393685af6b9711282e7ba7ca2bcc8af6c27e9b4b9c969c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page