# Qwen3-Omni-MOE

## نظرة عامة

نموذج Qwen3-Omni-MOE هو نموذج موحّد متعدد الوسائط اقترحه فريق Qwen التابع لمجموعة Alibaba في [التقرير التقني الخاص بـ Qwen3-Omni](https://huggingface.co/papers/2509.17765).

المستخلص من التقرير التقني هو كالتالي:

*نقدّم Qwen3-Omni، وهو نموذج متعدد الوسائط واحد يحافظ، للمرة الأولى، على أداء متقدم في الصدارة عبر النصوص والصور والصوت والفيديو دون أي تدهور مقارنةً بنظرائه أحادي الوسائط. يتطابق أداء Qwen3-Omni مع أداء النماذج أحادية الوسائط ذات الحجم نفسه ضمن سلسلة Qwen، ويتفوق بشكل خاص في مهام الصوت. عبر 36 معيارًا قياسيًا للصوت والصوت-البصري، يحقق Qwen3-Omni أداءً متقدمًا في الصدارة مفتوح المصدر في 32 معيارًا، وأداءً متقدمًا في الصدارة بشكل عام في 22 معيارًا، متفوقًا على نماذج مغلقة المصدر قوية مثل Gemini-2.5-Pro وSeed-ASR وGPT-4o-Transcribe. يتبنى Qwen3-Omni بنية Thinker-Talker MoE التي توحد الإدراك والتوليد عبر النصوص والصور والصوت والفيديو، مما ينتج نصوصًا سلسة وكلامًا طبيعيًا في الوقت الفعلي. يدعم التفاعل النصي بـ 119 لغة، وفهم الكلام بـ 19 لغة، وتوليد الكلام بـ 10 لغات. لتقليل زمن استجابة الحزمة الأولى في التركيب التدفقي، يتنبأ Talker بشكل ذاتي-تتابعي بترميزات صوتية منفصلة باستخدام مخطط متعدد الدفاتر. بالاستفادة من السعة التمثيلية لهذه الدفاتر، نستبدل الانتشار الكتلي المكثف حسابيًا بشبكة تلافيفية سببية خفيفة الوزن، مما يتيح التدفق من إطار الترميز الأول. في إعدادات البدء البارد، يحقق Qwen3-Omni زمن استجابة نظريًا من الطرف إلى الطرف للحزمة الأولى يبلغ 234 مللي ثانية. لتعزيز الاستدلال متعدد الوسائط بشكل أكبر، نقدم نموذج Thinking الذي يستدل صراحةً على المدخلات من أي وسيلة. نظرًا لأن مجتمع البحث يفتقر حاليًا إلى نموذج عام لوصف الصوت، قمنا بضبط Qwen3-Omni-30B-A3B للحصول على Qwen3-Omni-30B-A3B-Captioner، الذي ينتج أوصافًا مفصلة ومنخفضة الهلوسة للمدخلات الصوتية العشوائية. تم إصدار Qwen3-Omni-30B-A3B وQwen3-Omni-30B-A3B-Thinking وQwen3-Omni-30B-A3B-Captioner علنًا تحت رخصة Apache 2.0.

## ملاحظات

- استخدم [Qwen3OmniMoeForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeForConditionalGeneration) لتوليد مخرجات صوتية ونصية. ولتوليد نوع واحد فقط من المخرجات، استخدم [Qwen3OmniMoeThinkerForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeThinkerForConditionalGeneration) للمخرجات النصية فقط، و[Qwen3OmniMoeTalkerForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerForConditionalGeneration) للمخرجات الصوتية فقط.
- في حال ظهور أخطاء نفاد الذاكرة عند العمل مع مدخلات الفيديو، قم بتقليل `processor.max_pixels`. افتراضيًا، يتم تعيين الحد الأقصى إلى قيمة كبيرة جدًا، ولن يتم تغيير حجم المرئيات عالية الدقة ما لم تتجاوز الدقة `processor.max_pixels`.
- يتميز المعالج بطريقته الخاصة [apply_chat_template()](/docs/transformers/main/ar/main_classes/processors#transformers.ProcessorMixin.apply_chat_template) لتحويل رسائل الدردشة إلى مدخلات النموذج.

## مثال على الاستخدام

يمكن العثور على `Qwen3-Omni` على [Huggingface Hub](https://huggingface.co/Qwen).

### استدلال وسائط مفردة

يمكن للنموذج قبول النص والصور والصوت والفيديو كمدخلات. فيما يلي مثال على الكود للاستدلال.

```python
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)
```

### توليد نص فقط

لتوليد مخرجات نصية فقط وتوفير الحسابات من خلال عدم تحميل نموذج توليد الصوت، يمكننا استخدام نموذج `Qwen3OmniMoeThinkerForConditionalGeneration`.

```python
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)
```

### الاستدلال على وسائط مختلطة على دفعات

يمكن للنموذج معالجة مجموعات من المدخلات المكوّنة من عينات مختلطة من أنواع مختلفة مثل النص والصور والصوت والفيديو عند استخدام نموذج `Qwen3OmniMoeThinkerForConditionalGeneration`. وفيما يلي مثال توضيحي.

```python
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)
```

### توليد الصوت على دفعات

يدعم [Qwen3OmniMoeForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeForConditionalGeneration) توليد مخرجات صوتية على شكل دفعات. على سبيل المثال، التوليد الدفقي من النص إلى الكلام أدناه. عند استخدام دفعة تحتوي على أكثر من عينة واحدة، تُعاد الأصوات المولّدة كقائمة تضم موجة واحدة لكل عينة، وقد تم اقتطاع كل منها مسبقًا إلى طولها الخاص، بحيث لا تُملأ العينات الأقصر بصوت زائف. أما استدعاء عينة واحدة فيُعيد متجهًا واحدًا.

```python
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")
```

### نصائح للاستخدام

#### مقايضة دقة الصورة

يدعم النموذج مجموعة واسعة من مدخلات الدقة. افتراضياً، يستخدم الدقة الأصلية للمدخل، لكن الدقات الأعلى يمكن أن تعزز الأداء على حساب زيادة الحسابات. يمكن للمستخدمين تحديد الحد الأدنى والحد الأقصى لعدد البكسلات لتحقيق التهيئة المثالية لاحتياجاتهم.

```python
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)
```

#### موجّه لإخراج الصوت

إذا احتاج المستخدمون إلى مخرجات صوتية، فيجب ضبط موجه النظام على النحو التالي: «أنت Qwen، إنسان افتراضي طورته فريق Qwen في مجموعة Alibaba، قادر على إدراك المدخلات السمعية والبصرية، فضلاً عن توليد النص والكلام»، وإلا فقد لا تعمل المخرجات الصوتية كما هو متوقع.

```json
{
    "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.",
}
```

#### استخدام مخرج الصوت أو عدم استخدامه

يدعم النموذج كلًا من مخرجات النص والصوت، وإذا لم يكن المستخدمون بحاجة إلى مخرجات صوتية، فيمكنهم تعيين `enable_audio_output` في دالة `from_pretrained`. سيوفر هذا الخيار حوالي `~2GB` من ذاكرة وحدة معالجة الرسوميات (GPU)، لكن خيار `return_audio` الخاص بدالة `generate` سيُسمح بتعيينه فقط على `False`.

```python
model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
    "Qwen/Qwen3-Omni-30B-A3B-Instruct",
    device_map="auto",
    enable_audio_output=False,
)
```

للحصول على تجربة مرنة، ننصح المستخدمين بإعداد `enable_audio_output` على `True` عند تهيئة النموذج عبر دالة `from_pretrained`، ثم تحديد ما إذا كان سيتم إرجاع الصوت عند استدعاء دالة `generate`. عند ضبط `return_audio` على `False`، سيعيد النموذج مخرجات نصية فقط للحصول على ردود نصية بشكل أسرع.

```python
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)
```

#### تغيير نوع صوت الصوت الناتج

يدعم Qwen3-Omni-MOE إمكانية تغيير صوت الصوت المُخرَج. يمكن للمستخدمين استخدام معامل `speaker` في دالة `generate` لتحديد نوع الصوت. يدعم نقطة التفتيش `"Qwen/Qwen3-Omni-30B-A3B-Instruct"` نوعين من الأصوات: `Chelsie` و`Ethan`، حيث أن `Chelsie` صوت أنثوي و`Ethan` صوت ذكوري. افتراضيًا، إذا لم يتم تحديد `speaker`، فإن نوع الصوت الافتراضي هو `Chelsie`.

```python
text_ids, audio = model.generate(**inputs, speaker="Chelsie")
```

```python
text_ids, audio = model.generate(**inputs, speaker="Ethan")
```

#### Flash-Attention 2 لتسريع عملية التوليد

أولاً، تأكد من تثبيت أحدث إصدار من Flash Attention 2:

```bash
pip install -U flash-attn --no-build-isolation
```

كما يجب أن يكون لديك عتاد متوافق مع FlashAttention 2. اقرأ المزيد حول ذلك في التوثيق الرسمي لـ [مستودع flash attention](https://github.com/Dao-AILab/flash-attention). لا يمكن استخدام FlashAttention-2 إلا عند تحميل النموذج في `torch.float16` أو `torch.bfloat16`.

لتحميل نموذج وتشغيله باستخدام FlashAttention-2، أضف `attn_implementation="flash_attention_2"` عند تحميل النموذج:

```python
from transformers import Qwen3OmniMoeForConditionalGeneration

model = Qwen3OmniMoeForConditionalGeneration.from_pretrained(
    "Qwen/Qwen3-Omni-30B-A3B-Instruct",
    device_map="auto",
    attn_implementation="flash_attention_2",
)
```

## Qwen3OmniMoeConfig[[transformers.Qwen3OmniMoeConfig]]

#### transformers.Qwen3OmniMoeConfig[[transformers.Qwen3OmniMoeConfig]]

```python
transformers.Qwen3OmniMoeConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, thinker_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, talker_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, code2wav_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, enable_audio_output: bool = True, im_start_token_id: int = 151644, im_end_token_id: int = 151645, tts_pad_token_id: int = 151671, tts_bos_token_id: int = 151672, tts_eos_token_id: int = 151673, system_token_id: int = 8948, user_token_id: int = 872, assistant_token_id: int = 77091, initializer_range: float | None = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L539)

**المعاملات:**

thinker_config (`dict`، *اختياري*) : إعدادات نموذج thinker الفرعي الأساسي.

talker_config (`dict`، *اختياري*) : إعدادات نموذج المحادثة الفرعي الأساسي.

code2wav_config (`dict`، *اختياري*) : إعدادات نموذج code2wav الفرعي الأساسي.

enable_audio_output (`bool`، *اختياري*، الافتراضي `True`) : ما إذا كان سيتم تفعيل مخرج الصوت وتحميل وحدة talker ووحدة code2wav.

im_start_token_id (`int`، *اختياري*، القيمة الافتراضية 151644) : معرّف الرمز (Token id) لبداية الصورة

im_end_token_id (`int`، *اختياري*، القيمة الافتراضية 151645) : معرّف الرمز (Token id) لنهاية الصورة

tts_pad_token_id (`int`، *اختياري*، القيمة الافتراضية 151671) : معرّف الرمز (Token id) الخاص بالوسادة (padding) في TTS

tts_bos_token_id (`int`، *اختياري*، القيمة الافتراضية 151672) : معرّف الرمز لبدء التسلسل في TTS

tts_eos_token_id (`int`، *اختياري*، القيمة الافتراضية 151673) : معرّف الرمز (Token id) لنهاية التسلسل في TTS للصورة

system_token_id (`int`، *اختياري*، القيمة الافتراضية 8948) : معرّف الرمز (Token id) الخاص بـ system prompt

user_token_id (`int`، *اختياري*، القيمة الافتراضية 872) : معرّف الرمز (Token id) الخاص بطلب المستخدم

assistant_token_id (`int`، *اختياري*، القيمة الافتراضية 77091) : معرّف الرمز (Token id) الخاص بـ prompt المساعد

initializer_range (`float`، *اختياري*) : الانحراف المعياري لـ truncated_normal_initializer المستخدم لتجميع جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

مثال:

```python
>>> 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.config
```

#### get_text_config[[transformers.Qwen3OmniMoeConfig.get_text_config]]

```python
get_text_config(decoder = False)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L613)

**المعاملات:**

decoder (`Optional[bool]`، *اختياري*، القيمة الافتراضية `False`) : إذا تم ضبطه على `True`، فسيتم البحث عن أسماء تكوينات المُفكِّك (decoder) فقط.

يعيد الإعداد المخصص للاستخدام مع إدخال وإخراج النص. في معظم النماذج، هو نفسه كائن الإعداد الأصلي. في نماذج مركبة محددة، يكون تحت مجموعة من الأسماء الصالحة.

## Qwen3OmniMoeThinkerConfig[[transformers.Qwen3OmniMoeThinkerConfig]]

#### transformers.Qwen3OmniMoeThinkerConfig[[transformers.Qwen3OmniMoeThinkerConfig]]

```python
transformers.Qwen3OmniMoeThinkerConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, audio_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, vision_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, text_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, position_id_per_seconds: int = 25, audio_start_token_id: int = 151647, user_token_id: int = 872, initializer_range: float = 0.02, tie_word_embeddings: bool = False, audio_token_id: int = 151646, image_token_id: int = 151655, video_token_id: int = 151656)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L195)

**المعاملات:**

audio_config (`Union[dict, ~configuration_utils.PreTrainedConfig]`، *اختياري*) : كائن الإعداد أو قاموس العمود الفقري الصوتي.

vision_config (`Union[dict, ~configuration_utils.PreTrainedConfig]`، *اختياري*) : كائن الإعداد أو قاموس العمود الفقري البصري.

text_config (`Union[dict, ~configuration_utils.PreTrainedConfig]`، *اختياري*) : كائن الإعداد أو قاموس العمود الفقري النصي.

position_id_per_seconds (`int`، *اختياري*، القيمة الافتراضية 25) : مقدار زيادة معرّف الموضع في الثانية.

audio_start_token_id (`int`، *اختياري*، القيمة الافتراضية 151647) : معرّف رمز بداية الصوت لتشفير موجه الصوت.

user_token_id (`int`، *اختياري*، القيمة الافتراضية 872) : معرّف رمز المستخدم (user token id) لتشفير رمز المستخدم.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

tie_word_embeddings (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب ربط ترميزات الأوزان وفقاً لخريطة `tied_weights_keys` الخاصة بالنموذج.

audio_token_id (`int`، *اختياري*، القيمة الافتراضية `151646`) : فهرس رمز الصوت المستخدم كحقل محجوز للصوت المُدخل.

image_token_id (`int`، *اختياري*، القيمة الافتراضية `151655`) : فهرس رمز الصورة المستخدم كحقل محجوز للصور المدخلة.

video_token_id (`int`، *اختياري*، القيمة الافتراضية `151656`) : فهرس رمز الفيديو المستخدم كحقل محجوز للفيديوهات المدخلة.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

مثال:

```python
>>> 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.config
```

## Qwen3OmniMoeTalkerConfig[[transformers.Qwen3OmniMoeTalkerConfig]]

#### transformers.Qwen3OmniMoeTalkerConfig[[transformers.Qwen3OmniMoeTalkerConfig]]

```python
transformers.Qwen3OmniMoeTalkerConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, code_predictor_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, text_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, num_code_groups: int = 32, thinker_hidden_size: int = 2048, codec_eos_token_id: int = 4198, accept_hidden_layer: int = 18, codec_nothink_id: int = 4203, codec_think_bos_id: int = 4204, codec_think_eos_id: int = 4205, codec_pad_id: int = 4196, codec_bos_id: int = 4197, audio_token_id: int = 151646, image_token_id: int = 151655, video_token_id: int = 151656, vision_start_token_id: int = 151652, position_id_per_seconds: int = 25, audio_start_token_id: int = 151669, speaker_id: dict | None = None, initializer_range: float = 0.02, tie_word_embeddings: bool = False)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L404)

**المعاملات:**

code_predictor_config (`dict`، *اختياري*) : قاموس من معاملات الإعداد المستخدمة لتهيئة [Qwen3OmniMoeTalkerCodePredictorConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerCodePredictorConfig). إذا لم يُقدَّم، فسيتم استخدام القيم الافتراضية.

text_config (`Union[dict, ~configuration_utils.PreTrainedConfig]`، *اختياري*) : كائن الإعداد أو قاموس العمود الفقري النصي.

num_code_groups (`int`، *اختياري*، القيمة الافتراضية 32) : عدد مجموعات كتاب الرموز المستخدمة في تسلسل الرموز الصوتية المتوقعة، بما يتوافق مع تمثيل VQ متعدد كتب الرموز.

thinker_hidden_size (`int`، *اختياري*، القيمة الافتراضية 2048) : حجم البُعد الخفي لوحدة المُفكِّر (thinker) المستخدمة للاستدلال الوسيط أو التخطيط الكامن قبل توليد الصوت.

codec_eos_token_id (`int`، *اختياري*، القيمة الافتراضية 4198) : معرّف الرمز الذي يمثل رمز نهاية الكلام في التسلسل المولّد بواسطة المُرمِّز الصوتي.

accept_hidden_layer (`int`، *اختياري*، القيمة الافتراضية 18) : فهرس الطبقة المخفية التي يُستخدم مخرَجها لقبول الرموز المولَّدة أو تحسينها أثناء عملية التفكير والتحدث.

codec_nothink_id (`int`، *اختياري*، القيمة الافتراضية 4203) : معرّف الرمز الذي يشير إلى عدم الحاجة إلى خطوة تفكير أثناء التوليد.

codec_think_bos_id (`int`، *اختياري*، القيمة الافتراضية 4204) : معرّف الرمز الذي يحدد بداية تسلسل التفكير.

codec_think_eos_id (`int`، *اختياري*، القيمة الافتراضية 4205) : معرّف الرمز الذي يحدد نهاية تسلسل التفكير.

codec_pad_id (`int`، *اختياري*، القيمة الافتراضية 4196) : معرّف رمز التعبئة (Padding token ID) المستخدم في تسلسلات مدخلات الترميز (codec).

codec_bos_id (`int`، *اختياري*، القيمة الافتراضية 4197) : معرّف رمز بداية الكلام في تسلسلات الترميز.

audio_token_id (`int`، *اختياري*، القيمة الافتراضية `151646`) : فهرس رمز الصوت المستخدم كحقل محجوز للصوت المُدخل.

image_token_id (`int`، *اختياري*، القيمة الافتراضية `151655`) : فهرس رمز الصورة المستخدم كحقل محجوز للصور المدخلة.

video_token_id (`int`، *اختياري*، القيمة الافتراضية `151656`) : فهرس رمز الفيديو المستخدم كحقل محجوز للفيديوهات المدخلة.

vision_start_token_id (`int`، *اختياري*، القيمة الافتراضية `151652`) : معرّف الرمز الذي يحدد بداية المقطع البصري في تسلسل الإدخال متعدد الوسائط.

position_id_per_seconds (`int`، *اختياري*، القيمة الافتراضية 25) : عدد معرّفات المواقع المخصصة لكل ثانية من محتوى الصوت، وتُستخدم للمحاذاة الزمنية أثناء التوليد.

audio_start_token_id (`int`، *اختياري*، القيمة الافتراضية 151669) : معرّف الرمز الذي يشير إلى بداية مقطع توليد الصوت في المخرجات.

speaker_id (`dict`، *اختياري*) : قاموس يربط بين أسماء المتكلمين ومعرفات المتكلمين.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

tie_word_embeddings (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب ربط ترميزات الأوزان وفقاً لخريطة `tied_weights_keys` الخاصة بالنموذج.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

مثال:

```python
>>> 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 configuration
```

## Qwen3OmniMoeTextConfig[[transformers.Qwen3OmniMoeTextConfig]]

#### transformers.Qwen3OmniMoeTextConfig[[transformers.Qwen3OmniMoeTextConfig]]

```python
transformers.Qwen3OmniMoeTextConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, vocab_size: int = 3584, hidden_size: int = 2048, intermediate_size: int = 18944, num_hidden_layers: int = 28, num_attention_heads: int = 28, num_key_value_heads: int = 4, hidden_act: str = 'silu', max_position_embeddings: int = 32768, initializer_range: float = 0.02, rms_norm_eps: float = 1e-06, use_cache: bool = True, rope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = None, attention_bias: bool = False, sliding_window: int | None = None, attention_dropout: float | int = 0.0, decoder_sparse_step: int = 1, moe_intermediate_size: int = 768, num_experts_per_tok: int = 8, num_experts: int = 128, norm_topk_prob: bool = True, output_router_logits: bool = False, router_aux_loss_coef: float = 0.001, mlp_only_layers: list[int] | None = None, pad_token_id: int | None = None, bos_token_id: int | None = None, eos_token_id: int | list[int] | None = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L109)

**المعاملات:**

vocab_size (`int`، *اختياري*، القيمة الافتراضية `3584`) : حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة `input_ids`.

hidden_size (`int`، *اختياري*، القيمة الافتراضية `2048`) : بُعد التمثيلات المخفية.

intermediate_size (`int`، *اختياري*، القيمة الافتراضية `18944`) : بُعد تمثيلات MLP.

num_hidden_layers (`int`، *اختياري*، القيمة الافتراضية `28`) : عدد الطبقات المخفية في مُفكِّك Transformer.

num_attention_heads (`int`، *اختياري*، القيمة الافتراضية `28`) : عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.

num_key_value_heads (`int`، *اختياري*، القيمة الافتراضية `4`) : هذا هو عدد رؤوس key_value التي يجب استخدامها لتنفيذ Grouped Query Attention. إذا كان `num_key_value_heads=num_attention_heads`، فسيستخدم النموذج Multi Head Attention (MHA)، وإذا كان `num_key_value_heads=1` فسيستخدم النموذج Multi Query Attention (MQA)، وإلا فسيتم استخدام GQA. عند تحويل نقطة تحقق متعددة الرؤوس إلى نقطة تحقق GQA، يجب بناء كل مجموعة من رؤوس key و value عن طريق meanpooling جميع الرؤوس الأصلية داخل تلك المجموعة. لمزيد من التفاصيل، راجع [هذا الورق](https://huggingface.co/papers/2305.13245). إذا لم يتم تحديد القيمة، فستكون القيمة الافتراضية هي `num_attention_heads`.

hidden_act (`str`، *اختياري*، القيمة الافتراضية `silu`) : دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، `"gelu"`، `"relu"`، `"silu"`، وما إلى ذلك.

max_position_embeddings (`int`، *اختياري*، الافتراضي هو `32768`) : أقصى طول تسلسل قد يُستخدم به هذا النموذج.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

rms_norm_eps (`float`، *اختياري*، القيمة الافتراضية `1e-06`) : قيمة الإيبسلون المستخدمة في طبقات تطبيع rms.

use_cache (`bool`، *اختياري*، القيمة الافتراضية `True`) : ما إذا كان يجب على النموذج إرجاع قيم المفاتيح/القيم الأخيرة للانتباه (لا تستخدمها جميع النماذج). لا ينطبق إلا إذا كان `config.is_decoder=True` أو عندما يكون النموذج نموذجًا توليديًا يعتمد على المُفكِّك فقط.

rope_parameters (`Union[~modeling_rope_utils.RopeParameters, dict]`، *اختياري*) : قاموس يحتوي على معاملات التهيئة الخاصة بتضمينات RoPE. يجب أن يحتوي القاموس على قيمة لـ `rope_theta`، وبشكل اختياري معاملات تُستخدم للتوسيع في حال رغبتَ في استخدام RoPE مع `max_position_embeddings` أطول.

attention_bias (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان سيتم استخدام انحياز في طبقات الإسقاط للاستعلام والمفتاح والقيمة والمخرجات أثناء الانتباه الذاتي.

sliding_window (`int`, *اختياري*) : حجم نافذة الانتباه ذات النافذة المنزلقة. إذا كانت `None`، فلا تُطبَّق نافذة منزلقة.

attention_dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة الإسقاط (dropout) لاحتمالات الانتباه.

decoder_sparse_step (`int`، *اختياري*، القيمة الافتراضية 1) : تكرار طبقة MoE.

moe_intermediate_size (`int`، *اختياري*، القيمة الافتراضية `768`) : الحجم الوسيط لشبكات MLP للخبراء الموجَّهين.

num_experts_per_tok (`int`, *اختياري*, الافتراضي هو `8`) : عدد الخبراء الذي يُوجَّه إليه كل رمز. هذه هي قيمة top-k لتوجيه اختيار الرموز.

num_experts (`int`، *اختياري*، القيمة الافتراضية `128`) : عدد الخبراء الموجَّهين في طبقات MoE.

norm_topk_prob (`bool`، *اختياري*، الافتراضي `True`) : ما إذا كان سيتم تطبيع أوزان الخبراء الموجَّهين.

output_router_logits (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب على النموذج إرجاع قيم التوجيه (router logits) أم لا. تمكين هذا الخيار سيتيح أيضًا للنموذج إخراج الخسارة المساعدة، بما في ذلك خسارة موازنة الحمل وخسارة توجيه z.

router_aux_loss_coef (`float`، *اختياري*، القيمة الافتراضية `0.001`) : معامل خسارة موازنة الحمل المساعدة. يُستخدم لعقابلة التوجيه غير المتساوي للخبراء في نماذج MoE.

mlp_only_layers (`list[int]`، *اختياري*، القيمة الافتراضية `[]`) : يُحدد أي طبقات تستخدم Qwen3OmniMoeTextMLP بدلاً من Qwen3OmniMoeTextSparseMoeBlock. تحتوي القائمة على فهارس الطبقات، من 0 إلى num_layers-1 إذا كان لدينا num_layers طبقات. إذا كانت `mlp_only_layers` فارغة، يُستخدم `decoder_sparse_step` لتحديد درجة التشتت.

pad_token_id (`int`, *اختياري*) : معرّف الرمز (Token id) المستخدم للتعبئة (padding) في المفردات.

bos_token_id (`int`, *اختياري*) : معرّف الرمز المستخدم لبدء البث في المفردات.

eos_token_id (`Union[int, list[int]]`، *اختياري*) : معرّف الرمز المستخدم لنهاية البث في المفردات.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

```python
>>> 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.config
```

## Qwen3OmniMoeVisionEncoderConfig[[transformers.Qwen3OmniMoeVisionEncoderConfig]]

#### transformers.Qwen3OmniMoeVisionEncoderConfig[[transformers.Qwen3OmniMoeVisionEncoderConfig]]

```python
transformers.Qwen3OmniMoeVisionEncoderConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, depth: int = 27, hidden_size: int = 1152, hidden_act: str = 'gelu_pytorch_tanh', intermediate_size: int = 4304, num_heads: int = 16, in_channels: int = 3, patch_size: int | list[int] | tuple[int, int] = 16, spatial_merge_size: int = 2, temporal_patch_size: int | list[int] | tuple[int, int] = 2, out_hidden_size: int = 3584, num_position_embeddings: int = 2304, deepstack_visual_indexes: list[int] | tuple[int, ...] = (8, 16, 24), initializer_range: float = 0.02, rope_parameters: dict | None = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L76)

**المعاملات:**

depth (`int`، *اختياري*، القيمة الافتراضية `27`) : عدد طبقات Transformer في مُشفِّر الرؤية.

hidden_size (`int`، *اختياري*، القيمة الافتراضية `1152`) : بُعد التمثيلات المخفية.

hidden_act (`str`، *اختياري*، القيمة الافتراضية `gelu_pytorch_tanh`) : دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، `"gelu"`، `"relu"`، `"silu"`، وما إلى ذلك.

intermediate_size (`int`، *اختياري*، القيمة الافتراضية `4304`) : بُعد تمثيلات MLP.

num_heads (`int`، *اختياري*، القيمة الافتراضية `16`) : عدد رؤوس الانتباه في كل طبقة انتباه داخل مُفكِّك Transformer.

in_channels (`int`، *اختياري*، القيمة الافتراضية `3`) : عدد قنوات الإدخال.

patch_size (`Union[int, list[int], tuple[int, int]]`، *اختياري*، القيمة الافتراضية `16`) : حجم (دقة) كل رقعة.

spatial_merge_size (`int`، *اختياري*، القيمة الافتراضية `2`) : حجم نافذة الدمج المكاني المستخدمة لتقليل عدد الرموز البصرية عن طريق دمج الباتشات المجاورة.

temporal_patch_size (`Union[int, list[int], tuple[int, int]]`، *اختياري*، القيمة الافتراضية `2`) : حجم البقعة الزمنية المستخدم في تضمين البقع ثلاثي الأبعاد للمدخلات المرئية.

out_hidden_size (`int`، *اختياري*، القيمة الافتراضية 3584) : حجم المخفي للإخراج في نموذج الرؤية.

num_position_embeddings (`int`، *اختياري*، القيمة الافتراضية 2304) : أقصى طول تسلسل قد يُستخدم مع هذا النموذج

deepstack_visual_indexes (`list[int]`، *اختياري*، القيمة الافتراضية `[8, 16, 24]`) : فهرس الطبقات الخاصة بتضمينات deepstack.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

rope_parameters (`dict`, *اختياري*) : قاموس يحتوي على معاملات التهيئة لتضمينات RoPE. يجب أن يحتوي القاموس على قيمة لـ `rope_theta`، ومعاملات اختيارية تُستخدم للتصعيد في حال رغبتك في استخدام RoPE مع `max_position_embeddings` أطول.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

## Qwen3OmniMoeAudioEncoderConfig[[transformers.Qwen3OmniMoeAudioEncoderConfig]]

#### transformers.Qwen3OmniMoeAudioEncoderConfig[[transformers.Qwen3OmniMoeAudioEncoderConfig]]

```python
transformers.Qwen3OmniMoeAudioEncoderConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, num_mel_bins: int = 128, encoder_layers: int = 32, encoder_attention_heads: int = 20, encoder_ffn_dim: int = 5120, d_model: int = 1280, dropout: float | int = 0.0, attention_dropout: float | int = 0.0, activation_function: str = 'gelu', activation_dropout: float | int = 0.0, scale_embedding: bool = False, initializer_range: float = 0.02, max_source_positions: int = 1500, n_window: int = 50, output_dim: int = 3584, n_window_infer: int = 800, conv_chunksize: int = 500, downsample_hidden_size: int = 480)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L30)

**المعاملات:**

num_mel_bins (`int`، *اختياري*، القيمة الافتراضية `128`) : عدد ميزات ميل المستخدمة لكل إطار إدخال. يجب أن يتوافق مع القيمة المستخدمة في فئة `AutoFeatureExtractor`.

encoder_layers (`int`، *اختياري*، القيمة الافتراضية `32`) : عدد الطبقات المخفية في مُشفِّر Transformer. سيستخدم القيمة نفسها لـ`num_layers` إذا لم يتم ضبطه.

encoder_attention_heads (`int`، *اختياري*، القيمة الافتراضية `20`) : عدد رؤوس الانتباه لكل طبقة انتباه في مُشفِّر Transformer.

encoder_ffn_dim (`int`، *اختياري*، القيمة الافتراضية `5120`) : بُعد طبقة "الوسيطة" (التي تُسمّى غالبًا طبقة التغذية الأمامية) في المُشفِّر.

d_model (`int`، *اختياري*، القيمة الافتراضية `1280`) : حجم طبقات المُشفِّر وطبقة المُجمِّع.

dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة جميع طبقات dropout.

attention_dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة الإسقاط (dropout) لاحتمالات الانتباه.

activation_function (`str`، *اختياري*، القيمة الافتراضية `gelu`) : دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، `"gelu"`، `"relu"`، `"silu"`، وما إلى ذلك.

activation_dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة الإسقاط (dropout) للتفعيلات داخل الطبقة المتصلة بالكامل.

scale_embedding (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان سيتم توسيع التضمينات (embeddings) من خلال القسمة على sqrt(d_model).

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

max_source_positions (`int`، *اختياري*، القيمة الافتراضية 1500) : الحد الأقصى لطول التسلسل للمدخلات

n_window (`int`، *اختياري*، القيمة الافتراضية 50) : عدد النوافذ

output_dim (`int`، *اختياري*، القيمة الافتراضية 3584) : بُعد المخرجات

n_window_infer (`int`، *اختياري*، القيمة الافتراضية `800`) : عدد النوافذ أثناء الاستدلال

conv_chunksize (`int`، *اختياري*، القيمة الافتراضية `500`) : حجم المقطع لكل مدخل إلى الطبقة الالتفافية

downsample_hidden_size (`int`، *اختياري*، القيمة الافتراضية `480`) : حجم الطبقة المخفية في طبقة تقليل العينة

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

## Qwen3OmniMoeTalkerTextConfig[[transformers.Qwen3OmniMoeTalkerTextConfig]]

#### transformers.Qwen3OmniMoeTalkerTextConfig[[transformers.Qwen3OmniMoeTalkerTextConfig]]

```python
transformers.Qwen3OmniMoeTalkerTextConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, vocab_size: int = 3072, hidden_size: int = 1024, intermediate_size: int = 2048, num_hidden_layers: int = 20, num_attention_heads: int = 16, num_key_value_heads: int = 2, hidden_act: str = 'silu', max_position_embeddings: int = 32768, initializer_range: float = 0.02, rms_norm_eps: float = 1e-06, use_cache: bool = True, tie_word_embeddings: bool = False, rope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = None, attention_bias: bool = False, sliding_window: int | None = None, attention_dropout: float | int = 0.0, decoder_sparse_step: int = 1, moe_intermediate_size: int = 384, num_experts_per_tok: int = 8, num_experts: int = 128, norm_topk_prob: bool = False, output_router_logits: bool = False, router_aux_loss_coef: float = 0.001, mlp_only_layers: list[int] | None = None, pad_token_id: int | None = None, bos_token_id: int | None = None, eos_token_id: int | list[int] | None = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L312)

