diff --git a/crates/language_model/src/provider/cloud.rs b/crates/language_model/src/provider/cloud.rs index a42459b29b19fc82d87d824c1151261d77c1ef23..4a014d3de8643fcb1805512aaf01528d802e4dfb 100644 --- a/crates/language_model/src/provider/cloud.rs +++ b/crates/language_model/src/provider/cloud.rs @@ -444,6 +444,21 @@ impl LanguageModel for CloudLanguageModel { self.model.max_token_count() } + fn cache_configuration(&self) -> Option { + match &self.model { + CloudModel::Anthropic(model) => { + model + .cache_configuration() + .map(|cache| LanguageModelCacheConfiguration { + max_cache_anchors: cache.max_cache_anchors, + should_speculate: cache.should_speculate, + min_total_token: cache.min_total_token, + }) + } + CloudModel::OpenAi(_) | CloudModel::Google(_) | CloudModel::Zed(_) => None, + } + } + fn count_tokens( &self, request: LanguageModelRequest,