Transformers documentation

Higgs Audio V2 Tokenizer

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

このモデルは2026年2月19日にHugging Face Transformersに貢献されました。

Higgs Audio V2 Tokenizer

概要

  • 低フレームレート: 25 fps において、当社のトークナイザーは、高い音質を維持しながら、多くのベースラインのフレームレートを半分にします。
  • 24 kHzでの統一トレーニング: 音声、音楽、サウンドイベントのクリップを1つのモデルで混合し、意味的な詳細と音響的な詳細の両方を捉えることで、オーディオ言語モデルのトレーニングを大幅に促進します。
  • 高速推論:拡散ステップを回避することで、エンコーダー/デコーダーはバッチを高速に処理でき、リアルタイムや大規模なタスクに実用的になります。

モデルアーキテクチャ:

使用方法

from datasets import Audio, load_dataset

from transformers import AutoFeatureExtractor, HiggsAudioV2TokenizerModel


# load model and feature extractor
model_id = "eustlb/higgs-audio-v2-tokenizer"
feature_extractor = AutoFeatureExtractor.from_pretrained(model_id)
model = HiggsAudioV2TokenizerModel.from_pretrained(model_id, device_map="auto")

# load audio sample
dummy_dataset = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
dummy_dataset = dummy_dataset.cast_column("audio", Audio(sampling_rate=feature_extractor.sampling_rate))
audio_sample = dummy_dataset[-1]["audio"]["array"]
inputs = feature_extractor(raw_audio=audio_sample, sampling_rate=feature_extractor.sampling_rate, return_tensors="pt").to(model.device)

# encode and decode
encoder_outputs = model.encode(inputs["input_values"])
decoder_outputs = model.decode(encoder_outputs.audio_codes)
audio_values = decoder_outputs.audio_values

# or the equivalent with a forward pass
audio_values = model(inputs["input_values"]).audio_values

HiggsAudioV2TokenizerConfig

class transformers.HiggsAudioV2TokenizerConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonetarget_bandwidths: list[int | float] | tuple[int | float, ...] = (0.5, 1, 1.5, 2, 4)sample_rate: int = 24000kernel_size: int = 3channel_ratios: list[int] | tuple[int, ...] = (1, 1)strides: list[int] | tuple[int, ...] = (1, 1)block_dilations: list[int] | tuple[int, ...] = (1, 1)unit_kernel_size: int = 3codebook_size: int = 1024codebook_dim: int = 64initializer_range: float = 0.02acoustic_model_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonesemantic_model_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonesemantic_sample_rate: int = 16000downsample_factor: int = 320 )

パラメータ

  • target_bandwidths (List[float]、任意、デフォルトは [0.5, 1, 1.5, 2]) — モデルが音声エンコードに使用できる帯域幅(kbps 単位)の範囲です。
  • sample_rate (int、任意、デフォルトは 24000) — オーディオファイルをデジタル化するためのサンプリングレート(ヘルツ(Hz)で表します)。
  • kernel_size (int、任意、デフォルトは 3) — 初期セマンティック畳み込みのカーネルサイズ。
  • channel_ratios (List[float]、任意、デフォルトは [1, 1]) — 各セマンティックブロックにおける出力チャネル数の拡張係数です。
  • strides (List[int]、任意、デフォルトは [1, 1]) — 各セマンティックエンコーダーブロックのストライドです。
  • block_dilations (List[int]、任意、デフォルトは [1, 1]) — セマンティックブロック内の残差ユニットのディレーション係数です。
  • unit_kernel_size (int、任意、デフォルトは 3) — セマンティックブロック内の各 ResidualUnit におけるカーネルサイズ。
  • codebook_size (int、任意、デフォルトは 1024) — モデルが使用する並列コードブックの数です。
  • codebook_dim (int、任意、デフォルトは 64) — 各コードブック埋め込みベクトルの次元数。
  • initializer_range (float、任意、デフォルトは 0.02) — すべての重み行列を初期化するための truncated_normal_initializer の標準偏差です。
  • acoustic_model_config (Union[Dict, AutoConfig]、任意) — 音響(DAC)モデルの設定のインスタンスです。
  • semantic_model_config (Union[Dict, AutoConfig]、任意) — セマンティック(HuBERT)モデルの設定オブジェクトのインスタンスです。
  • semantic_sample_rate (int、任意、デフォルトは 16000)— セマンティックモデルがオーディオ入力を想定するサンプリングレート (Hz)。
  • downsample_factor (int、任意、デフォルトは 320) — セマンティック特徴のダウンサンプリング係数。

これは、HiggsAudioV2TokenizerModel の設定を保存するための設定クラスです。指定された引数に基づいて Higgs Audio V2 Tokenizer モデルをインスタンス化し、モデルのアーキテクチャを定義するために使用されます。デフォルト値で設定をインスタンス化すると、bosonai/higgs-audio-v2-tokenizer と同様の設定が得られます。

