diff --git a/litellm/caching.py b/litellm/caching.py index 0b1e18e46..200c696d5 100644 --- a/litellm/caching.py +++ b/litellm/caching.py @@ -155,6 +155,7 @@ class S3Cache(BaseCache): # Convert value to JSON before storing in S3 serialized_value = str(value) if ttl is not None: + cache_control = f"immutable, max-age={ttl}, s-maxage={ttl}" import datetime # Calculate expiration time @@ -166,11 +167,18 @@ class S3Cache(BaseCache): Key=key, Body=serialized_value, Expires=expiration_time, + CacheControl=cache_control, + ContentType="application/json" ) else: + cache_control = "immutable, max-age=31536000, s-maxage=31536000" # Upload the data to S3 without specifying Expires self.s3_client.put_object( - Bucket=self.bucket_name, Key=key, Body=serialized_value + Bucket=self.bucket_name, + Key=key, + Body=serialized_value, + CacheControl=cache_control, + ContentType="application/json" ) except Exception as e: # NON blocking - notify users S3 is throwing an exception