Một thẻ hero được tạo có tiêu đề 'Pull Request, chứ không phải Bản phát hành' và phụ đề 'Các mô hình giọng nói Ming-3.0 và vLLM-Omni, tháng 10 năm 2026'. Các biểu tượng nét vẽ của một merge request và một chồng checkpoint mô hình nằm ở hai bên tiêu đề. Logo OrcaRouter được ghép ở góc dưới bên phải.
Engineering & Research

Hỗ trợ vLLM-Omni “Day-Zero” của Ming-3.0 là một pull request, và nó lại phục vụ sai checkpoint

Tác giả

Gideon Frost

Ngày đăng

Mô hình mới nhất · 20Xem tất cả mô hình →
Benchmark: Artificial Analysis · cập nhật hằng ngày
Quay lại tất cả bài viết

Bài đăng được phát hành ngày 19 tháng 10 năm 2026 và đọc như một thông báo phát hành sản phẩm: năm mô hình giọng nói từ 0,5B đến 126B, "dùng chúng ngay hôm nay với vLLM-Omni." Điều mà kho lưu trữ cho thấy tại thời điểm viết là một pull request đang mở, bốn mươi tệp, chưa được hợp nhất, và một tiêu đề ghi tên Ming-3.0-audio-tiny trong khi mọi dòng của bản vá đều nhắm tới Ming-3.0-tts-tiny. Cả hai đều là checkpoint thật trong họ Ming-3.0 mà inclusionAI đã tải lên Hugging Face từ ngày 3 tháng 9 năm 2026, và chúng làm những việc khác nhau: một cái lắng nghe, cái kia nói. Cả hai đều không phải mô hình chủ lực 126B mà cụm "tổng cộng 126B tham số, 6,5B hoạt động" trong cùng bài đăng nhắc tới. Vì vậy, phiên bản trung thực của câu chuyện ngày ra mắt hẹp hơn và hữu ích hơn tiêu đề: Ming-3.0 có một lộ trình phục vụ đáng tin cậy đang được xem xét, dành cho một trong năm mô hình của nó, còn bốn mô hình kia vẫn tải qua Transformers hoặc không tải được gì cả. Những lỗi AI và sự cố ngăn xếp phục vụ được ghi nhận đằng sau những bài đăng như bài này được tập hợp trong OrcaRouter AI Incident Archive nơi mỗi mục mang nguồn, mức độ nghiêm trọng, mức độ tin cậy và cờ tranh chấp riêng.

Không có gì trong số này là lời phàn nàn về công việc. Pull request 9119 kỹ lưỡng một cách bất thường đối với một tích hợp đầu tiên, và các bài kiểm tra chính là lý do để tin rằng nó sẽ được hợp nhất. Nhưng khoảng cách giữa "mã nguồn mở năm mô hình" và "phục vụ chúng ngay hôm nay" chính là toàn bộ chủ đề của bài viết này, vì khoảng cách đó là nơi các quyết định triển khai được đưa ra. Mọi thứ dưới đây được đọc ra từ pull request, registry vLLM-Omni và năm kho lưu trữ Hugging Face. Khi một con số là của chính nhà cung cấp, câu chứa nó sẽ nói rõ điều đó.

Pull request 9119 thực sự chứa gì

Đã mở lúc 16:32 UTC ngày 19 tháng 10 năm 2026 đối với vllm-project/vllm-omni, vẫn đang mở, 40 tệp, 4.578 dòng thêm và 211 dòng xóa. Trọng tâm là một lớp mô hình mới, Ming3TTSForConditionalGeneration, cùng với một mục đăng ký pipeline, một tệp YAML triển khai hai giai đoạn và một bộ chuyển đổi tương thích OpenAI hiển thị tính năng tổng hợp tại /v1/audio/speech. Công thức được viết cho một H100 hoặc H200, vLLM 0.32.0, Python 3.12, CUDA 13.0 và Transformers 5.19, được ghim vào commit 9eb1adcc0 của vLLM-Omni.

