Giới thiệu
Manifest viết thẳng: họ không còn tin vào model routing cho phần lớn use case. Công ty từng launch LLM router trong gateway vào tháng 3, deprecate vào tháng 6 và sẽ tắt hẳn ngày 1 tháng 9. Router phân loại mỗi request vào bốn tầng: simple, standard, complex và reasoning.
Mục tiêu ban đầu rất dễ hiểu: giảm chi phí inference bằng cách dùng model rẻ cho task đơn giản và model mạnh cho task khó. Sau bốn tháng vận hành trên 7.000 cloud users, Manifest thấy kết quả lẫn lộn, nhiều GitHub issue và nhiều thảo luận xoay quanh chính router.
Vì sao prompt không đủ để route
Lập luận đầu tiên của Manifest là độ khó không nằm trọn trong prompt. Prompt chỉ là điểm khởi động; phần quyết định thường xuất hiện sau khi agent gọi tool, đọc repo, search web hoặc phát hiện constraint mới.
Ví dụ evaluate the tests for the repo $GIT_REPO and improve them có thể rất đơn giản nếu repo là một website HTML cá nhân, nhưng rất nặng nếu repo là Linux kernel. Router nhìn prompt trước khi có context thật sẽ phải đoán, và đoán sai ở tầng model sẽ làm cả workflow sai hướng.
Cache rẻ hơn routing trong nhiều case
Manifest nhấn mạnh cache read rẻ hơn 75-90% so với input chưa cache. Với agent và chat dài, system prompt và conversation history thường chiếm nhiều token, mà prefix cache lại hoạt động tốt vì chúng nằm ở đầu prompt.
Một router biết cache sẽ phải stick với model ban đầu để giữ cache hiệu quả. Nói cách khác, router tốt sẽ thường chọn không route. Nếu đổi model để tiết kiệm vài cent nhưng mất cache, hóa đơn và latency có thể không đẹp hơn.
Tính nhất quán cũng là chi phí
Manifest phản đối ý tưởng rằng engineer không cần quan tâm model nào đang xử lý task. Họ cho rằng engineer nên hiểu trade-off và chọn model, effort parameter theo intent. Khi một session nhảy qua nhiều model, chất lượng tổng thể khó đoán hơn và người dùng khó học được công cụ mình đang dùng.
Với workflow agent tự động, lớp bất định này kéo theo chi phí khác: eval phức tạp hơn, prompt khó maintain hơn, observability phải giải thích thêm một quyết định ẩn, và bug report có thêm câu hỏi ‘request này bị route đi đâu?’.
Ý nghĩa với dev
LLM router không vô dụng. Nó có thể hợp lý khi task thật sự ngắn, stateless, có phân phối rõ và có eval đủ tốt cho từng tầng model. Nhưng với agent dài hơi, router không nên là phản xạ đầu tiên.
Trước khi xây router, hãy đo ba thứ: cache hit rate, độ ổn định của output khi giữ cùng model, và chi phí debug khi routing sai. Nếu cache đã kéo phần lớn chi phí xuống, lựa chọn thực dụng có thể là một model đã được team hiểu rõ, cộng với prompt và eval tốt hơn.