
Giá LLM giảm tới 80%: tính lại chi phí app AI 2026
OpenAI và Anthropic cắt giá tới 80% từ 7/2026, nhưng dòng nào trên hóa đơn của bạn thực sự giảm? Cách đo chi phí mỗi task và tối ưu cache cho agent.
Hóa đơn OpenAI tháng này của bạn chỉ nhích xuống đôi chút, trong khi báo chí nói giá LLM đã rớt tới 80%. Bạn mở dashboard, nhìn con số input/output token, và không hiểu phần giảm kia đi đâu. Bài này chỉ cách bóc hóa đơn theo đúng dòng đang tốn tiền, đo chi phí trên mỗi task thay vì trên mỗi token, và dựng app sao cho lần đổi giá tới bạn chỉ phải sửa một biến môi trường.
Giá giảm thật, nhưng không giảm đều
Bản tổng hợp của Max Woolf ngày 25/10 được một bài hướng dẫn trên Dev.to dẫn lại với kết luận: OpenAI và Anthropic đã cắt giá LLM tới 80% kể từ tháng 7/2026. Chi tiết theo bài đó: tier nhỏ "Luna" của OpenAI giảm khoảng 80% hồi tháng 7, rồi giảm tiếp một nửa với GPT-6 Luna vào tháng 9. Phía Anthropic biến mức giảm giá ra mắt của Sonnet 5 thành vĩnh viễn, cắt mạnh giá cache-read trên Fable 5.1, và giảm Opus 5.5 khoảng 40–60% so với Opus 5.
Vấn đề là con số headline che mất phần quan trọng với app của bạn. Một tác giả theo dõi bảng giá (tác giả công khai mình vận hành site Model Menu) ghi nhận 26 lần đổi giá kể từ tháng 6: 17 lần giảm và 9 lần tăng. Giá không chỉ đi xuống. Mistral Large 4 là ví dụ: khuyến mãi ra mắt kết thúc ngày 23/10 và giá nhảy từ 0,68/2,09 USD lên 1,36/4,18 USD mỗi triệu token. Gemini 4 Argon đang ở mức promo 2/10 USD, hết hạn 30/11, sau đó về 4/20 USD.
Giá mỗi token không phải chi phí thật
Đây là phần nhiều team Việt Nam bỏ qua khi chọn model. Claude Sonnet 5.5 và GPT-6.1 Sol có bảng giá giống hệt nhau: 2 USD/triệu input, 10 USD/triệu output, 0,10 USD cho cached input. Trên giấy tờ, chi phí như nhau.
Thực tế thì không. Artificial Analysis chạy bộ mười eval (Intelligence Index) trên từng model và ghi lại hóa đơn thật, tính cả reasoning token. Chia cho số task ra chi phí mỗi task. Ở mức effort cao, Sonnet 5.5 tốn 0,88 USD/task, còn GPT-6.1 Sol tốn 0,32 USD — và Sol còn chấm cao hơn trên Humanity's Last Exam, 51,4 so với 45,8. Cùng giá token, chênh gần 3 lần chi phí thật.
Lý do đơn giản: giá token cho bạn biết một token đáng bao nhiêu, không cho biết model đốt bao nhiêu token trước khi trả lời. Với reasoning model, phần đốt đó mới là phần lớn hóa đơn.
Nút effort: thứ nhân hóa đơn lên 4,5 lần
Các model lớn giờ có tham số effort. Giá token không đổi theo nó, số token thì đổi. Vẫn theo dữ liệu Artificial Analysis mà bài đó dẫn, Claude Opus 5.5 tốn 0,55 USD/task ở low, 1,34 USD ở medium (mặc định), 1,82 USD ở high, 3,46 USD ở xhigh và 5,98 USD ở max. Từ mặc định lên max là gấp 4,5 lần tiền.
Đôi khi số tiền đó mua được chất lượng, đôi khi không. Trên Terminal-Bench 4.0, xhigh và max đều đạt 59,6 — nghĩa là một coding agent chạy ở max trả thêm 73% cho đúng cùng một điểm số. Nếu bạn đang để agent ở effort cao nhất "cho chắc", đó là dòng đầu tiên nên cắt.
Agent của bạn đốt tiền ở cache, không ở output
Với workload kiểu agent, bài hướng dẫn trích số liệu rằng cache read chiếm 96–99% token spend trong agentic coding. Agent gửi lại cùng system prompt, tool definition và file context ở mỗi lượt, và gần như toàn bộ phần đó là cache hit. Hệ quả thực dụng: với agent, giảm 75% giá cache read đáng giá hơn giảm 20% giá output. Với một summariser one-shot không có prefix dùng chung thì ngược lại.
Con số làm rõ điều này: trên Opus 5.5, cached read tốn 0,20 USD/triệu thay vì 4 USD, còn Anthropic tính thêm phí ghi cache — 5 USD/triệu cho entry 5 phút, 8 USD/triệu cho entry 1 giờ. Ví dụ tính nhanh trong bài: một agent có prefix 40k token, gọi 30 lần trong một giờ. Không cache là 1,2 triệu input token, tức 4,80 USD. Có cache 1 giờ thì trả 0,32 USD ghi một lần và 0,23 USD cho 29 lần đọc — tổng khoảng 0,55 USD, rẻ hơn 88%.
Muốn ăn được mức đó, cấu trúc prompt phải cache được. Quy tắc trong bài gọn một dòng: nội dung ổn định đặt trước, nội dung thay đổi đặt sau. Những thứ thường phá cache mà bài liệt kê: giá trị động nằm trong system prompt, tool definition sinh ra theo thứ tự khác nhau mỗi lần, và context JSON serialize lại với thứ tự key không ổn định. Một dòng Today is ${new Date()} đặt đầu system prompt sẽ âm thầm phá cache cho mọi thứ nằm sau nó. Cũng lưu ý giá cache đổi độc lập với giá niêm yết: Sonnet 5 và Sonnet 5.5 đều là 2 USD input, nhưng cached read đã đi từ 0,20 xuống 0,10 USD.
Đổi model phải là đổi config, không phải đổi code
Nếu chất lượng xấp xỉ nhau và giá còn dịch chuyển 26 lần trong năm tháng, chuyển provider nên là thao tác thường ngày. Muốn vậy, model ID phải nằm ở config, không rải rác trong hai mươi file. Ví dụ minh họa (không phải code production):
# llm.py — ví dụ minh họa
MODEL_FOR = {
"classify": os.environ["LLM_SMALL"],
"extract": os.environ["LLM_SMALL"],
"summarize": os.environ["LLM_SMALL"],
"reason": os.environ["LLM_LARGE"],
"code": os.environ["LLM_LARGE"],
}
Route theo task chứ đừng route theo thói quen. Nhiều sản phẩm gửi mọi thứ tới flagship model chỉ vì prototype từng làm vậy. Nhưng một cảnh báo thẳng thắn từ chính bài hướng dẫn: model rẻ không tự động đủ tốt, và một cách tiếp cận "chán" nhưng chuyên biệt — regex, classifier cổ điển, một truy vấn database — vẫn thắng LLM ở khá nhiều task. Giảm giá không thay đổi điều đó.
Và một deadline buộc bạn phải tính lại ngay
Kể cả khi bạn thấy hóa đơn vẫn ổn, lịch deprecation không chờ. GPT-4o rời OpenAI API ngày 14/01/2027, với gpt-6-luna được OpenAI nêu là model thay thế; Azure gỡ phần lớn các version tương ứng vào 14/04/2027. Thông báo cho dòng GPT-4 phát đi ngày 14/10/2026 — tức chỉ ba tháng báo trước, nên kế hoạch nào đặt giả định sáu tháng thì đã mất một nửa thời gian.
Đừng coi việc đổi model string là xong. Bài migration guide dẫn khảo sát tháng 9/2026 của VentureBeat trên 109 người trả lời tự nguyện: 59% công ty từng thay model trong app production thấy hiệu năng giảm, rồi phải làm lại app hoặc quay về model cũ. Trên Azure còn một cái bẫy nữa — deployment loại Standard, Data Zone Standard và Global Standard được tự động nâng cấp khi retire, nên một deployment gpt-4o 2024-05-13 sẽ thành gpt-5.6-sol vào 09/12/2026 mà không cần đổi dòng code nào. Hãy chấm điểm bản nâng cấp tự động đó đúng như chấm một thay đổi do bạn chủ động chọn.
Làm gì trong tuần này
- Log usage theo từng feature, không chỉ theo model: tách input, output, cache read, cache write. "Hóa đơn AI" là con số vô dụng; "tính năng phân loại ticket tốn X cho 1.000 ticket" thì ra quyết định được.
- Hạ effort của agent xuống một nấc và đo lại trên benchmark khớp với công việc thật, thay vì một điểm tổng hợp.
- Kiểm tra prefix prompt: mọi giá trị động phải nằm cuối, thứ tự key JSON phải ổn định.
- Ghi lại ngày hết promo của model bạn đang dùng vào lịch, cạnh ngày retire của model đó.
- Với mỗi tính năng từng bị gác lại vì chi phí, hỏi: nó còn hợp lý ở mức giá gấp đôi hôm nay không? Nếu có, build tử tế. Nếu không, build sao cho tắt được mà không cần migration.
Một cảnh báo cuối từ bài gốc đáng để ý với team đang dựa vào gói subscription: đừng giả định quota subscription đi theo giá API. Tác giả bản breakdown nói ông đã tự cắt quota gói của mình và dự đoán hạn mức gói có thể co lại trước khi giá API tăng.
Không spam, hủy đăng ký bất kỳ lúc nào.
Bài viết liên quan

macOS 27 có LLM chạy local: lệnh fm và cái bẫy JSON hợp lệ
25 thg 10, 2026
