Chi phí, thanh toán và vận hành22 tháng 9, 2026Flatkey Team

Bộ nhớ đệm prompt của OpenAI (tháng 10/2026): cách hoạt động, giá và ROI

Prompt caching của OpenAI tự động bật và tính phí đầu vào đã cache khoảng 0,1 lần giá thường. Tìm hiểu giá ghi và đọc tháng 10/2026, TTL 30 phút và 12 giờ, breakpoint tường minh, một ví dụ ROI và so sánh với Claude, Gemini.

Bộ nhớ đệm prompt của OpenAI (tháng 10/2026): cách hoạt động, giá và ROI

Bộ nhớ đệm prompt của OpenAI (tháng 10/2026): cách hoạt động, giá và ROI

Prompt caching của OpenAI được bật mặc định: khi một yêu cầu bắt đầu bằng cùng một tiền tố (ít nhất 1.024 token trên GPT-5.6 trở lên) như một yêu cầu gần đây, OpenAI dùng lại phần tính toán đã lưu và tính phí các token đó theo giá đầu vào đã cache, rẻ hơn khoảng 90–95% so với đầu vào thông thường. Trên GPT-5.6 trở lên, bạn còn trả một lần phí ghi cache: 1,25 lần giá đầu vào cho thời hạn mặc định 30 phút hoặc 2,5 lần cho 12 giờ, tính đến ngày 25/10/2026. Chỉ cần một tiền tố được dùng lại một lần trong thời hạn của nó, cache đã rẻ hơn việc gửi nó hai lần.

Hướng dẫn này giải thích cách cache của OpenAI hoạt động, chi phí trên các mô hình hiện tại, cách điều khiển bằng breakpoint và TTL, cách đo mức tiết kiệm và so sánh với cache của Anthropic và Gemini. Mọi mức giá đều lấy từ hướng dẫn prompt caching của OpenAI và trang giá API của OpenAI, kiểm tra ngày 25/10/2026.

Giá prompt caching của OpenAI

Giá gói Standard cho mỗi 1 triệu token:

Mô hình Đầu vào Đầu vào đã cache (đọc) Ghi 30 phút Ghi 12 giờ Đầu ra
gpt-6-astra $10.00 $1.00 $12.50 $25.00 $50.00
gpt-6.1-sol $2.00 $0.10 $2.50 $5.00 $10.00
gpt-6-luna $0.10 $0.01 $0.125 $0.25 $0.50
gpt-5.6-sol $4.00 $0.40 $5.00 $10.00 $20.00

Một lần đọc cache có giá bằng 0,1 lần giá đầu vào chưa cache trên hầu hết mô hình và 0,05 lần trên GPT-6.1 Sol. Gói Batch giảm một nửa mọi con số trong bảng này, còn chế độ Fast thì nhân đôi. Các endpoint lưu trữ dữ liệu theo khu vực cộng thêm 10% đối với các mô hình phát hành từ ngày 5/3/2026 trở đi.

Một điểm hay bị hiểu sai: giá ghi cache không phải là khoản phí cộng thêm vào giá đầu vào. Mỗi token đầu vào chỉ được tính phí một lần, theo giá chưa cache, giá đọc cache hoặc giá ghi cache. Một lần ghi 30 phút đắt hơn đầu vào thường 25% cho các token đó, và mỗi lần trúng cache sau đó chỉ tốn 10% (hoặc 5%).

Prompt caching của OpenAI hoạt động thế nào

Khi mô hình đọc prompt, nó tính các trạng thái key-value (KV) cho từng token. Prompt caching lưu các trạng thái đó cho một tiền tố có thể tái sử dụng, tức phần đầu không thay đổi của prompt. Nếu một yêu cầu sau bắt đầu bằng đúng tiền tố đó và tìm thấy mục cache khớp, mô hình bỏ qua bước tính lại, giúp giảm cả chi phí lẫn thời gian đến token đầu tiên.

