/ Модель

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

Лицензия
Apache 2.0
Базовая модель
Fun-CosyVoice3-0.5B-2512
Библиотека
loom-py-rt
Опубликована
29 сен 2026

fun-cosyvoice3-0.5b-loom

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

Многоязычная модель Fun-CosyVoice3-0.5B в формате GGUF синтезирует речь из текста и поддерживает клонирование голоса по аудиообразцу.

147скачиваний за 30 дней0лайковвеса обновлены29 сен 2026

Бенчмарки

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

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

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

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

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

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

Это экспорт модели FunAudioLLM Fun-CosyVoice3-0.5B-2512 в формат GGUF для движка loom.cpp. В составе — языковая модель Qwen2-0.5B для речевых токенов, flow-matching DiT и вокодер HiFT; модель сама кодирует входной текст и синтезирует речь с частотой 24 кГц на девяти языках: китайском, английском, японском, корейском, немецком, испанском, французском, итальянском и русском. Репозиторий содержит неизменённые веса базовой модели, упакованные в GGUF для использования через loom-py-rt.

Модель предназначена для преобразования текста в речь, в том числе для многоязычной озвучки и клонирования голоса по короткому аудиообразцу. В поставке есть один встроенный голос на основе образца речи на мандаринском диалекте; для других голосов нужно отдельно подготовить голосовой файл с помощью двух ONNX-моделей и Python. Синтез случайный, но его можно воспроизводить с заданным seed. Лицензия — Apache-2.0.

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

  • озвучивание текста на девяти языках
  • создание многоязычной речи одним голосом
  • клонирование голоса по короткой записи
  • локальный синтез речи через loom.cpp

Ограничения

В комплекте есть только один встроенный голос; для подготовки других голосов требуются отдельные ONNX-модели. На двухъядерном процессоре синтез может занимать 16–20 секунд на секунду аудио, а для корректной работы нужен loom версии 1.0.0-rc11 или новее.

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

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

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

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

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

Открыть на Hugging Face

Fun-CosyVoice3 0.5B

FunAudioLLM's Fun-CosyVoice3-0.5B-2512, exported for loom.cpp: a Qwen2-0.5B speech-token LM, a flow-matching DiT and a HiFT vocoder, 9 languages, 24 kHz. Encodes text itself.

This is a loom.cpp export: a single self-describing GGUF that carries its own graph topologies, tokenizer (if any) and driver script, produced by loom-exporter.

Original model

Exported from FunAudioLLM/Fun-CosyVoice3-0.5B-2512. Weights are unmodified; this repo packages the same parameters into loom.cpp's GGUF format.

License

apache-2.0, inherited from the base model above.

Language(s)

zh, en, ja, ko, de, es, fr, it, ru

Usage

Run it with loom-py -- loom-py-rt on PyPI:

pip install -U "loom-py-rt[hub]"
import loom

model = loom.Model.from_pretrained("loom-ai-org/fun-cosyvoice3-0.5b-loom")

# This model encodes text itself -- no phonemiser needed at all.
print(model.tokenizer)                       # kind, vocabulary size, default language

# sample_rate=24000: a rate is not something a checkpoint necessarily carries, so it is a value
# you have to know from the model's documentation and pass. It is used only if the GGUF declares none;
# a wrong rate does not fail, it plays the voice at the wrong speed.
audio = model.text2speech.infer("hello world", sample_rate=24000)
audio.save("out.wav")

# That uses the voice the file itself defaults to. Whether it carries others is under "Known
# limitations" (and, where it does, a section below says how to pick one).

Cloning a voice

A voice is a few seconds of a speaker plus what they say, turned ONCE into a small voice file by the reference's own front end -- that step needs two ONNX models this GGUF does not carry, so it runs in Python with the upstream checkpoint:

python -m loom_exporter.cosyvoice3_voices Fun-CosyVoice3-0.5B-2512 -o voices \
    --wav me.wav --text "What the clip says, word for word." --name me --license "CC0-1.0"

Then pass it by path (or by name, for a file under voices/ beside the model):

model.text2speech.infer("hello world", voice="voices/me.gguf", seed=7).save("me.wav")

A voice file is stamped with a fingerprint of the weights it was made for, and a file made for other weights is refused by name. The clip must be 16 kHz or more and at most 30 s; the licence is the recording's, which is why --license is required.

The layer underneath

The call above is the high-level door: one per task, named for the modality pair it maps between, with the windowing, sampling and assembly this model needs already applied. Under it, model.infer(...) passes your arguments straight to the driver this GGUF embeds -- which is where you go for a knob the door does not name.

model.driver_source prints that driver, including a header comment documenting every argument it accepts for this model, and is the authority on it. See loom-py for the API and loom.cpp for what the engine does between the two.

Known limitations

One voice is built in, computed when the file was exported. The release ships no speaker table; the file carries the voice every example in the release's README uses (asset/zero_shot_prompt.wav from the Apache-2.0 CosyVoice repository, a Mandarin speaker, with its transcript), encoded ONCE by the release's own ONNX speech tokenizer and speaker encoder. English and the other languages are spoken in that voice cross-lingually. Other voices are voice files (see "Cloning a voice"): making one needs those ONNX models and Python once, using one needs neither.

Text is normalised by the reference's rules, not its FST normaliser. Digits are spelled out, Chinese punctuation is mapped, and a paragraph is split into sentence-sized pieces that are generated one after another and joined -- matching the reference's own text_normalize id for id when wetext is not installed. With wetext installed the reference reads dates, money and units as words; this file spells their digits one number at a time.

Sampled, so two calls differ. The LM samples every speech token (top-k 25, top-p 0.8, with the reference's repetition-aware redraw). Pass seed to reproduce a call. Verified against the reference with its draws pinned: the same 76 tokens, and a waveform within the reference's own float32-vs-float64 spread.

Needs loom 1.0.0-rc11 or later. An older engine ignores three sampler options this file uses and samples differently without saying so.

Slow on a small CPU. 3.4 GB at F32; on a 2-core x86 laptop a second of audio takes 16-20 seconds.

Files

  • fun-cosyvoice3-0.5b.gguf -- the model, exported with loom-exporter.

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

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

GPU в ailist

Универсальный рантайм · loom-py-rt

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

GGUF-веса поддерживаются только для текстовых LLM (llama.cpp).

Ревизия весов
9cb4eaa

0 моделей