Apidog

Nền tảng phát triển API hợp tác tất cả trong một

Thiết kế API

Tài liệu API

Gỡ lỗi API

Giả lập API

Kiểm thử API tự động

Qwen2.5-Omni-7B: Nhỏ Nhưng Mạnh Mẽ

INEZA FELIN-MICHEL

INEZA FELIN-MICHEL

Updated on tháng 5 1, 2025

Lĩnh vực trí tuệ nhân tạo đang phát triển nhanh chóng, đẩy xa giới hạn về những gì máy móc có thể nhận thức, hiểu và tạo ra. Một bước tiến đáng kể trong quá trình phát triển này được đánh dấu bằng sự ra đời của mô hình Qwen2.5-Omni-7B, một mô hình đa phương thức đầu cuối (end-to-end) hàng đầu được phát triển bởi nhóm Qwen. Mô hình này thể hiện một sự thay đổi mô hình, vượt ra ngoài các tương tác chỉ tập trung vào văn bản để hướng tới trải nghiệm thực sự đa phương thức (omni-modal). Nó xử lý liền mạch một loạt các đầu vào đa dạng – văn bản, hình ảnh, âm thanh và video – đồng thời tạo ra phản hồi ở cả định dạng văn bản và giọng nói tự nhiên, thường là ở dạng truyền trực tuyến theo thời gian thực. Bài viết này đi sâu vào các chi tiết kỹ thuật phức tạp, điểm chuẩn hiệu suất và các ứng dụng thực tế của mô hình Qwen2.5-Omni-7B đột phá.

💡
Bạn muốn một công cụ kiểm thử API tuyệt vời có thể tạo ra tài liệu API đẹp mắt?

Bạn muốn một nền tảng tích hợp, Tất cả trong Một để Đội ngũ Phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng mọi nhu cầu của bạn và thay thế Postman với mức giá phải chăng hơn nhiều!
button

Mô hình Qwen2.5-Omni-7B là gì? Và tại sao nó lại tốt đến vậy?

Về cốt lõi, mô hình Qwen2.5-Omni-7B sử dụng một kiến trúc đầu cuối mới lạ có tên "Thinker-Talker". Triết lý thiết kế này nhằm mục đích tạo ra một hệ thống thống nhất có khả năng nhận thức toàn diện và tạo ra biểu đạt trên nhiều phương thức.

Thành phần "Thinker" chịu trách nhiệm xử lý và hiểu sự phong phú của các đầu vào đa phương thức. Nó tích hợp các bộ mã hóa chuyên biệt cho các loại dữ liệu khác nhau:

  • Văn bản: Tận dụng các mô-đun hiểu ngôn ngữ dựa trên transformer tiên tiến, có khả năng xây dựng dựa trên nền tảng vững chắc của dòng Qwen2.
  • Thị giác (Hình ảnh & Khung hình video): Kết hợp các transformer thị giác (ViTs) hoặc kiến trúc tương tự để trích xuất các đặc trưng không gian từ hình ảnh và các đặc trưng thời gian từ khung hình video.
  • Âm thanh: Sử dụng các bộ mã hóa âm thanh được thiết kế để xử lý các dạng sóng thô hoặc phổ đồ (spectrograms), thu nhận các đặc trưng âm học, các mẫu lời nói, âm thanh môi trường và các yếu tố âm nhạc.
image-1.png

Một đổi mới quan trọng trong kiến trúc là Time-aligned Multimodal RoPE (TMRoPE). Các mã hóa vị trí tiêu chuẩn như Rotary Position Embedding (RoPE) xuất sắc trong dữ liệu tuần tự như văn bản nhưng cần được điều chỉnh cho các kịch bản đa phương thức, đặc biệt là video nơi các khung hình thị giác và luồng âm thanh phải được đồng bộ hóa. TMRoPE giải quyết vấn đề này bằng cách căn chỉnh dấu thời gian của các khung hình video với các phân đoạn âm thanh tương ứng. Sự đồng bộ hóa này cho phép mô hình xây dựng sự hiểu biết về thời gian mạch lạc của các sự kiện nghe nhìn, cho phép nó trả lời các câu hỏi như "Âm thanh nào xảy ra khi vật thể bị rơi trong video?"

