Transformers documentation
Qwen3-Omni-MOE
Bu model 2025-09-22 tarihinde HF papers'ta yayımlandı ve 2025-09-21 tarihinde Hugging Face Transformers'a katkıda bulunuldu.
Qwen3-Omni-MOE
Genel Bakış
Qwen3-Omni-MOE modeli, Alibaba Group bünyesindeki Qwen ekibinin Qwen3-Omni Technical Report adlı raporunda önerilen, birden fazla modaliyeyi birleştiren bir modeldir.
Teknik rapordan alınan özet aşağıdaki gibidir:
*Qwen3-Omni'yi sunuyoruz; bu model, tek bir çok modlu model olarak, tek modlu muadillerine kıyasla herhangi bir performans düşüşü olmadan metin, görüntü, ses ve video alanlarında en iyi performansı ilk kez korumaktadır. Qwen3-Omni, Qwen serisindeki aynı boyuttaki tek modlu modellerin performansını eşitler ve özellikle ses görevlerinde öne çıkar. 36 ses ve ses-görsel benchmark'unda Qwen3-Omni, 32 benchmark'ta açık kaynak SOTA ve 22'sinde genel SOTA elde ederek Gemini-2.5-Pro, Seed-ASR ve GPT-4o-Transcribe gibi güçlü kapalı kaynak modelleri geride bırakır. Qwen3-Omni, metin, görüntü, ses ve video arasında algılamayı ve üretimi birleştiren bir Thinker-Talker MoE mimarisi benimser; bu sayede akıcı metin ve doğal gerçek zamanlı ses üretir. 119 dilde metin etkileşimi, 19 dilde ses anlama ve 10 dilde ses üretimi destekler. Akış sentezinde ilk paket gecikmesini azaltmak için Talker, çoklu codebook şeması kullanarak ayrık ses codec'lerini otoregresif olarak tahmin eder. Bu codebook'ların temsil kapasitesinden yararlanarak, hesaplamaca yoğun blok bazlı difüzyonu hafif bir nedensel ConvNet ile değiştiriyoruz; bu da ilk codec çerçevesinden itibaren akışa olanak tanır. Soğuk başlangıç ayarlarında Qwen3-Omni, 234 ms'lik teorik uçtan uca ilk paket gecikmesine ulaşır. Çok modlu akıl yürütmeyi daha da güçlendirmek için, herhangi bir moddan gelen girdiler üzerinde açıkça akıl yürüten bir Thinking modeli tanıtıyoruz. Araştırma topluluğunun şu anda genel amaçlı bir ses açıklama modeline sahip olmaması nedeniyle, Qwen3-Omni-30B-A3B'yi ince ayarlayarak Qwen3-Omni-30B-A3B-Captioner'ı elde ettik; bu model, keyfi ses girdileri için ayrıntılı ve düşük halüsinasyonlu açıklamalar üretir. Qwen3-Omni-30B-A3B, Qwen3-Omni-30B-A3B-Thinking ve Qwen3-Omni-30B-A3B-Captioner, Apache 2.0 lisansı altında herkese açık olarak yayınlanmıştır.
Notlar
- Ses ve metin çıktısı üretmek için Qwen3OmniMoeForConditionalGeneration kullanın. Yalnızca bir çıktı türü üretmek için, yalnızca metin çıktısında Qwen3OmniMoeThinkerForConditionalGeneration, yalnızca ses çıktısında ise Qwen3OmniMoeTalkerForConditionalGeneration kullanın.
- Video girişiyle çalışırken bellek dışı (out-of-memory) hataları oluşursa
processor.max_pixelsdeğerini azaltın. Varsayılan olarak maksimum değer çok yüksek bir değere ayarlanmıştır ve yüksek çözünürlüklü görseller, çözünürlükprocessor.max_pixelsdeğerini aşılmadığı sürece yeniden boyutlandırılmaz. - İşleyicinin, sohbet mesajlarını model girdilerine dönüştürmek için kendi apply_chat_template() yöntemi vardır.
Kullanım örneği
Qwen3-Omni, Huggingface Hub'da bulunabilir.
Tekli Medya çıkarımı
Model, girdi olarak metin, görsel, ses ve video kabul edebilir. İşte çıkarım için örnek bir kod.
import soundfile as sf
from transformers import Qwen3OmniMoeForConditionalGeneration, Qwen3OmniMoeProcessor
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto"
)
processor = Qwen3OmniMoeProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
conversations = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [
{"type": "video", "video": "/path/to/video.mp4"},
{"type": "text", "text": "What can't you hear and see in this video?"},
],
},
]
inputs = processor.apply_chat_template(
conversations,
load_audio_from_video=True,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
fps=1,
# kwargs to be passed to `Qwen3OmniMoeProcessor`
padding=True,
use_audio_in_video=True,
).to(model.device)
# Generation params for audio or text can be different and have to be prefixed with `thinker_` or `talker_`
text_ids, audio = model.generate(**inputs, use_audio_in_video=True, thinker_do_sample=False, talker_do_sample=True)
text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
sf.write(
"output.wav",
audio.reshape(-1).detach().cpu().numpy(),
samplerate=24000,
)
print(text)Sadece metin üretimi
Sadece metin çıktısı üretmek ve ses üretim modelini yüklemeyerek hesaplama kaynağı tasarrufu sağlamak için Qwen3OmniMoeThinkerForConditionalGeneration modelini kullanabiliriz.
from transformers import Qwen3OmniMoeProcessor, Qwen3OmniMoeThinkerForConditionalGeneration
model = Qwen3OmniMoeThinkerForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto",
)
processor = Qwen3OmniMoeProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
conversations = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [
{"type": "video", "video": "/path/to/video.mp4"},
{"type": "text", "text": "What can't you hear and see in this video?"},
],
},
]
inputs = processor.apply_chat_template(
conversations,
load_audio_from_video=True,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
fps=1,
# kwargs to be passed to `Qwen3OmniMoeProcessor`
padding=True,
use_audio_in_video=True,
).to(model.device)
text_ids = model.generate(**inputs, use_audio_in_video=True)
text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
print(text)Toplu Karma Medya Çıkarımı
Qwen3OmniMoeThinkerForConditionalGeneration modeli kullanıldığında, model; metin, görsel, ses ve video gibi çeşitli türlerden oluşan karışık örneklerden oluşan girdileri toplu (batch) olarak işleyebilir. Aşağıda bir örnek yer almaktadır.
import soundfile as sf
from transformers import Qwen3OmniMoeForConditionalGeneration, Qwen3OmniMoeProcessor
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto"
)
processor = Qwen3OmniMoeProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
# Conversation with video only
conversation1 = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [
{"type": "video", "path": "/path/to/video.mp4"},
]
}
]
# Conversation with audio only
conversation2 = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [
{"type": "audio", "path": "/path/to/audio.wav"},
]
}
]
# Conversation with pure text
conversation3 = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [{"type": "text", "text": "who are you?"}],
}
]
# Conversation with mixed media
conversation4 = [
{
"role": "system",
"content": [
{"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
],
},
{
"role": "user",
"content": [
{"type": "image", "path": "/path/to/image.jpg"},
{"type": "video", "path": "/path/to/video.mp4"},
{"type": "audio", "path": "/path/to/audio.wav"},
{"type": "text", "text": "What are the elements can you see and hear in these media?"},
],
}
]
conversations = [conversation1, conversation2, conversation3, conversation4]
inputs = processor.apply_chat_template(
conversations,
load_audio_from_video=True,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
fps=1,
# kwargs to be passed to `Qwen3OmniMoeProcessor`
padding=True,
use_audio_in_video=True,
).to(model.thinker.device)
text_ids = model.generate(**inputs, use_audio_in_video=True)
text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
print(text)Ses üretimini toplu işleme
Qwen3OmniMoeForConditionalGeneration, toplu (batched) ses çıktısı üretimini destekler. Örneğin, aşağıdaki metinden sese toplu üretim örneği gösterilmektedir. Birden fazla örnekten oluşan bir toplu işlemde, üretilen ses, her örnek için kendi uzunluğuna göre kırpılmış tek bir dalga formu içeren bir liste olarak döndürülür; böylece daha kısa örnekler gereksiz sesle doldurulmaz. Tek örnekli bir çağrı ise hâlâ tek bir tensör döndürür.
import soundfile as sf
from transformers import AutoModelForTextToWaveform, AutoProcessor
import torch
model_id = "Qwen/Qwen3-Omni-30B-A3B-Instruct"
model = AutoModelForTextToWaveform.from_pretrained(model_id, device_map="auto")
processor = AutoProcessor.from_pretrained(model_id)
sampling_rate = 24000 # output sampling rate
max_new_tokens = 128 # maximum number of tokens to generate
system_text = (
"You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of "
"perceiving auditory and visual inputs, as well as generating text and speech."
)
texts = [
"Hello, I'm Qwen. How can I help you today? Just let me know!",
"The weather is nice today.",
]
inputs = processor.apply_chat_template(
[
[
{"role": "system", "content": [{"type": "text", "text": system_text}]},
{
"role": "user",
"content": [
{
"type": "text",
"text": (
"Please read the following text aloud exactly as written, with no "
f"additional commentary:\n\n{text}"
),
}
],
},
]
for text in texts
],
tokenize=True,
add_generation_prompt=True,
return_dict=True,
return_tensors="pt",
processor_kwargs={"padding": True},
).to(model.device, dtype=model.dtype)
gen_kwargs = {
"talker_do_sample": True,
"speaker": "Ethan", # Ethan, Chelsie
"talker_max_new_tokens": max_new_tokens,
}
_, pred_waveform = model.generate(**inputs, **gen_kwargs)
for sample_id, audio in enumerate(pred_waveform):
sf.write(f"qwen3_omni_output_{sample_id}.wav", audio.detach().to(torch.float32).cpu().numpy(), sampling_rate)
print(f"Saved audio to qwen3_omni_output_{sample_id}.wav")Kullanım İpuçları
Görüntü Çözünürlüğü ödünleşimi
Model, geniş bir çözünürlük aralığında girdileri destekler. Varsayılan olarak girdi için yerel çözünürlüğü kullanır, ancak daha yüksek çözünürlükler, daha fazla hesaplama maliyeti karşılığında performansı artırabilir. Kullanıcılar, ihtiyaçlarına uygun en iyi yapılandırmayı elde etmek için minimum ve maksimum piksel sayısını ayarlayabilir.
min_pixels = 128*28*28
max_pixels = 768*28*28
processor = AutoProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct", min_pixels=min_pixels, max_pixels=max_pixels)Ses çıktısı için istem
Kullanıcıların sesli çıktıya ihtiyacı varsa, sistem istemi “You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech.” olarak ayarlanmalıdır; aksi takdirde sesli çıktı beklenildiği gibi çalışmayabilir.
{
"role": "system",
"content": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech.",
}Ses çıktısı kullanılır mı
Model hem metin hem de ses çıktılarını destekler; kullanıcılar ses çıktısına ihtiyaç duymuyorsa, from_pretrained fonksiyonunda enable_audio_output parametresini ayarlayabilir. Bu seçenek yaklaşık ~2GB GPU belleği tasarrufu sağlar ancak generate fonksiyonu için return_audio seçeneği yalnızca False olarak ayarlanabilir.
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto",
enable_audio_output=False,
)Esnek bir deneyim elde etmek için, kullanıcıların from_pretrained fonksiyonu üzerinden model başlatılırken enable_audio_output değerini True olarak ayarlamalarını ve ardından generate fonksiyonu çağrıldığında ses döndürülüp döndürülmeyeceğine karar vermelerini öneririz. return_audio değeri False olarak ayarlandığında, model daha hızlı metin yanıtları almak için yalnızca metin çıktıları döndürür.
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto",
enable_audio_output=True,
)
...
text_ids = model.generate(**inputs, return_audio=False)Çıktı sesinin ses türünü değiştirin
Qwen3-Omni-MOE, çıktı sesinin ses tipini değiştirme özelliğini destekler. Kullanıcılar, generate fonksiyonunun speaker parametresini kullanarak ses tipini belirleyebilir. "Qwen/Qwen3-Omni-30B-A3B-Instruct" kontrol noktası iki ses tipini destekler: Chelsie ve Ethan; burada Chelsie kadın, Ethan ise erkek sesidir. Varsayılan olarak, speaker belirtilmediğinde varsayılan ses tipi Chelsie olur.
text_ids, audio = model.generate(**inputs, speaker="Chelsie")text_ids, audio = model.generate(**inputs, speaker="Ethan")Üretim hızını artırmak için Flash-Attention 2
Öncelikle, Flash Attention 2'nin en son sürümünün yüklendiğinden emin olun:
pip install -U flash-attn --no-build-isolation
Ayrıca, FlashAttention 2 ile uyumlu donanıma sahip olmanız gerekir. Bu konuda daha fazla bilgiyi flash attention deposunun resmi dokümantasyonunda bulabilirsiniz. FlashAttention-2 yalnızca bir model torch.float16 veya torch.bfloat16 olarak yüklendiğinde kullanılabilir.
FlashAttention-2 kullanarak bir model yüklemek ve çalıştırmak için, modeli yüklerken attn_implementation="flash_attention_2" parametresini ekleyin:
from transformers import Qwen3OmniMoeForConditionalGeneration
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
"Qwen/Qwen3-Omni-30B-A3B-Instruct",
device_map="auto",
attn_implementation="flash_attention_2",
)Qwen3OmniMoeConfig
sınıf transformers.Qwen3OmniMoeConfig
< source >( 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 = Nonethinker_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonetalker_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonecode2wav_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneenable_audio_output: bool = Trueim_start_token_id: int = 151644im_end_token_id: int = 151645tts_pad_token_id: int = 151671tts_bos_token_id: int = 151672tts_eos_token_id: int = 151673system_token_id: int = 8948user_token_id: int = 872assistant_token_id: int = 77091initializer_range: float | None = None )
Parametreler
- thinker_config (
dict, isteğe bağlı) — Altta yatan thinker alt modelinin yapılandırması. - talker_config (
dict, isteğe bağlı) — Altta yatan talker alt modelinin yapılandırması. - code2wav_config (
dict, isteğe bağlı) — Altta yatan code2wav alt modelinin yapılandırması. - enable_audio_output (
bool, isteğe bağlı, varsayılanTrue) — Ses çıktısının etkinleştirilip etkinleştirilmeyeceğini ve talker ile code2wav modüllerinin yüklenip yüklenmeyeceğini belirler. - im_start_token_id (
int, isteğe bağlı, varsayılan 151644) — Görsel başlangıcı için token kimliği - im_end_token_id (
int, isteğe bağlı, varsayılan 151645) — Görsel sonu için token kimliği - tts_pad_token_id (
int, isteğe bağlı, varsayılan 151671) — TTS için dolgu (padding) token kimliği - tts_bos_token_id (
int, isteğe bağlı, varsayılan 151672) — TTS'te dizinin başlangıcı için token kimliği - tts_eos_token_id (
int, isteğe bağlı, varsayılan 151673) — Görsel TTS'inde dizinin sonu için token kimliği - system_token_id (
int, isteğe bağlı, varsayılan 8948) — Sistem istemi için token kimliği - user_token_id (
int, isteğe bağlı, varsayılan 872) — Kullanıcı istemi için token kimliği - assistant_token_id (
int, isteğe bağlı, varsayılan 77091) — Asistan istemi için token kimliği - initializer_range (
float, isteğe bağlı) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Örnek:
>>> from transformers import (
... Qwen3OmniMoeThinkerConfig,
... Qwen3OmniMoeTalkerConfig,
... Qwen3OmniMoeCode2WavConfig,
... Qwen3OmniMoeForConditionalGeneration,
... Qwen3OmniMoeConfig,
... )
>>> # Initializing a Qwen3OmniMoe style configuration
>>> configuration = Qwen3OmniMoeConfig()
>>> # Initializing a model from the configuration
>>> model = Qwen3OmniMoeForConditionalGeneration(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configget_text_config
< source >( decoder = False )
Metin IO ile kullanılmak üzere tasarlanan config'i döndürür. Çoğu modelde bu, config örneğinin kendisidir. Belirli bileşik modellerde ise geçerli ad kümesinin altındadır.
Qwen3OmniMoeThinkerConfig
sınıf transformers.Qwen3OmniMoeThinkerConfig
< source >( 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 = Noneaudio_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonevision_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneposition_id_per_seconds: int = 25audio_start_token_id: int = 151647user_token_id: int = 872initializer_range: float = 0.02tie_word_embeddings: bool = Falseaudio_token_id: int = 151646image_token_id: int = 151655video_token_id: int = 151656 )
Parametreler
- audio_config (
Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Ses omurgasının yapılandırma nesnesi veya sözlüğü. - vision_config (
Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Görüntü omurgasının yapılandırma nesnesi veya sözlüğü. - text_config (
Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Metin omurgasının yapılandırma nesnesi veya sözlüğü. - position_id_per_seconds (
int, isteğe bağlı, varsayılan 25) — Saniye başına position id artışı. - audio_start_token_id (
int, isteğe bağlı, varsayılan 151647) — Ses prompt'unu kodlamak için kullanılacak ses başlangıç token kimliği. - user_token_id (
int, isteğe bağlı, varsayılan 872) — Kullanıcı token'ını kodlamak için kullanılacak kullanıcı token kimliği. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - tie_word_embeddings (
bool, isteğe bağlı, varsayılanFalse) — Modelintied_weights_keyseşlemesine göre ağırlık gömme bağlamalarının yapılıp yapılmayacağı. - audio_token_id (
int, isteğe bağlı, varsayılan151646) — Girdi sesinin yer tutucusu olarak kullanılan ses belirteç dizini. - image_token_id (
int, isteğe bağlı, varsayılan151655) — Girdi görselleri için yer tutucu olarak kullanılan görsel jeton indeksi. - video_token_id (
int, isteğe bağlı, varsayılan151656) — Girdi videoları için yer tutucu olarak kullanılan video belirteç dizini.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Örnek:
>>> from transformers import Qwen3OmniMoeThinkerModel, Qwen3OmniMoeThinkerConfig
>>> # Initializing a default Qwen3OmniMoeThinkerConfig
>>> configuration = Qwen3OmniMoeThinkerConfig()
>>> # Initializing a model (with random weights) from the default configuration
>>> model = Qwen3OmniMoeThinkerModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configQwen3OmniMoeTalkerConfig
sınıf transformers.Qwen3OmniMoeTalkerConfig
< source >( 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 = Nonecode_predictor_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonenum_code_groups: int = 32thinker_hidden_size: int = 2048codec_eos_token_id: int = 4198accept_hidden_layer: int = 18codec_nothink_id: int = 4203codec_think_bos_id: int = 4204codec_think_eos_id: int = 4205codec_pad_id: int = 4196codec_bos_id: int = 4197audio_token_id: int = 151646image_token_id: int = 151655video_token_id: int = 151656vision_start_token_id: int = 151652position_id_per_seconds: int = 25audio_start_token_id: int = 151669speaker_id: dict | None = Noneinitializer_range: float = 0.02tie_word_embeddings: bool = False )
Parametreler
- code_predictor_config (
dict, isteğe bağlı) — Bir Qwen3OmniMoeTalkerCodePredictorConfig örneğini başlatmak için kullanılan yapılandırma parametrelerinin sözlüğü. Belirtilmezse, varsayılan değerler kullanılır. - text_config (
Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Metin omurgasının yapılandırma nesnesi veya sözlüğü. - num_code_groups (
int, isteğe bağlı, varsayılan 32) — Tahmin edilen akustik token dizisinde kullanılan kod kitabı gruplarının sayısı, çoklu kod kitabı VQ temsiline karşılık gelir. - thinker_hidden_size (
int, isteğe bağlı, varsayılan 2048) — Ses üretimi öncesinde ara akıl yürütme veya gizli planlama için kullanılan thinker modülünün gizli boyut büyüklüğü. - codec_eos_token_id (
int, isteğe bağlı, varsayılan 4198) — Codec tarafından üretilen dizide konuşma sonu token'ını temsil eden token kimliği. - accept_hidden_layer (
int, isteğe bağlı, varsayılan 18) — think-and-speak sürecinde üretilen tokenlerin kabul edilmesi veya iyileştirilmesi için çıktısı kullanılan gizli katmanın indeksi. - codec_nothink_id (
int, isteğe bağlı, varsayılan 4203) — Üretim sırasında bir düşünme adımının gerekli olmadığını gösteren token kimliği. - codec_think_bos_id (
int, isteğe bağlı, varsayılan 4204) — Düşünme dizisinin başlangıcını işaret eden token kimliği. - codec_think_eos_id (
int, isteğe bağlı, varsayılan 4205) — Düşünme dizisinin sonunu işaret eden token kimliği. - codec_pad_id (
int, isteğe bağlı, varsayılan 4196) — Codec giriş dizilerinde kullanılan dolgu belirteç kimliği. - codec_bos_id (
int, isteğe bağlı, varsayılan 4197) — Codec dizilerinde konuşma başlangıcı token kimliği. - audio_token_id (
int, isteğe bağlı, varsayılan151646) — Girdi sesinin yer tutucusu olarak kullanılan ses belirteç dizini. - image_token_id (
int, isteğe bağlı, varsayılan151655) — Girdi görselleri için yer tutucu olarak kullanılan görsel jeton indeksi. - video_token_id (
int, isteğe bağlı, varsayılan151656) — Girdi videoları için yer tutucu olarak kullanılan video belirteç dizini. - vision_start_token_id (
int, isteğe bağlı, varsayılan151652) — Çok modlu giriş dizisindeki görsel segmentin başlangıcını işaretleyen Token ID'si. - position_id_per_seconds (
int, isteğe bağlı, varsayılan 25) — Ses içeriğinin saniye başına tahsis edilen konum kimliği sayısı, üretimde zaman uyumu için kullanılır. - audio_start_token_id (
int, isteğe bağlı, varsayılan 151669) — Çıktıda bir ses üretim segmentinin başlangıcını gösteren token kimliği. - speaker_id (
dict, isteğe bağlı) — Konuşmacı adından konuşmacı kimliğine sözlük. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - tie_word_embeddings (
bool, isteğe bağlı, varsayılanFalse) — Modelintied_weights_keyseşlemesine göre ağırlık gömme bağlamalarının yapılıp yapılmayacağı.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Örnek:
>>> from transformers import Qwen3OmniMoeTalkerConfig, Qwen3OmniMoeTalker
>>> # Initialize a Qwen3OmniMoeTalkerConfig with default sub-configurations
>>> config = Qwen3OmniMoeTalkerConfig(
... num_code_groups=32,
... thinker_hidden_size=2048,
... )
>>> # Initialize the full Qwen3-Omni Talker model
>>> model = Qwen3OmniMoeTalker(config)
>>> # Access the model configuration
>>> config = model.config
>>> print(config.text_config) # Access text decoder configuration
>>> print(config.code_predictor_config) # Access code predictor configurationQwen3OmniMoeTextConfig
sınıf transformers.Qwen3OmniMoeTextConfig
< source >( 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 = Nonevocab_size: int = 3584hidden_size: int = 2048intermediate_size: int = 18944num_hidden_layers: int = 28num_attention_heads: int = 28num_key_value_heads: int = 4hidden_act: str = 'silu'max_position_embeddings: int = 32768initializer_range: float = 0.02rms_norm_eps: float = 1e-06use_cache: bool = Truerope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = Noneattention_bias: bool = Falsesliding_window: int | None = Noneattention_dropout: float | int = 0.0decoder_sparse_step: int = 1moe_intermediate_size: int = 768num_experts_per_tok: int = 8num_experts: int = 128norm_topk_prob: bool = Trueoutput_router_logits: bool = Falserouter_aux_loss_coef: float = 0.001mlp_only_layers: list[int] | None = Nonepad_token_id: int | None = Nonebos_token_id: int | None = Noneeos_token_id: int | list[int] | None = None )
Parametreler
- vocab_size (
int, isteğe bağlı, varsayılan3584) — Modelin sözlük boyutu.input_idsile temsil edilebilecek farklı token sayısını belirler. - hidden_size (
int, isteğe bağlı, varsayılan2048) — Gizli temsillerin boyutu. - intermediate_size (
int, isteğe bağlı, varsayılan18944) — MLP temsillerinin boyutu. - num_hidden_layers (
int, isteğe bağlı, varsayılan28) — Transformer çözücüdeki gizli katman sayısı. - num_attention_heads (
int, isteğe bağlı, varsayılan28) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı. - num_key_value_heads (
int, isteğe bağlı, varsayılan4) — Bu, Grouped Query Attention uygulamasında kullanılacak key_value başlarının sayısıdır.num_key_value_heads=num_attention_headsise model Multi Head Attention (MHA) kullanır,num_key_value_heads=1ise model Multi Query Attention (MQA) kullanır, aksi halde GQA kullanılır. Çok başlı bir checkpoint'i GQA checkpoint'ine dönüştürürken, her grup key ve value başı, o gruptaki tüm orijinal başların ortalama havuzlanması (meanpooling) ile oluşturulmalıdır. Daha fazla ayrıntı için bu makaleye göz atın. Belirtilmezse, varsayılan olaraknum_attention_headskullanılır. - hidden_act (
str, isteğe bağlı, varsayılansilu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin,"gelu","relu","silu"vb. - max_position_embeddings (
int, isteğe bağlı, varsayılan32768) — Bu modelin kullanılabileceği en uzun dizi uzunluğu. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - rms_norm_eps (
float, isteğe bağlı, varsayılan1e-06) — rms normalizasyon katmanları tarafından kullanılan epsilon. - use_cache (
bool, isteğe bağlı, varsayılanTrue) — Modelin son anahtar/değer dikkatlerini (tüm modellerde kullanılmaz) döndürüp döndürmeyeceği. Yalnızcaconfig.is_decoder=Trueolduğunda veya model yalnızca çözücü tabanlı üretken bir model olduğunda geçerlidir. - rope_parameters (
Union[~modeling_rope_utils.RopeParameters, dict], isteğe bağlı) — RoPE gömme yapılandırma parametrelerini içeren sözlük. Sözlük,rope_thetaiçin bir değer ve daha uzunmax_position_embeddingsile RoPE kullanmak istiyorsanız ölçekleme için kullanılan isteğe bağlı parametreleri içermelidir. - attention_bias (
bool, isteğe bağlı, varsayılanFalse) — Öz-dikkat sırasında sorgu, anahtar, değer ve çıktı projeksiyon katmanlarında önyargı (bias) kullanılıp kullanılmayacağı. - sliding_window (
int, isteğe bağlı) — Kayan pencere dikkat penceresi boyutu.Noneise kayan pencere uygulanmaz. - attention_dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Dikkat olasılıkları için dropout oranı. - decoder_sparse_step (
int, isteğe bağlı, varsayılan 1) — MoE katmanının sıklığı. - moe_intermediate_size (
int, isteğe bağlı, varsayılan768) — Yönlendirilen uzman MLP'lerinin ara boyutu. - num_experts_per_tok (
int, isteğe bağlı, varsayılan8) — Her tokenın yönlendirileceği uzman sayısı. Bu, token seçimli yönlendirmede top-k değeridir. - num_experts (
int, isteğe bağlı, varsayılan128) — MoE katmanlarındaki yönlendirilmiş uzmanların sayısı. - norm_topk_prob (
bool, isteğe bağlı, varsayılanTrue) — Yönlendirilen uzmanların ağırlıklarının normalize edilip edilmeyeceği. - output_router_logits (
bool, isteğe bağlı, varsayılanFalse) — Modelin router logits'lerini döndürüp döndürmeyeceği. Bu özelliğin etkinleştirilmesi, modelin yük dengeleme kaybı ve router z-kaybı dahil olmak üzere yardımcı kaybı da çıkarmasına olanak tanır. - router_aux_loss_coef (
float, isteğe bağlı, varsayılan0.001) — Yardımcı yük dengeleme kaybı katsayısı. MoE modellerinde dengesiz uzman yönlendirmesini cezalandırmak için kullanılır. - mlp_only_layers (
list[int], isteğe bağlı, varsayılan[]) — Qwen3OmniMoeTextSparseMoeBlock yerine Qwen3OmniMoeTextMLP kullanan katmanları belirtir. Liste, num_layers katman varsa 0'dan num_layers-1'e kadar katman indekslerini içerir.mlp_only_layersboşsa, seyrelmedecoder_sparse_stepile belirlenir. - pad_token_id (
int, isteğe bağlı) — Sözlükte dolgu için kullanılan token kimliği. - bos_token_id (
int, isteğe bağlı) — Sözlükte akış başlangıcı için kullanılan token kimliği. - eos_token_id (
Union[int, list[int]], isteğe bağlı) — Sözlükte akış sonu için kullanılan token kimliği.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
>>> from transformers import Qwen3OmniMoeTextModel, Qwen3OmniMoeTextConfig
>>> # Initializing a Qwen3OmniMoeText style configuration
>>> configuration = Qwen3OmniMoeTextConfig()
>>> # Initializing a model from the Qwen3-15B-A2B" style configuration
>>> model = Qwen3OmniMoeTextModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configQwen3OmniMoeVisionEncoderConfig
sınıf transformers.Qwen3OmniMoeVisionEncoderConfig
< source >( 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 = Nonedepth: int = 27hidden_size: int = 1152hidden_act: str = 'gelu_pytorch_tanh'intermediate_size: int = 4304num_heads: int = 16in_channels: int = 3patch_size: int | list[int] | tuple[int, int] = 16spatial_merge_size: int = 2temporal_patch_size: int | list[int] | tuple[int, int] = 2out_hidden_size: int = 3584num_position_embeddings: int = 2304deepstack_visual_indexes: list[int] | tuple[int, ...] = (8, 16, 24)initializer_range: float = 0.02rope_parameters: dict | None = None )
Parametreler
- depth (
int, isteğe bağlı, varsayılan27) — Görüntü kodlayıcıdaki Transformer katmanlarının sayısı. - hidden_size (
int, isteğe bağlı, varsayılan1152) — Gizli temsillerin boyutu. - hidden_act (
str, isteğe bağlı, varsayılangelu_pytorch_tanh) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin,"gelu","relu","silu"vb. - intermediate_size (
int, isteğe bağlı, varsayılan4304) — MLP temsillerinin boyutu. - num_heads (
int, isteğe bağlı, varsayılan16) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı. - in_channels (
int, isteğe bağlı, varsayılan3) — Giriş kanal sayısı. - patch_size (
Union[int, list[int], tuple[int, int]], isteğe bağlı, varsayılan16) — Her yamanın boyutu (çözünürlüğü). - spatial_merge_size (
int, isteğe bağlı, varsayılan2) — Komşu yamaları birleştirerek görsel jeton sayısını azaltmak için kullanılan uzamsal birleştirme penceresinin boyutu. - temporal_patch_size (
Union[int, list[int], tuple[int, int]], isteğe bağlı, varsayılan2) — Video girdileri için 3D yama gömümünde kullanılan zamansal yama boyutu. - out_hidden_size (
int, isteğe bağlı, varsayılan 3584) — Görüntü modelinin çıktı gizli boyutu. - num_position_embeddings (
int, isteğe bağlı, varsayılan 2304) — Bu modelin kullanılabileceği en büyük dizi uzunluğu - deepstack_visual_indexes (
list[int], isteğe bağlı, varsayılan[8, 16, 24]) — Deepstack gömme katmanlarının indeksleri. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - rope_parameters (
dict, isteğe bağlı) — RoPE gömme yapılandırma parametrelerini içeren sözlük. Sözlük,rope_thetaiçin bir değer ve daha uzunmax_position_embeddingsile RoPE kullanmak istiyorsanız ölçekleme için kullanılan isteğe bağlı parametreleri içermelidir.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Qwen3OmniMoeAudioEncoderConfig
sınıf transformers.Qwen3OmniMoeAudioEncoderConfig
< source >( 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 = Nonenum_mel_bins: int = 128encoder_layers: int = 32encoder_attention_heads: int = 20encoder_ffn_dim: int = 5120d_model: int = 1280dropout: float | int = 0.0attention_dropout: float | int = 0.0activation_function: str = 'gelu'activation_dropout: float | int = 0.0scale_embedding: bool = Falseinitializer_range: float = 0.02max_source_positions: int = 1500n_window: int = 50output_dim: int = 3584n_window_infer: int = 800conv_chunksize: int = 500downsample_hidden_size: int = 480 )
Parametreler
- num_mel_bins (
int, isteğe bağlı, varsayılan128) — Giriş başına kullanılan mel özellik sayısı.AutoFeatureExtractorsınıfında kullanılan değerle eşleşmelidir. - encoder_layers (
int, isteğe bağlı, varsayılan32) — Transformer kodlayıcısındaki gizli katman sayısı. Ayarlanmazsanum_layersile aynı değeri kullanır. - encoder_attention_heads (
int, isteğe bağlı, varsayılan20) — Transformer kodlayıcısındaki her dikkat katmanı için dikkat başı sayısı. - encoder_ffn_dim (
int, isteğe bağlı, varsayılan5120) — Encoder'daki “ara” (genellikle feed-forward olarak adlandırılan) katmanın boyutluluğu. - d_model (
int, isteğe bağlı, varsayılan1280) — Kodlayıcı katmanlarının ve pooler katmanının boyutu. - dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Tüm dropout katmanları için oran. - attention_dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Dikkat olasılıkları için dropout oranı. - activation_function (
str, isteğe bağlı, varsayılangelu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin,"gelu","relu","silu"vb. - activation_dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Tamamen bağlı katmandaki aktivasyonlar için dropout oranı. - scale_embedding (
bool, isteğe bağlı, varsayılanFalse) — Gömme değerlerinin sqrt(d_model) ile bölünerek ölçeklendirilip ölçeklendirilmeyeceğini belirtir. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - max_source_positions (
int, isteğe bağlı, varsayılan 1500) — Girdiler için maksimum dizi uzunluğu - n_window (
int, isteğe bağlı, varsayılan 50) — Pencere sayısı - output_dim (
int, isteğe bağlı, varsayılan 3584) — Çıktı boyutu - n_window_infer (
int, isteğe bağlı, varsayılan800) — Çıkarım sırasında kullanılan pencere sayısı - conv_chunksize (
int, isteğe bağlı, varsayılan500) — Katlama katmanına giren her girdinin parça boyutu - downsample_hidden_size (
int, isteğe bağlı, varsayılan480) — Örnekleme azaltma katmanındaki gizli boyut
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Qwen3OmniMoeTalkerTextConfig
sınıf transformers.Qwen3OmniMoeTalkerTextConfig
< source >( 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 = Nonevocab_size: int = 3072hidden_size: int = 1024intermediate_size: int = 2048num_hidden_layers: int = 20num_attention_heads: int = 16num_key_value_heads: int = 2hidden_act: str = 'silu'max_position_embeddings: int = 32768initializer_range: float = 0.02rms_norm_eps: float = 1e-06use_cache: bool = Truetie_word_embeddings: bool = Falserope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = Noneattention_bias: bool = Falsesliding_window: int | None = Noneattention_dropout: float | int = 0.0decoder_sparse_step: int = 1moe_intermediate_size: int = 384num_experts_per_tok: int = 8num_experts: int = 128norm_topk_prob: bool = Falseoutput_router_logits: bool = Falserouter_aux_loss_coef: float = 0.001mlp_only_layers: list[int] | None = Nonepad_token_id: int | None = Nonebos_token_id: int | None = Noneeos_token_id: int | list[int] | None = None )
Parametreler
- vocab_size (
int, isteğe bağlı, varsayılan3072) — Modelin sözlük boyutu.input_idsile temsil edilebilecek farklı token sayısını belirler. - hidden_size (
int, isteğe bağlı, varsayılan1024) — Gizli temsillerin boyutu. - intermediate_size (
int, isteğe bağlı, varsayılan2048) — MLP temsillerinin boyutu. - num_hidden_layers (
int, isteğe bağlı, varsayılan20) — Transformer çözücüdeki gizli katman sayısı. - num_attention_heads (
int, isteğe bağlı, varsayılan16) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı. - num_key_value_heads (
int, isteğe bağlı, varsayılan2) — Bu, Grouped Query Attention uygulamasında kullanılacak key_value başlarının sayısıdır.num_key_value_heads=num_attention_headsise model Multi Head Attention (MHA) kullanır,num_key_value_heads=1ise model Multi Query Attention (MQA) kullanır, aksi halde GQA kullanılır. Çok başlı bir checkpoint'i GQA checkpoint'ine dönüştürürken, her grup key ve value başı, o gruptaki tüm orijinal başların ortalama havuzlanması (meanpooling) ile oluşturulmalıdır. Daha fazla ayrıntı için bu makaleye göz atın. Belirtilmezse, varsayılan olaraknum_attention_headskullanılır. - hidden_act (
str, isteğe bağlı, varsayılansilu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin,"gelu","relu","silu"vb. - max_position_embeddings (
int, isteğe bağlı, varsayılan32768) — Bu modelin kullanılabileceği en uzun dizi uzunluğu. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - rms_norm_eps (
float, isteğe bağlı, varsayılan1e-06) — rms normalizasyon katmanları tarafından kullanılan epsilon. - use_cache (
bool, isteğe bağlı, varsayılanTrue) — Modelin son anahtar/değer dikkatlerini (tüm modellerde kullanılmaz) döndürüp döndürmeyeceği. Yalnızcaconfig.is_decoder=Trueolduğunda veya model yalnızca çözücü tabanlı üretken bir model olduğunda geçerlidir. - tie_word_embeddings (
bool, isteğe bağlı, varsayılanFalse) — Modelintied_weights_keyseşlemesine göre ağırlık gömme bağlamalarının yapılıp yapılmayacağı. - rope_parameters (
Union[~modeling_rope_utils.RopeParameters, dict], isteğe bağlı) — RoPE gömme yapılandırma parametrelerini içeren sözlük. Sözlük,rope_thetaiçin bir değer ve daha uzunmax_position_embeddingsile RoPE kullanmak istiyorsanız ölçekleme için kullanılan isteğe bağlı parametreleri içermelidir. - attention_bias (
bool, isteğe bağlı, varsayılanFalse) — Öz-dikkat sırasında sorgu, anahtar, değer ve çıktı projeksiyon katmanlarında önyargı (bias) kullanılıp kullanılmayacağı. - sliding_window (
int, isteğe bağlı) — Kayan pencere dikkat penceresi boyutu.Noneise kayan pencere uygulanmaz. - attention_dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Dikkat olasılıkları için dropout oranı. - decoder_sparse_step (
int, isteğe bağlı, varsayılan 1) — MoE katmanının sıklığı. - moe_intermediate_size (
int, isteğe bağlı, varsayılan384) — Yönlendirilen uzman MLP'lerinin ara boyutu. - num_experts_per_tok (
int, isteğe bağlı, varsayılan8) — Her tokenın yönlendirileceği uzman sayısı. Bu, token seçimli yönlendirmede top-k değeridir. - num_experts (
int, isteğe bağlı, varsayılan128) — MoE katmanlarındaki yönlendirilmiş uzmanların sayısı. - norm_topk_prob (
bool, isteğe bağlı, varsayılanFalse) — Yönlendirilen uzmanların ağırlıklarının normalize edilip edilmeyeceği. - output_router_logits (
bool, isteğe bağlı, varsayılanFalse) — Modelin router logits'lerini döndürüp döndürmeyeceği. Bu özelliğin etkinleştirilmesi, modelin yük dengeleme kaybı ve router z-kaybı dahil olmak üzere yardımcı kaybı da çıkarmasına olanak tanır. - router_aux_loss_coef (
float, isteğe bağlı, varsayılan0.001) — Yardımcı yük dengeleme kaybı katsayısı. MoE modellerinde dengesiz uzman yönlendirmesini cezalandırmak için kullanılır. - mlp_only_layers (
list[int], isteğe bağlı, varsayılan[]) — Qwen3OmniMoeTalkerTextSparseMoeBlock yerine Qwen3OmniMoeTalkerTextMLP kullanan katmanları belirtir. Liste, num_layers katman varsa 0'dan num_layers-1'e kadar katman indekslerini içerir.mlp_only_layersboşsa, seyrelmedecoder_sparse_stepile belirlenir. - pad_token_id (
int, isteğe bağlı) — Sözlükte dolgu için kullanılan token kimliği. - bos_token_id (
int, isteğe bağlı) — Sözlükte akış başlangıcı için kullanılan token kimliği. - eos_token_id (
Union[int, list[int]], isteğe bağlı) — Sözlükte akış sonu için kullanılan token kimliği.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
>>> from transformers import Qwen3OmniMoeTalkerTextModel, Qwen3OmniMoeTalkerTextConfig
>>> # Initializing a Qwen3OmniMoeTalkerText style configuration
>>> configuration = Qwen3OmniMoeTalkerTextConfig()
>>> # Initializing a model from the Qwen3-15B-A2B" style configuration
>>> model = Qwen3OmniMoeTalkerTextModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configQwen3OmniMoeTalkerCodePredictorConfig
sınıf transformers.Qwen3OmniMoeTalkerCodePredictorConfig
< source >( 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 = Nonevocab_size: int = 2048hidden_size: int = 1024intermediate_size: int = 3072num_hidden_layers: int = 5num_attention_heads: int = 16num_key_value_heads: int = 8head_dim: int = 128hidden_act: str = 'silu'max_position_embeddings: int = 32768initializer_range: float = 0.02rms_norm_eps: float = 1e-06use_cache: bool = Truetie_word_embeddings: bool = Falserope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = Noneattention_bias: bool = Falsesliding_window: int | None = Nonemax_window_layers: int = 28layer_types: list[str] | None = Noneattention_dropout: float | int = 0.0pad_token_id: int | None = Nonebos_token_id: int | None = Noneeos_token_id: int | list[int] | None = Nonenum_code_groups: int = 32 )
Parametreler
- vocab_size (
int, isteğe bağlı, varsayılan2048) — Modelin sözlük boyutu.input_idsile temsil edilebilecek farklı token sayısını tanımlar. - hidden_size (
int, isteğe bağlı, varsayılan1024) — Gizli temsillerin boyutu. - intermediate_size (
int, isteğe bağlı, varsayılan3072) — MLP temsillerinin boyutu. - num_hidden_layers (
int, isteğe bağlı, varsayılan5) — Transformer çözücüdeki gizli katman sayısı. - num_attention_heads (
int, isteğe bağlı, varsayılan16) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı. - num_key_value_heads (
int, isteğe bağlı, varsayılan8) — Bu, Grouped Query Attention uygulamasında kullanılacak key_value başlarının sayısıdır.num_key_value_heads=num_attention_headsise model Multi Head Attention (MHA) kullanır,num_key_value_heads=1ise model Multi Query Attention (MQA) kullanır, aksi halde GQA kullanılır. Çok başlı bir checkpoint'i GQA checkpoint'ine dönüştürürken, her grup key ve value başı, o gruptaki tüm orijinal başların ortalama havuzlanması (meanpooling) ile oluşturulmalıdır. Daha fazla ayrıntı için bu makaleye göz atın. Belirtilmezse, varsayılan olaraknum_attention_headskullanılır. - head_dim (
int, isteğe bağlı, varsayılan128) — Dikkat başlığı boyutu. None ise, varsayılan olarak hidden_size // num_attention_heads değerini alır. - hidden_act (
str, isteğe bağlı, varsayılansilu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin,"gelu","relu","silu"vb. - max_position_embeddings (
int, isteğe bağlı, varsayılan32768) — Bu modelin kullanılabileceği en uzun dizi uzunluğu. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması. - rms_norm_eps (
float, isteğe bağlı, varsayılan1e-06) — rms normalizasyon katmanları tarafından kullanılan epsilon. - use_cache (
bool, isteğe bağlı, varsayılanTrue) — Modelin son anahtar/değer dikkatlerini (tüm modellerde kullanılmaz) döndürüp döndürmeyeceği. Yalnızcaconfig.is_decoder=Trueolduğunda veya model yalnızca çözücü tabanlı üretken bir model olduğunda geçerlidir. - tie_word_embeddings (
bool, isteğe bağlı, varsayılanFalse) — Modelintied_weights_keyseşlemesine göre ağırlık gömme bağlamalarının yapılıp yapılmayacağı. - rope_parameters (
Union[~modeling_rope_utils.RopeParameters, dict], isteğe bağlı) — RoPE gömme yapılandırma parametrelerini içeren sözlük. Sözlük,rope_thetaiçin bir değer ve daha uzunmax_position_embeddingsile RoPE kullanmak istiyorsanız ölçekleme için kullanılan isteğe bağlı parametreleri içermelidir. - attention_bias (
bool, isteğe bağlı, varsayılanFalse) — Öz-dikkat sırasında sorgu, anahtar, değer ve çıktı projeksiyon katmanlarında önyargı (bias) kullanılıp kullanılmayacağı. - sliding_window (
int, isteğe bağlı) — Kayan pencere dikkat penceresi boyutu.Noneise kayan pencere uygulanmaz. - max_window_layers (
int, isteğe bağlı, varsayılan28) — Tam dikkat kullanan katman sayısı. İlkmax_window_layerskatman tam dikkat kullanırken, bu katmanlardan sonraki ek katmanlar SWA (Sliding Window Attention) kullanır. - layer_types (
list[str], isteğe bağlı) — Her katman indeksini ilgili katman türüyle açıkça eşleyen bir liste. Sağlanmazsa, config değerlerine göre otomatik olarak oluşturulur. - attention_dropout (
Union[float, int], isteğe bağlı, varsayılan0.0) — Dikkat olasılıkları için dropout oranı. - pad_token_id (
int, isteğe bağlı) — Sözlükte dolgu için kullanılan token kimliği. - bos_token_id (
int, isteğe bağlı) — Sözlükte akış başlangıcı için kullanılan token kimliği. - eos_token_id (
Union[int, list[int]], isteğe bağlı) — Sözlükte akış sonu için kullanılan token kimliği. - num_code_groups (
int, isteğe bağlı, varsayılan 32) — Tahmin edilen akustik token dizisinde kullanılan kod kitabı gruplarının sayısı, çoklu kod kitabı VQ temsiline karşılık gelir.
Bu, bir Qwen3 Omni MoeModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Qwen3 Omni Moe modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, Qwen/Qwen3-Omni-30B-A3B-Instruct modelinin yapılandırmasına benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Qwen3OmniMoeForConditionalGeneration
Qwen3OmniMoeThinkerTextModel
sınıf transformers.Qwen3OmniMoeThinkerTextModel
< source >( config: Qwen3OmniMoeTextConfig )
Parametreler
- config (Qwen3OmniMoeTextConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Qwen3OmniMoeThinker'in metin kısmı, saf bir metin-only model değildir; çünkü DeepStack, görsel özellikleri erken gizli durumlara entegre eder.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneinputs_embeds: typing.Optional[torch.Tensor] = Noneuse_cache: bool | None = Nonevisual_pos_masks: typing.Optional[torch.Tensor] = Nonedeepstack_visual_embeds: list[torch.Tensor] | None = None**kwargs: *<class 'transformers.modeling_flash_attention_utils.FlashAttentionKwargs'> ) → MoeModelOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (
torch.Tensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- position_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Girdi dizilerindeki her token'ın konum gömme (position embedding) içindeki konum indeksleri. Seçim aralığı[0, config.n_positions - 1]. - past_key_values (
~cache_utils.Cache, isteğe bağlı) — Sıralı çözümlemeyi hızlandırmak için kullanılabilen önceden hesaplanmış gizli durumlar (self-attention ve cross-attention bloklarındaki anahtar ve değerler). Bu genelliklepast_key_valuesdeğerinin, çözümlemenin önceki bir aşamasında model tarafından döndürülenuse_cache=Trueveyaconfig.use_cache=True.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size), isteğe bağlı) — İsteğe bağlı olarak,input_idsyerine gömülü bir temsil doğrudan geçmeyi tercih edebilirsiniz. Bu,input_idsdizinlerini ilgili vektörlere dönüştürme biçimi üzerinde modelin dahili gömme arama matrisinden daha fazla kontrol sahibi olmak istiyorsanız faydalıdır. - use_cache (
bool, isteğe bağlı) —Trueolarak ayarlanırsa,past_key_valuesanahtar değer durumları döndürülür ve çözümlemeyi hızlandırmak için kullanılabilir (bkz.past_key_values). - visual_pos_masks (
torch.Tensor, şekli(batch_size, seqlen), isteğe bağlı) — Görsel konumların maskesi. - deepstack_visual_embeds (
list[torch.Tensor], isteğe bağlı) — Derin yığın görsel gömme değerleri. Biçimi (num_layers, visual_seqlen, embed_dim)'dir. Özellik, farklı görsel kodlayıcı katmanlarından çıkarılır ve kodlayıcı gizli durumlarına iletilir. Bu özellik, DeepStack makalesinden (https://arxiv.org/abs/2406.04334) gelmektedir.
Dönüş değeri
MoeModelOutputWithPast veya tuple(torch.Tensor)
MoeModelOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Qwen3OmniMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeThinkerTextModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler ve isteğe bağlı olarakconfig.is_encoder_decoder=Trueise cross-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
router_logits (
tuple(torch.Tensor), isteğe bağlı,output_router_probs=Trueveconfig.add_router_probs=Truegeçirildiğinde veyaconfig.output_router_probs=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, sequence_length, num_experts).MoE yönlendiricileri tarafından hesaplanan ham yönlendirici logitleri (softmax sonrası), bu terimler Mixture of Experts modelleri için yardımcı kaybı hesaplamakta kullanılır.
Qwen3OmniMoeThinkerModel
sınıf transformers.Qwen3OmniMoeThinkerModel
< source >( config: Qwen3OmniMoeThinkerConfig )
Parametreler
- config (Qwen3OmniMoeThinkerConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Ses omurgası ve bir dil modelinden oluşan Qwen2.5OmniThinker modeli.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids = Noneinput_features = Nonepixel_values = Nonepixel_values_videos = Noneimage_grid_thw = Nonevideo_grid_thw = Noneattention_mask = Nonefeature_attention_mask = Noneaudio_feature_lengths = Noneposition_ids = Nonepast_key_values = Noneinputs_embeds = Noneuse_cache = Noneoutput_router_logits: bool | None = Noneuse_audio_in_video = Nonevideo_second_per_grid = Nonemm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None**kwargs ) → MoeModelOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (`
of shape(batch_size, sequence_length)`) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- input_features (`
of shape(batch_size, sequence_length, feature_dim)`) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri WhisperFeatureExtractor kullanılarak elde edilebilir. Ayrıntılar için WhisperFeatureExtractor.call() bölümüne bakın (Qwen3OmniMoeProcessor, sesleri işlemek için WhisperFeatureExtractor kullanır). - pixel_values (`
of shape(batch_size, num_channels, image_size, image_size)`) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri Qwen2VLImageProcessor kullanılarak elde edilebilir. Ayrıntılar için Qwen2VLImageProcessor.call() bölümüne bakın (Qwen3OmniMoeProcessor, görüntü işleme için Qwen2VLImageProcessor kullanır). - pixel_values_videos (`
of shape(batch_size, num_frames, num_channels, frame_size, frame_size)`) — Girdi videosuna karşılık gelen tensörler. Videoların piksel değerleri Qwen2VLVideoProcessor kullanılarak elde edilebilir. Ayrıntılar için Qwen2VLVideoProcessor.call() bölümüne bakın (Qwen3OmniMoeProcessor, video işleme için Qwen2VLVideoProcessor kullanır). - image_grid_thw (`
of shape(num_images, 3)`) — LLM'deki her bir görüntünün özellik biçiminin zaman, yükseklik ve genişlik değerleri. - video_grid_thw (`
of shape(num_videos, 3)`) — LLM'deki her bir video için özellik şeklinin zaman, yükseklik ve genişlik boyutları. - attention_mask (`
of shape(batch_size, sequence_length)) -- Mask to avoid performing attention on padding token indices. Mask values selected in[0, 1]`:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- feature_attention_mask (
torch.Tensorşeklinde(batch_size, feature_sequence_length), isteğe bağlı) — Doldurma (padding) özellik indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- audio_feature_lengths (
torch.LongTensor, şekli(num_audios), isteğe bağlı) — LLM'deki her sesin özellik şekil uzunluğu. - position_ids (`
of shape(batch_size, sequence_length)) -- Indices of positions of each input sequence tokens in the position embeddings. Selected in the range[0, config.n_positions - 1]`. - past_key_values (`
) -- Pre-computed hidden-states (key and values in the self-attention blocks and in the cross-attention blocks) that can be used to speed up sequential decoding. This typically consists in thepast_key_valuesreturned by the model at a previous stage of decoding, whenuse_cache=Trueorconfig.use_cache=True`.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (`
of shape(batch_size, sequence_length, hidden_size)) -- Optionally, instead of passinginput_idsyou can choose to directly pass an embedded representation. This is useful if you want more control over how to convertinput_ids` indices into associated vectors than the model’s internal embedding lookup matrix. - use_cache (`
) -- If set toTrue,past_key_valueskey value states are returned and can be used to speed up decoding (seepast_key_values`). - output_router_logits (
bool, isteğe bağlı) — Tüm yönlendiricilerin (router) logit değerlerinin döndürülüp döndürülmeyeceğini belirtir. Yönlendirici kaybının (router loss) hesaplanmasında faydalıdırlar ve çıkarım sırasında döndürülmemelidir. - use_audio_in_video (
bool, isteğe bağlı) — Videoda ses izinin kullanılıp kullanılmayacağı;process_audio_infoiçindeki parametreyle aynı olmalıdır. - video_second_per_grid (
torch.LongTensor, şekli(num_videos), isteğe bağlı) — Her video için ızgara başına saniye sayısı, zamansal özellik eşlemesi için kullanılır. - mm_encoder_outputs (
dict[str, ~modeling_outputs.BaseModelOutputWithPooling], isteğe bağlı) — Anahtarları desteklenen modaliteler, değerleri ise o modalite için kodlanmış çıktılar olan bir sözlük. Her kodlanmış çıktı, (pooler_output, isteğe bağlı:last_hidden_states, isteğe bağlı:hidden_states, isteğe bağlı:attentions)pooler_output(şekli(batch_size, sequence_length, hidden_size), isteğe bağlı) biçiminde bir demettir ve kodlayıcının çok modlu özelliklerinin metin gömme (embedding) değerleriyle birleştirilmiş bir dizisidir.
Dönüş değeri
MoeModelOutputWithPast veya tuple(torch.Tensor)
MoeModelOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Qwen3OmniMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeThinkerModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler ve isteğe bağlı olarakconfig.is_encoder_decoder=Trueise cross-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
router_logits (
tuple(torch.Tensor), isteğe bağlı,output_router_probs=Trueveconfig.add_router_probs=Truegeçirildiğinde veyaconfig.output_router_probs=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, sequence_length, num_experts).MoE yönlendiricileri tarafından hesaplanan ham yönlendirici logitleri (softmax sonrası), bu terimler Mixture of Experts modelleri için yardımcı kaybı hesaplamakta kullanılır.
Qwen3OmniMoeThinkerForConditionalGeneration
sınıf transformers.Qwen3OmniMoeThinkerForConditionalGeneration
< source >( config: Qwen3OmniMoeThinkerConfig )
forward
< source >( input_ids = Noneinput_features = Nonepixel_values = Nonepixel_values_videos = Noneimage_grid_thw = Nonevideo_grid_thw = Noneattention_mask = Nonefeature_attention_mask = Noneaudio_feature_lengths = Noneposition_ids = Nonepast_key_values = Noneinputs_embeds = Nonelabels = Noneuse_cache = Noneoutput_router_logits: bool | None = Noneuse_audio_in_video = Nonevideo_second_per_grid = Nonemm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None**kwargs ) → MoeCausalLMOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (`
of shape(batch_size, sequence_length)`) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- input_features (`
of shape(batch_size, sequence_length, feature_dim)`) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri WhisperFeatureExtractor kullanılarak elde edilebilir. Ayrıntılar için WhisperFeatureExtractor.call() bölümüne bakın (Qwen3OmniMoeProcessor, sesleri işlemek için WhisperFeatureExtractor kullanır). - pixel_values (`
of shape(batch_size, num_channels, image_size, image_size)`) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri Qwen2VLImageProcessor kullanılarak elde edilebilir. Ayrıntılar için Qwen2VLImageProcessor.call() bölümüne bakın (Qwen3OmniMoeProcessor, görüntü işleme için Qwen2VLImageProcessor kullanır). - pixel_values_videos (`
of shape(batch_size, num_frames, num_channels, frame_size, frame_size)`) — Girdi videosuna karşılık gelen tensörler. Videoların piksel değerleri Qwen2VLVideoProcessor kullanılarak elde edilebilir. Ayrıntılar için Qwen2VLVideoProcessor.call() bölümüne bakın (Qwen3OmniMoeProcessor, video işleme için Qwen2VLVideoProcessor kullanır). - image_grid_thw (`
of shape(num_images, 3)`) — LLM'deki her bir görüntünün özellik biçiminin zaman, yükseklik ve genişlik değerleri. - video_grid_thw (`
of shape(num_videos, 3)`) — LLM'deki her bir video için özellik şeklinin zaman, yükseklik ve genişlik boyutları. - attention_mask (`
of shape(batch_size, sequence_length)) -- Mask to avoid performing attention on padding token indices. Mask values selected in[0, 1]`:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- feature_attention_mask (
torch.Tensorşeklinde(batch_size, feature_sequence_length), isteğe bağlı) — Doldurma (padding) özellik indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- audio_feature_lengths (
torch.LongTensor, şekli(num_audios), isteğe bağlı) — LLM'deki her sesin özellik şekil uzunluğu. - position_ids (`
of shape(batch_size, sequence_length)) -- Indices of positions of each input sequence tokens in the position embeddings. Selected in the range[0, config.n_positions - 1]`. - past_key_values (`
) -- Pre-computed hidden-states (key and values in the self-attention blocks and in the cross-attention blocks) that can be used to speed up sequential decoding. This typically consists in thepast_key_valuesreturned by the model at a previous stage of decoding, whenuse_cache=Trueorconfig.use_cache=True`.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (`
of shape(batch_size, sequence_length, hidden_size)) -- Optionally, instead of passinginput_idsyou can choose to directly pass an embedded representation. This is useful if you want more control over how to convertinput_ids` indices into associated vectors than the model’s internal embedding lookup matrix. - labels (`
of shape(batch_size, sequence_length)) -- Labels for computing the masked language modeling loss. Indices should either be in[0, …, config.vocab_size]or -100 (seeinput_idsdocstring). Tokens with indices set to-100are ignored (masked), the loss is only computed for the tokens with labels in[0, …, config.vocab_size]`. - use_cache (`
) -- If set toTrue,past_key_valueskey value states are returned and can be used to speed up decoding (seepast_key_values`). - output_router_logits (
bool, isteğe bağlı) — Tüm yönlendiricilerin (router) logit değerlerinin döndürülüp döndürülmeyeceğini belirtir. Yönlendirici kaybının (router loss) hesaplanmasında faydalıdırlar ve çıkarım sırasında döndürülmemelidir. - use_audio_in_video (
bool, isteğe bağlı) — Videoda ses izinin kullanılıp kullanılmayacağı;process_audio_infoiçindeki parametreyle aynı olmalıdır. - video_second_per_grid (
torch.LongTensor, şekli(num_videos), isteğe bağlı) — Her video için ızgara başına saniye sayısı, zamansal özellik eşlemesi için kullanılır. - mm_encoder_outputs (
dict[str, ~modeling_outputs.BaseModelOutputWithPooling], isteğe bağlı) — Anahtarları desteklenen modaliteler, değerleri ise o modalite için kodlanmış çıktılar olan bir sözlük. Her kodlanmış çıktı, (pooler_output, isteğe bağlı:last_hidden_states, isteğe bağlı:hidden_states, isteğe bağlı:attentions)pooler_output(şekli(batch_size, sequence_length, hidden_size), isteğe bağlı) biçiminde bir demettir ve kodlayıcının çok modlu özelliklerinin metin gömme (embedding) değerleriyle birleştirilmiş bir dizisidir.
Dönüş değeri
MoeCausalLMOutputWithPast veya tuple(torch.Tensor)
MoeCausalLMOutputWithPast veya bir torch.Tensor demeti (return_dict=False geçirildiğinde veya config.return_dict=False olduğunda), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeThinkerForConditionalGeneration forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
loss (
torch.Tensor, şekli(1,), isteğe bağlı,labelssağlandığında döndürülür) — Dil modelleme kaybı (sonraki token tahmini için).logits (
torch.Tensor, şekli(batch_size, sequence_length, config.vocab_size)) — Dil modelleme başlığının tahmin puanları (SoftMax öncesi her sözlük jetonu için puanlar).aux_loss (
torch.Tensor, isteğe bağlı,output_router_logits=Truegeçirildiğinde veyaconfig.output_router_logits=Trueolduğunda ve model, yük dengeleme kaybı ile router'ını eğittiğinde döndürülür) — Seyrek modüller için yük dengeleme yardımcı kaybı. Uzmanlarını router sapması ile dengeleyen modeller (DeepSeek-V3 ve ondan türetilen mimariler) buradaNonedöndürürken yine derouter_logitsdöndürür.router_logits (
tuple(torch.Tensor), isteğe bağlı,output_router_logits=Truegeçirildiğinde veyaconfig.output_router_logits=Trueolduğunda döndürülür) —torch.Tensor(her seyrek katman için bir tane) içeren bir tuple, şekli(batch_size * sequence_length, num_experts).MoE yönlendiricileri tarafından hesaplanan ham yönlendirici logitleri. Bunlar, bir yük dengeleme kaybı hesaplamak veya tokenlerin uzmanlara nasıl dağıtıldığını incelemek için kullanılabilir.
past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
Örnek:
>>> from transformers import Qwen3OmniMoeProcessor, Qwen3OmniMoeThinkerForConditionalGeneration
>>> thinker = Qwen3OmniMoeThinkerForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-Omni-7B")
>>> processor = Qwen3OmniMoeProcessor.from_pretrained("Qwen/Qwen2.5-Omni-7B")
>>> conversations = [
>>> {'role': 'system', 'content': 'You are a helpful voice chat bot, and please respond to me in a casual conversation manner using random voice.'},
>>> {"role": "user", "content": [
>>> {"type": "image", "image": "https://www.ilankelman.org/stopsigns/australia.jpg"},
>>> {"type": "audio", "audio": "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/audio/glass_breaking.mp3"},
>>> ]},
>>> ]
>>> inputs = processor.apply_chat_template(
conversations,
tokenize=True,
add_generation_prompt=True,
return_dict=True,
return_tensors="pt"
)
>>> # Generate
>>> generation = thinker.generate(**inputs, max_new_tokens=2048)
>>> generate_ids = generation[:, inputs.input_ids.size(1):]
>>> response = processor.batch_decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]get_audio_features
< source >( input_features: Tensorfeature_attention_mask: typing.Optional[torch.LongTensor] = Noneaudio_feature_lengths: typing.Optional[torch.LongTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)
Parametreler
- input_features (
torch.Tensor) — Girdi seslerine karşılık gelen tensörler. - feature_attention_mask (
torch.LongTensor, isteğe bağlı) — Doldurma (padding) özellik indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske.[0, 1]aralığında seçilen maske değerleri: - audio_feature_lengths (
torch.LongTensor, şekli(num_audios), isteğe bağlı) — LLM'deki her sesin özellik şekil uzunluğu.
Dönüş değeri
BaseModelOutputWithPooling veya tuple(torch.Tensor)
A BaseModelOutputWithPooling veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.pooler_output (
torch.Tensor, şekli(batch_size, hidden_size)) — Sıranın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlar üzerinden ek işlemden geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonu üzerinden işlenmesinden sonra döndürülen değerdir. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
Örnek:
>>> from PIL import Image
>>> from transformers import AutoProcessor, Qwen3OmniMoeThinkerForConditionalGeneration
>>> model = Qwen3OmniMoeThinkerForConditionalGeneration.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> processor = AutoProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> messages = [
... {
... "role": "user", "content": [
... {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/pipeline-cat-chonk.jpeg"},
... {"type": "text", "text": "Where is the cat standing?"},
... ]
... },
... ]
>>> inputs = processor.apply_chat_template(
... messages,
... tokenize=True,
... return_dict=True,
... return_tensors="pt",
... add_generation_prompt=True
... )
>>> # Generate
>>> generate_ids = model.generate(**inputs)
>>> processor.batch_decode(generate_ids, skip_special_tokens=True)[0]get_image_features
< source >( pixel_values: Tensorimage_grid_thw: typing.Optional[torch.LongTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithDeepstackFeatures or tuple(torch.Tensor)
Parametreler
- pixel_values (
torch.Tensor, şekli(batch_size, num_channels, image_size, image_size)) — Girdi görüntülerine karşılık gelen tensörler. - image_grid_thw (
torch.LongTensor, şekli(num_images, 3), isteğe bağlı) — LLM'deki her bir görüntünün özellik şeklinin zaman, yükseklik ve genişlik değerleri.
Dönüş değeri
BaseModelOutputWithDeepstackFeatures veya tuple(torch.Tensor)
BaseModelOutputWithDeepstackFeatures veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Qwen3OmniMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.pooler_output (
torch.Tensor, şekli(batch_size, hidden_size)) — Sıranın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlar üzerinden ek işlemden geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonu üzerinden işlenmesinden sonra döndürülen değerdir. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
deepstack_features (
List[torch.Tensor], isteğe bağlı) — deepstack katmanlarından gelen gizli durumların (özellik haritalarının) listesi.
Örnek:
>>> from PIL import Image
>>> from transformers import AutoProcessor, Qwen3OmniMoeThinkerForConditionalGeneration
>>> model = Qwen3OmniMoeThinkerForConditionalGeneration.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> processor = AutoProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> messages = [
... {
... "role": "user", "content": [
... {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/pipeline-cat-chonk.jpeg"},
... {"type": "text", "text": "Where is the cat standing?"},
... ]
... },
... ]
>>> inputs = processor.apply_chat_template(
... messages,
... tokenize=True,
... return_dict=True,
... return_tensors="pt",
... add_generation_prompt=True
... )
>>> # Generate
>>> generate_ids = model.generate(**inputs)
>>> processor.batch_decode(generate_ids, skip_special_tokens=True)[0]get_video_features
< source >( pixel_values_videos: Tensorvideo_grid_thw: typing.Optional[torch.LongTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithDeepstackFeatures or tuple(torch.Tensor)
Parametreler
- pixel_values_videos (
torch.Tensor, şekli(batch_size, num_channels, image_size, image_size)) — Girdi videolarına karşılık gelen tensörler. - video_grid_thw (
torch.LongTensor, şekli(num_videos, 3), isteğe bağlı) — LLM'deki her bir video için özellik şeklinin zaman, yükseklik ve genişlik değerleri.
Dönüş değeri
BaseModelOutputWithDeepstackFeatures veya tuple(torch.Tensor)
BaseModelOutputWithDeepstackFeatures veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Qwen3OmniMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.pooler_output (
torch.Tensor, şekli(batch_size, hidden_size)) — Sıranın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlar üzerinden ek işlemden geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonu üzerinden işlenmesinden sonra döndürülen değerdir. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
deepstack_features (
List[torch.Tensor], isteğe bağlı) — deepstack katmanlarından gelen gizli durumların (özellik haritalarının) listesi.
Örnek:
>>> from PIL import Image
>>> from transformers import AutoProcessor, Qwen3OmniMoeThinkerForConditionalGeneration
>>> model = Qwen3OmniMoeThinkerForConditionalGeneration.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> processor = AutoProcessor.from_pretrained("Qwen/Qwen3-Omni-30B-A3B-Instruct")
>>> messages = [
... {
... "role": "user", "content": [
... {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/pipeline-cat-chonk.jpeg"},
... {"type": "text", "text": "Where is the cat standing?"},
... ]
... },
... ]
>>> inputs = processor.apply_chat_template(
... messages,
... tokenize=True,
... return_dict=True,
... return_tensors="pt",
... add_generation_prompt=True
... )
>>> # Generate
>>> generate_ids = model.generate(**inputs)
>>> processor.batch_decode(generate_ids, skip_special_tokens=True)[0]Qwen3OmniMoeTalkerForConditionalGeneration
sınıf transformers.Qwen3OmniMoeTalkerForConditionalGeneration
< source >( config: Qwen3OmniMoeTalkerConfig )
Parametreler
- config (Qwen3OmniMoeTalkerConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Diğer modalitelerle (ör. görsel-metinden metne üretim) koşullu token üretimi için Qwen3 Omni Moe Model.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids = Noneattention_mask = Noneuse_audio_in_video = Noneaudio_feature_lengths = Nonevideo_second_per_grid = Noneimage_grid_thw = Nonevideo_grid_thw = Noneposition_ids = Nonepast_key_values = Noneinputs_embeds = Nonelabels = Noneuse_cache = Noneoutput_router_logits = Noneresidual_codes = Nonetrailing_text_hidden = Nonetts_pad_embed = Nonegeneration_step = Nonetalker_input_ids = None**kwargs ) → MoeCausalLMOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (`
of shape(batch_size, sequence_length)`) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (`
of shape(batch_size, sequence_length)) -- Mask to avoid performing attention on padding token indices. Mask values selected in[0, 1]`:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- use_audio_in_video (
bool, isteğe bağlı) —Trueolarak ayarlanırsa, videodaki ses kullanılır. - audio_feature_lengths (
torch.LongTensor, şekli(num_audios), isteğe bağlı) — LLM'deki her sesin özellik şekil uzunluğu. - video_second_per_grid (
torch.LongTensor, şekli(num_videos), isteğe bağlı) — Her video için ızgara başına saniye sayısı, zamansal özellik eşlemesi için kullanılır. - image_grid_thw (`
of shape(num_images, 3)`) — LLM'deki her bir görüntünün özellik biçiminin zaman, yükseklik ve genişlik değerleri. - video_grid_thw (`
of shape(num_videos, 3)`) — LLM'deki her bir video için özellik şeklinin zaman, yükseklik ve genişlik boyutları. - position_ids (`
of shape(batch_size, sequence_length)) -- Indices of positions of each input sequence tokens in the position embeddings. Selected in the range[0, config.n_positions - 1]`. - past_key_values (`
) -- Pre-computed hidden-states (key and values in the self-attention blocks and in the cross-attention blocks) that can be used to speed up sequential decoding. This typically consists in thepast_key_valuesreturned by the model at a previous stage of decoding, whenuse_cache=Trueorconfig.use_cache=True`.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (`
of shape(batch_size, sequence_length, hidden_size)) -- Optionally, instead of passinginput_idsyou can choose to directly pass an embedded representation. This is useful if you want more control over how to convertinput_ids` indices into associated vectors than the model’s internal embedding lookup matrix. - labels (`
of shape(batch_size, sequence_length)) -- Labels for computing the masked language modeling loss. Indices should either be in[0, …, config.vocab_size]or -100 (seeinput_idsdocstring). Tokens with indices set to-100are ignored (masked), the loss is only computed for the tokens with labels in[0, …, config.vocab_size]`. - use_cache (`
) -- If set toTrue,past_key_valueskey value states are returned and can be used to speed up decoding (seepast_key_values`). - output_router_logits (“) — Tüm router'ların logits'lerini döndürüp döndürmeyeceğini belirtir. Router kaybını hesaplamak için kullanışlıdır ve çıkarım sırasında döndürülmemelidir.
- residual_codes (
torch.Tensor) — Önceki adımda tahmin edilen kalan kodlar. - trailing_text_hidden (
torch.Tensor) — İlk token'dan sonra thinker'dan gelen gizli metin durumları. - tts_pad_embed (
torch.Tensor) —tts_pad_token_idiçin gömme tensörü. - generation_step (
int) — Prefill'den bu yana geçen üretim adımı,trailing_text_hiddenile senkronize edilmek için kullanılır. - talker_input_ids (
torch.Tensor) — thinker'den gelen girdi kimlikleri, 3b RoPE'nin hesaplanmasında kullanılır.
Dönüş değeri
MoeCausalLMOutputWithPast veya tuple(torch.Tensor)
MoeCausalLMOutputWithPast veya bir torch.Tensor demeti (return_dict=False geçirildiğinde veya config.return_dict=False olduğunda), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeTalkerForConditionalGeneration forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
loss (
torch.Tensor, şekli(1,), isteğe bağlı,labelssağlandığında döndürülür) — Dil modelleme kaybı (sonraki token tahmini için).logits (
torch.Tensor, şekli(batch_size, sequence_length, config.vocab_size)) — Dil modelleme başlığının tahmin puanları (SoftMax öncesi her sözlük jetonu için puanlar).aux_loss (
torch.Tensor, isteğe bağlı,output_router_logits=Truegeçirildiğinde veyaconfig.output_router_logits=Trueolduğunda ve model, yük dengeleme kaybı ile router'ını eğittiğinde döndürülür) — Seyrek modüller için yük dengeleme yardımcı kaybı. Uzmanlarını router sapması ile dengeleyen modeller (DeepSeek-V3 ve ondan türetilen mimariler) buradaNonedöndürürken yine derouter_logitsdöndürür.router_logits (
tuple(torch.Tensor), isteğe bağlı,output_router_logits=Truegeçirildiğinde veyaconfig.output_router_logits=Trueolduğunda döndürülür) —torch.Tensor(her seyrek katman için bir tane) içeren bir tuple, şekli(batch_size * sequence_length, num_experts).MoE yönlendiricileri tarafından hesaplanan ham yönlendirici logitleri. Bunlar, bir yük dengeleme kaybı hesaplamak veya tokenlerin uzmanlara nasıl dağıtıldığını incelemek için kullanılabilir.
past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
Qwen3OmniMoePreTrainedModel
sınıf transformers.Qwen3OmniMoePreTrainedModel
< source >( config: PreTrainedConfig*inputs**kwargs )
Parametreler
- config (PreTrainedConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
Qwen3OmniMoePreTrainedModelForConditionalGeneration
sınıf transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration
< source >( config: PreTrainedConfig*inputs**kwargs )
get_chunked_index
< source >( token_indices: Tensortokens_per_chunk: intremove_index: int ) → list[tuple[int, int]]
Parametreler
- token_indices (
torch.Tensor, şekli(seq_len, )) — Monotonik olarak artan bir token indeks değerleri listesi. - t_ntoken_per_chunk (
int) — Parça başına token sayısı (parça boyutu eşiği olarak kullanılır). - remove_index (
int) Parçalamadan öncetoken_indices'den çıkarılacak bir indeks kimliği —
Dönüş değeri
list[tuple[int, int]]
Her biri token_indices içindeki bir parçanın başlangıç (dahil) ve bitiş (hariç) indekslerini temsil eden birer demet (tuple) içeren liste.
Token indeks listesini, token değer aralıklarına göre parçalara ayırır.
Token indekslerinden oluşan bir liste verildiğinde, token değerlerinin t_ntoken_per_chunk'ün ardışık aralıklarına düştüğü liste dilimlerini temsil eden (başlangıç, bitiş) indeks demetlerinin listesini döndürür.
Örneğin, t_ntoken_per_chunk 1000 ise, fonksiyon şu şekilde parçalar oluşturur:
- ilk parça < 1000 değerindeki jetonları içerir,
- ikinci parça >= 1000 ve < 2000 aralığındaki değerleri içerir ve böyle devam eder.
get_rope_index
< source >( input_ids: typing.Optional[torch.LongTensor] = Noneimage_grid_thw: typing.Optional[torch.LongTensor] = Nonevideo_grid_thw: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneuse_audio_in_video: bool = Falseaudio_seqlens: typing.Optional[torch.LongTensor] = Nonesecond_per_grids: typing.Optional[torch.Tensor] = None )
Parametreler
- input_ids (
torch.LongTensor, şekli(batch_size, sequence_length)) — Sözlükteki girdi dizisi token'larının indeksleri. Varsayılan olarak, padding sağlarsanız bu yoksayılır. - image_grid_thw (
torch.LongTensor, şekli(num_images, 3), isteğe bağlı) — LLM'deki her bir görüntünün özellik şeklinin zaman, yükseklik ve genişlik değerleri. - video_grid_thw (
torch.LongTensor, şekli(num_videos, 3), isteğe bağlı) — LLM'deki her bir video için özellik şeklinin zaman, yükseklik ve genişlik değerleri. - attention_mask (
torch.Tensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapılmaması için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- use_audio_in_video (
bool, isteğe bağlı) —Trueolarak ayarlanırsa, videodaki ses kullanılır. - audio_seqlens (
torch.LongTensor, şekli(num_audios), isteğe bağlı) — LLM'deki her sesin özellik şeklinin uzunluğu. - second_per_grids (
torch.LongTensor, şekli(num_videos), isteğe bağlı) — 3D konum kimliklerinde, zaman boyutu boyunca her ızgara için zaman aralığı (saniye cinsinden).
LLM'de, görüntü ve videonun zamansal, yükseklik ve genişlik değerlerine dayanarak 3B rope indeksini hesaplayın.
Açıklama: Her gömme dizisi, hem görüntü gömme hem de metin gömme içerir veya yalnızca metin gömme içerir.
Saf metin gömme dizisi için, döner konum gömme, modern LLM'lerden farklılık göstermez. Örnekler: input_ids: [T T T T T], burada T metni temsil eder. zaman konum_ids: [0, 1, 2, 3, 4] yükseklik konum_ids: [0, 1, 2, 3, 4] genişlik konum_ids: [0, 1, 2, 3, 4]
Görüntü ve metin gömme dizisi için, görüntü kısmına 3B döner konum gömme, metin kısmına ise 1B döner konum gömme hesaplanır. Örnekler: Zamansal (Time): 3 yama, videonun zamansal olarak farklı bölümlerini temsil eder. Yükseklik: 2 yama, her kareyi dikey olarak böler. Genişlik: 2 yama, her kareyi yatay olarak böler. Ayrıca bazı önemli parametrelere sahibiz: fps (Frames Per Second): Video kare hızı, 1 olarak ayarlanmıştır. Bu, her saniyede bir karenin işlendiği anlamına gelir. tokens_per_second: Bu, kritik bir parametredir. Videonun bir saniyelik aralığına kavramsal olarak kaç "zaman adımı" veya "zamansal token"ın sıkıştırıldığını belirler. Bu durumda saniyede 25 token vardır. Dolayısıyla videonun her saniyesi 25 ayrı zaman noktasıyla temsil edilir. Temel olarak zamansal granülerliği tanımlar. temporal_patch_size: Bir zamansal yamayı oluşturan kare sayısı. Burada 2 karedir. interval: Zamansal konum kimlikleri için adım boyutu, tokens_per_second temporal_patch_size / fps olarak hesaplanır. Bu durumda, 25 2 / 1 = 50. Bu, her zamansal yamanın zamansal konum kimliklerinde 50'lik bir farka sahip olacağı anlamına gelir. input_ids: [V V V V V V V V V V V V T T T T T], burada V görüntüyü temsil eder. vision temporal position_ids: [0, 0, 0, 0, 50, 50, 50, 50, 100, 100, 100, 100] vision height position_ids: [0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1] vision width position_ids: [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1] text temporal position_ids: [101, 102, 103, 104, 105] text height position_ids: [101, 102, 103, 104, 105] text width position_ids: [101, 102, 103, 104, 105] Burada metin başlangıç position_ids değerini, maksimum görüntü position_ids değerine 1 ekleyerek hesaplıyoruz.
Qwen3OmniMoeTalkerModel
sınıf transformers.Qwen3OmniMoeTalkerModel
< source >( config: Qwen3OmniMoeTalkerTextConfig )
Parametreler
- config (Qwen3OmniMoeTalkerTextConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Qwen3OmniMoe'nin metin kısmı, saf bir metin-özel model değildir; çünkü DeepStack, görsel özellikleri erken gizli durumlara entegre eder.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneinputs_embeds: typing.Optional[torch.Tensor] = Noneuse_cache: bool | None = Nonevisual_pos_masks: typing.Optional[torch.Tensor] = Nonedeepstack_visual_embeds: list[torch.Tensor] | None = None**kwargs: *<class 'transformers.modeling_flash_attention_utils.FlashAttentionKwargs'> ) → MoeModelOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (
torch.Tensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- position_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Girdi dizilerindeki her token'ın konum gömme (position embedding) içindeki konum indeksleri. Seçim aralığı[0, config.n_positions - 1]. - past_key_values (
~cache_utils.Cache, isteğe bağlı) — Sıralı çözümlemeyi hızlandırmak için kullanılabilen önceden hesaplanmış gizli durumlar (self-attention ve cross-attention bloklarındaki anahtar ve değerler). Bu genelliklepast_key_valuesdeğerinin, çözümlemenin önceki bir aşamasında model tarafından döndürülenuse_cache=Trueveyaconfig.use_cache=True.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size), isteğe bağlı) — İsteğe bağlı olarak,input_idsyerine gömülü bir temsil doğrudan geçmeyi tercih edebilirsiniz. Bu,input_idsdizinlerini ilgili vektörlere dönüştürme biçimi üzerinde modelin dahili gömme arama matrisinden daha fazla kontrol sahibi olmak istiyorsanız faydalıdır. - use_cache (
bool, isteğe bağlı) —Trueolarak ayarlanırsa,past_key_valuesanahtar değer durumları döndürülür ve çözümlemeyi hızlandırmak için kullanılabilir (bkz.past_key_values). - visual_pos_masks (
torch.Tensor, şekli(batch_size, seqlen), isteğe bağlı) — Görsel konumların maskesi. - deepstack_visual_embeds (
list[torch.Tensor], isteğe bağlı) — Derin yığın görsel gömme değerleri. Biçimi (num_layers, visual_seqlen, embed_dim)'dir. Özellik, farklı görsel kodlayıcı katmanlarından çıkarılır ve kodlayıcı gizli durumlarına iletilir. Bu özellik, DeepStack makalesinden (https://arxiv.org/abs/2406.04334) gelmektedir.
Dönüş değeri
MoeModelOutputWithPast veya tuple(torch.Tensor)
MoeModelOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Qwen3OmniMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeTalkerModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler ve isteğe bağlı olarakconfig.is_encoder_decoder=Trueise cross-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
router_logits (
tuple(torch.Tensor), isteğe bağlı,output_router_probs=Trueveconfig.add_router_probs=Truegeçirildiğinde veyaconfig.output_router_probs=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, sequence_length, num_experts).MoE yönlendiricileri tarafından hesaplanan ham yönlendirici logitleri (softmax sonrası), bu terimler Mixture of Experts modelleri için yardımcı kaybı hesaplamakta kullanılır.
Qwen3OmniMoeThinkerTextPreTrainedModel
sınıf transformers.Qwen3OmniMoeThinkerTextPreTrainedModel
< source >( config: PreTrainedConfig*inputs**kwargs )
Parametreler
- config (PreTrainedConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
Qwen3OmniMoeProcessor
sınıf transformers.Qwen3OmniMoeProcessor
< source >( image_processor = Nonevideo_processor = Nonefeature_extractor = Nonetokenizer = Nonechat_template = None )
Parametreler
- image_processor (
Qwen2VLImageProcessor) — Görüntü işleyici zorunlu bir girdidir. - video_processor (
Qwen2VLVideoProcessor) — Video işleyici zorunlu bir girdidir. - feature_extractor (
WhisperFeatureExtractor) — Özellik çıkarıcı zorunlu bir girdidir. - tokenizer (
Qwen2Tokenizer) — Tokenizer zorunlu bir girdidir. - chat_template (
str) — Bir sohbet içindeki mesaj listelerini tokenize edilebilir bir dizeye dönüştürmek için kullanılan bir Jinja şablonu.
Bir görüntü işleyiciyi, bir video işleyiciyi, bir özellik çıkarıcıyı ve bir belirteçleyiciyi tek bir işleyicide birleştiren bir Qwen3OmniMoeProcessor oluşturur.
Qwen3OmniMoeProcessor, Qwen2VLImageProcessor, Qwen2VLVideoProcessor, WhisperFeatureExtractor ve Qwen2Tokenizer'in tüm işlevlerini sunar. Daha fazla bilgi için ~Qwen2VLImageProcessor, ~Qwen2VLVideoProcessor, ~WhisperFeatureExtractor ve ~Qwen2Tokenizer belgelerine bakın.
__call__
< source >( text: str = Noneimages: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = Nonevideos: typing.Union[list['PIL.Image.Image'], numpy.ndarray, ForwardRef('torch.Tensor'), list[numpy.ndarray], list['torch.Tensor'], list[list['PIL.Image.Image']], list[list[numpy.ndarray]], list[list['torch.Tensor']], transformers.video_utils.URL, list[transformers.video_utils.URL], list[list[transformers.video_utils.URL]], transformers.video_utils.Path, list[transformers.video_utils.Path], list[list[transformers.video_utils.Path]], NoneType] = Noneaudio: typing.Union[numpy.ndarray, ForwardRef('torch.Tensor'), collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence['torch.Tensor'], NoneType] = None**kwargs: *<class 'transformers.models.qwen3_omni_moe.processing_qwen3_omni_moe.Qwen3OmniMoeProcessorKwargs'> ) → ~feature_extraction_utils.BatchFeature
Parametreler
- text (
str, isteğe bağlı) — Kodlanacak dizi veya dizi grubu. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Önceden tokenize edilmiş bir girdi geçiriyorsanız, gruplu girdilerle karışıklığı önlemek içinis_split_into_words=Truedeğerini ayarlayın. - images (
Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]], isteğe bağlı) — Ön işleme yapılacak görüntü. Piksel değerleri 0 ile 255 arasında değişen tek bir görüntü veya görüntü grubu beklenir. Piksel değerleri 0 ile 1 arasında olan görüntüler geçiriliyorsado_rescale=Falseolarak ayarlayın. - videos (
Union[list[PIL.Image.Image], numpy.ndarray, torch.Tensor, list[numpy.ndarray], list[torch.Tensor], list[list[PIL.Image.Image]], list[list[numpy.ndarray]], list[list[torch.Tensor]], ~video_utils.URL, list[~video_utils.URL], list[list[~video_utils.URL]], ~video_utils.Path, list[~video_utils.Path], list[list[~video_utils.Path]]], isteğe bağlı) — Ön işleme yapılacak video. Piksel değerleri 0 ile 255 arasında değişen tek bir video veya video partisi beklenir. Piksel değerleri 0 ile 1 arasında olan videoları geçiriyorsanızdo_rescale=Falseolarak ayarlayın. - audio (
Union[numpy.ndarray, torch.Tensor, collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence[torch.Tensor]], isteğe bağlı) — Hazırlanacak ses veya sesler partisi. Her ses, bir NumPy dizisi veya PyTorch tensörü olabilir. NumPy dizisi/PyTorch tensörü durumunda, her sesin şekli (C, T) olmalıdır; burada C kanal sayısı, T ise sesin örnek uzunluğudur. - min_pixels (
int, kwargs, isteğe bağlı) — Yeniden boyutlandırma işleminden sonra video kareleri için minimum piksel sayısı (yükseklik × genişlik). Bu eşiğin altındaki kareler, minimum gereksinimi karşılamak üzere büyütülür. - max_pixels (
int, kwargs, opsiyonel) — Yeniden boyutlandırma işleminden sonra video kareleri için maksimum piksel sayısı (yükseklik × genişlik). Bu eşiğin üzerindeki kareler, sınırı aşmayacak şekilde küçültülür. - patch_size (
int, kwargs, opsiyonel) — Görüntü kodlayıcısının kullandığı uzamsal yama boyutu. Video kareleri, hem yükseklik hem de genişlik boyutlarında bu boyutta yamalara bölünür. - temporal_patch_size (
int, kwargs, opsiyonel) — Görüntü kodlayıcısının kullandığı zamansal yama boyutu. Bu, tek bir zamansal yama olarak gruplanan ardışık kare sayısını belirler. - merge_size (
int, kwargs, opsiyonel) — Uzamsal yamaların birleştirilmesi için kullanılan birleştirme boyutu. Uzamsal bilgiyi korurken dizi uzunluğunu azaltmak için birden fazla yama bir arada birleştirilir. - min_frames (
int, kwargs, opsiyonel) — Videodan çıkarılacak en az kare sayısı. Kare sayısı daha az olan videolar, bu gerekliliği karşılamak için doldurulur veya tekrarlanır. - max_frames (
int, kwargs, opsiyonel) — Videodan çıkarılacak en fazla kare sayısı. Daha uzun videolar, bu sınırın içinde kalacak şekilde kırpılır veya örneklenir. - use_audio_in_video (
bool, kwargs, isteğe bağlı, varsayılanFalse) — Kullanımı durdurulan argüman - bunun yerineload_audio_from_videokullanın. - load_audio_from_video (
bool, kwargs, opsiyonel, varsayılanFalse) — Videoları işlerken ses bilgisinin dahil edilip edilmeyeceğini belirtir. Etkinleştirildiğinde, ses token'ları zaman uyumuna göre video token'larıyla iç içe geçirilerek birleşik bir çok modlu temsil oluşturulur. - seconds_per_chunk (
float, kwargs, isteğe bağlı, varsayılan2.0) — Uzun videoları bölme işlemi sırasında her video parçasının süresi (saniye cinsinden). Bu parametre, videoların işleme için zaman dilimi segmentlerine nasıl ayrıldığını kontrol eder. - position_id_per_seconds (
int, kwargs orfloat, optional, defaults to25) — The number of position IDs allocated per second of video. This parameter controls the temporal resolution of position embeddings and is used to align video tokens with audio tokens whenuse_audio_in_video=True. - return_tensors (
strveya TensorType, isteğe bağlı) — Belirlenirse, belirli bir çerçeveye ait tensörler döndürülür. Kabul edilen değerler şunlardır:'pt': PyTorchtorch.Tensornesnelerini döndürür.'np': NumPynp.ndarraynesnelerini döndürür.
- **kwargs (ProcessingKwargs, isteğe bağlı) — Her modalite (metin, görüntüler, videolar, ses) için ek işleme seçenekleri. Modelle ilgili parametreler yukarıda listelenmiştir; desteklenen argümanların tam listesi için TypedDict sınıfına bakın.
Dönüş değeri
~feature_extraction_utils.BatchFeature
- data (
dict, isteğe bağlı) — call/pad yöntemleri tarafından döndürülen listelerin/dizilerin/tensörlerin sözlüğü ('input_values', 'attention_mask' vb.). - tensor_type (
Union[None, str, TensorType], isteğe bağlı) — Başlatma sırasında PyTorch/Numpy Tensörlerindeki tamsayı listelerini dönüştürmek için burada bir tensor_type verebilirsiniz. - skip_tensor_conversion (
list[str]veyaset[str], isteğe bağlı) —tensor_typebelirtilse bile tensöre dönüştürülmemesi gereken anahtarların listesi veya kümesi.
Qwen3OmniMoeCode2Wav
Qwen3OmniMoeCode2WavDecoderBlock
sınıf transformers.Qwen3OmniMoeCode2WavDecoderBlock
< source >( config: Qwen3OmniMoeCode2WavConfiglayer_idx )
Qwen3OmniMoeCode2WavTransformerModel
sınıf transformers.Qwen3OmniMoeCode2WavTransformerModel
< source >( config: Qwen3OmniMoeCode2WavConfig )
Parametreler
- config (
Qwen3OmniMoeCode2WavConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Üzerinde herhangi bir özel head olmadan ham hidden-states üreten çıplak Qwen3 Omni Moe Model.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids = Noneattention_mask = Noneposition_ids = Nonepast_key_values = Noneinputs_embeds = Noneuse_cache = None**kwargs ) → BaseModelOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (`
of shape(batch_size, sequence_length)`) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (`
of shape(batch_size, sequence_length)) -- Mask to avoid performing attention on padding token indices. Mask values selected in[0, 1]`:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- position_ids (`
of shape(batch_size, sequence_length)) -- Indices of positions of each input sequence tokens in the position embeddings. Selected in the range[0, config.n_positions - 1]`. - past_key_values (`
) -- Pre-computed hidden-states (key and values in the self-attention blocks and in the cross-attention blocks) that can be used to speed up sequential decoding. This typically consists in thepast_key_valuesreturned by the model at a previous stage of decoding, whenuse_cache=Trueorconfig.use_cache=True`.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (`
of shape(batch_size, sequence_length, hidden_size)) -- Optionally, instead of passinginput_idsyou can choose to directly pass an embedded representation. This is useful if you want more control over how to convertinput_ids` indices into associated vectors than the model’s internal embedding lookup matrix. - use_cache (`
) -- If set toTrue,past_key_valueskey value states are returned and can be used to speed up decoding (seepast_key_values`).
Dönüş değeri
BaseModelOutputWithPast veya tuple(torch.Tensor)
A BaseModelOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeCode2WavTransformerModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.past_key_valueskullanılırsa, yalnızca(batch_size, 1, hidden_size)biçimindeki dizilerin son gizli durumu (hidden-state) çıktı olarak verilir.past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler ve isteğe bağlı olarakconfig.is_encoder_decoder=Trueise cross-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
Qwen3OmniMoeTalkerCodePredictorModel
sınıf transformers.Qwen3OmniMoeTalkerCodePredictorModel
< source >( config: Qwen3OmniMoeTalkerCodePredictorConfig )
Parametreler
- config (Qwen3OmniMoeTalkerCodePredictorConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Üzerinde herhangi bir özel head olmadan ham hidden-states üreten çıplak Qwen3 Omni Moe Model.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneinputs_embeds: typing.Optional[torch.Tensor] = Noneuse_cache: bool | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (
torch.Tensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri[0, 1]:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- position_ids (
torch.LongTensorşeklinde(batch_size, sequence_length), isteğe bağlı) — Girdi dizilerindeki her token'ın konum gömme (position embedding) içindeki konum indeksleri. Seçim aralığı[0, config.n_positions - 1]. - past_key_values (
~cache_utils.Cache, isteğe bağlı) — Sıralı çözümlemeyi hızlandırmak için kullanılabilen önceden hesaplanmış gizli durumlar (self-attention ve cross-attention bloklarındaki anahtar ve değerler). Bu genelliklepast_key_valuesdeğerinin, çözümlemenin önceki bir aşamasında model tarafından döndürülenuse_cache=Trueveyaconfig.use_cache=True.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size), isteğe bağlı) — İsteğe bağlı olarak,input_idsyerine gömülü bir temsil doğrudan geçmeyi tercih edebilirsiniz. Bu,input_idsdizinlerini ilgili vektörlere dönüştürme biçimi üzerinde modelin dahili gömme arama matrisinden daha fazla kontrol sahibi olmak istiyorsanız faydalıdır. - use_cache (
bool, isteğe bağlı) —Trueolarak ayarlanırsa,past_key_valuesanahtar değer durumları döndürülür ve çözümlemeyi hızlandırmak için kullanılabilir (bkz.past_key_values).
Dönüş değeri
BaseModelOutputWithPast veya tuple(torch.Tensor)
A BaseModelOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeTalkerCodePredictorModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.past_key_valueskullanılırsa, yalnızca(batch_size, 1, hidden_size)biçimindeki dizilerin son gizli durumu (hidden-state) çıktı olarak verilir.past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler ve isteğe bağlı olarakconfig.is_encoder_decoder=Trueise cross-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration
sınıf transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration
< source >( config: Qwen3OmniMoeTalkerCodePredictorConfig )
Parametreler
- config (Qwen3OmniMoeTalkerCodePredictorConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Diğer modalitelerle (ör. görsel-metinden metne üretim) koşullu token üretimi için Qwen3 Omni Moe Model.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids = Noneattention_mask = Noneposition_ids = Nonepast_key_values = Noneinputs_embeds = Nonelabels = Noneuse_cache = Nonegeneration_steps = None**kwargs ) → CausalLMOutputWithPast or tuple(torch.Tensor)
Parametreler
- input_ids (`
of shape(batch_size, sequence_length)`) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- attention_mask (`
of shape(batch_size, sequence_length)) -- Mask to avoid performing attention on padding token indices. Mask values selected in[0, 1]`:- 1, maskelenmemiş jetonlar için,
- maskelenmiş jetonlar için 0.
- position_ids (`
of shape(batch_size, sequence_length)) -- Indices of positions of each input sequence tokens in the position embeddings. Selected in the range[0, config.n_positions - 1]`. - past_key_values (`
) -- Pre-computed hidden-states (key and values in the self-attention blocks and in the cross-attention blocks) that can be used to speed up sequential decoding. This typically consists in thepast_key_valuesreturned by the model at a previous stage of decoding, whenuse_cache=Trueorconfig.use_cache=True`.Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın.
past_key_valuesgeçirilmezse, varsayılan olarak DynamicCache başlatılır.Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.
past_key_valueskullanılıyorsa, kullanıcının tüminput_ids(şekli(batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemişinput_ids(şekli(batch_size, unprocessed_length)) girmesi beklenir. - inputs_embeds (`
of shape(batch_size, sequence_length, hidden_size)) -- Optionally, instead of passinginput_idsyou can choose to directly pass an embedded representation. This is useful if you want more control over how to convertinput_ids` indices into associated vectors than the model’s internal embedding lookup matrix. - labels (`
of shape(batch_size, sequence_length)) -- Labels for computing the masked language modeling loss. Indices should either be in[0, …, config.vocab_size]or -100 (seeinput_idsdocstring). Tokens with indices set to-100are ignored (masked), the loss is only computed for the tokens with labels in[0, …, config.vocab_size]`. - use_cache (`
) -- If set toTrue,past_key_valueskey value states are returned and can be used to speed up decoding (seepast_key_values`). - generation_steps (
int) — kod öngörücüsünün üretim adımı, 0..num_code_groups-1
Dönüş değeri
CausalLMOutputWithPast veya tuple(torch.Tensor)
A CausalLMOutputWithPast veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (Qwen3OmoeMoeConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
loss (
torch.Tensor, şekli(1,), isteğe bağlı,labelssağlandığında döndürülür) — Dil modelleme kaybı (sonraki token tahmini için).logits (
torch.Tensor, şekli(batch_size, sequence_length, config.vocab_size)) — Dil modelleme başlığının tahmin puanları (SoftMax öncesi her sözlük jetonu için puanlar).past_key_values (
Cache, isteğe bağlı,use_cache=Truegeçirildiğinde veyaconfig.use_cache=Trueolduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.Sıralı çözümlemeyi hızlandırmak için (bkz.
past_key_valuesgirdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler) içerir.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, sequence_length, hidden_size)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
attentions (
tuple(torch.Tensor), isteğe bağlı,output_attentions=Truegeçirildiğinde veyaconfig.output_attentions=Trueolduğunda döndürülür) —torch.Tensor(katman başına bir tane) içeren bir tuple, şekli(batch_size, num_heads, sequence_length, sequence_length).Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.