Hai chi tiết khiến nó không chỉ là một bản demo. Thứ nhất, có một bài kiểm thử hợp đồng dài 1,271 dòng cho lớp mới, một bộ kiểm thử truyền tải riêng, và một tệp “hợp đồng phát hành” nhỏ. Một bộ kiểm thử cỡ đó được viết bởi người kỳ vọng mô hình sẽ trụ được qua lần tái cấu trúc tiếp theo, chứ không phải bởi người công bố một notebook. Thứ hai, bản vá còn mang 219 dòng kiểm thử mô-đun dùng chung đối với triển khai ming_tts cũ hơn, nghĩa là tác giả đã kiểm tra rằng đường mới không âm thầm làm hỏng thế hệ trước.

Điều mà nó không chứa là bất kỳ hỗ trợ nào cho các mô hình hiểu âm thanh trong họ mô hình này. Không có bộ mã hóa cho đầu vào âm thanh, không có bộ chuyển đổi phiên âm, không có tuyến ASR. Bản vá là tổng hợp giọng nói từ đầu đến cuối.

• Pull request — 9119, đang mở, được tạo ngày 19 tháng 10 năm 2026, 40 tệp, +4,578/−211.

• Đã thêm lớp — Ming3TTSForConditionalGeneration, được đăng ký bên cạnh MingTTSForConditionalGeneration cũ hơn.

• Endpoint — /v1/audio/speech có dạng O​penAI thông qua một adapter mới.

• Mục tiêu của recipe — một H100 hoặc H200, vLLM 0.32.0, commit vLLM-Omni 9eb1adcc0.

• Checkpoint đã được phục vụ — inclusionAI/Ming-3.0-tts-tiny, tổng 7,9B, khoảng 1,3B hoạt động.

A screenshot of GitHub pull request 9119 in vllm-project/vllm-omni, titled '[New Model] Ming-3-TTS (inclusionAI/Ming-3.0-audio-tiny) Support'. It shows 'yuanheng-zhao wants to merge 24 commits into vllm-project:main from yuanheng-zhao:model/ming3-tts-vllm2', 40 files changed, +4,578 and -211, and the contributor-intent block whose first answer reads 'Support deploying inclusionAI/Ming-3.0-tts-tiny with vLLM 0.32.0'. The purpose note names Ming-3.0-TTS Tiny and the test plan names vLLM 0.32.0.

Năm điểm kiểm tra và ý nghĩa của “được hỗ trợ” đối với từng điểm.

Dòng mô hình này thực sự trải dài từ 0.5B đến 126B, và độ trải rộng không phải là một thang kích cỡ. Đó là ba công việc khoác chung một cách đặt tên, được tải lên trong sáu tuần mà không có thông báo.

• Ming-3.0-tts-0.5B — bộ tổng hợp dense trên nền Qwen2.5-0.5B với đầu DiT, đầu ra 44,1 kHz, bảy ngôn ngữ cùng tiếng Tứ Xuyên và tiếng Quảng Đông, hơn 100 giọng tích hợp tiếng Trung. Kho lưu trữ được tạo ngày 22 tháng 9 năm 2026 lúc 12:46 UTC. MIT. Sáu lượt tải xuống.

• Ming-3.0-tts-tiny — tổng 7,9B tham số, khoảng 1,3B hoạt động, một mixture of experts Ling V3 với nhân bản zero-shot, thiết kế giọng nói, 14 thẻ ngôn hành nội tuyến và tạo podcast nhiều người nói. Cùng phút ngày 22 tháng 9 với bản 0.5B. MIT. Hai mươi lượt tải xuống. Đây là checkpoint mà pull request phục vụ.

• Ming-3.0-audio-tiny — tổng 9,3B, 2,7B hoạt động, đầu vào âm thanh và văn bản, đầu ra văn bản với tùy chọn giọng nói thông qua Talker. Được tạo ngày 3 tháng 9 năm 2026 lúc 11:45 UTC. MIT. Ba lượt tải xuống. Đây là checkpoint mà tiêu đề của pull request đề cập.