Tiền tố được cache bao gồm mọi thứ OpenAI hiển thị trước khi nội dung của bạn thay đổi: nội dung hệ thống ẩn, tin nhắn developer, định nghĩa công cụ và lịch sử hội thoại, bao gồm văn bản, hình ảnh, tài liệu và âm thanh được hỗ trợ. Việc khớp phải chính xác tuyệt đối. Nếu bất cứ thứ gì thay đổi trước một breakpoint, chẳng hạn dấu thời gian trong system prompt, danh sách công cụ bị đổi thứ tự hoặc một hình ảnh khác, thì mọi thứ sau thay đổi đó đều trượt cache.

Các quy tắc chính trên GPT-5.6 trở lên:

  • Độ dài tối thiểu: tiền tố phải dài ít nhất 1.024 token mới được cache. Token hệ thống ẩn của OpenAI không được tính vào con số này.
  • Breakpoint: breakpoint đánh dấu điểm kết thúc của một tiền tố có thể ghi vào cache. Ở chế độ ngầm định (mặc định), OpenAI đặt một breakpoint ở cuối tin nhắn hợp lệ gần nhất. Ở chế độ tường minh, bạn tự chọn vị trí bằng prompt_cache_breakpoint.
  • Tối đa bốn lần ghi mỗi yêu cầu: mỗi yêu cầu có thể tạo tối đa bốn lần ghi cache, nên bạn có thể cache các lớp thay đổi với tốc độ khác nhau.
  • Thời hạn: đặt prompt_cache_options.ttl thành "30m" (mặc định) hoặc "12h" trong Responses API. Giá đọc cache như nhau cho cả hai.

Trên các mô hình trước GPT-5.6, chỉ có cache ngầm định. Bạn điều khiển thời gian lưu bằng prompt_cache_retention: in_memory giữ mục cache khoảng 5–10 phút không hoạt động (tối đa một giờ), còn 24h kéo dài tới 24 giờ. Tổ chức không dùng Zero Data Retention mặc định là 24h; tổ chức dùng ZDR mặc định là in_memory. Trên các mô hình cũ này, một prompt_cache_key ổn định giúp định tuyến các yêu cầu liên quan đến cùng một cache. OpenAI khuyên giữ mỗi key ở khoảng 15 yêu cầu mỗi phút và chia lưu lượng lớn hơn ra nhiều key.

Khi nào cache có lợi

Hướng dẫn của OpenAI đưa ra phép tính cơ bản. Với giá đọc 0,1 lần và giá ghi 1,25 lần, ghi một tiền tố một lần rồi dùng lại một lần tốn 1,35 lần giá đầu vào thông thường, so với 2 lần nếu gửi hai lần. Mười yêu cầu gồm một lần ghi và chín lần đọc tốn 2,15 lần, so với 10 lần nếu không cache.

Số yêu cầu dùng chung tiền tố Không cache Cache 30 phút Cache 12 giờ Tiết kiệm với cache 30 phút
1 1.00× 1.25× 2.50× −25%
2 2.00× 1.35× 2.60× 33%
10 10.00× 2.15× 3.40× 79%
100 100.00× 11.15× 12.40× 89%

Thời hạn 12 giờ chỉ hợp lý khi khoảng cách giữa các yêu cầu dài hơn 30 phút nhưng tiền tố vẫn được dùng lại nhiều lần, ví dụ một bộ tài liệu sản phẩm lớn được một công cụ nội bộ ít lưu lượng truy vấn suốt ngày làm việc.

OpenAI cũng giải thích khi nào nên độn một tiền tố ngắn lên mức tối thiểu. Với mức tối thiểu 1.024 token, giá đọc 0,1 lần và giá ghi 1,25 lần, việc độn sẽ rẻ hơn khi tiền tố gốc dài hơn 102,4 + 1.177,6 / N token, trong đó N là số yêu cầu. Với 10 yêu cầu, mở rộng một tiền tố từ 221 token trở lên thành 1.024 token là có lợi.

