/ Модель

Характеристики

Лицензия
Apache 2.0
Базовая модель
VoxCPM2
Опубликована
23 июн 2026

voxcpm2-akan-sft

Синтез речиТекст → аудио3 профессии

Модель FarmerlineML синтезирует речь на асанте-тви из текста с привязкой к голосу по эталонной аудиозаписи.

26скачиваний за 30 дней0лайковвеса обновлены24 июн 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

FarmerlineML обучила эту модель полным дообучением VoxCPM2 на речевых данных языка акан, вариант асанте-тви. Модель предназначена для синтеза речи из текста и разработана для голосового сельскохозяйственного помощника Darli AI.

Для привязки к голосу при генерации требуется эталонная аудиозапись; наилучшие результаты ожидаются с голосом носителя акан или тви. В README также рекомендуются ограничение длины генерации, чтобы снизить риск галлюцинаций после конца предложения, и обрезка примерно двух секунд тишины после синтеза. Веса опубликованы в формате safetensors, лицензия — Apache-2.0.

Сценарии применения

  • озвучивание ответов сельскохозяйственного голосового помощника на асанте-тви
  • преобразование текста на тви в речь
  • генерация речи с привязкой к голосу по аудиообразцу

Ограничения

Для привязки к голосу нужна эталонная аудиозапись; для лучших результатов рекомендуется использовать запись голоса на акан или тви. Возможны галлюцинации после конца предложения и лишняя тишина, поэтому README рекомендует ограничивать длину генерации и обрезать тишину после синтеза.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

VoxCPM2 Akan (Asante Twi), Full SFT

Full fine-tune of VoxCPM2 on Akan (Asante Twi) speech data. Trained by FarmerlineML for the Darli AI agricultural voice assistant.

Training Details

ParameterValue
Base modelopenbmb/VoxCPM2 (2B)
MethodFull SFT (all parameters)
Learning rate1e-5
Batch size2 (grad accum 16, effective batch 32)
Sample rate16kHz (AudioVAE encoder input)
Final step3028

Validation Loss:

Steploss/totalloss/diffloss/stop
00.8998510.7993700.066987
5000.7532330.7043430.032593
10000.6914770.6703560.014081
15000.6944970.6826670.007886
20000.7093860.6865620.015216
25000.6912710.6730160.012170
30000.6628220.6477560.010043

Datasets:

TODO: confirm exact dataset repo names before publishing, the source manifests referenced FarmerlineML Akan/Twi TTS data but the exact repo IDs need verifying.

Usage

from voxcpm import VoxCPM
import soundfile as sf
import numpy as np

model = VoxCPM.from_pretrained(
    "FarmerlineML/voxcpm2-akan-sft",
    load_denoiser=False,
)

def trim_audio(wav, sr, silence_thresh=0.01, max_silence_secs=2.0):
    abs_wav = np.abs(wav)
    window  = int(0.05 * sr)
    n_wins  = len(abs_wav) // window
    max_sil = int(max_silence_secs / 0.05)
    silence_count, cut_sample = 0, len(wav)
    for w in range(n_wins):
        chunk = abs_wav[w * window:(w + 1) * window]
        if chunk.max() < silence_thresh:
            silence_count += 1
            if silence_count >= max_sil:
                cut_sample = (w - max_sil + 1) * window
                break
        else:
            silence_count = 0
    return wav[:min(cut_sample + int(0.1 * sr), len(wav))]

wav = model.generate(
    text="Ɛnyɛ asɔrekafoɔ no nkoaa na ɔyɛɛ biribi a ɛte saa",
    reference_wav_path="your_akan_speaker.wav",
    cfg_value=2.0,
    inference_timesteps=15,
    retry_badcase=False,
    max_len=max(50, len(text) * 4),
)
wav = trim_audio(wav, 48000)
sf.write("output.wav", wav, 48000)

Repo Structure

voxcpm2-akan-sft/
  model.safetensors        # Model weights (~9.2GB)
  audiovae.pth             # AudioVAE decoder
  config.json              # Model architecture config
  tokenizer.json           # Tokenizer
  training/
    train.log              # Full training log
    val_loss_summary.txt   # Validation losses per checkpoint
    training_state.json    # Final training state
  tensorboard/              # TensorBoard event files

Notes

  • Reference audio is required at inference for voice identity anchoring
  • Use max_len=max(50, len(text) * 4) to prevent hallucination after sentence end
  • A post-generation 2-second silence trim is strongly recommended
  • Trained on Asante Twi audio, use an Akan/Twi speaker reference clip for best results

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Нельзя запустить

Архитектура ? неизвестна transformers в образе рантайма.

Ревизия весов
051a345

0 моделей