**المعاملات:**

vocab_size (`int`، *اختياري*، القيمة الافتراضية `3072`) : حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة `input_ids`.

hidden_size (`int`، *اختياري*، القيمة الافتراضية `1024`) : بُعد التمثيلات المخفية.

intermediate_size (`int`، *اختياري*، القيمة الافتراضية `2048`) : بُعد تمثيلات MLP.

num_hidden_layers (`int`، *اختياري*، القيمة الافتراضية `20`) : عدد الطبقات المخفية في مُفكِّك Transformer.

num_attention_heads (`int`، *اختياري*، القيمة الافتراضية `16`) : عدد رؤوس الانتباه في كل طبقة انتباه داخل مُفكِّك Transformer.

num_key_value_heads (`int`، *اختياري*، القيمة الافتراضية `2`) : هذا هو عدد رؤوس key_value التي يجب استخدامها لتنفيذ Grouped Query Attention. إذا كان `num_key_value_heads=num_attention_heads`، فسيستخدم النموذج Multi Head Attention (MHA)، وإذا كان `num_key_value_heads=1` فسيستخدم النموذج Multi Query Attention (MQA)، وإلا فسيتم استخدام GQA. عند تحويل نقطة تحقق متعددة الرؤوس إلى نقطة تحقق GQA، يجب بناء كل مجموعة من رؤوس key و value عن طريق meanpooling جميع الرؤوس الأصلية داخل تلك المجموعة. لمزيد من التفاصيل، راجع [هذا الورق](https://huggingface.co/papers/2305.13245). إذا لم يتم تحديد القيمة، فستكون القيمة الافتراضية هي `num_attention_heads`.

hidden_act (`str`، *اختياري*، القيمة الافتراضية `silu`) : دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، `"gelu"`، `"relu"`، `"silu"`، وما إلى ذلك.

max_position_embeddings (`int`، *اختياري*، الافتراضي هو `32768`) : أقصى طول تسلسل قد يُستخدم به هذا النموذج.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

rms_norm_eps (`float`، *اختياري*، القيمة الافتراضية `1e-06`) : قيمة الإيبسلون المستخدمة في طبقات تطبيع rms.

use_cache (`bool`، *اختياري*، القيمة الافتراضية `True`) : ما إذا كان يجب على النموذج إرجاع قيم المفاتيح/القيم الأخيرة للانتباه (لا تستخدمها جميع النماذج). لا ينطبق إلا إذا كان `config.is_decoder=True` أو عندما يكون النموذج نموذجًا توليديًا يعتمد على المُفكِّك فقط.

tie_word_embeddings (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب ربط ترميزات الأوزان وفقاً لخريطة `tied_weights_keys` الخاصة بالنموذج.

rope_parameters (`Union[~modeling_rope_utils.RopeParameters, dict]`، *اختياري*) : قاموس يحتوي على معاملات التهيئة الخاصة بتضمينات RoPE. يجب أن يحتوي القاموس على قيمة لـ `rope_theta`، وبشكل اختياري معاملات تُستخدم للتوسيع في حال رغبتَ في استخدام RoPE مع `max_position_embeddings` أطول.

attention_bias (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان سيتم استخدام انحياز في طبقات الإسقاط للاستعلام والمفتاح والقيمة والمخرجات أثناء الانتباه الذاتي.

sliding_window (`int`, *اختياري*) : حجم نافذة الانتباه ذات النافذة المنزلقة. إذا كانت `None`، فلا تُطبَّق نافذة منزلقة.

attention_dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة الإسقاط (dropout) لاحتمالات الانتباه.

decoder_sparse_step (`int`، *اختياري*، القيمة الافتراضية 1) : تكرار طبقة MoE.

moe_intermediate_size (`int`، *اختياري*، القيمة الافتراضية `384`) : الحجم الوسيط لشبكات MLP الخاصة بالخبراء الموجَّهين.

num_experts_per_tok (`int`, *اختياري*, الافتراضي هو `8`) : عدد الخبراء الذي يُوجَّه إليه كل رمز. هذه هي قيمة top-k لتوجيه اختيار الرموز.

num_experts (`int`، *اختياري*، القيمة الافتراضية `128`) : عدد الخبراء الموجَّهين في طبقات MoE.

norm_topk_prob (`bool`، *اختياري*، الافتراضي `False`) : ما إذا كان سيتم تطبيع أوزان الخبراء الموجَّهين.

output_router_logits (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب على النموذج إرجاع قيم التوجيه (router logits) أم لا. تمكين هذا الخيار سيتيح أيضًا للنموذج إخراج الخسارة المساعدة، بما في ذلك خسارة موازنة الحمل وخسارة توجيه z.

router_aux_loss_coef (`float`، *اختياري*، القيمة الافتراضية `0.001`) : معامل خسارة موازنة الحمل المساعدة. يُستخدم لعقابلة التوجيه غير المتساوي للخبراء في نماذج MoE.

mlp_only_layers (`list[int]`، *اختياري*، القيمة الافتراضية `[]`) : يُحدد أي طبقات تستخدم Qwen3OmniMoeTalkerTextMLP بدلاً من Qwen3OmniMoeTalkerTextSparseMoeBlock. تحتوي القائمة على فهارس الطبقات، من 0 إلى num_layers-1 إذا كان لدينا num_layers طبقات. إذا كانت `mlp_only_layers` فارغة، يُستخدم `decoder_sparse_step` لتحديد درجة التخلخل.

pad_token_id (`int`, *اختياري*) : معرّف الرمز (Token id) المستخدم للتعبئة (padding) في المفردات.

bos_token_id (`int`, *اختياري*) : معرّف الرمز المستخدم لبدء البث في المفردات.

eos_token_id (`Union[int, list[int]]`، *اختياري*) : معرّف الرمز المستخدم لنهاية البث في المفردات.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

```python
>>> 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.config
```

## Qwen3OmniMoeTalkerCodePredictorConfig[[transformers.Qwen3OmniMoeTalkerCodePredictorConfig]]

#### transformers.Qwen3OmniMoeTalkerCodePredictorConfig[[transformers.Qwen3OmniMoeTalkerCodePredictorConfig]]

```python
transformers.Qwen3OmniMoeTalkerCodePredictorConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, vocab_size: int = 2048, hidden_size: int = 1024, intermediate_size: int = 3072, num_hidden_layers: int = 5, num_attention_heads: int = 16, num_key_value_heads: int = 8, head_dim: int = 128, hidden_act: str = 'silu', max_position_embeddings: int = 32768, initializer_range: float = 0.02, rms_norm_eps: float = 1e-06, use_cache: bool = True, tie_word_embeddings: bool = False, rope_parameters: transformers.modeling_rope_utils.RopeParameters | dict | None = None, attention_bias: bool = False, sliding_window: int | None = None, max_window_layers: int = 28, layer_types: list[str] | None = None, attention_dropout: float | int = 0.0, pad_token_id: int | None = None, bos_token_id: int | None = None, eos_token_id: int | list[int] | None = None, num_code_groups: int = 32)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/configuration_qwen3_omni_moe.py#L244)

**المعاملات:**

vocab_size (`int`، *اختياري*، القيمة الافتراضية `2048`) : حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة `input_ids`.

hidden_size (`int`، *اختياري*، القيمة الافتراضية `1024`) : بُعد التمثيلات المخفية.

intermediate_size (`int`، *اختياري*، القيمة الافتراضية `3072`) : بُعد تمثيلات MLP.

num_hidden_layers (`int`، *اختياري*، القيمة الافتراضية `5`) : عدد الطبقات المخفية في مُفكِّك Transformer.

num_attention_heads (`int`، *اختياري*، القيمة الافتراضية `16`) : عدد رؤوس الانتباه في كل طبقة انتباه داخل مُفكِّك Transformer.

num_key_value_heads (`int`، *اختياري*، القيمة الافتراضية `8`) : يمثل هذا عدد رؤوس key_value التي يجب استخدامها لتنفيذ Grouped Query Attention. إذا كان `num_key_value_heads=num_attention_heads`، فسيستخدم النموذج Multi Head Attention (MHA)، وإذا كان `num_key_value_heads=1` فسيستخدم النموذج Multi Query Attention (MQA)، وإلا فسيتم استخدام GQA. عند تحويل نقطة تفتيش متعددة الرؤوس إلى نقطة تفتيش GQA، يجب بناء كل رأس key و value ضمن المجموعة عن طريق meanpooling جميع الرؤوس الأصلية داخل تلك المجموعة. لمزيد من التفاصيل، راجعوا [هذا البحث](https://huggingface.co/papers/2305.13245). إذا لم يتم تحديد القيمة، فستتخذ القيمة الافتراضية `num_attention_heads`.

head_dim (`int`، *اختياري*، القيمة الافتراضية `128`) : بُعد رأس الانتباه. إذا كانت القيمة None، فستكون القيمة الافتراضية هي hidden_size // num_attention_heads

hidden_act (`str`، *اختياري*، القيمة الافتراضية `silu`) : دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، `"gelu"`، `"relu"`، `"silu"`، وما إلى ذلك.

max_position_embeddings (`int`، *اختياري*، الافتراضي هو `32768`) : أقصى طول تسلسل قد يُستخدم به هذا النموذج.

initializer_range (`float`، *اختياري*، القيمة الافتراضية `0.02`) : الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

rms_norm_eps (`float`، *اختياري*، القيمة الافتراضية `1e-06`) : قيمة الإيبسلون المستخدمة في طبقات تطبيع rms.

use_cache (`bool`، *اختياري*، القيمة الافتراضية `True`) : ما إذا كان يجب على النموذج إرجاع قيم المفاتيح/القيم الأخيرة للانتباه (لا تستخدمها جميع النماذج). لا ينطبق إلا إذا كان `config.is_decoder=True` أو عندما يكون النموذج نموذجًا توليديًا يعتمد على المُفكِّك فقط.

tie_word_embeddings (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب ربط ترميزات الأوزان وفقاً لخريطة `tied_weights_keys` الخاصة بالنموذج.

rope_parameters (`Union[~modeling_rope_utils.RopeParameters, dict]`، *اختياري*) : قاموس يحتوي على معاملات التهيئة الخاصة بتضمينات RoPE. يجب أن يحتوي القاموس على قيمة لـ `rope_theta`، وبشكل اختياري معاملات تُستخدم للتوسيع في حال رغبتَ في استخدام RoPE مع `max_position_embeddings` أطول.

attention_bias (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان سيتم استخدام انحياز في طبقات الإسقاط للاستعلام والمفتاح والقيمة والمخرجات أثناء الانتباه الذاتي.

sliding_window (`int`, *اختياري*) : حجم نافذة الانتباه ذات النافذة المنزلقة. إذا كانت `None`، فلا تُطبَّق نافذة منزلقة.

max_window_layers (`int`، *اختياري*، القيمة الافتراضية `28`) : عدد الطبقات التي تستخدم الانتباه الكامل. ستستخدم أول `max_window_layers` طبقات الانتباه الكامل، بينما ستستخدم أي طبقة إضافية بعد ذلك الانتباه النافذي المنزلق (SWA).

layer_types (`list[str]`، *اختياري*) : قائمة تُقرن صراحةً كل فهرس طبقة بنوعها. إذا لم تُقدَّم، فسيتم توليدها تلقائيًا بناءً على قيم الإعداد.

attention_dropout (`Union[float, int]`، *اختياري*، القيمة الافتراضية `0.0`) : نسبة الإسقاط (dropout) لاحتمالات الانتباه.

pad_token_id (`int`, *اختياري*) : معرّف الرمز (Token id) المستخدم للتعبئة (padding) في المفردات.

bos_token_id (`int`, *اختياري*) : معرّف الرمز المستخدم لبدء البث في المفردات.

eos_token_id (`Union[int, list[int]]`، *اختياري*) : معرّف الرمز المستخدم لنهاية البث في المفردات.

num_code_groups (`int`، *اختياري*، القيمة الافتراضية 32) : عدد مجموعات كتاب الرموز المستخدمة في تسلسل الرموز الصوتية المتوقعة، بما يتوافق مع تمثيل VQ متعدد كتب الرموز.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Qwen3 Omni MoeModel. تُستخدم لاستحداث نموذج Qwen3 Omni Moe وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى إعدادات مشابهة لتلك الخاصة بـ [Qwen/Qwen3-Omni-30B-A3B-Instruct](https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct)

ترث كائنات الإعداد من [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ [PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig) لمزيد من المعلومات.

## Qwen3OmniMoeForConditionalGeneration[[transformers.Qwen3OmniMoeForConditionalGeneration]]

#### transformers.Qwen3OmniMoeForConditionalGeneration[[transformers.Qwen3OmniMoeForConditionalGeneration]]

```python
transformers.Qwen3OmniMoeForConditionalGeneration(config: Qwen3OmniMoeConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3947)

## Qwen3OmniMoeThinkerTextModel[[transformers.Qwen3OmniMoeThinkerTextModel]]

#### transformers.Qwen3OmniMoeThinkerTextModel[[transformers.Qwen3OmniMoeThinkerTextModel]]

```python
transformers.Qwen3OmniMoeThinkerTextModel(config: Qwen3OmniMoeTextConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L1623)

**المعاملات:**

config ([Qwen3OmniMoeTextConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTextConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

جزء النص من Qwen3OmniMoeThinker، وليس نموذجًا نصيًا بحتًا، حيث يدمج DeepStack الميزات البصرية في الحالات المخفية المبكرة.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeThinkerTextModel.forward]]

```python
forward(input_ids: typing.Optional[torch.LongTensor] = None, attention_mask: typing.Optional[torch.Tensor] = None, position_ids: typing.Optional[torch.LongTensor] = None, past_key_values: transformers.cache_utils.Cache | None = None, inputs_embeds: typing.Optional[torch.Tensor] = None, use_cache: bool | None = None, visual_pos_masks: typing.Optional[torch.Tensor] = None, deepstack_visual_embeds: list[torch.Tensor] | None = None, **kwargs: *<class 'transformers.modeling_flash_attention_utils.FlashAttentionKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L1648)

**المعاملات:**

input_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`torch.Tensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. قيم القناع المختارة من `[0, 1]`: - 1 للرموز التي **ليست مقنّعة**، - 0 للرموز التي **مقنّعة**.  [ما هي أقنعة الانتباه؟](../glossary#attention-mask)

position_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها من النطاق `[0, config.n_positions - 1]`.  [ما هي معرّفات المواضع؟](../glossary#position-ids)

past_key_values (`~cache_utils.Cache`، *اختياري*) : حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي وكتل الانتباه المتقاطع) يمكن استخدامها لتسريع فك الترميز التسلسلي. يتكوّن هذا عادةً من `past_key_values` التي يعيدها النموذج في مرحلة سابقة من فك الترميز، عندما يكون `use_cache=True` أو `config.use_cache=True`. يُسمح فقط بتمرير كائن [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) كمدخل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache). إذا لم يتم تمرير `past_key_values`، فسيتم تهيئة [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) افتراضيًا. سيُخرج النموذج نفس تنسيق الذاكرة المؤقتة المُدخل. إذا تم استخدام `past_key_values`، يُتوقع من المستخدم إدخال `input_ids` غير المعالجة فقط (تلك التي لم تُعطَ حالات مفاتيح وقيم سابقة لها في هذا النموذج) بأبعاد `(batch_size, unprocessed_length)` بدلاً من جميع `input_ids` بأبعاد `(batch_size, sequence_length)`.

inputs_embeds (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`، *اختياري*) : بدلاً من تمرير `input_ids`، يمكنك اختيار تمرير تمثيل مضمّن مباشرةً. هذا مفيد إذا كنت ترغب في الحصول على مزيد من التحكم في كيفية تحويل فهارس `input_ids` إلى المتجهات المرتبطة بها، مقارنةً بمصفوفة البحث المضمّنة الداخلية للنموذج.

use_cache (`bool`، *اختياري*) : إذا تم ضبطه على `True`، تُعاد حالات المفاتيح والقيم `past_key_values` ويمكن استخدامها لتسريع فك الترميز (انظر `past_key_values`).

visual_pos_masks (`torch.Tensor` من الشكل `(batch_size, seqlen)`، *اختياري*) : قناع المواضع البصرية.

deepstack_visual_embeds (`list[torch.Tensor]`, *اختياري*) : تضمينات البنية العميقة البصرية. الشكل هو (num_layers, visual_seqlen, embed_dim). يتم استخراج الميزة من طبقات مشفر البنية البصرية المختلفة، وتُغذى إلى حالات المخفي في المُفكِّك. وهي مستمدة من ورقة DeepStack(https://arxiv.org/abs/2406.04334).

**يعيد:** `MoeModelOutputWithPast` أو `tuple(torch.Tensor)`

`MoeModelOutputWithPast` أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعدادات ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تتجاوز طريقة [Qwen3OmniMoeThinkerTextModel](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeThinkerTextModel) الخاصة بالتقديم (forward) الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي، وفي كتل الانتباه المتقاطع اختياريًا إذا كان `config.is_encoder_decoder=True`) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.
- **router_logits** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_router_probs=True` و`config.add_router_probs=True` أو عند `config.output_router_probs=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, sequence_length, num_experts)`.

  قيمات التوجيه الخام (بعد تطبيق دالة softmax) التي تحسبها وحدات التوجيه في نماذج مزيج الخبراء (MoE)، وتُستخدم هذه القيم لحساب الخسارة المساعدة في نماذج مزيج الخبراء.

## Qwen3OmniMoeThinkerModel[[transformers.Qwen3OmniMoeThinkerModel]]

#### transformers.Qwen3OmniMoeThinkerModel[[transformers.Qwen3OmniMoeThinkerModel]]

```python
transformers.Qwen3OmniMoeThinkerModel(config: Qwen3OmniMoeThinkerConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L1752)

**المعاملات:**

config ([Qwen3OmniMoeThinkerConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeThinkerConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

نموذج Qwen2.5OmniThinker الذي يتكون من هيكل صوتي ونموذج لغوي.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeThinkerModel.forward]]

```python
forward(input_ids = None, input_features = None, pixel_values = None, pixel_values_videos = None, image_grid_thw = None, video_grid_thw = None, attention_mask = None, feature_attention_mask = None, audio_feature_lengths = None, position_ids = None, past_key_values = None, inputs_embeds = None, use_cache = None, output_router_logits: bool | None = None, use_audio_in_video = None, video_second_per_grid = None, mm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L1935)

**المعاملات:**

input_ids (`` of shape `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

input_features (`` of shape `(batch_size, sequence_length, feature_dim)`) : المصفوفات (tensors) المقابلة لميزات الصوت المدخلة. يمكن الحصول على ميزات الصوت باستخدام [WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor). راجع [WhisperFeatureExtractor.__call__()](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor) لمعالجة الأصوات).

pixel_values (`` of shape `(batch_size, num_channels, image_size, image_size)`) : المصفوفات (tensors) المقابلة لصور الإدخال. يمكن الحصول على قيم البكسل باستخدام [Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor). راجع [Qwen2VLImageProcessor.__call__()](/docs/transformers/main/ar/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor) لمعالجة الصور).

pixel_values_videos (`` of shape `(batch_size, num_frames, num_channels, frame_size, frame_size)`) : المصفوفات (tensors) المقابلة لفيديو الإدخال. يمكن الحصول على قيم البكسل للفيديوهات باستخدام [Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor). راجع [Qwen2VLVideoProcessor.__call__()](/docs/transformers/main/ar/model_doc/molmo2#transformers.Molmo2VideoProcessor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor) لمعالجة الفيديوهات).

image_grid_thw (`` of shape `(num_images, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل صورة في نموذج LLM.

video_grid_thw (`` of shape `(num_videos, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل فيديو في LLM.

attention_mask (`` of shape `(batch_size, sequence_length)`) : Mask to avoid performing attention on padding token indices. Mask values selected in `[0, 1]`:  - 1 for tokens that are **not masked**, - 0 for tokens that are **masked**.  [What are attention masks?](../glossary#attention-mask)

feature_attention_mask (`torch.Tensor` من الشكل `(batch_size, feature_sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس الميزات المعبأة. قيم القناع المختارة في `[0, 1]`: - 1 للرموز التي **ليست مقنعة**، - 0 للرموز التي **مقنعة**.

audio_feature_lengths (`torch.LongTensor` من الشكل `(num_audios)`، *اختياري*) : طول شكل الميزات لكل صوت في نموذج LLM.

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]`.  [What are position IDs?](../glossary#position-ids)

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 the `past_key_values` returned by the model at a previous stage of decoding, when `use_cache=True` or `config.use_cache=True`.  Only [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) instance is allowed as input, see our [kv cache guide](https://huggingface.co/docs/transformers/en/kv_cache). If no `past_key_values` are passed, [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) will be initialized by default.  The model will output the same cache format that is fed as input.  If `past_key_values` are used, the user is expected to input only unprocessed `input_ids` (those that don't have their past key value states given to this model) of shape `(batch_size, unprocessed_length)` instead of all `input_ids` of shape `(batch_size, sequence_length)`.

inputs_embeds (`` of shape `(batch_size, sequence_length, hidden_size)`) : Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This is useful if you want more control over how to convert `input_ids` indices into associated vectors than the model's internal embedding lookup matrix.

use_cache (``) : If set to `True`, `past_key_values` key value states are returned and can be used to speed up decoding (see `past_key_values`).

output_router_logits (`bool`، *اختياري*) : ما إذا كان يجب إرجاع قيم logits لجميع الموجّهات (routers) أم لا. تُفيد هذه القيم في حساب خسارة الموجّه (router loss)، ولا ينبغي إرجاعها أثناء الاستدلال.

use_audio_in_video (`bool`، *اختياري*) : ما إذا كان سيتم استخدام المسار الصوتي في الفيديو، ويجب أن يكون مطابقًا للمعامل في `process_audio_info`.

video_second_per_grid (`torch.LongTensor` من الشكل `(num_videos)`، *اختياري*) : عدد الثواني لكل شبكة لكل فيديو، يُستخدم للتمثيل الزمني للميزات.

mm_encoder_outputs (`dict[str, ~modeling_outputs.BaseModelOutputWithPooling]`، *اختياري*) : قاموس حيث تكون المفاتيح هي الأنماط المدعومة والقيم هي المخرجات المُرمّزة لذلك النمط. كل مخرَج مُرمّز هو مجموعة (tuple) تتكون من (`pooler_output`، *اختياري*: `last_hidden_states`، *اختياري*: `hidden_states`، *اختياري*: `attentions`) `pooler_output` من الشكل `(batch_size, sequence_length, hidden_size)`، *اختياري*) وهو تسلسل من الميزات متعددة الوسائط للمُشفِّر المُدمجة في تضمينات النص.

**يعيد:** `MoeModelOutputWithPast` أو `tuple(torch.Tensor)`

`MoeModelOutputWithPast` أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعدادات ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تُعيد طريقة [Qwen3OmniMoeThinkerModel](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeThinkerModel) الخاصة بالتقديم (forward) تعريف الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي، وفي كتل الانتباه المتقاطع اختياريًا إذا كان `config.is_encoder_decoder=True`) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.
- **router_logits** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_router_probs=True` و`config.add_router_probs=True` أو عند `config.output_router_probs=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, sequence_length, num_experts)`.

  قيمات التوجيه الخام (بعد تطبيق دالة softmax) التي تحسبها وحدات التوجيه في نماذج مزيج الخبراء (MoE)، وتُستخدم هذه القيم لحساب الخسارة المساعدة في نماذج مزيج الخبراء.

## Qwen3OmniMoeThinkerForConditionalGeneration[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration]]

#### transformers.Qwen3OmniMoeThinkerForConditionalGeneration[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration]]

```python
transformers.Qwen3OmniMoeThinkerForConditionalGeneration(config: Qwen3OmniMoeThinkerConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2158)

#### forward[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration.forward]]

```python
forward(input_ids = None, input_features = None, pixel_values = None, pixel_values_videos = None, image_grid_thw = None, video_grid_thw = None, attention_mask = None, feature_attention_mask = None, audio_feature_lengths = None, position_ids = None, past_key_values = None, inputs_embeds = None, labels = None, use_cache = None, output_router_logits: bool | None = None, use_audio_in_video = None, video_second_per_grid = None, mm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2221)

**المعاملات:**

input_ids (`` of shape `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

input_features (`` of shape `(batch_size, sequence_length, feature_dim)`) : المصفوفات (tensors) المقابلة لميزات الصوت المدخلة. يمكن الحصول على ميزات الصوت باستخدام [WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor). راجع [WhisperFeatureExtractor.__call__()](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor) لمعالجة الأصوات).

pixel_values (`` of shape `(batch_size, num_channels, image_size, image_size)`) : المصفوفات (tensors) المقابلة لصور الإدخال. يمكن الحصول على قيم البكسل باستخدام [Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor). راجع [Qwen2VLImageProcessor.__call__()](/docs/transformers/main/ar/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor) لمعالجة الصور).

pixel_values_videos (`` of shape `(batch_size, num_frames, num_channels, frame_size, frame_size)`) : المصفوفات (tensors) المقابلة لفيديو الإدخال. يمكن الحصول على قيم البكسل للفيديوهات باستخدام [Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor). راجع [Qwen2VLVideoProcessor.__call__()](/docs/transformers/main/ar/model_doc/molmo2#transformers.Molmo2VideoProcessor.__call__) للتفاصيل ([Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) يستخدم [Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor) لمعالجة الفيديوهات).

image_grid_thw (`` of shape `(num_images, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل صورة في نموذج LLM.

video_grid_thw (`` of shape `(num_videos, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل فيديو في LLM.

attention_mask (`` of shape `(batch_size, sequence_length)`) : Mask to avoid performing attention on padding token indices. Mask values selected in `[0, 1]`:  - 1 for tokens that are **not masked**, - 0 for tokens that are **masked**.  [What are attention masks?](../glossary#attention-mask)

feature_attention_mask (`torch.Tensor` من الشكل `(batch_size, feature_sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس الميزات المعبأة. قيم القناع المختارة في `[0, 1]`: - 1 للرموز التي **ليست مقنعة**، - 0 للرموز التي **مقنعة**.

audio_feature_lengths (`torch.LongTensor` من الشكل `(num_audios)`، *اختياري*) : طول شكل الميزات لكل صوت في نموذج LLM.

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]`.  [What are position IDs?](../glossary#position-ids)

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 the `past_key_values` returned by the model at a previous stage of decoding, when `use_cache=True` or `config.use_cache=True`.  Only [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) instance is allowed as input, see our [kv cache guide](https://huggingface.co/docs/transformers/en/kv_cache). If no `past_key_values` are passed, [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) will be initialized by default.  The model will output the same cache format that is fed as input.  If `past_key_values` are used, the user is expected to input only unprocessed `input_ids` (those that don't have their past key value states given to this model) of shape `(batch_size, unprocessed_length)` instead of all `input_ids` of shape `(batch_size, sequence_length)`.

inputs_embeds (`` of shape `(batch_size, sequence_length, hidden_size)`) : Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This is useful if you want more control over how to convert `input_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 (see `input_ids` docstring). Tokens with indices set to `-100` are ignored (masked), the loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]

use_cache (``) : If set to `True`, `past_key_values` key value states are returned and can be used to speed up decoding (see `past_key_values`).

output_router_logits (`bool`، *اختياري*) : ما إذا كان يجب إرجاع قيم logits لجميع الموجّهات (routers) أم لا. تُفيد هذه القيم في حساب خسارة الموجّه (router loss)، ولا ينبغي إرجاعها أثناء الاستدلال.

use_audio_in_video (`bool`، *اختياري*) : ما إذا كان سيتم استخدام المسار الصوتي في الفيديو، ويجب أن يكون مطابقًا للمعامل في `process_audio_info`.

video_second_per_grid (`torch.LongTensor` من الشكل `(num_videos)`، *اختياري*) : عدد الثواني لكل شبكة لكل فيديو، يُستخدم للتمثيل الزمني للميزات.

mm_encoder_outputs (`dict[str, ~modeling_outputs.BaseModelOutputWithPooling]`، *اختياري*) : قاموس حيث تكون المفاتيح هي الأنماط المدعومة والقيم هي المخرجات المُرمّزة لذلك النمط. كل مخرَج مُرمّز هو مجموعة (tuple) تتكون من (`pooler_output`، *اختياري*: `last_hidden_states`، *اختياري*: `hidden_states`، *اختياري*: `attentions`) `pooler_output` من الشكل `(batch_size, sequence_length, hidden_size)`، *اختياري*) وهو تسلسل من الميزات متعددة الوسائط للمُشفِّر المُدمجة في تضمينات النص.

**يعيد:** `MoeCausalLMOutputWithPast` أو `tuple(torch.Tensor)`

`MoeCausalLMOutputWithPast` أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) وتتضمن عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تتجاوز طريقة [Qwen3OmniMoeThinkerForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeThinkerForConditionalGeneration) الخاصة بـ forward الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **loss** (`torch.Tensor` من الشكل `(1,)`، *اختياري*، يُعاد عند توفير `labels`) -- خسارة نمذجة اللغة (لتوقع الرمز التالي).
- **logits** (`torch.Tensor` من الشكل `(batch_size, sequence_length, config.vocab_size)`) -- درجات التنبؤ لرأس نمذجة اللغة (درجات لكل رمز في المفردات قبل SoftMax).
- **aux_loss** (`torch.Tensor`، *اختياري*، يُعاد عند تمرير `output_router_logits=True` أو عند تعيين `config.output_router_logits=True`، وفي حال تدريب النموذج لموجّهه باستخدام خسارة توازن الأحمال) -- خسارة مساعدة لتوازن الأحمال الخاصة بالوحدات المتناثرة. تُعيد النماذج التي توازن خبرائها باستخدام انحياز الموجّه بدلاً من ذلك (DeepSeek-V3 والهندسات المشتقة منه) قيمة `None` هنا مع الاستمرار في إرجاع `router_logits`.
- **router_logits** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_router_logits=True` أو عند تعيين `config.output_router_logits=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة متناثرة) بأبعاد `(batch_size * sequence_length, num_experts)`.

  قيمات التوجيه الخام (logits) التي يحسبها موجّهات MoE. يمكن استخدامها لحساب خسارة موازنة الحمل أو لفحص كيفية توزيع الرموز على الخبراء.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

مثال:

```python
>>> 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[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration.get_audio_features]]

```python
get_audio_features(input_features: Tensor, feature_attention_mask: typing.Optional[torch.LongTensor] = None, audio_feature_lengths: typing.Optional[torch.LongTensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2203)

**المعاملات:**

input_features (`torch.Tensor`) : الموترات المقابلة لتسجيلات الصوت المدخلة.

feature_attention_mask (`torch.LongTensor`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس الميزات المعبأة. قيم القناع المختارة في `[0, 1]`:

audio_feature_lengths (`torch.LongTensor` من الشكل `(num_audios)`، *اختياري*) : طول شكل الميزات لكل صوت في نموذج LLM.

**يعيد:** [BaseModelOutputWithPooling](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPooling) أو `tuple(torch.Tensor)`

[BaseModelOutputWithPooling](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPooling) أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **pooler_output** (`torch.Tensor` من الشكل `(batch_size, hidden_size)`) -- حالة الطبقة المخفية الأخيرة للرمز الأول في التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. يتم تدريب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

مثال:

```python
>>> 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[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration.get_image_features]]

```python
get_image_features(pixel_values: Tensor, image_grid_thw: typing.Optional[torch.LongTensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2190)

**المعاملات:**

pixel_values (`torch.Tensor` بأبعاد `(batch_size, num_channels, image_size, image_size)`) : المصفوفات المقابلة للصور المدخلة.

image_grid_thw (`torch.LongTensor` من الشكل `(num_images, 3)`، *اختياري*) : الزمن والارتفاع والعرض لشكل الميزات لكل صورة في LLM.

**يعيد:** `BaseModelOutputWithDeepstackFeatures` أو `tuple(torch.Tensor)`

`BaseModelOutputWithDeepstackFeatures` أو مجموعة (tuple) من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) وتتضمن عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **pooler_output** (`torch.Tensor` من الشكل `(batch_size, hidden_size)`) -- حالة الطبقة المخفية الأخيرة للرمز الأول في التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. يتم تدريب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.
- **deepstack_features** (`List[torch.Tensor]`، *اختياري*) -- قائمة بحالات المخفية (خرائط الميزات) من طبقات deepstack.

مثال:

```python
>>> 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[[transformers.Qwen3OmniMoeThinkerForConditionalGeneration.get_video_features]]

```python
get_video_features(pixel_values_videos: Tensor, video_grid_thw: typing.Optional[torch.LongTensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2177)

**المعاملات:**

pixel_values_videos (`torch.Tensor` من الشكل `(batch_size, num_channels, image_size, image_size)`) : المصفوفات المتناظرة مع مقاطع الفيديو المدخلة.

video_grid_thw (`torch.LongTensor` من الشكل `(num_videos, 3)`، *اختياري*) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل فيديو في LLM.

**يعيد:** `BaseModelOutputWithDeepstackFeatures` أو `tuple(torch.Tensor)`

`BaseModelOutputWithDeepstackFeatures` أو مجموعة (tuple) من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) وتتضمن عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **pooler_output** (`torch.Tensor` من الشكل `(batch_size, hidden_size)`) -- حالة الطبقة المخفية الأخيرة للرمز الأول في التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. يتم تدريب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.
- **deepstack_features** (`List[torch.Tensor]`، *اختياري*) -- قائمة بحالات المخفية (خرائط الميزات) من طبقات deepstack.

مثال:

```python
>>> 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[[transformers.Qwen3OmniMoeTalkerForConditionalGeneration]]

#### transformers.Qwen3OmniMoeTalkerForConditionalGeneration[[transformers.Qwen3OmniMoeTalkerForConditionalGeneration]]

```python
transformers.Qwen3OmniMoeTalkerForConditionalGeneration(config: Qwen3OmniMoeTalkerConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3083)

**المعاملات:**

config ([Qwen3OmniMoeTalkerConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

نموذج Qwen3 Omni Moe لتوليد الرموز المشروطة على أنماط أخرى (مثل توليد النص من صورة ونص).

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeTalkerForConditionalGeneration.forward]]

```python
forward(input_ids = None, attention_mask = None, use_audio_in_video = None, audio_feature_lengths = None, video_second_per_grid = None, image_grid_thw = None, video_grid_thw = None, position_ids = None, past_key_values = None, inputs_embeds = None, labels = None, use_cache = None, output_router_logits = None, residual_codes = None, trailing_text_hidden = None, tts_pad_embed = None, generation_step = None, talker_input_ids = None, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3115)

**المعاملات:**

input_ids (`` of shape `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`` of shape `(batch_size, sequence_length)`) : Mask to avoid performing attention on padding token indices. Mask values selected in `[0, 1]`:  - 1 for tokens that are **not masked**, - 0 for tokens that are **masked**.  [What are attention masks?](../glossary#attention-mask)

use_audio_in_video (`bool`، *اختياري*) : إذا تم ضبطه على `True`، فسيتم استخدام الصوت في الفيديو.

audio_feature_lengths (`torch.LongTensor` من الشكل `(num_audios)`، *اختياري*) : طول شكل الميزات لكل صوت في نموذج LLM.

video_second_per_grid (`torch.LongTensor` من الشكل `(num_videos)`، *اختياري*) : عدد الثواني لكل شبكة لكل فيديو، يُستخدم للتمثيل الزمني للميزات.

image_grid_thw (`` of shape `(num_images, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل صورة في نموذج LLM.

video_grid_thw (`` of shape `(num_videos, 3)`) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل فيديو في LLM.

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]`.  [What are position IDs?](../glossary#position-ids)

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 the `past_key_values` returned by the model at a previous stage of decoding, when `use_cache=True` or `config.use_cache=True`.  Only [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) instance is allowed as input, see our [kv cache guide](https://huggingface.co/docs/transformers/en/kv_cache). If no `past_key_values` are passed, [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) will be initialized by default.  The model will output the same cache format that is fed as input.  If `past_key_values` are used, the user is expected to input only unprocessed `input_ids` (those that don't have their past key value states given to this model) of shape `(batch_size, unprocessed_length)` instead of all `input_ids` of shape `(batch_size, sequence_length)`.

inputs_embeds (`` of shape `(batch_size, sequence_length, hidden_size)`) : Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This is useful if you want more control over how to convert `input_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 (see `input_ids` docstring). Tokens with indices set to `-100` are ignored (masked), the loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]

use_cache (``) : If set to `True`, `past_key_values` key value states are returned and can be used to speed up decoding (see `past_key_values`).

output_router_logits (``) : ما إذا كان يجب إرجاع القيم اللوجستية (logits) لجميع الموجّهات (routers) أم لا. تُعدّ هذه القيم مفيدة لحساب خسارة الموجّه (router loss)، ولا ينبغي إرجاعها أثناء الاستدلال (inference).

residual_codes (`torch.Tensor`) : رموز البقايا المتوقعة من الخطوة السابقة.

trailing_text_hidden (`torch.Tensor`) : حالات النص المخفية من thinker بعد الرمز الأول.

tts_pad_embed (`torch.Tensor`) : متجه التضمين الخاص بـ `tts_pad_token_id`.

generation_step (`int`) : خطوة التوليد منذ التعبئة المسبقة، تُستخدم للمزامنة مع `trailing_text_hidden`.

talker_input_ids (`torch.Tensor`) : المعرّفات المدخلة من thinker، تُستخدم لحساب 3d RoPE.

**يعيد:** `MoeCausalLMOutputWithPast` أو `tuple(torch.Tensor)`

`MoeCausalLMOutputWithPast` أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) وتتضمن عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تتجاوز طريقة [Qwen3OmniMoeTalkerForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerForConditionalGeneration) الخاصة بالتقديم (forward) الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **loss** (`torch.Tensor` من الشكل `(1,)`، *اختياري*، يُعاد عند توفير `labels`) -- خسارة نمذجة اللغة (لتوقع الرمز التالي).
- **logits** (`torch.Tensor` من الشكل `(batch_size, sequence_length, config.vocab_size)`) -- درجات التنبؤ لرأس نمذجة اللغة (درجات لكل رمز في المفردات قبل SoftMax).
- **aux_loss** (`torch.Tensor`، *اختياري*، يُعاد عند تمرير `output_router_logits=True` أو عند تعيين `config.output_router_logits=True`، وفي حال تدريب النموذج لموجّهه باستخدام خسارة توازن الأحمال) -- خسارة مساعدة لتوازن الأحمال الخاصة بالوحدات المتناثرة. تُعيد النماذج التي توازن خبرائها باستخدام انحياز الموجّه بدلاً من ذلك (DeepSeek-V3 والهندسات المشتقة منه) قيمة `None` هنا مع الاستمرار في إرجاع `router_logits`.
- **router_logits** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_router_logits=True` أو عند تعيين `config.output_router_logits=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة متناثرة) بأبعاد `(batch_size * sequence_length, num_experts)`.

  قيمات التوجيه الخام (logits) التي يحسبها موجّهات MoE. يمكن استخدامها لحساب خسارة موازنة الحمل أو لفحص كيفية توزيع الرموز على الخبراء.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

## Qwen3OmniMoePreTrainedModel[[transformers.Qwen3OmniMoePreTrainedModel]]

#### transformers.Qwen3OmniMoePreTrainedModel[[transformers.Qwen3OmniMoePreTrainedModel]]

```python
transformers.Qwen3OmniMoePreTrainedModel(config: PreTrainedConfig, *inputs, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L113)

**المعاملات:**

config ([PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

## Qwen3OmniMoePreTrainedModelForConditionalGeneration[[transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration]]

#### transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration[[transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration]]

```python
transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration(config: PreTrainedConfig, *inputs, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L159)

#### get_chunked_index[[transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration.get_chunked_index]]

```python
get_chunked_index(token_indices: Tensor, tokens_per_chunk: int, remove_index: int)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L182)

**المعاملات:**

token_indices (`torch.Tensor` من الشكل `(seq_len, )`) : قائمة متزايدة بشكل أحادي لقيم فهارس الرموز.

t_ntoken_per_chunk (`int`) : عدد الرموز لكل شريحة (يُستخدم كحد عتبة حجم الشريحة).

remove_index (`int`) معرّف فهرس يُطرح من `token_indices` قبل التقطيع --

**يعيد:** `list[tuple[int, int]]`

قائمة من الأزواج (tuples)، يمثل كلٌّ منها الفهرس الابتدائي (شاملًا) والفهرس النهائي (غير شامل) لقِطعة في `token_indices`.

يقسم قائمة فهارس الرموز إلى مجموعات بناءً على نطاقات قيم الرموز.

عند تقديم قائمة من فهارس الرموز، تُرجع قائمة من أزواج الفهارس (البداية، النهاية) التي تمثل مقاطع من القائمة حيث تقع قيم الرموز ضمن نطاقات متتالية من `t_ntoken_per_chunk`.

على سبيل المثال، إذا كان `t_ntoken_per_chunk` يساوي 1000، فإن الدالة ستنشئ مقاطع بحيث:
- تحتوي الدفعة الأولى على قيم الرموز < 1000،
- تحتوي الشريحة الثانية على قيم >= 1000 و < 2000، وهكذا.

#### get_rope_index[[transformers.Qwen3OmniMoePreTrainedModelForConditionalGeneration.get_rope_index]]

```python
get_rope_index(input_ids: typing.Optional[torch.LongTensor] = None, image_grid_thw: typing.Optional[torch.LongTensor] = None, video_grid_thw: typing.Optional[torch.LongTensor] = None, attention_mask: typing.Optional[torch.Tensor] = None, use_audio_in_video: bool = False, audio_seqlens: typing.Optional[torch.LongTensor] = None, second_per_grids: typing.Optional[torch.Tensor] = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L219)

**المعاملات:**

input_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا إذا قمت بتزويده.

image_grid_thw (`torch.LongTensor` من الشكل `(num_images, 3)`، *اختياري*) : الزمن والارتفاع والعرض لشكل الميزات لكل صورة في LLM.

video_grid_thw (`torch.LongTensor` من الشكل `(num_videos, 3)`، *اختياري*) : الأبعاد الزمنية والارتفاع والعرض لشكل الميزات لكل فيديو في LLM.

attention_mask (`torch.Tensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. قيم القناع المختارة في `[0, 1]`: - 1 للرموز التي **ليست مقنّعة**، - 0 للرموز التي **مقنّعة**.

use_audio_in_video (`bool`، *اختياري*) : إذا تم ضبطه على `True`، فسيتم استخدام الصوت في الفيديو.

audio_seqlens (`torch.LongTensor` من الشكل `(num_audios)`، *اختياري*) : طول شكل الميزات لكل صوت في نموذج LLM.

second_per_grids (`torch.LongTensor` من الشكل `(num_videos)`، *اختياري*) : الفترة الزمنية (بالثواني) لكل شبكة على البُعد الزمني في معرّفات المواقع ثلاثية الأبعاد.

**يعيد:**

position_ids (`torch.LongTensor` من الشكل `(3, batch_size, sequence_length)`) mrope_position_deltas (`torch.Tensor` من الشكل `(batch_size)`)

احسب فهرس rope ثلاثي الأبعاد بناءً على الأبعاد الزمنية والارتفاع والعرض للصورة والفيديو في نموذج LLM.

الشرح: تحتوي كل تسلسل تضمين على تضمين بصري وتضمين نصي، أو تحتوي على تضمين نصي فقط.

في حالة تسلسل التضمين النصي الخالص، لا يوجد فرق في تضمين الموضع الدوار مقارنةً بنماذج اللغة الكبيرة الحديثة. أمثلة: input_ids: [T T T T T]، حيث يمثل T النص. temporal position_ids: [0, 1, 2, 3, 4] height position_ids: [0, 1, 2, 3, 4] width position_ids: [0, 1, 2, 3, 4]

لأجزاء المتسلسلة الخاصة بالتضمين البصري والنصي، نحسب تضمين موضع دوّار ثلاثي الأبعاد (3D rotary position embedding) للجزء البصري وتضمين موضع دوّار أحادي البعد (1D rotary position embedding) للجزء النصي. أمثلة: الزمن (Time): 3 رقعات (patches)، تمثل مقاطع مختلفة من الفيديو عبر الزمن. الارتفاع (Height): رقعتان، تقسم كل إطار عمودياً. العرض (Width): رقعتان، تقسم كل إطار أفقياً. لدينا أيضاً بعض المعاملات المهمة: fps (إطارات في الثانية): معدل إطارات الفيديو، مضبوط على 1. وهذا يعني أن إطاراً واحداً يُعالج كل ثانية. tokens_per_second: هذا معامل حاسم. فهو يحدد عدد "خطوات الزمن" أو "رموز الزمن" المفاهيمية التي تُحزم في فترة ثانية واحدة من الفيديو. في هذه الحالة، لدينا 25 رمزاً في الثانية. لذا سيتم تمثيل كل ثانية من الفيديو بـ 25 نقطة زمنية منفصلة. فهو في جوهره يحدد الدقة الزمنية. temporal_patch_size: عدد الإطارات التي تُشكّل رقعة زمنية واحدة. هنا، هي إطاران. interval: حجم الخطوة لمعرّفات الموضع الزمني، ويُحسب على النحو التالي: tokens_per_second * temporal_patch_size / fps. في هذه الحالة، 25 * 2 / 1 = 50. وهذا يعني أن كل رقعة زمنية سيكون لديها فرق قدره 50 في معرّفات الموضع الزمني. input_ids: [V V V V V V V V V V V V T T T T T]، حيث V للجزء البصري. 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] هنا نحسب معرّفات الموضع لبدء النص على أنها أكبر قيمة لمعرّفات الموضع البصرية زائد 1.

## Qwen3OmniMoeTalkerModel[[transformers.Qwen3OmniMoeTalkerModel]]

#### transformers.Qwen3OmniMoeTalkerModel[[transformers.Qwen3OmniMoeTalkerModel]]

```python
transformers.Qwen3OmniMoeTalkerModel(config: Qwen3OmniMoeTalkerTextConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2955)

**المعاملات:**

config ([Qwen3OmniMoeTalkerTextConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerTextConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

جزء النص من Qwen3OmniMoe، وليس نموذجاً نصياً بحتاً، حيث يدمج DeepStack الميزات البصرية في الحالات المخفية المبكرة.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeTalkerModel.forward]]

```python
forward(input_ids: typing.Optional[torch.LongTensor] = None, attention_mask: typing.Optional[torch.Tensor] = None, position_ids: typing.Optional[torch.LongTensor] = None, past_key_values: transformers.cache_utils.Cache | None = None, inputs_embeds: typing.Optional[torch.Tensor] = None, use_cache: bool | None = None, visual_pos_masks: typing.Optional[torch.Tensor] = None, deepstack_visual_embeds: list[torch.Tensor] | None = None, **kwargs: *<class 'transformers.modeling_flash_attention_utils.FlashAttentionKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2980)

**المعاملات:**

input_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`torch.Tensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. قيم القناع المختارة من `[0, 1]`: - 1 للرموز التي **ليست مقنّعة**، - 0 للرموز التي **مقنّعة**.  [ما هي أقنعة الانتباه؟](../glossary#attention-mask)

position_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها من النطاق `[0, config.n_positions - 1]`.  [ما هي معرّفات المواضع؟](../glossary#position-ids)

past_key_values (`~cache_utils.Cache`، *اختياري*) : حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي وكتل الانتباه المتقاطع) يمكن استخدامها لتسريع فك الترميز التسلسلي. يتكوّن هذا عادةً من `past_key_values` التي يعيدها النموذج في مرحلة سابقة من فك الترميز، عندما يكون `use_cache=True` أو `config.use_cache=True`. يُسمح فقط بتمرير كائن [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) كمدخل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache). إذا لم يتم تمرير `past_key_values`، فسيتم تهيئة [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) افتراضيًا. سيُخرج النموذج نفس تنسيق الذاكرة المؤقتة المُدخل. إذا تم استخدام `past_key_values`، يُتوقع من المستخدم إدخال `input_ids` غير المعالجة فقط (تلك التي لم تُعطَ حالات مفاتيح وقيم سابقة لها في هذا النموذج) بأبعاد `(batch_size, unprocessed_length)` بدلاً من جميع `input_ids` بأبعاد `(batch_size, sequence_length)`.

inputs_embeds (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`، *اختياري*) : بدلاً من تمرير `input_ids`، يمكنك اختيار تمرير تمثيل مضمّن مباشرةً. هذا مفيد إذا كنت ترغب في الحصول على مزيد من التحكم في كيفية تحويل فهارس `input_ids` إلى المتجهات المرتبطة بها، مقارنةً بمصفوفة البحث المضمّنة الداخلية للنموذج.

use_cache (`bool`، *اختياري*) : إذا تم ضبطه على `True`، تُعاد حالات المفاتيح والقيم `past_key_values` ويمكن استخدامها لتسريع فك الترميز (انظر `past_key_values`).

visual_pos_masks (`torch.Tensor` من الشكل `(batch_size, seqlen)`، *اختياري*) : قناع المواضع البصرية.

deepstack_visual_embeds (`list[torch.Tensor]`, *اختياري*) : تضمينات البنية العميقة البصرية. الشكل هو (num_layers, visual_seqlen, embed_dim). يتم استخراج الميزة من طبقات مشفر البنية البصرية المختلفة، وتُغذى إلى حالات المخفي في المُفكِّك. وهي مستمدة من ورقة DeepStack(https://arxiv.org/abs/2406.04334).

**يعيد:** `MoeModelOutputWithPast` أو `tuple(torch.Tensor)`

`MoeModelOutputWithPast` أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعدادات ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تتجاوز طريقة [Qwen3OmniMoeTalkerModel](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerModel) الخاصة بالتقديم (forward) الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي، وفي كتل الانتباه المتقاطع اختياريًا إذا كان `config.is_encoder_decoder=True`) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.
- **router_logits** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_router_probs=True` و`config.add_router_probs=True` أو عند `config.output_router_probs=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, sequence_length, num_experts)`.

  قيمات التوجيه الخام (بعد تطبيق دالة softmax) التي تحسبها وحدات التوجيه في نماذج مزيج الخبراء (MoE)، وتُستخدم هذه القيم لحساب الخسارة المساعدة في نماذج مزيج الخبراء.

## Qwen3OmniMoeThinkerTextPreTrainedModel[[transformers.Qwen3OmniMoeThinkerTextPreTrainedModel]]

#### transformers.Qwen3OmniMoeThinkerTextPreTrainedModel[[transformers.Qwen3OmniMoeThinkerTextPreTrainedModel]]

```python
transformers.Qwen3OmniMoeThinkerTextPreTrainedModel(config: PreTrainedConfig, *inputs, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L1567)

**المعاملات:**

config ([PreTrainedConfig](/docs/transformers/main/ar/main_classes/configuration#transformers.PreTrainedConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

## Qwen3OmniMoeProcessor[[transformers.Qwen3OmniMoeProcessor]]

#### transformers.Qwen3OmniMoeProcessor[[transformers.Qwen3OmniMoeProcessor]]

```python
transformers.Qwen3OmniMoeProcessor(image_processor = None, video_processor = None, feature_extractor = None, tokenizer = None, chat_template = None)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/processing_qwen3_omni_moe.py#L128)

**المعاملات:**

image_processor (`Qwen2VLImageProcessor`) : مُعالج الصور هو مدخل مطلوب.

video_processor (`Qwen2VLVideoProcessor`) : مُعالج الفيديو هو مدخل مطلوب.

feature_extractor (`WhisperFeatureExtractor`) : مُستخرج الميزات هو مدخل إلزامي.

tokenizer (`Qwen2Tokenizer`) : المُجزِّئ مدخل إلزامي.

chat_template (`str`) : قالب Jinja لتحويل قوائم الرسائل في المحادثة إلى نص قابل للتحويم.

ينشئ Qwen3OmniMoeProcessor الذي يجمع معالج الصور ومعالج الفيديو ومستخرج الميزات ومجزئ الرموز في معالج واحد.

يوفر [Qwen3OmniMoeProcessor](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeProcessor) جميع وظائف [Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor) و[Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor) و[WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor) و[Qwen2Tokenizer](/docs/transformers/main/ar/model_doc/qwen2#transformers.Qwen2Tokenizer). راجع [~Qwen2VLImageProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLImageProcessor) و[~Qwen2VLVideoProcessor](/docs/transformers/main/ar/model_doc/qwen2_vl#transformers.Qwen2VLVideoProcessor) و[~WhisperFeatureExtractor](/docs/transformers/main/ar/model_doc/whisper#transformers.WhisperFeatureExtractor) و[~Qwen2Tokenizer](/docs/transformers/main/ar/model_doc/qwen2#transformers.Qwen2Tokenizer) لمزيد من المعلومات.

#### __call__[[transformers.Qwen3OmniMoeProcessor.__call__]]

```python
__call__(text: str | list[str] | list[list[str]] = None, images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = None, videos: 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] = None, audio: 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'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/processing_qwen3_omni_moe.py#L164)

**المعاملات:**

text (`Union[str, list[str], list[list[str]]]`، *اختياري*) : التسلسل أو الدفعة من التسلسلات المراد ترميزها. يمكن أن يكون كل تسلسل نصًا أو قائمة من النصوص (نص مُجزَّأ مسبقًا). إذا مررت مدخلات مُجزَّأة مسبقًا، فاضبط `is_split_into_words=True` لتجنب الغموض مع المدخلات المُجمَّعة في دفعات.

images (`Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]`, *اختياري*) : الصورة التي سيتم معالجتها مسبقًا. يتوقع صورة واحدة أو دفعة من الصور بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر صورًا بقيم بكسل بين 0 و1، فاضبط `do_rescale=False`.

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]]]`، *اختياري*) : الفيديو المراد معالجته مسبقًا. يتوقع إدخال فيديو واحد أو دفعة من الفيديوهات بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر فيديوهات بقيم بكسل بين 0 و1، فاضبط `do_rescale=False`.

audio (`Union[numpy.ndarray, torch.Tensor, collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence[torch.Tensor]]`، *اختياري*) : الصوت أو مجموعة الأصوات التي يجب تجهيزها. يمكن أن يكون كل صوت مصفوفة NumPy أو متجه PyTorch. في حالة استخدام مصفوفة NumPy/متجه PyTorch، يجب أن يكون شكل كل صوت (C, T)، حيث C هو عدد القنوات، وT هو طول العينة للصوت.

min_pixels (`int`، *kwargs*، *اختياري*) : الحد الأدنى لعدد البكسلات (الارتفاع × العرض) لإطارات الفيديو بعد تغيير الحجم. سيتم تكبير الإطارات الأصغر من هذا الحد لتلبية المتطلب الأدنى.

max_pixels (`int`، *kwargs*، *اختياري*) : الحد الأقصى لعدد البكسلات (الارتفاع × العرض) لإطارات الفيديو بعد تغيير الحجم. سيتم تصغير الإطارات التي تتجاوز هذا الحد لتتوافق مع هذا الحد الأقصى.

patch_size (`int`، *kwargs*، *اختياري*) : حجم البقعة المكانية الذي يستخدمه مُشفِّر الرؤية. تُقسَّم إطارات الفيديو إلى بقع بهذا الحجم في كل من أبعاد الارتفاع والعرض.

temporal_patch_size (`int`، *kwargs*، *اختياري*) : حجم البقعة الزمنية الذي يستخدمه مُشفِّر الرؤية. يحدد هذا العدد من الإطارات المتتالية التي تُجمَّع معًا كبقعة زمنية واحدة.

merge_size (`int`، *kwargs*، *اختياري*) : حجم الدمج المستخدم لدمج البقع المكانية. يتم دمج عدة بقع معًا لتقليل طول التسلسل مع الحفاظ على المعلومات المكانية.

min_frames (`int`، *kwargs*، *اختياري*) : الحد الأدنى لعدد الإطارات التي يجب استخراجها من الفيديو. سيتم ملء الفيديوهات التي تحتوي على عدد أقل من الإطارات أو تكرار إطاراتها لتلبية هذا الشرط.

max_frames (`int`، *kwargs*، *اختياري*) : الحد الأقصى لعدد الإطارات التي سيتم استخراجها من الفيديو. سيتم تقصير الفيديوهات الأطول أو أخذ عينات منها لتناسب هذا الحد.

use_audio_in_video (`bool`، *kwargs*، *اختياري*، القيمة الافتراضية `False`) : تم إيقاف استخدامه، استخدم `Qwen3OmniMoeProcessorKwargs.load_audio_from_video` بدلاً منه. ما إذا كان يجب دمج معلومات الصوت عند معالجة مقاطع الفيديو. عند التفعيل، يتم تبديل رموز الصوت مع رموز الفيديو بناءً على المحاذاة الزمنية، مما يخلق تمثيلاً متعدد الوسائط موحداً.

load_audio_from_video (`bool`، *kwargs*، *اختياري*، القيمة الافتراضية `False`) : تم إيقاف استخدامه، استخدم `Qwen3OmniMoeProcessorKwargs.load_audio_from_video` بدلاً منه. ما إذا كان يجب دمج معلومات الصوت عند معالجة مقاطع الفيديو. عند التفعيل، يتم تبديل رموز الصوت مع رموز الفيديو بناءً على المحاذاة الزمنية، مما يخلق تمثيلاً متعدد الوسائط موحداً.

seconds_per_chunk (`float`، *kwargs*، *اختياري*، القيمة الافتراضية `2.0`) : تم إيقاف استخدامه، استخدم `Qwen3OmniMoeProcessorKwargs.seconds_per_chunk` بدلاً منه. المدة (بالثواني) لكل مقطع فيديو عند تقسيم الفيديوهات الطويلة. يتحكم هذا المعامل في كيفية تقسيم الفيديوهات إلى مقاطع زمنية للمعالجة.

position_id_per_seconds (`int`، *kwargs* أو `float`، *اختياري*، القيمة الافتراضية `25`) : تم إيقاف استخدامه، استخدم `Qwen3OmniMoeProcessorKwargs.position_id_per_seconds` بدلاً منه. عدد معرّفات المواقع المخصصة لكل ثانية من الفيديو. يتحكم هذا المعامل في الدقة الزمنية لتضمينات المواقع ويُستخدم لمواءمة رموز الفيديو مع رموز الصوت عندما يكون `use_audio_in_video=True`.

return_mm_token_type_ids (`bool`, *kwargs*) : ما إذا كان يجب إرجاع معرّفات أنواع الرموز متعددة الوسائط التي تشير إلى مواضع رموز الحشو متعددة الوسائط.

return_text_replacement_offsets (`bool`، *kwargs*) : ما إذا كان يجب إرجاع إزاحات الأحرف لكل عنصر نائب متعدد الوسائط (multimodal placeholder) وعنصر الاستبدال الخاص به.

load_audio_from_video (`bool`، *kwargs*) : ما إذا كان سيتم تحميل مسار الصوت للفيديوهات المدخلة. يتم دمج رموز الصوت مع رموز الفيديو إذا كان النموذج يدعم ذلك.

seconds_per_chunk (`float`، *kwargs*، *اختياري*، القيمة الافتراضية `2.0`) : المدة (بالثواني) لكل مقطع فيديو عند تقسيم الفيديوهات الطويلة. يتحكم هذا المعامل في كيفية تقسيم الفيديوهات إلى مقاطع زمنية للمعالجة.

position_id_per_seconds (`int`، *kwargs* أو `float`، *اختياري*، القيمة الافتراضية `13.0`) : عدد معرّفات المواقع المخصصة لكل ثانية من الفيديو. يتحكم هذا المعامل في الدقة الزمنية لتضمينات المواقع ويُستخدم لمواءمة رموز الفيديو مع رموز الصوت عندما يكون `load_audio_from_video=True`.

n_window (`int`، *kwargs*، *اختياري*، القيمة الافتراضية `50`) : حجم نافذة مُشفِّر الصوت. يجب أن يتطابق مع `n_window` في إعدادات النموذج.

return_tensors (`str` أو [TensorType](/docs/transformers/main/ar/internal/file_utils#transformers.TensorType)، *اختياري*) : إذا تم تعيينه، فسيُرجع تينسورات من إطار عمل محدد. القيم المقبولة هي:  - `'pt'`: يُرجع كائنات `torch.Tensor` من PyTorch. - `'np'`: يُرجع كائنات `np.ndarray` من NumPy.

- ****kwargs** ([ProcessingKwargs](/docs/transformers/main/ar/main_classes/processors#transformers.ProcessingKwargs)، *اختياري*) : خيارات معالجة إضافية لكل نمط (نص، صور، مقاطع فيديو، صوت). تُدرج المعلمات الخاصة بالنموذج أعلاه؛ راجع فئة TypedDict للحصول على القائمة الكاملة للحجج المدعومة.

**يعيد:** `~feature_extraction_utils.BatchFeature`

- **data** (`dict`، *اختياري*) -- قاموس من القوائم/المصفوفات/الموترات التي تُعاد بواسطة طرائق __call__/pad ('input_values'، 'attention_mask'، وما إلى ذلك).
- **tensor_type** (`Union[None, str, TensorType]`، *اختياري*) -- يمكنك تحديد tensor_type هنا لتحويل قوائم الأعداد الصحيحة إلى تينسورات PyTorch/Numpy عند التهيئة.
- **skip_tensor_conversion** (`list[str]` أو `set[str]`، *اختياري*) -- قائمة أو مجموعة من المفاتيح التي يجب ألا يتم تحويلها إلى متجهات، حتى عند تحديد `tensor_type`.

## Qwen3OmniMoeCode2Wav[[transformers.Qwen3OmniMoeCode2Wav]]

#### transformers.Qwen3OmniMoeCode2Wav[[transformers.Qwen3OmniMoeCode2Wav]]

```python
transformers.Qwen3OmniMoeCode2Wav(config: Qwen3OmniMoeCode2WavConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3883)

## Qwen3OmniMoeCode2WavDecoderBlock[[transformers.Qwen3OmniMoeCode2WavDecoderBlock]]

#### transformers.Qwen3OmniMoeCode2WavDecoderBlock[[transformers.Qwen3OmniMoeCode2WavDecoderBlock]]

```python
transformers.Qwen3OmniMoeCode2WavDecoderBlock(config: Qwen3OmniMoeCode2WavConfig, layer_idx)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3856)

## Qwen3OmniMoeCode2WavTransformerModel[[transformers.Qwen3OmniMoeCode2WavTransformerModel]]

#### transformers.Qwen3OmniMoeCode2WavTransformerModel[[transformers.Qwen3OmniMoeCode2WavTransformerModel]]

```python
transformers.Qwen3OmniMoeCode2WavTransformerModel(config: Qwen3OmniMoeCode2WavConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3698)

**المعاملات:**

config (`Qwen3OmniMoeCode2WavConfig`) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

نموذج Qwen3 Omni Moe الأساسي الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeCode2WavTransformerModel.forward]]

```python
forward(input_ids = None, attention_mask = None, position_ids = None, past_key_values = None, inputs_embeds = None, use_cache = None, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L3719)

**المعاملات:**

input_ids (`` of shape `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`` of shape `(batch_size, sequence_length)`) : Mask to avoid performing attention on padding token indices. Mask values selected in `[0, 1]`:  - 1 for tokens that are **not masked**, - 0 for tokens that are **masked**.  [What are attention masks?](../glossary#attention-mask)

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]`.  [What are position IDs?](../glossary#position-ids)

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 the `past_key_values` returned by the model at a previous stage of decoding, when `use_cache=True` or `config.use_cache=True`.  Only [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) instance is allowed as input, see our [kv cache guide](https://huggingface.co/docs/transformers/en/kv_cache). If no `past_key_values` are passed, [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) will be initialized by default.  The model will output the same cache format that is fed as input.  If `past_key_values` are used, the user is expected to input only unprocessed `input_ids` (those that don't have their past key value states given to this model) of shape `(batch_size, unprocessed_length)` instead of all `input_ids` of shape `(batch_size, sequence_length)`.

inputs_embeds (`` of shape `(batch_size, sequence_length, hidden_size)`) : Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This is useful if you want more control over how to convert `input_ids` indices into associated vectors than the model's internal embedding lookup matrix.

use_cache (``) : If set to `True`, `past_key_values` key value states are returned and can be used to speed up decoding (see `past_key_values`).

**يعيد:** [BaseModelOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPast) أو `tuple(torch.Tensor)`

[BaseModelOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPast) أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تُعيد طريقة [Qwen3OmniMoeCode2WavTransformerModel](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeCode2WavTransformerModel) الخاصة بالتقديم (forward) تعريف الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.

  إذا تم استخدام `past_key_values`، فإن الحالة المخفية الأخيرة فقط من التسلسلات ذات الشكل `(batch_size, 1, hidden_size)` هي التي تُخرج.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي، وفي كتل الانتباه المتقاطع اختياريًا إذا كان `config.is_encoder_decoder=True`) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

## Qwen3OmniMoeTalkerCodePredictorModel[[transformers.Qwen3OmniMoeTalkerCodePredictorModel]]

#### transformers.Qwen3OmniMoeTalkerCodePredictorModel[[transformers.Qwen3OmniMoeTalkerCodePredictorModel]]

```python
transformers.Qwen3OmniMoeTalkerCodePredictorModel(config: Qwen3OmniMoeTalkerCodePredictorConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2611)

**المعاملات:**

config ([Qwen3OmniMoeTalkerCodePredictorConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerCodePredictorConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

نموذج Qwen3 Omni Moe الأساسي الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeTalkerCodePredictorModel.forward]]

```python
forward(input_ids: typing.Optional[torch.LongTensor] = None, attention_mask: typing.Optional[torch.Tensor] = None, position_ids: typing.Optional[torch.LongTensor] = None, past_key_values: transformers.cache_utils.Cache | None = None, inputs_embeds: typing.Optional[torch.Tensor] = None, use_cache: bool | None = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2640)

**المعاملات:**

input_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`torch.Tensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. قيم القناع المختارة من `[0, 1]`: - 1 للرموز التي **ليست مقنّعة**، - 0 للرموز التي **مقنّعة**.  [ما هي أقنعة الانتباه؟](../glossary#attention-mask)

position_ids (`torch.LongTensor` من الشكل `(batch_size, sequence_length)`، *اختياري*) : فهارس مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها من النطاق `[0, config.n_positions - 1]`.  [ما هي معرّفات المواضع؟](../glossary#position-ids)

past_key_values (`~cache_utils.Cache`، *اختياري*) : حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي وكتل الانتباه المتقاطع) يمكن استخدامها لتسريع فك الترميز التسلسلي. يتكوّن هذا عادةً من `past_key_values` التي يعيدها النموذج في مرحلة سابقة من فك الترميز، عندما يكون `use_cache=True` أو `config.use_cache=True`. يُسمح فقط بتمرير كائن [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) كمدخل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache). إذا لم يتم تمرير `past_key_values`، فسيتم تهيئة [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) افتراضيًا. سيُخرج النموذج نفس تنسيق الذاكرة المؤقتة المُدخل. إذا تم استخدام `past_key_values`، يُتوقع من المستخدم إدخال `input_ids` غير المعالجة فقط (تلك التي لم تُعطَ حالات مفاتيح وقيم سابقة لها في هذا النموذج) بأبعاد `(batch_size, unprocessed_length)` بدلاً من جميع `input_ids` بأبعاد `(batch_size, sequence_length)`.

inputs_embeds (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`، *اختياري*) : بدلاً من تمرير `input_ids`، يمكنك اختيار تمرير تمثيل مضمّن مباشرةً. هذا مفيد إذا كنت ترغب في الحصول على مزيد من التحكم في كيفية تحويل فهارس `input_ids` إلى المتجهات المرتبطة بها، مقارنةً بمصفوفة البحث المضمّنة الداخلية للنموذج.

use_cache (`bool`، *اختياري*) : إذا تم ضبطه على `True`، تُعاد حالات المفاتيح والقيم `past_key_values` ويمكن استخدامها لتسريع فك الترميز (انظر `past_key_values`).

**يعيد:** [BaseModelOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPast) أو `tuple(torch.Tensor)`

[BaseModelOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPast) أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تتجاوز طريقة [Qwen3OmniMoeTalkerCodePredictorModel](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerCodePredictorModel) الخاصة بـ forward الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **last_hidden_state** (`torch.Tensor` من الشكل `(batch_size, sequence_length, hidden_size)`) -- تسلسل من حالات الإخفاء (hidden-states) عند مخرج الطبقة الأخيرة من النموذج.

  إذا تم استخدام `past_key_values`، فإن الحالة المخفية الأخيرة فقط من التسلسلات ذات الشكل `(batch_size, 1, hidden_size)` هي التي تُخرج.
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي، وفي كتل الانتباه المتقاطع اختياريًا إذا كان `config.is_encoder_decoder=True`) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

## Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration[[transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration]]

#### transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration[[transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration]]

```python
transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration(config: Qwen3OmniMoeTalkerCodePredictorConfig)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2700)

**المعاملات:**

config ([Qwen3OmniMoeTalkerCodePredictorConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerCodePredictorConfig)) : فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. عند التهيئة باستخدام ملف إعدادات، لا يتم تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة [from_pretrained()](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel.from_pretrained) لتحميل أوزان النموذج.

نموذج Qwen3 Omni Moe لتوليد الرموز المشروطة على أنماط أخرى (مثل توليد النص من صورة ونص).

يرث هذا النموذج من [PreTrainedModel](/docs/transformers/main/ar/main_classes/model#transformers.PreTrainedModel). راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التنزيل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضاً فئة فرعية من [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

#### forward[[transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration.forward]]

```python
forward(input_ids = None, attention_mask = None, position_ids = None, past_key_values = None, inputs_embeds = None, labels = None, use_cache = None, generation_steps = None, **kwargs)
```

[المصدر](https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen3_omni_moe/modeling_qwen3_omni_moe.py#L2723)

**المعاملات:**

input_ids (`` of shape `(batch_size, sequence_length)`) : فهارس رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا. يمكن الحصول على الفهارس باستخدام [AutoTokenizer](/docs/transformers/main/ar/model_doc/auto#transformers.AutoTokenizer). راجع [PreTrainedTokenizer.encode()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode) و [PreTrainedTokenizer.__call__()](/docs/transformers/main/ar/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) للتفاصيل. [ما هي معرّفات الإدخال؟](../glossary#input-ids)

attention_mask (`` of shape `(batch_size, sequence_length)`) : Mask to avoid performing attention on padding token indices. Mask values selected in `[0, 1]`:  - 1 for tokens that are **not masked**, - 0 for tokens that are **masked**.  [What are attention masks?](../glossary#attention-mask)

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]`.  [What are position IDs?](../glossary#position-ids)

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 the `past_key_values` returned by the model at a previous stage of decoding, when `use_cache=True` or `config.use_cache=True`.  Only [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache) instance is allowed as input, see our [kv cache guide](https://huggingface.co/docs/transformers/en/kv_cache). If no `past_key_values` are passed, [DynamicCache](/docs/transformers/main/ar/internal/generation_utils#transformers.DynamicCache) will be initialized by default.  The model will output the same cache format that is fed as input.  If `past_key_values` are used, the user is expected to input only unprocessed `input_ids` (those that don't have their past key value states given to this model) of shape `(batch_size, unprocessed_length)` instead of all `input_ids` of shape `(batch_size, sequence_length)`.

inputs_embeds (`` of shape `(batch_size, sequence_length, hidden_size)`) : Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This is useful if you want more control over how to convert `input_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 (see `input_ids` docstring). Tokens with indices set to `-100` are ignored (masked), the loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]

use_cache (``) : If set to `True`, `past_key_values` key value states are returned and can be used to speed up decoding (see `past_key_values`).

generation_steps (`int`) : خطوة توليد مُتنبئ الرمز، 0..num_code_groups-1

**يعيد:** [CausalLMOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.CausalLMOutputWithPast) أو `tuple(torch.Tensor)`

[CausalLMOutputWithPast](/docs/transformers/main/ar/main_classes/output#transformers.modeling_outputs.CausalLMOutputWithPast) أو مجموعة من `torch.Tensor` (إذا تم تمرير `return_dict=False` أو عندما يكون `config.return_dict=False`) تتكون من عناصر مختلفة اعتماداً على الإعداد ([Qwen3OmniMoeConfig](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeConfig)) والمدخلات.

تُعيد طريقة [Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration](/docs/transformers/main/ar/model_doc/qwen3_omni_moe#transformers.Qwen3OmniMoeTalkerCodePredictorModelForConditionalGeneration) الخاصة بالتقديم (forward) تعريف الطريقة الخاصة `__call__`.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن `Module` بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

- **loss** (`torch.Tensor` من الشكل `(1,)`، *اختياري*، يُعاد عند توفير `labels`) -- خسارة نمذجة اللغة (لتوقع الرمز التالي).
- **logits** (`torch.Tensor` من الشكل `(batch_size, sequence_length, config.vocab_size)`) -- درجات التنبؤ لرأس نمذجة اللغة (درجات لكل رمز في المفردات قبل SoftMax).
- **past_key_values** (`Cache`، *اختياري*، يُعاد عند تمرير `use_cache=True` أو عند تعيين `config.use_cache=True`) -- هو كائن من نوع [Cache](/docs/transformers/main/ar/internal/generation_utils#transformers.Cache). لمزيد من التفاصيل، راجع [دليل ذاكرة kv](https://huggingface.co/docs/transformers/en/kv_cache).

  تحتوي على حالات مخفية محسوبة مسبقًا (المفاتيح والقيم في كتل الانتباه الذاتي) يمكن استخدامها (انظر مدخل `past_key_values`) لتسريع فك الترميز التسلسلي.
- **hidden_states** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_hidden_states=True` أو عند تعيين `config.output_hidden_states=True`) -- مجموعة من `torch.Tensor` (واحدة لمخرجات التضمينات، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لمخرجات كل طبقة) بأبعاد `(batch_size, sequence_length, hidden_size)`.

  حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.
- **attentions** (`tuple(torch.Tensor)`، *اختياري*، يُعاد عند تمرير `output_attentions=True` أو عند تعيين `config.output_attentions=True`) -- مجموعة من `torch.Tensor` (واحدة لكل طبقة) بأبعاد `(batch_size, num_heads, sequence_length, sequence_length)`.

  أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

