感情のまとまりごとに改行する
文章の長さだけでなく、同じ感情や意図が続く範囲で行を分けます。
FIRST, CHOOSE YOUR ROUTE
ANSWER FIRST
Style-Bert-VITS2を公式ZIPから導入し、config.json、モデル本体、style_vectors.npyをmodel_assets\モデル名\へまとめます。Inference.batを起動し、モデル一覧を更新して読み込めば、音声を生成できます。
QUICK START / WINDOWS
ここではモデルの学習は行いません。購入・配布されたモデルを導入し、音声を生成するまでを説明します。
INSTALL
公式のsbv2.zipを、日本語や空白を含まない短いパスへ展開します。GPUがある場合はInstall-Style-Bert-VITS2.bat、音声合成をCPUで行う場合はInstall-Style-Bert-VITS2-CPU.batを実行します。
例 C:\AI\Style-Bert-VITS2
MODEL ASSETS
設定ファイル、学習済みモデル、スタイルベクトルを同じモデルフォルダにまとめ、model_assets直下に置きます。フォルダ名はモデル一覧に表示される名前になります。
OPEN
Inference.batを起動するInference.batは音声合成専用の画面を開きます。最初の動作確認には、多機能なApp.batよりこちらが適しています。
LOAD
「モデル一覧」の横にある「更新」を押し、モデル名とモデルファイルを選んで「ロード」を押します。表示されない場合は、前のステップの3ファイルを確認します。
SPEAK
最初は音高・抑揚・Lengthを1.0、スタイルの強さも1.0にします。「改行で分けて生成」はオンにします。短い文章で声を確認してから、一項目ずつ変更します。
CAPABILITY MAP
目的に合う機能から確認してください。
Neutral、Whisper、Brightなど、モデルに収録された話し方を切り替えられます。
02スタイルの強さ、速度、抑揚を一項目ずつ変更し、台詞に合う話し方に整えます。
03句読点や改行を使い、息継ぎや感情の区切りを整えます。
04アクセント調整とユーザー辞書で、固有名詞や作品内の用語を正しく読ませます。
05Editorでセリフごとにキャラクターと設定を変え、原稿を保存して一括生成できます。
06APIから台詞を送り、ゲーム、動画、対話アプリの音声生成に利用できます。
07ONNXへ変換し、AIVMXを経由してAivisSpeechなどの対応環境で利用できます。
08モデルマージやヌルモデルを使い、声質や話し方の変化を確認できます。
TUNING ORDER
複数の数値を同時に変更すると、どの設定が影響したのか分からなくなります。スタイル、文章、速度の順に調整し、音高と抑揚は最後に比較します。
Neutralは全スタイルの平均として扱われます。まずNeutralで基準となる音声を生成し、その後にWhisperやBrightなど、そのモデル固有のスタイルを試します。
一息で読む内容を一行にまとめます。現行UIでも、改行単位で生成すると感情が乗りやすいと案内されています。
Lengthは1.0を基準に少しずつ変更します。改行間の無音は初期値の0.5秒を基準に、会話かナレーションかで調整します。
公式UIでは、音高と抑揚を1.0から変更すると音質が劣化する可能性があると案内されています。大幅に変更せず、同じ文章で比較します。
INFERENCE PARAMETER MAP
すべての数値が同じ場所へ効くわけではありません。配役を決めるもの、話す尺を決めるもの、最後に波形を補正するものを分けて考えます。
QUICK ANSWER
最初にcheckpointとstyleで声の土台を決め、文章と改行を整えます。次にlengthで話速、sdp_ratioとnoise_wで言葉の長さや間の揺らぎを調整します。pitch_scaleとintonation_scaleは生成後の補正なので、最後に確認します。
録音現場なら、配役と演技プランを決める段階です。
checkpoint声の土台演者と収録テイクを選ぶ最も大きく変わる要素です。学習途中のモデルファイルを切り替えると、声質、発音、抑揚の傾向がまとめて変わります。ただし、これはTTSModel.infer()の引数ではありません。推論前にモデルファイルを選び、TTSModelへ読み込ませます。
model_path側の設定です。speaker_id話者同じスタジオのマイクを切り替える複数話者を収録したモデルで、どの話者を使うかを整数IDで選びます。単一話者モデルでは通常0のままです。声色を微調整するつまみではありません。
style話し方演技プランを選ぶNeutral、Bright、Softなど、モデルに保存されたスタイルから一つを選びます。選べる名前はモデルごとに異なります。まずNeutralを基準にすると比較しやすくなります。
style_weight強さ演出照明のフェーダーを動かす現行実装は、平均スタイルから選択スタイルまでの差を何倍にするかで計算します。0.0は平均、1.0は保存されたスタイルそのものです。1.0を超えると特徴をさらに押し出しますが、不自然さも出やすくなります。
mean + (selected - mean) × weightreference_audio_path参照音声演技見本を渡す保存済みのスタイル名ではなく、参照WAVからスタイルベクトルを作ります。参照した話し方の方向へ寄せる機能であり、参照音声の人物へ声を変換する機能ではありません。モデルの声の土台は選択中のcheckpointと話者です。
この場合もstyle_weightが参照ベクトルの強さに使われます。null_model_params上級別の絵の具を少量だけ混ぜるv2.7.0で追加された上級者向け機能です。ヌルモデルの声質、音高、スタイル、テンポ成分を推論時に加えます。PyTorch推論でのみ使われ、ONNX推論では無視されます。基本調整を終えてから扱う項目です。
台詞の尺と、言葉を置くタイミングを整えます。
length話速台詞に使う時間を伸び縮みさせる1.0が基準です。大きくすると音声が長くなり、ゆっくり話します。小さくすると短く、速くなります。Editorのspeedは向きが逆で、length = 1 / speedへ変換して渡されます。
sdp_ratio緩急譜面どおりと生演奏の配分を決める発話時間を予測するDPと、確率的に時間を予測するSDPの混合比です。0はDPのみ、1はSDPのみ。値を上げるほど、主に音の長さやテンポへ揺らぎが入りやすくなります。音高を直接上げ下げする設定ではありません。
noise_w間の揺らぎ生演奏のタイミングを揺らすSDPへ与えるノイズです。大きくすると発音の間隔にばらつきが出やすくなります。sdp_ratioと関係するため、まず比率を決めてから少しずつ比較します。
line_split + split_interval改行カットを分け、間に無音を置くline_splitを有効にすると、改行ごとに別々に生成します。split_intervalは、その間へ追加する無音の秒数です。長文の息継ぎを整理できますが、分割時はgiven_phoneとgiven_toneが無視されます。
音声の細部へ変化を与える項目です。話速とは分けて考えます。
noise生成の揺らぎ同じ設計から少し違う仕上がりを作る音声を作る潜在表現へ与えるノイズ量です。大きくするとランダム性が増え、細かな響きや発音の出方が変わりやすくなります。DP専用の速度調整ではありません。
assist_text + assist_text_weight補助文台詞の横に演技メモを置く読み上げ本文とは別の文章を、声音や感情の手掛かりとして使います。利用にはuse_assist_textも有効にします。公式APIの説明では、抑揚やテンポが犠牲になる傾向も示されているため、常用する前に同じ台詞で比較します。
自動変換の結果を直す、台本のルビとアクセント記号に近い機能です。
given_phone + given_tone読み・高低音符とアクセントを手書きするgiven_phoneは音素列、given_toneは対応するトーン列を直接渡します。音素だけを指定することはできず、両方が必要です。固有名詞の読み違いは、繰り返し使うならユーザー辞書、台詞単位で厳密に固定するならこの指定を使います。
line_split=Trueでは両方とも使われません。演技を作り直すのではなく、完成した音声へ後から補正をかけます。
pitch_scale音高収録後に全体のキーを動かす1.0が無補正です。完成した波形の高さを後処理で変えます。公式実装には、1.0から変更すると若干音質が低下する注意書きがあります。声の演技を変えたい場合は、先にstyleや文章を見直します。
intonation_scale抑揚幅波形の山と谷を広げる1.0が無補正です。平均音高からの変化幅を後処理で拡大・縮小します。こちらも1.0以外では若干の音質低下があり得るため、最後の仕上げとして小さく比較します。
TEXT BECOMES BREATH
モデルを変更する前に、文章を読み上げやすい長さと区切りに整えます。
今日は来てくれてありがとうちょっと緊張しているけれど会えてうれしいです
今日は、来てくれてありがとう。
ちょっと緊張しているけれど、
会えて、うれしいです。
文章の長さだけでなく、同じ感情や意図が続く範囲で行を分けます。
読点を増やしすぎず、意味の区切りに合わせて入れます。
作品名やキャラクター名は、その都度修正するのではなく、ユーザー辞書に登録します。
文章とスタイルを決めてから、必要な語だけアクセントの高低を調整します。
EXPAND THE WORKFLOW
Editor、API、ONNX、モデルマージを、目的に合わせて使い分けます。

