Bytehome TTS

Checkpoint tổng hợp giọng nói dùng kiến trúc OmniVoice, được lưu tại luongkhanh2026/Bytehome_TTS để sử dụng với mã nguồn TTS của dự án chatbot_voice.

Repository chứa trọng số, cấu hình, text tokenizer và audio tokenizer. Đây là bản sao checkpoint phục vụ inference; lần upload này không thực hiện training hoặc fine-tuning.

Nguồn gốc và trạng thái xác minh

  • Nguồn tải: Bytehome/Bytehome_TTS trên Hugging Face.
  • Revision nguồn: ba3e9991d4843dacae4415bc09300d693913f112.
  • Commit upload checkpoint vào repo này: ef0a9cac92eeaff41a4c2aaf5a25dfd549776019.
  • Bộ checkpoint ban đầu gồm 12 file, tổng 3.267.460.836 byte (khoảng 3,04 GiB), chưa tính model card này.
  • Đã kiểm tra đủ file và kích thước file remote khớp với bản local sau upload. Chưa chạy kiểm thử inference hoặc benchmark cho bản upload này.
  • Chưa xác minh tập dữ liệu, quy trình huấn luyện, số bước train, hoặc checkpoint này có được fine-tune thêm từ model gốc hay không.

Tên repository và cấu hình kiến trúc không phải bằng chứng về lịch sử fine-tuning. Revision nguồn ghi nhận nơi lấy bản sao, không xác nhận model nền huấn luyện ban đầu.

Cấu hình kỹ thuật

Các thông tin dưới đây được đọc từ file cấu hình đi kèm checkpoint.

Thuộc tính Giá trị
Kiến trúc chính OmniVoice
Backbone theo cấu hình qwen3, 28 lớp, hidden size 1024
Số audio codebook 8
Audio vocabulary mỗi codebook 1025, gồm MASK ID 1024
Audio tokenizer HiggsAudioV2TokenizerModel
Sample rate đầu ra 24.000 Hz
Định dạng trọng số Safetensors
Phiên bản Transformers ghi trong cấu hình model chính 5.3.0

Chưa xác minh chính xác repository pretrained backbone ban đầu; không suy ra nguồn trọng số chỉ từ tên kiến trúc Qwen3.

Cách hoạt động

Văn bản cần đọc + audio mẫu + lời thoại của audio mẫu
    → OmniVoice dự đoán audio token
    → audio tokenizer giải mã thành waveform
    → lưu WAV hoặc chuyển thành PCM/MP3 ở lớp ứng dụng

Thư viện OmniVoice trong dự án hỗ trợ voice cloning, voice design và tự chọn giọng. Lớp TTS service hiện tích hợp chế độ voice cloning. Việc cung cấp audio mẫu là điều kiện cho inference, không cập nhật trọng số model.

Repository không bao gồm các file giọng mẫu như nutrem.wav, giongnuhanoi6s.wav hoặc nam.wav. Hãy chuẩn bị audio mẫu và transcript tương ứng riêng.

Sử dụng với mã nguồn dự án

Điều kiện

  • Có mã nguồn omnivoice/ đi kèm dự án chatbot_voice, trong AI_Service/tts_service/. Repository model này không đóng gói mã Python triển khai kiến trúc.
  • Có môi trường Python với các dependency phù hợp của dự án, gồm PyTorch, Transformers, Hugging Face Hub và SoundFile. Xem AI_Service/tts_service/pyproject.toml trong source code; hướng dẫn này không xác nhận quy trình cài đặt sạch đã được kiểm thử.
  • Tài khoản/token có quyền đọc repo nếu repo ở chế độ private. Cấu hình token qua HF_TOKEN trong môi trường; không ghi token vào source code.
  • Có GPU CUDA phù hợp hoặc sử dụng CPU. Chưa có benchmark về VRAM tối thiểu hoặc tốc độ CPU/GPU cho checkpoint này.

Ví dụ inference

Chạy từ thư mục AI_Service/tts_service để import được thư viện OmniVoice local. Thay đường dẫn và transcript mẫu trước khi chạy.

import os
import soundfile as sf
import torch
from huggingface_hub import snapshot_download
from omnivoice.models.omnivoice import OmniVoice