設定オブジェクトはPreTrainedConfigを継承し、モデルの出力を制御するために使用できます。詳細については、PreTrainedConfigのドキュメントを参照してください。

例:

>>> from transformers import HiggsAudioV2TokenizerModel, HiggsAudioV2TokenizerConfig

>>> # Initializing configuration
>>> configuration = HiggsAudioV2TokenizerConfig()

>>> # Initializing a model (with random weights) from the configuration
>>> model = HiggsAudioV2TokenizerModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

HiggsAudioV2TokenizerModel

class transformers.HiggsAudioV2TokenizerModel

< >

( config: HiggsAudioV2TokenizerConfig )

パラメータ

  • config (HiggsAudioV2TokenizerConfig) — モデルのパラメータをすべて含むモデル設定クラスです。設定ファイルで初期化しても、モデルに関連する重みは読み込まれず、設定のみが読み込まれます。モデルの重みをロードするには、from_pretrained() メソッドを参照してください。

HiggsAudioV2Tokenizer ニューラルオーディオコーデックモデル。

このモデルは PreTrainedModel を継承しています。すべてのモデルに実装されている汎用的なメソッド(ダウンロードや保存、入力埋め込みのリサイズ、ヘッドのプルーニングなど)については、スーパークラスのドキュメントを参照してください。

このモデルは、PyTorchのtorch.nn.Moduleのサブクラスでもあります。 通常のPyTorch Moduleとして使用し、一般的な使用方法や動作に関する詳細については、PyTorchのドキュメントを参照してください。

decode

< >

( audio_codes: Tensorreturn_dict: bool | None = None )

パラメータ

  • audio_codes (torch.LongTensor、形状 (batch_size, num_quantizers, codes_length)) — model.encode を使用して計算された離散コードのインデックス。
  • return_dict (bool、任意) — ModelOutput を返すかどうか

encode

< >

( input_values: Tensorbandwidth: float | None = Nonereturn_dict: bool | None = None )

パラメータ

  • input_values (torch.Tensor、形状 (batch_size, channels, num_samples)) — 入力音声波形の浮動小数点値です。
  • bandwidth (float, 任意) — 単位の目標帯域幅です。値は config.target_bandwidths に含まれる値のみサポートされます。 デフォルトでは、利用可能な最高帯域幅である 4.0 kbps が使用されます。
  • return_dict (bool, 任意) — ModelOutput を返すかどうかを指定します。

forward

< >

( input_values: Tensoraudio_codes: typing.Optional[torch.Tensor] = Nonebandwidth: float | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → HiggsAudioV2TokenizerOutput or tuple (audio_codes, audio_values)

パラメータ

  • input_values (torch.Tensor、形状 (batch_size, channels, num_samples)) — 入力音声波形の生の浮動小数点値です。
  • audio_codes (torch.LongTensor、形状 (batch_size, num_quantizers, codes_length) — model.encode を用いて計算された離散コードのインデックス。
  • bandwidth (float, 省略可) — kbps 単位の目標帯域幅。config.target_bandwidths のいずれかの値である必要があります。デフォルトでは、利用可能な最大の帯域幅が使用されます。
  • bandwidth (float, 省略可) — kbps 単位の目標帯域幅。config.target_bandwidths のいずれかの値である必要があります。デフォルトでは、利用可能な最大の帯域幅が使用されます。

戻り値

HiggsAudioV2TokenizerOutput またはタプル (audio_codes, audio_values)

  • audio_codes: 量子化された離散コード。形状は (batch_size, num_quantizers, codes_length) です。
  • audio_values、形状 (batch_size, channels, num_samples): コードから再構成されたオーディオ波形。

HiggsAudioV2TokenizerModelのforwardメソッドは、__call__特殊メソッドをオーバーライドします。

この関数内でフォワードパスの手順を定義する必要がありますが、その後、この関数ではなくModuleインスタンスを呼び出すべきです。前者は前処理と後処理の実行を適切に処理するのに対し、後者はそれらを黙って無視するためです。

例:

>>> from datasets import load_dataset
>>> from transformers import AutoFeatureExtractor, HiggsAudioV2TokenizerModel

>>> model_id = "hf-audio/higgs_audio_v2_tokenizer-hubert-librispeech"
>>> model = HiggsAudioV2TokenizerModel.from_pretrained(model_id)
>>> feature_extractor = AutoFeatureExtractor.from_pretrained(model_id)

>>> dataset = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> dataset = dataset.cast_column("audio", Audio(sampling_rate=feature_extractor.sampling_rate))
>>> audio_sample = dataset[0]['audio']['array']

>>> inputs = feature_extractor(raw_audio=audio_sample, return_tensors="pt")

>>> outputs = model(**inputs)
>>> audio_codes = outputs.audio_codes
>>> audio_values = outputs.audio_values
Update on GitHub