• Ming-3.0-audio-flash — tổng cộng 126B, 6,5B hoạt động, mô hình đọc hàng đầu: đầu vào là giọng điệu, phương ngữ, âm thanh dài, nhạc và cảnh âm thanh; đầu ra là văn bản hoặc giọng nói tổng hợp. Được tạo ngày 3 tháng 9 lúc 11:49 UTC. MIT. Hai mươi hai lượt tải xuống.

• Ming-3.0-asr-tiny — 9B, một bộ mã hóa âm thanh trên nền Ling-tiny-v3, phiên âm tiếng Trung và tiếng Anh với hotwords và 15 bộ kiểm thử phương ngữ khu vực. Mới nhất trong số năm mô hình: kho lưu trữ được tạo ngày 14 tháng 10 năm 2026 lúc 09:27 UTC. MIT. Ba mươi lăm lượt tải.

Vậy là dải trong bài đăng là chính xác. Tuyên bố hỗ trợ mới là chỗ bị thu hẹp: một trong năm cái này có đường phục vụ đang chờ merge, còn hai cái mà hầu hết người ta muốn nói khi nói “Ming-3.0” — audio-flash và audio-tiny — hoàn toàn không có tích hợp nào trong cây mã nguồn.

Hôm nay thực sự có gì trong nhánh main của vLLM-Omni?

Registry trên main thì nhỏ và dễ kiểm tra. Nó liệt kê MingTTSForConditionalGeneration cho inclusionAI/Ming-omni-tts-0.5B và một cặp mục MingFlashOmni cho Ming-flash-omni-2.0. Cả hai đều không phải checkpoint Ming-3.0. Chúng là thế hệ trước, và cả hai đều có dấu tích mô hình được hỗ trợ trong tài liệu.

Chính sự phân biệt đó có thể khiến một kế hoạch triển khai đổ bể. “vLLM-Omni hỗ trợ Ming” đúng với Ming-flash-omni-2.0 và Ming-omni-tts-0.5B, đã đúng qua nhiều bản phát hành và có các recipe trong recipes/inclusionAI/. Điều đó chưa đúng với bất kỳ thứ gì có tên Ming-3.0. Một nhóm đọc bài đăng, chọn mô hình âm thanh 126B và cấp phát một node với kỳ vọng có một endpoint tương thích OpenAI sẽ thấy một checkpoint, một config và một cờ trust_remote_code.

Cách đặt tên khiến điều này dễ bị bỏ sót ngay cả với người đang đọc diff. Khóa đăng ký mới Ming3TTSForConditionalGeneration nằm cách khóa cũ MingTTSForConditionalGeneration vài dòng, và Ming-3.0-audio-tiny trong tiêu đề PR chỉ cách Ming-3.0-tts-tiny trong phần nội dung đúng một từ. Nếu bạn đang đọc lướt, cả hai đều trông giống cùng một mô hình.

A screenshot of vLLM-Omni's supported-models document rendered on GitHub, showing the table columns Architecture, Models, Example HF Models and NVIDIA GPU. Visible rows include Qwen3-Omni, Qwen2.5-Omni, MingFlashOmniForConditionalGeneration plus MingImagePipeline for 'Ming-flash-omni-2.0 (omni-speech + imagegen)', BAGEL, InternVLA-A1, GROOT N1.7 and HunyuanImage-3.0. There is no Ming-3.0 row anywhere in the visible table.

Vì sao chi tiết về checkpoint sai không phải là sự câu nệ tiểu tiết

Hai mô hình nhỏ này không thể thay thế cho nhau. Ming-3.0-audio-tiny là một mô hình ngôn ngữ - âm thanh: nó nhận âm thanh vào và tạo ra văn bản, tùy chọn kèm giọng nói. Ming-3.0-tts-tiny là một bộ tổng hợp: nó nhận văn bản và một đoạn âm thanh tham chiếu và tạo ra âm thanh. Một tích hợp phục vụ được viết cho một mô hình không cho bạn biết gì về bố cục bộ nhớ của mô hình kia, hành vi gom lô của nó, hay hình dạng điểm cuối của nó.

Đối với một độc giả đang lập kế hoạch công việc, điều đó thay đổi việc họ có thể trả lời câu hỏi nào trong hai câu hỏi trong tuần này.

