Dieser Code funktioniert auf Python 3.10, ich habe ihn nicht auf anderen Versionen getestet. Einige ältere Versionen werden Probleme haben.
Es ist jetzt möglich.
Für Entwickler:
Für alle:
Stellen Sie sicher, dass diese Dinge nicht in Ihrer Spracheingabe sind: (in keiner bestimmten Reihenfolge)
Was macht ein gutes schnelles Audio aus? (in keiner bestimmten Reihenfolge)
| Name | Hubert -Modell | Quantizer -Version | Epoche | Sprache | Datensatz |
|---|---|---|---|---|---|
| quantifier_hubert_base_ls960.pth | Hubert -Basis | 0 | 3 | Eng | Gitmylo/Rinden-Semantik-Training |
| quantifier_hubert_base_ls960_14.pth | Hubert -Basis | 0 | 14 | Eng | Gitmylo/Rinden-Semantik-Training |
| quantifier_v1_hubert_base_ls960_23.pth | Hubert -Basis | 1 | 23 | Eng | Gitmylo/Rinden-Semantik-Training |
| Autor | Name | Hubert -Modell | Quantizer -Version | Epoche | Sprache | Datensatz |
|---|---|---|---|---|---|---|
| Hobispl | Polnisch-Hubert-Quantizer_8_epoch.pth | Hubert -Basis | 1 | 8 | Pol | HOBIS/RINK-POLISH-Semantic-Wav-Training |
| C0untfloyd | Deutsch-Hubert-Quantizer_14_epoch.pth | Hubert -Basis | 1 | 14 | Ger | Countfloyd/Bark-German-Semantic-Wav-Training |
from hubert . pre_kmeans_hubert import CustomHubert
import torchaudio
# Load the HuBERT model,
# checkpoint_path should work fine with data/models/hubert/hubert.pt for the default config
hubert_model = CustomHubert ( checkpoint_path = 'path/to/checkpoint' )
# Run the model to extract semantic features from an audio file, where wav is your audio file
wav , sr = torchaudio . load ( 'path/to/wav' ) # This is where you load your wav, with soundfile or torchaudio for example
if wav . shape [ 0 ] == 2 : # Stereo to mono if needed
wav = wav . mean ( 0 , keepdim = True )
semantic_vectors = hubert_model . forward ( wav , input_sample_hz = sr ) import torch
from hubert . customtokenizer import CustomTokenizer
# Load the CustomTokenizer model from a checkpoint
# With default config, you can use the pretrained model from huggingface
# With the default setup from HuBERTManager, this will be in data/models/hubert/tokenizer.pth
tokenizer = CustomTokenizer . load_from_checkpoint ( 'data/models/hubert/tokenizer.pth' ) # Automatically uses the right layers
# Process the semantic vectors from the previous HuBERT run (This works in batches, so you can send the entire HuBERT output)
semantic_tokens = tokenizer . get_token ( semantic_vectors )
# Congratulations! You now have semantic tokens which can be used inside of a speaker prompt file. Führen Sie einfach die Trainingsbefehle aus.
Eine einfache Möglichkeit, semantische Daten und WAVs für das Training zu erstellen, ist mit meinem Skript: Bark-Data-Gen. Denken Sie jedoch daran, dass die Schaffung der Wellen ungefähr zur gleichen Zeit dauern wird, wenn nicht länger als die Erstellung der Semantik. Dies kann eine Weile dauern, bis dies erzeugt wird.
Wenn Sie beispielsweise einen Datensatz mit Reißverschluss mit Audiodateien, einem Reißverschluss für die Semantik und eines für die WAV -Dateien haben. Innerhalb eines Ordners namens "Literatur"
Sie sollten process.py --path Literature --mode prepare um alle Daten an ein Verzeichnis zu extrahieren
Sie sollten process.py --path Literature --mode prepare2 für die Erstellung von Hubert Semantic Vektoren, bereit für das Training
Sie sollten process.py --path Literature --mode train zum Training ausführen
Und wenn Ihr Modell genug trainiert hat, können Sie den process.py --path Literature --mode test ausführen.
Ich bin nicht verantwortlich für Audio, das mithilfe von Semantik generiert wurde, die von diesem Modell erstellt wurden. Verwenden Sie es einfach nicht für illegale Zwecke.