Thành phần "Talker" xử lý việc tạo ra các đầu ra. Nó bao gồm:

  • Bộ giải mã văn bản: Một bộ giải mã mô hình ngôn ngữ mạnh mẽ tạo ra phản hồi văn bản dựa trên sự hiểu biết đa phương thức được hợp nhất từ Thinker.
  • Bộ tổng hợp giọng nói: Một mô-đun chuyển văn bản thành giọng nói (TTS) tích hợp có khả năng tạo ra giọng nói tự nhiên theo thời gian thực. Mô-đun này có khả năng sử dụng các bộ mã hóa giọng nói dựa trên mạng nơ-ron tinh vi và có thể cả kỹ thuật nhúng giọng nói để cho phép các đầu ra giọng nói khác nhau (như 'Chelsie' và 'Ethan').

Tính chất đầu cuối (end-to-end) có nghĩa là toàn bộ quá trình, từ nhận thức đến tạo ra, diễn ra trong một mô hình duy nhất, thống nhất, giảm thiểu độ trễ và cho phép tương tác liền mạch, truyền trực tuyến, nơi phản hồi có thể bắt đầu trước khi đầu vào được xử lý hoàn toàn.

Vậy tại sao mô hình Qwen2.5-Omni-7B lại đặc biệt đến vậy?

Mô hình Qwen2.5-Omni-7B tự phân biệt mình thông qua một số tính năng kỹ thuật chính:

  • Nhận thức và Tạo ra đa phương thức (Omni-Modal): Không giống như các mô hình chuyên biệt cho từng phương thức riêng lẻ, Qwen2.5-Omni-7B được thiết kế đặc trưng cho các đầu vào kết hợp. Nó có thể phân tích một video, nghe bản âm thanh của nó, đọc hướng dẫn văn bản đi kèm và tạo ra phản hồi tổng hợp thông tin từ tất cả các nguồn này, xuất ra cả văn bản và âm thanh nói.
  • Tương tác truyền trực tuyến thời gian thực: Kiến trúc Thinker-Talker hỗ trợ xử lý đầu vào theo từng khối (chunked input) và tạo ra đầu ra ngay lập tức. Điều này tạo điều kiện thuận lợi cho các ứng dụng thực sự tương tác như trợ lý giọng nói có thể phản hồi giữa câu hoặc công cụ phân tích video cung cấp bình luận khi các sự kiện diễn ra.
  • Tổng hợp giọng nói độ trung thực cao: Mô-đun TTS tích hợp hướng tới sự tự nhiên và mạnh mẽ, được đánh giá thuận lợi so với các hệ thống TTS truyền trực tuyến và không truyền trực tuyến khác (ví dụ: sử dụng SEED-TTS-eval). Nó xử lý văn bản phức tạp và duy trì tính nhất quán của người nói khi áp dụng.
  • Hiệu suất đa phương thức cạnh tranh: Các điểm chuẩn cho thấy mô hình Qwen2.5-Omni-7B hoạt động mạnh mẽ trên nhiều tác vụ khác nhau. Nó vượt qua mô hình Qwen2-Audio chuyên biệt trong một số tác vụ âm thanh và đạt hiệu suất tương đương với mô hình Qwen2.5-VL-7B tập trung vào thị giác-ngôn ngữ trong các tác vụ thị giác, thể hiện sức mạnh đa phương thức cân bằng của nó. Kết quả hàng đầu của nó trên OmniBench làm nổi bật sự thành thạo trong việc tích hợp nhiều phương thức.
  • Khả năng tuân theo hướng dẫn bằng giọng nói hiệu quả: Một khả năng đáng chú ý là khả năng hiểu và thực hiện các hướng dẫn được đưa ra bằng giọng nói với hiệu quả tương đương với hướng dẫn bằng văn bản. Điều này được xác thực thông qua các điểm chuẩn như MMLU và GSM8K được thực hiện bằng đầu vào giọng nói, thể hiện tiềm năng hoạt động rảnh tay và điều khiển bằng giọng nói.

Đây là các điểm chuẩn cho Qwen2.5-Omni

image-2.png

Các đánh giá định lượng nhấn mạnh khả năng của mô hình Qwen2.5-Omni-7B. Trên một phổ rộng các điểm chuẩn, nó thể hiện sự thành thạo:

Đa phương thức sang Văn bản: Trên OmniBench, mô hình 7B đạt điểm trung bình đáng chú ý là 56.13%, vượt trội đáng kể so với các mô hình như Gemini-1.5-Pro (42.91%) và các mô hình đa phương thức chuyên biệt trong các tác vụ liên quan đến suy luận kết hợp hình ảnh, âm thanh và văn bản.