• Nếu bạn muốn tạo giọng nói — nhân bản giọng, TTS giọng địa phương, lắp ghép podcast từ kịch bản — {{1}}pull request này dành cho bạn, và công thức của nó chỉ là một chiếc H100 hoặc H200.{{/1}}

• Nếu bạn muốn phiên âm hoặc suy luận trên âm thanh — các cuộc họp, cuộc gọi, phỏng vấn nặng phương ngữ — thì không có nội dung nào trong bản vá này áp dụng, và hướng đi là Transformers với các tệp mô hình tùy chỉnh, hoặc bộ điều hợp SGLang mà thẻ ASR mô tả.

Mẫu flagship 126B nằm ở nhóm thứ ba: nó cần tám GPU H800 80 GB chạy tensor parallel cho cấu hình 128K của nhà cung cấp, hoặc bốn GPU cho cấu hình SGLang chỉ văn bản đã được xác thực, và khoảng 259 GB trọng số trước bất kỳ KV cache nào. Một công thức single-GPU sẽ không giúp ích gì cho nó, nên việc nó không có trong bản vá này không phải là sơ suất.

Bài đăng đã đúng ở điểm nào

Hai tuyên bố vẫn đứng vững sau khi kiểm chứng, và chúng là những điểm quan trọng đối với uy tín của dòng mô hình. Con số năm mô hình là chính xác, và phạm vi từ 0,5B đến 126B là chính xác, kể cả phần trong ngoặc là 6,5B hoạt động — đó là số tham số kích hoạt của mô hình flash và nó được in trên thẻ của mô hình đó.

Tuyên bố thứ ba, “phục vụ chúng ngay hôm nay”, là tuyên bố cần đọc kỹ. Nó chỉ đúng với hướng T​TS-tiny sau khi hợp nhất, và ngay cả khi đó thì cũng chỉ là một công thức chứ không phải là sản phẩm đầu ra của bản phát hành. Sự khác biệt giữa một pull request đang mở và một bản phát hành được gắn thẻ chính là sự khác biệt mà một nhóm sản xuất cần, và bài viết không nêu rõ sự khác biệt đó.

Còn một mốc thời gian đáng chú ý nữa. Bản vá vLLM-Omni được mở mười hai phút sau lần push cuối cùng của inclusionAI lên kho GitHub audio-flash, mà bản thân kho này được tạo vào ngày 15 tháng 10 — sáu tuần sau khi các trọng số được đưa lên Hugging Face. Việc tích hợp không hề muộn. Nó đang đến với cùng tốc độ như mọi thứ khác trong dòng này, nghĩa là chẳng có lịch trình nào được ai công bố cả.

Chạy Ming-3.0 trong tuần này mà không cần đợi bản hợp nhất

Mọi checkpoint trong dòng này hiện đều tải qua Transformers và các card ghi lại điều đó. Mẫu của flash card là AutoProcessor với use_fast=False, AutoModelForCausalLM ở bfloat16 với device_map="auto", và trust_remote_code=True — chính card này bảo bạn hãy đọc mã mô hình trước khi bật. Kho lưu trữ đi kèm các tệp tùy chỉnh, processor, Talker, VAE và hai giọng tham chiếu kèm bản ghi lời thoại.

Đối với tổng hợp, các checkpoint T​TS có điểm vào suy luận riêng và một script preflight xác thực checkpoint trước khi bạn tải nó. Đối với phiên âm, thẻ ASR mô tả một endpoint /v1/audio/transcriptions có dạng O​penAI thông qua adapter SGLang, và cảnh báo rằng lời nhắc đã được xác thực yêu cầu một ký tự tab giữa nhãn ngôn ngữ và phần phiên âm — ký tự tab đó chính là bộ phân tích của bạn, và một lời nhắc chung chung kiểu “transcribe this” không phải là cấu hình mà nhà cung cấp đã đo lường.

Điều bạn không có được trên con đường đó là lớp trung gian: continuous batching, kiểm soát tiếp nhận, một endpoint ổn định, một quy trình có thể chịu được một yêu cầu lỗi. Lớp đó chính là pull request, đối với một checkpoint. Đó là lý do trạng thái merge là thứ cần theo dõi thay vì model card.