Ví dụ tính toán

Giả sử một trợ lý hỗ trợ khách hàng chạy trên gpt-6.1-sol xử lý 50.000 yêu cầu mỗi ngày. Mỗi yêu cầu gửi một tiền tố ổn định 8.000 token (hướng dẫn, định nghĩa công cụ và tài liệu chính sách), một tin nhắn người dùng 500 token và nhận câu trả lời 400 token. Lưu lượng đều đặn, nên cache 30 phút được ghi lại khoảng 48 lần mỗi ngày.

Khoản chi phí hằng ngày Không cache Có cache tường minh
Tiền tố ổn định 400M × $2.00 = $800.00 ghi: 0.38M × $2.50 = $0.96; đọc: 399.6M × $0.10 = $39.96
Tin nhắn người dùng 25M × $2.00 = $50.00 25M × $2.00 = $50.00
Đầu ra 20M × $10.00 = $200.00 20M × $10.00 = $200.00
Tổng $1,050.00 ≈ $290.92

Hóa đơn hằng ngày giảm khoảng 72%. Dòng đầu ra giống nhau ở cả hai cột, nên khi cache đã hoạt động, rút ngắn câu trả lời là đòn bẩy tiếp theo.

Tại sao dùng chế độ tường minh ở đây? Ở chế độ ngầm định, breakpoint nằm ở cuối tin nhắn mới nhất, nên 500 token người dùng thay đổi liên tục cũng bị ghi vào cache với giá 1,25 lần mỗi lần. Trong ví dụ này, điều đó cộng thêm khoảng 12,50 USD mỗi ngày. Chế độ tường minh cho phép kết thúc lần ghi cache ngay sau tiền tố ổn định, nên tin nhắn người dùng được tính theo giá đầu vào thông thường.

Cách thiết lập

Bạn không cần viết code nào để hưởng lợi từ cache ngầm định. Để điều khiển nó, hãy dùng Responses API. Yêu cầu dưới đây cache phần hướng dẫn dùng chung trong 12 giờ, ngữ cảnh phiên trong 30 phút và không cache câu hỏi hiện tại:

curl https://api.openai.com/v1/responses \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6.1-sol",
    "prompt_cache_options": { "mode": "explicit", "ttl": "30m" },
    "input": [
      { "role": "developer", "content": [
        { "type": "input_text", "text": "<shared instructions and policy docs>",
          "prompt_cache_breakpoint": { "mode": "explicit", "ttl": "12h" } } ] },
      { "role": "user", "content": [
        { "type": "input_text", "text": "<session context>",
          "prompt_cache_breakpoint": { "mode": "explicit" } },
        { "type": "input_text", "text": "What is the refund window for annual plans?" } ] }
    ]
  }'

Đọc các trường cache từ mọi phản hồi và ghi log:

from openai import OpenAI

client = OpenAI()
resp = client.responses.create(model="gpt-6.1-sol", input=[...])  # same input as above

d = resp.usage.input_tokens_details
print("input:", resp.usage.input_tokens)
print("cache reads:", d.cached_tokens)
print("cache writes:", d.cache_write_tokens)
hit_rate = d.cached_tokens / max(resp.usage.input_tokens, 1)
print(f"token cache-hit rate: {hit_rate:.0%}")

Với các mô hình hỗ trợ prompt_cache_options, cache_write_tokens_details tách số lần ghi thành ttl_30m_tokens và ttl_12h_tokens. Giá trị cached_tokens được báo cáo làm tròn xuống bội số của 128. OpenAI cũng cung cấp Prompt Caching Dashboard để theo dõi tỷ lệ trúng cache và công cụ Prompt Cache Diagnostics để giải thích các lần trượt.

