bark.cpp
v1.0.0
路線圖 / codec.cpp / ggml
純C/C ++的Sunoai樹皮模型的推斷。
借助bark.cpp ,我們的目標是將實時現實的多語言文本到語音發電帶給社區。
支持模型
我們要實施的模型!請打開公關:)
Google Colab上的演示(#95)
這是使用bark.cpp的典型運行:
./ main - p "This is an audio generated by bark.cpp"
__ __
/ / _ ____ ______ / / __ _________ ____
/ __ / __ `/ ___ / //_/ / ___/ __ / __
/ / _ / / / _ / / / / ,< _ / / __ / / _ / / / _ / /
/ _ . ___ /__,_/ _ / / _ /| _ | ( _ ) ___ / . ___ / . ___ /
/ _ / / _ /
bark_tokenize_input : prompt : 'This is an audio generated by bark.cpp'
bark_tokenize_input : number of tokens in prompt = 513 , first 8 tokens : 20795 20172 20199 33733 58966 20203 28169 20222
Generating semantic tokens : 17 %
bark_print_statistics : sample time = 10.98 ms / 138 tokens
bark_print_statistics : predict time = 614.96 ms / 4.46 ms per token
bark_print_statistics : total time = 633.54 ms
Generating coarse tokens : 100 %
bark_print_statistics : sample time = 3.75 ms / 410 tokens
bark_print_statistics : predict time = 3263.17 ms / 7.96 ms per token
bark_print_statistics : total time = 3274.00 ms
Generating fine tokens : 100 %
bark_print_statistics : sample time = 38.82 ms / 6144 tokens
bark_print_statistics : predict time = 4729.86 ms / 0.77 ms per token
bark_print_statistics : total time = 4772.92 ms
write_wav_on_disk : Number of frames written = 65600.
main : load time = 324.14 ms
main : eval time = 8806.57 ms
main : total time = 9131.68 ms這是iPhone上播種的樹皮的視頻:
這是使用bark.cpp的步驟
git clone --recursive https://github.com/PABannier/bark.cpp.git
cd bark.cpp
git submodule update --init --recursive為了構建bark.cpp,您必須使用CMake :
mkdir build
cd build
# To enable nvidia gpu, use the following option
# cmake -DGGML_CUBLAS=ON ..
cmake ..
cmake --build . --config Release # Install Python dependencies
python3 -m pip install -r requirements.txt
# Download the Bark checkpoints and vocabulary
python3 download_weights.py --out-dir ./models --models bark-small bark
# Convert the model to ggml format
python3 convert.py --dir-model ./models/bark-small --use-f16
# run the inference
./build/examples/main/main -m ./models/bark-small/ggml_weights.bin -p " this is an audio generated by bark.cpp " -t 4可以使用以下策略對權重進行量化: q4_0 , q4_1 , q5_0 , q5_1 , q8_0 。
請注意,為了保持音頻質量,我們不量化編解碼器模型。該計算的大部分在GPT模型的正向中。
./build/examples/quantize/quantize ./ggml_weights.bin ./ggml_weights_q4.bin q4_0bark.cpp是一項持續的努力,依靠社區努力持續和發展。歡迎您的貢獻和非常有價值。可以
bark.cpp時,您可能會遇到錯誤。不要猶豫,在問題部分上報告。