Prompt caching là tính năng của nhà cung cấp API AI cho phép lưu tạm kết quả xử lý phần đầu prompt giống hệt nhau giữa các lần gọi. Khi yêu cầu sau có cùng phần mở đầu, hệ thống dùng lại kết quả đã tính thay vì xử lý lại từ đầu, nên token đọc từ cache được tính giá thấp hơn và thời gian chờ token đầu tiên giảm. Prompt caching hiệu quả nhất khi bạn có system prompt dài, tài liệu tham chiếu cố định hoặc hội thoại nhiều lượt. Điều kiện then chốt: phần cố định phải đặt ở đầu và giữ nguyên từng ký tự.
Prompt caching là gì
Prompt caching là cơ chế lưu đệm phần đầu của prompt đã được mô hình xử lý, để các yêu cầu tiếp theo có cùng phần đầu không phải tính lại. Một số nhà cung cấp gọi là context caching, nhưng ý tưởng giống nhau.
Để hiểu vì sao điều này tiết kiệm, cần biết mô hình xử lý một yêu cầu qua hai giai đoạn: đọc toàn bộ đầu vào (prefill) rồi mới sinh từng token đầu ra. Giai đoạn đọc tạo ra một khối dữ liệu trung gian gọi là KV cache. Nếu 9.000 trong 10.000 token đầu vào giống hệt lần trước, việc tính lại khối dữ liệu đó là lãng phí.
Ví dụ một chatbot chăm sóc khách hàng của cửa hàng điện máy:
- System prompt hướng dẫn giọng văn, quy tắc: khoảng 1.500 token.
- Chính sách bảo hành, đổi trả, giao hàng: khoảng 6.000 token.
- Câu hỏi của khách: khoảng 50 token.
Mỗi tin nhắn, hơn 99% đầu vào lặp lại. Với prompt caching, phần 7.500 token đầu chỉ cần xử lý đầy đủ ở lần đầu, các lần sau đọc từ cache với chi phí và thời gian thấp hơn đáng kể.
Prompt caching hoạt động thế nào
Nguyên tắc cốt lõi là khớp tiền tố (prefix). Hệ thống so sánh phần đầu prompt mới với các phần đã lưu. Cache chỉ dùng được cho đoạn giống nhau tính từ token đầu tiên; ngay khi gặp một ký tự khác, phần phía sau phải xử lý lại.
Hai kiểu triển khai phổ biến
- Tự động: một số nhà cung cấp tự lưu đệm khi prompt đủ dài, bạn không cần khai báo, chỉ cần sắp xếp prompt hợp lý.
- Khai báo tường minh: một số API yêu cầu đánh dấu điểm ngắt cache trong yêu cầu, cho phép chọn chính xác phần nào được lưu.
Thời gian sống của cache
Cache không tồn tại mãi. Tùy nhà cung cấp, cache có thể hết hạn sau vài phút không dùng, một số cho chọn thời gian dài hơn với điều kiện khác. Nếu lưu lượng thưa, cache có thể đã hết hạn trước khi yêu cầu tiếp theo đến.
Ngưỡng tối thiểu, mức giá đọc và ghi cache, thời gian sống đều khác nhau giữa các hãng và có thể thay đổi. Hãy kiểm tra trang tài liệu và bảng giá hiện hành trước khi tính toán.
Khi nào prompt caching mang lại lợi ích lớn
Prompt caching phát huy tác dụng khi có phần đầu vào dài, cố định và được dùng lặp lại nhiều lần trong khoảng thời gian ngắn.
| Tình huống | Phần lặp lại | Mức hưởng lợi |
|---|---|---|
| Chatbot có system prompt và chính sách dài | Hướng dẫn, tài liệu chính sách | Cao |
| Hỏi đáp nhiều câu trên cùng một hợp đồng | Toàn văn hợp đồng | Cao |
| Hội thoại nhiều lượt | Lịch sử các lượt trước | Trung bình đến cao |
| Agent gọi công cụ nhiều vòng | Định nghĩa công cụ, hướng dẫn | Cao |
| Mỗi yêu cầu một tài liệu khác nhau | Gần như không có | Thấp |
| Prompt ngắn vài trăm token | Dưới ngưỡng cache | Không đáng kể |
Cách sắp xếp prompt để tận dụng cache
Quy tắc vàng: cố định ở trên, thay đổi ở dưới. Hãy sắp xếp prompt theo thứ tự từ ít thay đổi nhất đến thay đổi nhiều nhất.
- Định nghĩa công cụ (nếu dùng function calling): gần như không đổi.
- System prompt: vai trò, quy tắc, giọng văn.
- Tài liệu tham chiếu cố định: chính sách, bảng giá nội bộ, sổ tay.
- Ví dụ mẫu (few-shot): nếu dùng chung cho mọi yêu cầu.
- Lịch sử hội thoại: tăng dần theo lượt, phần cũ vẫn giữ nguyên.
- Câu hỏi hiện tại: luôn ở cuối.
Ví dụ sai và đúng
Sai: đặt Hôm nay là {ngày giờ hiện tại}. Khách hàng: {tên khách} ở dòng đầu system prompt. Mỗi yêu cầu có phần đầu khác nhau, cache không bao giờ khớp.
Đúng: đưa ngày giờ và tên khách xuống phần câu hỏi cuối cùng, để toàn bộ khối hướng dẫn phía trên giữ nguyên từng ký tự giữa các lần gọi.
Với công ty 20–50 người dùng chung một trợ lý nội bộ, chỉ cần sắp xếp lại prompt theo nguyên tắc này đã có thể giảm rõ chi phí đầu vào mà không đổi chất lượng câu trả lời.
Đo hiệu quả prompt caching
Đừng giả định cache đang hoạt động, hãy kiểm tra. Phản hồi API của các nhà cung cấp hỗ trợ caching thường có trường thống kê cho biết bao nhiêu token được đọc từ cache và bao nhiêu token được ghi mới vào cache.
Các bước kiểm tra
- Gửi cùng một yêu cầu hai lần liên tiếp trong vòng một phút.
- So sánh trường thống kê token cache ở lần thứ hai; nếu bằng 0, phần đầu prompt có gì đó thay đổi hoặc chưa đạt ngưỡng tối thiểu.
- Đo thời gian đến token đầu tiên ở hai lần, lần hai thường nhanh hơn với prompt dài.
- Ghi log tỷ lệ cache hit theo ngày trong môi trường thật.
Chỉ số cần theo dõi
- Tỷ lệ token đọc từ cache trên tổng token đầu vào.
- Chi phí đầu vào trung bình mỗi yêu cầu trước và sau khi tối ưu.
- TTFT trung bình cho người dùng cuối.
Nếu tỷ lệ cache hit thấp dù prompt đã sắp xếp đúng, nguyên nhân thường là lưu lượng quá thưa khiến cache hết hạn, hoặc các yêu cầu bị phân tán qua nhiều cấu hình khác nhau.
Lỗi thường gặp làm mất cache
Những lỗi nhỏ sau có thể khiến cache gần như không bao giờ khớp:
- Chèn dấu thời gian, mã yêu cầu ngẫu nhiên vào đầu prompt.
- Thứ tự tài liệu thay đổi: hệ thống RAG trả về cùng ba đoạn nhưng thứ tự khác nhau mỗi lần.
- Định nghĩa công cụ thay đổi thứ tự: khi danh sách công cụ được sinh động từ một từ điển không cố định thứ tự.
- Khoảng trắng, xuống dòng khác nhau: chỉ một dấu cách thừa cũng làm tiền tố không khớp.
- Chỉnh sửa lịch sử hội thoại: tóm tắt hoặc xóa lượt cũ ở giữa làm phần sau phải xử lý lại.
- Đổi mô hình hoặc tham số liên quan: cache thường gắn với từng mô hình cụ thể.
Khi nào không cần bận tâm
Nếu ứng dụng chỉ gửi prompt ngắn, mỗi lần một tài liệu khác nhau, hoặc lưu lượng rất thấp, công sức tối ưu cache không đáng. Hãy ưu tiên chọn mô hình phù hợp và giới hạn độ dài đầu ra trước.
Lưu ý bảo mật: cache thuộc phạm vi tài khoản hoặc tổ chức của bạn theo chính sách nhà cung cấp. Vẫn nên đọc điều khoản lưu trữ dữ liệu nếu prompt chứa thông tin nhạy cảm.
Trước khi viết thêm tính năng, hãy mở log và xem tỷ lệ token đọc từ cache. Chỉ cần dời dòng ngày giờ và tên khách xuống cuối prompt, nhiều ứng dụng đã cải thiện cả chi phí lẫn tốc độ phản hồi.
Muốn đưa AI vào công việc của doanh nghiệp? PCTech tư vấn, đánh giá mức sẵn sàng AI và triển khai chatbot, AI agent, tự động hóa cho doanh nghiệp.
10 câu hỏi, 2 phút, nhận mức độ và việc nên làm tiếp theo. Dùng thử ngay
Câu hỏi thường gặp
Prompt caching có làm thay đổi câu trả lời không?
Không. Cache chỉ lưu kết quả xử lý trung gian của phần đầu vào giống hệt nhau, nên chất lượng và nội dung câu trả lời không bị ảnh hưởng.
Prompt caching tiết kiệm được bao nhiêu?
Phụ thuộc tỷ lệ phần prompt lặp lại và bảng giá từng nhà cung cấp. Token đọc từ cache được tính thấp hơn token thường; xem bảng giá hiện hành để tính chính xác.
Có cần bật prompt caching thủ công không?
Tùy nhà cung cấp. Một số tự động áp dụng khi prompt đủ dài, một số yêu cầu đánh dấu điểm cache trong yêu cầu API.
Cache tồn tại bao lâu?
Thường chỉ vài phút kể từ lần dùng gần nhất, một số dịch vụ cho chọn thời gian dài hơn. Kiểm tra tài liệu của nhà cung cấp vì quy định có thể thay đổi.
Chạy mô hình cục bộ có prompt caching không?
Nhiều công cụ phục vụ mô hình như vLLM, llama.cpp có cơ chế tái sử dụng KV cache cho tiền tố chung. Lợi ích là giảm thời gian xử lý, còn chi phí đã là phần cứng của bạn.
Prompt caching khác lưu đệm câu trả lời thế nào?
Lưu đệm câu trả lời trả lại nguyên kết quả cũ cho câu hỏi giống hệt. Prompt caching vẫn sinh câu trả lời mới, chỉ bỏ qua việc tính lại phần đầu vào lặp lại.
Bài viết liên quan
- Ước tính chi phí API AI: cách tính token và kiểm soát ngân sách
- Token trong AI là gì? Vì sao AI tính phí theo token
- Batch API là gì? Xử lý hàng loạt bằng AI với chi phí thấp
- Độ trễ và thông lượng AI là gì? Đọc thông số thế nào cho đúng
- System prompt là gì? Khác user prompt thế nào
- Context window (cửa sổ ngữ cảnh) là gì? Ảnh hưởng gì khi dùng AI
- API AI là gì? Cách doanh nghiệp gọi mô hình AI qua API và tính phí
- Context engineering là gì? Đưa đúng thông tin cho AI