python server_fastapi.pyでAPIサーバーを起動し、/docsで仕様を確認できます。音声生成は/voiceへPOSTします。ローカル環境の外へ公開する場合は、config.ymlの許可オリジンを接続先に限定してください。
利用者の実例 Gradio Clientから台詞生成を自動化し、WebUIを一件ずつ操作する手間を減らす例が公開されています。
拡張の実例 音素と長さを口パク用タイムラインへ渡すUnity向けの実装例もあります。これは標準機能ではなく、ソースコードを拡張した例です。

ConvertONNX.batから学習済みモデルをONNXへ変換できます。AIVM Generatorで必要なメタデータをまとめてAIVMXにすると、対応するAivisSpeech環境へ導入できます。
注意 変換や再配布が許可されているか、使用する音声モデルの規約を先に確認してください。
AivisSpeechの対応形式を確認
モデルマージでは、声質・高さ・話し方・テンポを個別に設定して組み合わせられます。v2.7.0では、音声合成時にヌルモデルを指定する機能も追加されました。結果は使用する素材と重みによって大きく変わります。元モデルを残し、利用規約で許可された範囲で試してください。
v2.7.0の変更点を確認WHAT CHANGED / WHAT DID NOT
model_assetsへのモデル配置litagin/anime-whisperの追加SAFE UPDATE PATH
Update-Style-Bert-VITS2.batで更新します。
最新版を新しく導入し、必要なmodel_assetsとDataを手動で移します。
DIAGNOSTICS
環境を作り直す前に、症状に合う項目を順番に確認してください。
config.json、モデルファイル、style_vectors.npyが同じモデルフォルダにあるか確認し、「更新」を押します。モデルファイルは.safetensorsのほか、現行実装では.pth、.pt、.onnxも探索対象です。
ModuleNotFoundError: No module named '_socket'が出る場合、インストール後にフォルダ名や場所を変えていないか確認します。公式FAQは元の名前と場所へ戻すよう案内しています。
FFmpegがない可能性があります。公式FAQではWindowsでwinget install ffmpegを案内しています。これは推論だけでなく、データセット作成へ進む場合の確認項目です。
server_fastapi.pyの初期上限は100文字です。config.ymlのserver.limitを用途に合わせて変更できます。無制限は-1です。長文は改行単位に分けて送る方法もあります。
音高・抑揚・Lengthを1.0へ戻し、スタイルの強さも1.0付近から確認します。自然に聞こえる範囲はモデルとスタイルごとに異なるため、一項目ずつ比較します。
モデルとスタイルを決め、文章と改行を整えたあと、length、sdp_ratio、noise_wを一項目ずつ比較します。pitch_scaleとintonation_scaleは音質が低下する可能性があるため、最後に確認します。
現行実装では0.0が平均スタイル、1.0が保存されたスタイルベクトルです。1.0を超えると平均からの差をさらに強めますが、自然さを保証する値ではありません。
公式のCPU向けインストールでは、音声合成とモデルマージを利用できます。学習にはNVIDIA製GPUが必要です。既製モデルから音声を生成するだけなら、CPU環境でも始められます。
Blackwell世代では、公式手順のPyTorch/CUDA構成が合わない実例があります。これは全環境共通の手順ではありません。GPU名、PyTorch、CUDAを記録し、同じ構成の検証例を参照します。
RTX 5070 Tiの検証例SHIZUKALAB VOICE MODELS
声の明るさや距離感、役柄を比べながら、用途に合うモデルを試聴できます。
SOURCE LEDGER
最終確認日 2026.08.31