Âm thanh sang Văn bản:

  • ASR: Trên Librispeech test-clean/test-other, nó đạt WER là 1.8/3.4, cạnh tranh với Whisper-large-v3 (1.8/3.6) và Qwen2-Audio (1.6/3.6). Trên Common Voice 15 (en/zh), nó đạt điểm cao nhất là 7.6/5.2 WER.
  • S2TT: Trên CoVoST2 (en->de / zh->en), nó đạt điểm BLEU là 30.2/29.4, thể hiện khả năng dịch giọng nói mạnh mẽ.
  • Hiểu âm thanh: Trên MMAU, nó đạt điểm trung bình 65.60%, xuất sắc trong các tác vụ suy luận về âm thanh, âm nhạc và lời nói. Trên VoiceBench (Avg), nó đạt 74.12, cho thấy hiệu suất mạnh mẽ trong các điểm chuẩn hội thoại dựa trên giọng nói phức tạp.

Hình ảnh sang Văn bản: Mô hình Qwen2.5-Omni-7B cho thấy hiệu suất tương đương với mô hình Qwen2.5-VL-7B chuyên dụng trên các điểm chuẩn thị giác-ngôn ngữ như MMMU (59.2 so với 58.6), MMBench-V1.1-EN (81.8 so với 82.6), MMStar (64.0 so với 63.9) và TextVQA (84.4 so với 84.9). Nó cũng xuất sắc trong các tác vụ định vị (grounding) như RefCOCO/+/g.

Video (không có âm thanh) sang Văn bản: Trên các điểm chuẩn như Video-MME (không phụ đề) và MVBench, nó đạt điểm lần lượt là 64.3 và 70.3, thể hiện khả năng hiểu video mạnh mẽ ngay cả khi không có tín hiệu âm thanh đi kèm trong các bài kiểm tra cụ thể này.

TTS không cần mẫu (Zero-shot): Được đánh giá trên SEED-TTS-eval, phiên bản được tinh chỉnh bằng RL cho thấy WER thấp (1.42/2.32/6.54 cho zh/en/hard) và độ tương đồng người nói cao (0.754/0.641/0.752), cho thấy khả năng tạo giọng nói chất lượng cao, nhất quán.

Văn bản sang Văn bản: Mặc dù chủ yếu là đa phương thức, khả năng chỉ văn bản của nó vẫn mạnh mẽ. Trên MMLU-redux, nó đạt 71.0, trên GSM8K 88.7 và trên HumanEval 78.7, nói chung là kém hơn mô hình văn bản Qwen2.5-7B chuyên biệt nhưng so sánh tốt với các mô hình 7-8B khác như Llama3.1-8B.


Chạy mô hình Qwen2.5-Omni-7B: Triển khai thực tế

Chuyển từ khả năng lý thuyết sang ứng dụng thực tế đòi hỏi phải hiểu cách tương tác với mô hình Qwen2.5-Omni-7B theo chương trình. Các công cụ chính cho việc này là thư viện transformers của Hugging Face, được tăng cường với các tích hợp Qwen cụ thể, và gói hữu ích qwen-omni-utils để xử lý đầu vào đa phương thức được sắp xếp hợp lý.

Hành trình bắt đầu bằng việc thiết lập môi trường. Đảm bảo bạn có các thư viện cốt lõi, bao gồm transformers, accelerate (để xử lý hiệu quả đa GPU và độ chính xác hỗn hợp), torch, soundfile (để I/O âm thanh) và gói qwen-omni-utils quan trọng. Rất khuyến khích cài đặt phiên bản xem trước cụ thể của transformers bao gồm hỗ trợ kiến trúc Qwen2.5-Omni và sử dụng phần mở rộng [decord] cho qwen-omni-utils để xử lý video nhanh hơn:

# Cài đặt được khuyến nghị
pip install transformers accelerate torch soundfile qwen-omni-utils[decord] -U
# Cài đặt phiên bản transformers cụ thể có hỗ trợ Qwen2.5-Omni
pip install git+https://github.com/huggingface/transformers@v4.51.3-Qwen2.5-Omni-preview

