Bộ nhớ đệm Prompt nhận biết nhà cung cấp
Superdav AI Agent v1.12.0 giới thiệu tính năng bộ nhớ đệm Prompt nhận biết nhà cung cấp (provider-aware prompt caching), giúp tối ưu hóa chi phí API và độ trễ bằng cách lưu trữ bộ nhớ đệm các prompt trên nhi ều nhà cung cấp LLM khác nhau. Mỗi nhà cung cấp có cơ chế và cấu hình bộ nhớ đệm khác nhau.
Tổng quan
Bộ nhớ đệm Prompt cho phép bạn:
- Lưu trữ các prompt lớn, được sử dụng thường xuyên
- Giảm chi phí API bằng cách tránh xử lý dư thừa
- Cải thiện độ trễ cho các yêu cầu đã được lưu bộ nhớ đệm
- Quản lý vòng đời bộ nhớ đệm một cách rõ ràng
Các nhà cung cấp khác nhau triển khai bộ nhớ đệm theo những cách khác nhau:
- Google Gemini: API
cachedContents - Azure OpenAI: Bộ nhớ đệm Prompt với TTL
- OpenRouter: Bộ nhớ đệm dành riêng cho nhà cung cấp
- Vertex Anthropic: Bộ nhớ đệm Prompt với cache control
Google Gemini: API cachedContents
Google Gemini cung cấp khả năng quản lý bộ nhớ đệm rõ ràng thông qua API cachedContents.
Cấu hình
$config = [
'provider' => 'google-gemini',
'model' => 'gemini-2.0-flash',
'caching' => [
'enabled' => true,
'ttl' => 3600, // 1 giờ tính bằng giây
'max_tokens' => 1000000, // Số token tối đa để lưu bộ nhớ đệm
],
];
Tạo Prompt đã lưu bộ nhớ đệm
use Superdav\AI\Providers\GoogleGemini;
$gemini = new GoogleGemini( $config );
$cached_content = $gemini->create_cached_content(
[
'system_prompt' => 'You are a helpful assistant...',
'context' => 'Large context document...',
'ttl' => 3600,
]
);
// Trả về: ['cache_id' => 'abc123', 'expires_at' => timestamp]
Sử dụng Prompt đã lưu bộ nhớ đệm
$response = $gemini->generate(
[
'cache_id' => 'abc123',
'prompt' => 'User question here',
]
);
Vòng đời bộ nhớ đệm
// Liệt kê các nội dung đã lưu bộ nhớ đệm
$caches = $gemini->list_cached_contents();
// Lấy chi tiết bộ nhớ đệm
$cache = $gemini->get_cached_content( 'abc123' );
// Gia hạn TTL của bộ nhớ đệm
$gemini->update_cached_content(
'abc123',
['ttl' => 7200] // Gia hạn lên 2 giờ
);
// Xóa b ộ nhớ đệm
$gemini->delete_cached_content( 'abc123' );
Thực hành tốt nhất cho Gemini
- Thiết lập TTL phù hợp: Cân bằng giữa tiết kiệm chi phí và độ cũ của bộ nhớ đệm
- Lưu bộ nhớ đệm prompt hệ thống: Tái sử dụng cùng một prompt hệ thống qua các yêu cầu
- Theo dõi việc sử dụng bộ nhớ đệm: Theo dõi các bộ nhớ đệm nào được sử dụng nhiều nhất
- Dọn dẹp bộ nhớ đệm hết hạn: Định kỳ xóa các bộ nhớ đệm không sử dụng