
Klonen Sie das Repository mit dem folgenden Befehl
git clone --recursive https://github.com/balisujohn/tortoise.cpp.git
Im Moment nur Cuda und CPU. Zu kompilieren:
mkdir build
cd build
cmake ..
make
Dies wird mit Mac OS Arm getestet
mkdir build
cd build
cmake .. -DGGML_CUBLAS=ON
make
Dies wird mit Ubuntu 22.04 und CUDA 12.0 und einem 1070ti getestet
mkdir build
cd build
cmake .. -DGGML_METAL=ON
make
In der Eingabeaufforderung werden nur Kleinbuchstaben, Räume und Zeichensetzung unterstützt.
Sie müssen ggml-model.bin , ggml-vocoder-model.bin und ggml-diffusion-model.bin im Modelsverzeichnis zum Ausführen von Tortoise.cpp platzieren. Sie können sie hier herunterladen https://huggingface.co/balisujohn/tortoise-gml. Ich werde Skripte veröffentlichen, um diese Dateien aus Schildkröten-TTs zu generieren.
Aus dem Build -Verzeichnis rennen Sie:
./tortoise
Hier ist ein Beispiel, das aus der Schachtel herausarbeiten sollte:
./tortoise --message "based... dr freeman?" --voice "../models/mouse.bin" --seed 0 --output "based?.wav"
Alle Befehlszeilenargumente sind optional:
arguments:
--message Specifies the message to generate, lowercase letters, spaces, and punctuation only. (default: "this is a test message." )
--voice Specifies the path to the voice file to use to determine the speaker's voice. (default: "../models/mol.bin" )
--output Specifies the path where the generated wav file will be saved. (default: "./output.wav")
--seed Specifies the seed for psuedorandom number generation, used in autoregressive sampling and diffusion sampling (default: system time seed)
Richten Sie die Original-Schildkröten-Tts ein und führen Sie sie dann mit jeder Stimme aus, dann nach dieser Zeile: https://github.com/neonbjb/tortoise-tts/blob/e2d9fba0bb5c4376d0d142efea47a48f97c4d90/tortoise/apiise/apiise/api.py#l40111/tortoise/api.py#l40111/tortoise/api.py#l4011/tortoise/api.py#l4011/tortois
Fügen Sie diesen Code hinzu:
numpy_array = auto_conditioning.to("cpu").numpy().astype(np.float32) # Ensure float32 for binary format
# Define the file path
file_path = 'auto_conditioning.bin'
# Save NumPy array as binary file
numpy_array.tofile(file_path)
print("saved auto conditioning")
exit()
Dann können Sie auto_conditioning.bin in den Lautsprechernamen umbenennen und die Datei in Ihren Modelsordner einfügen, um sie wie jede andere Stimme zu verwenden. Dies funktioniert mit Voices Clone mit tortoise-tts .
Wenn Sie einen Beitrag leisten möchten, geben Sie bitte ein Problem an, an dem Sie arbeiten möchten. DM mich auf Twitter, wenn Sie einen Link möchten, um sich der Dev Discord anzuschließen, oder wenn Sie Fragen haben. Ich freue mich, dass die Leute mit dem Beitrag beginnen!
Ich stelle auch eine Gabel von Schildkröten-TTs zur Verfügung, die über meine Reverse Engineering-Anmerkungen verfügt, und auch das Exportskript für das autoregressive Modell.
Dies wird mit einer MIT -Lizenz veröffentlicht.
MIT -Lizenz
Copyright (c) 2024 John Balis
Die Erlaubnis wird hiermit einer Person, die eine Kopie dieser Software und zugehörigen Dokumentationsdateien (der "Software") erhält, kostenlos erteilt, um die Software ohne Einschränkung zu behandeln, einschließlich ohne Einschränkung der Rechte, zu verwenden, zu kopieren, zu modifizieren, zusammenzufassen, zu veröffentlichen, zu veröffentlichen, zu verteilen, zu verteilt, und/oder Kopien der Software zu ermöglichen, um Personen zu beanstanden, an denen die Software zugänglich ist, um die folgenden Bedingungen zu beantragen.
Die oben genannte Copyright -Mitteilung und diese Erlaubnisbekanntmachung müssen in alle Kopien oder wesentlichen Teile der Software enthalten sein.
Die Software wird "wie es ist" ohne Garantie jeglicher Art, ausdrücklich oder stillschweigend bereitgestellt, einschließlich, aber nicht beschränkt auf die Gewährleistung der Handelsfähigkeit, die Eignung für einen bestimmten Zweck und die Nichtverletzung. In keinem Fall sind die Autoren oder Urheberrechtsinhaber für Ansprüche, Schäden oder andere Haftungen haftbar, sei es in einer Vertragsklage, unerbittlich oder auf andere Weise, die sich aus oder im Zusammenhang mit der Software oder anderen Geschäften in der Software ergeben.
Abgeleitet von Schildkröten-TTs und GGML.
Apache 2.0 Lizenz James Betker https://github.com/neonbjb/tortoise-tts/blob/main/license
MIT -Lizenz
Copyright (C) 2022 Georgi Gerganov
Die Erlaubnis wird hiermit einer Person, die eine Kopie dieser Software und zugehörigen Dokumentationsdateien (der "Software") erhält, kostenlos erteilt, um die Software ohne Einschränkung zu behandeln, einschließlich ohne Einschränkung der Rechte, zu verwenden, zu kopieren, zu modifizieren, zusammenzufassen, zu veröffentlichen, zu veröffentlichen, zu verteilen, zu verteilt, und/oder Kopien der Software zu ermöglichen, um Personen zu beanstanden, an denen die Software zugänglich ist, um die folgenden Bedingungen zu beantragen.
Die oben genannte Copyright -Mitteilung und diese Erlaubnisbekanntmachung müssen in alle Kopien oder wesentlichen Teile der Software enthalten sein.
Die Software wird "wie es ist" ohne Garantie jeglicher Art, ausdrücklich oder stillschweigend bereitgestellt, einschließlich, aber nicht beschränkt auf die Gewährleistung der Handelsfähigkeit, die Eignung für einen bestimmten Zweck und die Nichtverletzung. In keinem Fall sind die Autoren oder Urheberrechtsinhaber für Ansprüche, Schäden oder andere Haftungen haftbar, sei es in einer Vertragsklage, unerbittlich oder auf andere Weise, die sich aus oder im Zusammenhang mit der Software oder anderen Geschäften in der Software ergeben.