Quy tắc thiết kế prompt giúp tăng tỷ lệ trúng cache

  1. Tĩnh trước, động sau. Đặt hướng dẫn, schema công cụ, ví dụ few-shot và tài liệu tham khảo ở đầu. Đặt tin nhắn của người dùng, đoạn trích được truy xuất và mọi thứ có ngày tháng hoặc ID ở cuối.
  2. Cố định danh sách công cụ. Thay đổi định nghĩa công cụ sẽ phá vỡ tiền tố. Nếu các yêu cầu khác nhau cần công cụ khác nhau, hãy giữ nguyên định nghĩa và chỉ thay đổi công cụ nào được phép gọi.
  3. Nối thêm, đừng viết lại. Trong hội thoại nhiều lượt, hãy thêm lượt mới vào cuối. Tóm tắt hoặc chỉnh sửa các lượt trước sẽ làm cache mất hiệu lực.
  4. Giữ cài đặt ổn định. Mô hình, cài đặt suy luận và các tùy chọn yêu cầu khác có thể thay đổi tiền tố được hiển thị. Hãy cố định chúng cho lưu lượng có cache.
  5. Cẩn thận với fallback. Nếu chuyển sang mô hình hoặc nhà cung cấp khác, bạn bắt đầu với cache trống. Playbook fallback mô hình của chúng tôi hướng dẫn cách chuyển đổi dự phòng mà không mất toàn bộ lợi thế cache.

So sánh prompt caching của OpenAI, Anthropic và Gemini

Cache không dùng chung được giữa các nhà cung cấp. Cơ chế và giá đều khác nhau:

OpenAI (GPT-5.6+) Anthropic Claude Google Gemini
Mặc định Tự động Bật bằng cache_control (tự động hoặc theo từng khối) Cache ngầm định tự động trên Gemini 2.5 trở lên
Tiền tố tối thiểu 1.024 token 512 token trên các mô hình hiện tại 4.096 token trên Gemini 4 Argon và 3.8 Flash
Giá ghi 1,25 lần (30 phút) hoặc 2,5 lần (12 giờ) 1,25 lần (5 phút) hoặc 2 lần (1 giờ) Không phí ghi cho cache ngầm định; cache tường minh tính thêm phí lưu trữ theo giờ
Giá đọc 0,1 lần (0,05 lần trên GPT-6.1 Sol) 0,1 lần (0,05 lần trên Opus 5.5 và Sonnet 5.5) ví dụ $0.10 so với $2.00 đầu vào trên Gemini 4 Argon
Trường usage cached_tokens, cache_write_tokens cache_read_input_tokens, cache_creation_input_tokens total_cached_tokens

Nguồn: tài liệu prompt caching của Anthropic, giá Claude API, context caching của Gemini và giá Gemini API, tất cả kiểm tra ngày 25/10/2026. Gemini 4 Argon chỉ hỗ trợ cache ngầm định. Đối tượng cache tường minh hoạt động trên các mô hình Gemini 3 và 2.5 được hỗ trợ qua generateContent, với phí lưu trữ tính theo triệu token mỗi giờ (ví dụ $0.50 trên Gemini 3.8 Flash đến hết ngày 31/12/2026). DeepSeek cũng tự động cache; xem hướng dẫn cache của DeepSeek.

Kiểm tra ROI của cache trong bảy ngày

Trước khi kết luận cache thành công, hãy đo trên lưu lượng thực:

  1. Ngày 1: chọn một quy trình có lưu lượng cao với tiền tố dùng chung dài. Ghi lại token đầu vào, cached_tokens, cache_write_tokens, token đầu ra và độ trễ cho từng yêu cầu.
  2. Ngày 2–3: chuyển toàn bộ nội dung tĩnh lên đầu và loại bỏ các giá trị động khỏi đó. So sánh tỷ lệ trúng cache theo token (token đã cache ÷ token đầu vào) trước và sau.
  3. Ngày 4–5: nếu số lần ghi cao mà số lần đọc thấp, lưu lượng của bạn quá thưa cho các mục 30 phút. Hãy thử "12h" cho lớp ổn định hoặc hợp nhất tiền tố để nhiều yêu cầu dùng chung hơn.
  4. Ngày 6–7: tính chi phí thực tế cho mỗi câu trả lời được chấp nhận, không chỉ theo token. Một yêu cầu rẻ hơn nhưng bị người dùng từ chối thì không phải là tiết kiệm.