Sau khi môi trường sẵn sàng, tải mô hình và bộ xử lý tương ứng là bước tiếp theo. Để quản lý các tài nguyên tính toán đáng kể được yêu cầu, đặc biệt là VRAM, việc sử dụng độ chính xác bfloat16 (torch_dtype=torch.bfloat16 hoặc "auto") và bật Flash Attention 2 (attn_implementation="flash_attention_2") được khuyến cáo mạnh mẽ. Flash Attention 2 tối ưu hóa cơ chế attention, giảm dung lượng bộ nhớ và tăng tốc độ trên phần cứng tương thích (kiến trúc NVIDIA Ampere trở lên). Đối số device_map="auto" phân phối các lớp mô hình một cách thông minh trên các GPU có sẵn.

import torch
import soundfile as sf
from transformers import Qwen2_5OmniForConditionalGeneration, Qwen2_5OmniProcessor
from qwen_omni_utils import process_mm_info

# Định nghĩa định danh mô hình và tải các thành phần
model_path = "Qwen/Qwen2.5-Omni-7B"

print("Đang tải mô hình và bộ xử lý...")
model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
    model_path,
    torch_dtype=torch.bfloat16, # Sử dụng BF16 để tiết kiệm bộ nhớ
    device_map="auto",         # Phân phối mô hình trên các GPU có sẵn
    attn_implementation="flash_attention_2" # Bật Flash Attention 2
)
processor = Qwen2_5OmniProcessor.from_pretrained(model_path)
print("Đã tải mô hình và bộ xử lý thành công.")

Với mô hình đã tải, chúng ta có thể khám phá các khả năng của nó thông qua các ví dụ phản ánh các cookbook được cung cấp.

Hiểu âm thanh phổ quát với mô hình Qwen2.5-Omni-7B

Tệp cookbooks/universal_audio_understanding.ipynb minh họa khả năng của mô hình trong việc xử lý các tác vụ âm thanh đa dạng. Trước tiên, hãy giải quyết Nhận dạng giọng nói tự động (ASR).

Đầu vào cần được cấu trúc dưới dạng một danh sách hội thoại. Chúng ta cung cấp một lời nhắc hệ thống (system prompt) (cần thiết để bật khả năng xuất âm thanh, ngay cả khi không được sử dụng cho ASR) và một tin nhắn người dùng chứa đầu vào âm thanh (được chỉ định qua URL hoặc đường dẫn cục bộ) và lời nhắc văn bản hướng dẫn mô hình.

# Chuẩn bị hội thoại cho ASR sử dụng URL âm thanh mẫu
audio_url_asr = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/hello.wav"

conversation_asr = [
    {
        "role": "system",
        "content": [{"type": "text", "text": "Bạn là Qwen, một con người ảo..."}] # Lời nhắc hệ thống tiêu chuẩn
    },
    {
        "role": "user",
        "content": [
            {"type": "audio", "audio": audio_url_asr},
            {"type": "text", "text": "Vui lòng cung cấp bản chép lời cho đoạn âm thanh này."}
        ]
    }
]

# Xử lý thông tin đa phương thức. Lưu ý: use_audio_in_video ở đây là False.
USE_AUDIO_IN_VIDEO_FLAG = False
print("Đang xử lý đầu vào ASR...")
text_prompt_asr = processor.apply_chat_template(conversation_asr, add_generation_prompt=True, tokenize=False)
audios_asr, images_asr, videos_asr = process_mm_info(conversation_asr, use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG)

# Chuẩn bị đầu vào mô hình cuối cùng sử dụng bộ xử lý
inputs_asr = processor(
    text=text_prompt_asr,
    audio=audios_asr, images=images_asr, videos=videos_asr, # Truyền các phương thức đã xử lý
    return_tensors="pt", padding=True,
    use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG # Cài đặt cờ nhất quán
)
# Di chuyển đầu vào đến thiết bị và kiểu dữ liệu chính xác
inputs_asr = inputs_asr.to(model.device).to(model.dtype)
print("Đầu vào ASR đã sẵn sàng để tạo ra.")

Tiện ích process_mm_info xử lý việc tải và tiền xử lý URL âm thanh. Sau đó, processor kết hợp lời nhắc văn bản đã được mã hóa (tokenized) với các đặc trưng âm thanh đã xử lý, tạo ra các tensor đầu vào. Lưu ý rằng cờ use_audio_in_video được đặt nhất quán thành False vì không có video nào liên quan.

