Orpheus Swiss German LoRA
This model is a fine-tuned LoRA adapter designed to adapt the Orpheus base model for Text-to-Speech (TTS) synthesis in Swiss German. It processes text conditioning prompts and generates speech tokens encoded via a 24kHz SNAC codec interleaving layout.
Model Details
Model Description
- Developed by: griffing52
- Shared by: griffing52
- Model type: PEFT Adapter (LoRA) for Causal Language Modeling (Speech/Text generation)
- Language(s) (NLP): Swiss German (gsw), German (de)
- License: [More Information Needed]
- Finetuned from model: canopylabs/3b-de-ft-research_release
Model Sources
Uses
Direct Use
This adapter is intended for Text-to-Speech generation in Swiss German dialects. Speech synthesis is triggered using a formatted prefix prompt layout: voice: transcript.
Out-of-Scope Use
This model is not built for standard text-based conversational modeling, nor will it perform well generating languages or accents far outside German/Swiss German linguistic structures.
Bias, Risks, and Limitations
- Dialect Consistency: Swiss German features massive lexical and phonetic variance across regions. Dialect spelling inconsistencies in training transcripts heavily influence the resulting prosody and pronunciation quality.
- Overtraining Risk: Training beyond 1–2 epochs on small datasets risks degrading prosody and speech naturalness.
How to Get Started with the Model
You can load this adapter on top of the base model using the code below:
1import torch
2from peft import PeftModel
3from transformers import AutoModelForCausalLM, AutoTokenizer
4
5BASE_MODEL = "canopylabs/3b-de-ft-research_release"
6ADAPTER_ID = "griffing52/orpheus-swiss-german-lora"
7
8dtype = torch.float16 if torch.cuda.is_available() else torch.float32
9
10# Load base model and tokenizer
11tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL)
12base_model = AutoModelForCausalLM.from_pretrained(BASE_MODEL, torch_dtype=dtype)
13
14if torch.cuda.is_available():
15 base_model = base_model.to("cuda")
16
17# Load fine-tuned adapter
18model = PeftModel.from_pretrained(base_model, ADAPTER_ID)
19model.eval()
Training Details
Training Data
The model was fine-tuned using paired Swiss German audio and transcripts structured in a SpeechT5-style metadata format.
- Audio Format: 24kHz mono (WAV/FLAC/MP3) encoded into SNAC tokens.
- Target Layout: Tokens packed into the native 7-token interleaved Orpheus speech architecture.
Training Procedure
Preprocessing
Transcripts and voice tags were converted into text-conditioning prompts bounded by specialized system tokens (SOH_TOKEN, EOT_TOKEN, EOH_TOKEN). Audio files were resampled to 24,000 Hz, passed through a hubertsiuzdak/snac_24khz codec model to extract 3 layers of acoustic features, and flattened into speech sequences.
Training Hyperparameters
- Training regime: [More Information Needed]
-Training regime: QLoRA 4-bit (nf4 quantization with double quantization enabled)
- Compute Precision: fp16 mixed precision
- LoRA Configuration:
- r: 32
- alpha: 64
- dropout: 0.05
- Target Modules: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
- Optimization Strategy:
- Learning Rate: 2e-4
- LR Scheduler: Cosine
- Warmup Ratio: 0.03
- Epochs: 2
- Per Device Train Batch Size: 1
- Gradient Accumulation Steps: 24
- Gradient Checkpointing: Enabled
Speeds, Sizes, Times
Total Training Steps: Concluded at checkpoint-216.
Evaluation
Environmental Impact
Carbon emissions can be estimated using the
Machine Learning Impact calculator presented in
Lacoste et al. (2019).
- Hardware Type: GPU (Google Colab Environment)
- Cloud Provider: Google Cloud
Technical Specifications [optional]
Framework versions
- PEFT 0.18.1
- Transformers 5.0.0+
- PyTorch 2.10.0+cu128
- SNAC 1.2.1