Mục tiêu tốt cho khối lượng công việc chat hoặc agent ổn định là tỷ lệ trúng cache theo token trên 60% và số lần đọc gấp ít nhất 10 lần số lần ghi. Hướng dẫn observability cho LLM API và hướng dẫn dashboard mức dùng token của chúng tôi chỉ cách xây dựng các chế độ xem này.

Vai trò của Flatkey

Flatkey là router tương thích OpenAI với một key và một số dư cho OpenAI, Claude, Gemini, DeepSeek, Qwen và các mô hình khác. Cache phía nhà cung cấp vẫn phụ thuộc vào quy tắc của từng nhà cung cấp, vì vậy hãy giữ prompt ổn định theo từng mô hình và tránh luân phiên mô hình ở mỗi yêu cầu nếu bạn muốn trúng cache. Hãy bắt đầu với hướng dẫn nhanh về router, xem giá hiện hành tại bảng giá Flatkey và đọc hướng dẫn tối ưu chi phí AI API để biết thêm cách cắt giảm chi tiêu.

Câu hỏi thường gặp

Prompt caching của OpenAI có tự động không?

Có. Prompt caching được bật mặc định cho các mô hình OpenAI được hỗ trợ và bạn không cần thay đổi code để trúng cache. Trên GPT-5.6 trở lên, bạn có thể chuyển sang chế độ tường minh và chọn breakpoint bằng prompt_cache_breakpoint.

Prompt caching của OpenAI tiết kiệm được bao nhiêu?

Đầu vào đã cache có giá bằng 0,1 lần giá đầu vào thông thường trên hầu hết mô hình hiện tại và 0,05 lần trên GPT-6.1 Sol, tức giảm 90–95% cho phần được cache. Tổng mức tiết kiệm phụ thuộc vào tỷ lệ tiền tố dùng chung trong mỗi prompt và tần suất nó được dùng lại.

Độ dài prompt tối thiểu để được cache là bao nhiêu?

1.024 token cho GPT-5.6 trở lên. Với các mô hình cũ hơn, con số này thay đổi theo cài đặt yêu cầu. Tiền tố ngắn hơn vẫn được xử lý bình thường mà không báo lỗi.

Cache prompt của OpenAI tồn tại bao lâu?

Trên GPT-5.6 trở lên, mục cache tồn tại ít nhất 30 phút theo mặc định, hoặc ít nhất 12 giờ nếu bạn đặt ttl thành "12h". Trên các mô hình cũ hơn, in_memory giữ mục cache khoảng 5–10 phút không hoạt động, tối đa một giờ, còn 24h có thể giữ tới 24 giờ.

Prompt caching có giảm độ trễ không?

Có. Dùng lại tiền tố đã cache giúp bỏ qua bước tính lại, nhờ đó giảm thời gian đến token đầu tiên, nhất là với prompt dài.

Tôi có phải trả phí khi ghi vào cache không?

Trên GPT-5.6 trở lên thì có: 1,25 lần giá đầu vào cho lần ghi 30 phút hoặc 2,5 lần cho 12 giờ. Khoản này thay thế phí đầu vào thông thường của các token đó, không cộng thêm.

prompt_cache_key là gì?

Một tham số tùy chọn để nhóm các yêu cầu liên quan sao cho chúng được định tuyến đến cùng một cache. Trên các mô hình trước GPT-5.6, nó giúp tăng tỷ lệ trúng cache; OpenAI khuyên khoảng 15 yêu cầu mỗi phút cho mỗi key.

Nguồn tham khảo