VoxCPM2 でボイスクローニング

環境

Windows 11

Python環境構築

pyproject.tomlを載せておきます。

uv syncで簡単に構築できます。

[project]
name = "voice-clone"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.13"
dependencies = [
    "torch==2.13.0+cu126",
    "torchaudio==2.11.0+cu126",
    "voxcpm==2.0.3",
]

[[tool.uv.index]]
name = "torch-cuda"
url = "https://download.pytorch.org/whl/cu126"
explicit = true

[tool.uv.sources]
torch = [{ index = "torch-cuda" }]
torchaudio = [{ index = "torch-cuda" }]

実行

Voice cloning

音声はこちらからダウンロードさせてもらいました。

from voxcpm import VoxCPM
import soundfile as sf

model = VoxCPM.from_pretrained(
    "openbmb/VoxCPM2",
    load_denoiser=False
)

wav = model.generate(
    text="あしたの甲府の天気は、最高気温 18度、最低気温 6度、晴れです。",
    prompt_wav_path="g_03.mp3",
    prompt_text="イスタンブールは、世界で唯一、アジア大陸とヨーロッパ大陸にまたがる町で、この二つの大陸を分けているのがボスポラス海峡です。アジアとヨーロッパの間を進んでいく壮大な体験ができるボスポラス海峡クルーズを堪能していただく予定です。",
    reference_wav_path="g_03.mp3",
)

sf.write("output.wav", wav, model.tts_model.sample_rate)