Bộ định tuyến phù hợp ở đâu, và câu duy nhất nó không thể nói

OrcaRouter không phục vụ Ming-3.0. Không có checkpoint nào trong số năm checkpoint nằm trong danh mục của chúng tôi, và không có lời gọi nào tới API của chúng tôi sẽ chạm tới một checkpoint như vậy. Một mô hình 126B mà bạn chạy trên tám GPU của riêng mình là hạ tầng, và việc định tuyến không biến hạ tầng thành một endpoint được lưu trữ.

Điều mà một router thực sự chạm tới là nửa văn bản của một sản phẩm giọng nói, lớn hơn vẻ ngoài của nó: prompt quyết định hỏi âm thanh điều gì, bước dọn dẹp biến bản ghi có phân tách người nói thành ghi chú có cấu trúc, rào chắn kiểm tra kịch bản trước khi bộ tổng hợp đọc nó, và bộ phân loại gửi tệp đến nút ASR hoặc nút TTS. Đó là những lệnh gọi văn bản thông thường, và đặt chúng phía sau một API cho hơn 200 mô hình với mức markup 0% — giá niêm yết của nhà cung cấp được chuyển nguyên vẹn, nên khi nhà cung cấp giảm giá thì phía chúng ta có hiệu lực ngay trong cùng ngày — loại bỏ ba hợp đồng nhà cung cấp khỏi một dự án mà phần khó đã là nút GPU. Chuyển đổi dự phòng tự động là phần còn lại đáng nhắc tên: đó là cách bạn đặt một checkpoint chưa hợp nhất phía sau một phần lưu lượng mà không đặt cược đường chạy production vào nó.

Điều gì sẽ khiến bài đăng đó trở nên đúng?

Ba sự kiện có thể kiểm chứng, theo thứ tự về mức độ chúng sẽ thay đổi.

• Việc hợp nhất. Nếu 9119 nằm trong một bản phát hành vLLM-Omni đã gắn thẻ, kèm theo công thức và các bài kiểm thử, thì một checkpoint Ming-3.0 sẽ có một câu chuyện phục vụ thực sự, và "day zero" trở nên đứng vững được đối với TTS-tiny.

• Bản vá thứ hai. Nhánh hiểu âm thanh cần tích hợp riêng. Cho đến khi các mô hình flash và audio-tiny có adapter, câu "vLLM-Omni hỗ trợ Ming-3.0" chỉ có nghĩa là tổng hợp.

• Một con số độc lập. Mọi số liệu trong các thẻ đều là kết quả chạy của chính inclusionAI, và chưa có bên thứ ba nào công bố điểm số cho bất kỳ mục nào trong năm mục. Điểm trung bình ASR tiếng Trung là 3,45 và điểm trung bình phương ngữ là 9,40 là việc nhà cung cấp tự mô tả mình trước công chúng, điều đó có giá trị nhất định, nhưng nó không giống với việc tái lập.

Cho đến lúc đó, mô tả chính xác là mô tả mà kho lưu trữ ủng hộ: một họ mô hình giọng nói gồm năm mô hình được tải lên âm thầm trong suốt sáu tuần, được ghi tài liệu trong một ngày duy nhất vào tháng Mười, cùng một bản vá phục vụ đã được kiểm thử kỹ đang chờ duyệt cho bộ tổng hợp 7.9B của nó và bốn checkpoint do bạn tự tải. Pull request là công việc tốt. Đây không phải là một bản phát hành, và nhà cung cấp chưa nói rằng nó là như vậy.

A generated single-column scoreboard titled 'Ming-3.0 — the scoreboard' with five rows: audio-flash 126B total, 6.5B active; audio-tiny 9.3B total, 2.7B active; tts-tiny 7.9B total, 1.3B active; tts-0.5B 0.5B dense; asr-tiny 9B encoder. A sixth row reads 'vLLM-Omni support: one open PR, no merge'. The footer reads 'Vendor-reported specs from the model cards; no independent benchmark exists.' The OrcaRouter logo is composited in the bottom-right corner.