Để tạo bản chép lời, chúng ta gọi phương thức model.generate. Để ASR nhanh hơn, chúng ta đặt return_audio=False.

print("Đang tạo bản chép lời ASR...")
with torch.no_grad(): # Tắt tính toán gradient cho suy luận
    text_ids_asr = model.generate(
        **inputs_asr,
        use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG,
        return_audio=False, # Chỉ cần đầu ra văn bản
        max_new_tokens=512  # Giới hạn độ dài đầu ra
    )

# Giải mã các ID token được tạo ra trở lại thành văn bản
transcription = processor.batch_decode(text_ids_asr, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]

print("\n--- Mô hình Qwen2.5-Omni-7B: Kết quả ASR ---")
print(f"Nguồn âm thanh: {audio_url_asr}")
print(f"Bản chép lời được tạo ra: {transcription}")

Ngoài lời nói, mô hình có thể phân tích các âm thanh khác. Hãy thử xác định một sự kiện âm thanh, như tiếng ho. Quy trình tương tự, thay thế nguồn âm thanh và điều chỉnh lời nhắc văn bản.

# Chuẩn bị hội thoại để phân tích âm thanh
sound_url = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/cough.wav"

conversation_sound = [
    {"role": "system", "content": [{"type": "text", "text": "Bạn là Qwen, một con người ảo..."}]},
    {
        "role": "user",
        "content": [
            {"type": "audio", "audio": sound_url},
            {"type": "text", "text": "Sự kiện âm thanh cụ thể nào xảy ra trong đoạn âm thanh này?"}
        ]
    }
]

# Xử lý đầu vào (các bước tương tự như ASR)
print("\nĐang xử lý đầu vào phân tích âm thanh...")
text_prompt_sound = processor.apply_chat_template(conversation_sound, add_generation_prompt=True, tokenize=False)
audios_sound, _, _ = process_mm_info(conversation_sound, use_audio_in_video=False) # Không có hình ảnh/video
inputs_sound = processor(text=text_prompt_sound, audio=audios_sound, return_tensors="pt", padding=True, use_audio_in_video=False)
inputs_sound = inputs_sound.to(model.device).to(model.dtype)
print("Đầu vào phân tích âm thanh đã sẵn sàng.")

# Tạo phân tích âm thanh (chỉ văn bản)
print("Đang tạo phân tích âm thanh...")
with torch.no_grad():
    text_ids_sound = model.generate(**inputs_sound, return_audio=False, max_new_tokens=128)

# Giải mã và hiển thị kết quả
analysis_text = processor.batch_decode(text_ids_sound, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]
print("\n--- Mô hình Qwen2.5-Omni-7B: Kết quả phân tích âm thanh ---")
print(f"Nguồn âm thanh: {sound_url}")
print(f"Phân tích âm thanh: {analysis_text}")

Trích xuất thông tin video với mô hình Qwen2.5-Omni-7B

Cookbook cookbooks/video_information_extracting.ipynb tập trung vào việc trích xuất thông tin chi tiết từ luồng video, một tác vụ mà khả năng xử lý nghe nhìn tích hợp của mô hình Qwen2.5-Omni-7B tỏa sáng.

Ở đây, sự khác biệt quan trọng thường là cần phải xử lý cả các khung hình thị giác và bản âm thanh của video. Điều này được kiểm soát bởi tham số use_audio_in_video, phải được đặt thành True trong cả process_mm_info và lệnh gọi processor.

# Chuẩn bị hội thoại để phân tích video sử dụng URL video mẫu
video_url = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4"

conversation_video = [
    {"role": "system", "content": [{"type": "text", "text": "Bạn là Qwen, một con người ảo..."}]},
    {
        "role": "user",
        "content": [
            {"type": "video", "video": video_url},
            # Lời nhắc yêu cầu hiểu biết nghe nhìn tích hợp
            {"type": "text", "text": "Mô tả các hành động trong video này và đề cập đến bất kỳ âm thanh đặc trưng nào có mặt."}
        ]
    }
]

# Xử lý thông tin đa phương thức, đặc biệt bật âm thanh từ video
USE_AUDIO_IN_VIDEO_FLAG = True # Bật xử lý bản âm thanh
print("\nĐang xử lý đầu vào phân tích video (có âm thanh)...")
text_prompt_video = processor.apply_chat_template(conversation_video, add_generation_prompt=True, tokenize=False)