checkpoint_dir = snapshot_download(
    repo_id="luongkhanh2026/Bytehome_TTS",
    revision="ef0a9cac92eeaff41a4c2aaf5a25dfd549776019",
    token=os.environ["HF_TOKEN"],
    local_dir="./models_private",
)

device = "cuda" if torch.cuda.is_available() else "cpu"
model = OmniVoice.from_pretrained(
    checkpoint_dir,
    device_map=device,
    dtype=torch.float16 if device == "cuda" else torch.float32,
)

audios = model.generate(
    text="Xin chào, rất vui được gặp bạn.",
    ref_audio="/path/to/reference.wav",
    ref_text="Thay bằng lời thoại chính xác trong reference.wav.",
    num_step=8,
    guidance_scale=2.0,
    speed=0.95,
)

sf.write(
    "output.wav",
    audios[0].detach().cpu().squeeze().numpy(),
    model.sampling_rate,
    subtype="PCM_16",
)

Ví dụ được xây dựng theo API của mã nguồn dự án, chưa được chạy xác nhận với checkpoint này. num_step=8, guidance_scale=2.0 và speed=0.95 lấy từ cấu hình gọi model của service hiện tại; chưa được xác nhận là cấu hình tối ưu về chất lượng.

Có thể dùng model.create_voice_clone_prompt() và tái sử dụng kết quả qua tham số voice_clone_prompt cho nhiều câu cùng giọng để tránh xử lý lại audio mẫu ở mỗi lần gọi.

Tích hợp TTS service

Service trong dự án nạp ./models khi khởi động. Để sử dụng repo này, cần tải bộ checkpoint về đường dẫn service sử dụng hoặc đổi đường dẫn nạp model, sau đó khởi động lại process TTS.

Upload checkpoint lên Hugging Face không tự triển khai hoặc cập nhật model đang chạy trên Vast.ai. Redis, FastAPI và WebSocket thuộc lớp ứng dụng, không nằm trong checkpoint này.

Dữ liệu huấn luyện và đánh giá

Nội dung Trạng thái
Dữ liệu training/fine-tuning Chưa được cung cấp/xác minh
Model nền và quy trình fine-tune Chưa xác minh
Training logs, optimizer state, số bước train Không có trong bộ file được upload
WER, MOS dự đoán, speaker similarity Chưa có kết quả cho checkpoint này
Độ trễ, real-time factor, VRAM Chưa đo
Chất lượng từng ngôn ngữ/giọng Chưa đánh giá có hệ thống

Mã nguồn dự án có công cụ đánh giá WER, MOS và speaker similarity; sự tồn tại của công cụ không có nghĩa checkpoint này đã được đánh giá. Ví dụ tiếng Việt ở trên phản ánh cách dùng của ứng dụng, không phải cam kết chất lượng ngôn ngữ.

Giới hạn và sử dụng phù hợp

  • Chất lượng có thể phụ thuộc nội dung, độ sạch của audio mẫu và độ khớp transcript. Cần nghe thử tên riêng, số, từ tiếng Anh và các câu dài trước khi triển khai.
  • generate() trả audio của lần gọi khi hoàn tất; streaming HTTP/WebSocket do lớp service xử lý theo từng đoạn, không phải API streaming trực tiếp của repository model.
  • Chỉ dùng giọng mẫu khi có quyền sử dụng; không dùng để giả mạo người nói hoặc gây hiểu nhầm về nguồn gốc audio.
  • Cần đánh giá riêng trên thiết bị robot, vì benchmark model không bao gồm microphone, loa, tiếng vọng hoặc lỗi mạng.

Giấy phép

Chưa xác minh giấy phép áp dụng cho toàn bộ trọng số checkpoint chính, vì vậy model card không khai báo một giấy phép tổng thể thay cho chủ sở hữu.

Thư mục audio_tokenizer/ có LICENSE và README.md riêng, được giữ nguyên từ nguồn. Mã nguồn OmniVoice trong dự án có thông báo Apache-2.0; thông báo giấy phép mã nguồn không tự xác nhận quyền phân phối hoặc sử dụng mọi trọng số và dữ liệu liên quan.

Trước khi phân phối công khai hoặc sử dụng thương mại, cần xác nhận điều kiện của checkpoint nguồn, audio tokenizer và giọng mẫu với bên cung cấp.

Downloads last month
1
Safetensors
Model size
0.6B params
Tensor type
I64
·
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support