# process_mm_info xử lý việc tải video (sử dụng decord nếu được cài đặt)
audios_video, images_video, videos_video = process_mm_info(conversation_video, use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG)

# Chuẩn bị đầu vào mô hình cuối cùng
inputs_video = processor(
    text=text_prompt_video,
    audio=audios_video, images=images_video, videos=videos_video,
    return_tensors="pt", padding=True,
    use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG # PHẢI là True ở đây nữa
)
inputs_video = inputs_video.to(model.device).to(model.dtype)
print("Đầu vào video đã sẵn sàng để tạo ra.")

Khi tạo phản hồi cho phân tích video, chúng ta có thể yêu cầu cả mô tả văn bản và đầu ra giọng nói tổng hợp bằng cách sử dụng return_audio=True và chỉ định một speaker.

# Tạo phân tích video (yêu cầu cả đầu ra văn bản và âm thanh)
print("Đang tạo phân tích video (văn bản và âm thanh)...")
with torch.no_grad():
    text_ids_video, audio_output_video = model.generate(
        **inputs_video,
        use_audio_in_video=USE_AUDIO_IN_VIDEO_FLAG, # PHẢI là True ở đây nữa
        return_audio=True,         # Yêu cầu tổng hợp giọng nói
        speaker="Ethan",           # Chọn một giọng nói (ví dụ: Ethan)
        max_new_tokens=512
    )

# Giải mã phần văn bản của phản hồi
video_analysis_text = processor.batch_decode(text_ids_video, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]

print("\n--- Mô hình Qwen2.5-Omni-7B: Kết quả phân tích video ---")
print(f"Nguồn video: {video_url}")
print(f"Phân tích văn bản được tạo ra: {video_analysis_text}")

# Lưu phản hồi âm thanh được tạo ra nếu có
if audio_output_video is not None:
    output_audio_path = "video_analysis_response.wav"
    sf.write(
        output_audio_path,
        audio_output_video.reshape(-1).detach().cpu().numpy(), # Định hình lại và chuyển sang CPU
        samplerate=24000, # Qwen Omni sử dụng 24kHz
    )
    print(f"Đã lưu phản hồi âm thanh được tạo ra tại: {output_audio_path}")
else:
    print("Phản hồi âm thanh không được tạo ra (kiểm tra lời nhắc hệ thống hoặc cờ).")

Những ví dụ chi tiết này minh họa quy trình làm việc cốt lõi để tương tác với mô hình Qwen2.5-Omni-7B cho các tác vụ đa phương thức khác nhau. Bằng cách cấu trúc cẩn thận hội thoại đầu vào, sử dụng các tiện ích được cung cấp và đặt đúng các tham số như use_audio_in_videoreturn_audio, các nhà phát triển có thể khai thác khả năng nhận thức và tạo ra toàn diện của mô hình tiên tiến này. Hãy nhớ rằng việc quản lý tài nguyên GPU thông qua các kỹ thuật như độ chính xác BF16 và Flash Attention 2 thường cần thiết để xử lý các đầu vào phức tạp như video dài hơn.

Kết luận

Mô hình Qwen2.5-Omni-7B thể hiện một bước tiến đáng kể trong AI đa phương thức. Kiến trúc đầu cuối của nó, các tính năng đổi mới như TMRoPE, hiệu suất điểm chuẩn mạnh mẽ trên các tác vụ đa dạng và khả năng tương tác thời gian thực đặt ra một tiêu chuẩn mới. Bằng cách tích hợp liền mạch nhận thức và tạo ra cho văn bản, hình ảnh, âm thanh và video, nó mở ra khả năng cho các ứng dụng AI phong phú hơn, tự nhiên hơn và có khả năng hơn, từ trợ lý ảo tinh vi và công cụ phân tích nội dung đến trải nghiệm giáo dục nhập vai và giải pháp hỗ trợ tiếp cận. Khi hệ sinh thái xung quanh nó trưởng thành, mô hình Qwen2.5-Omni-7B được định vị là công nghệ nền tảng thúc đẩy làn sóng hệ thống thông minh tiếp theo.

💡
Bạn muốn một công cụ kiểm thử API tuyệt vời có thể tạo ra tài liệu API đẹp mắt?

Bạn muốn một nền tảng tích hợp, Tất cả trong Một để Đội ngũ Phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng mọi nhu cầu của bạn và thay thế Postman với mức giá phải chăng hơn nhiều!
button