in src/fmeval/data_loaders/util.py [0:0]
def _is_valid_s3_uri(uri: str) -> bool:
"""
:param uri: s3 file path
:return: True if uri is a valid s3 path, False otherwise
"""
parsed_url = urllib.parse.urlparse(uri)
if parsed_url.scheme.lower() not in ["s3", "s3n", "s3a"]:
return False
try:
s3_client = get_s3_client(uri)
s3_uri = S3Uri(uri)
s3_client.get_object(Bucket=s3_uri.bucket, Key=s3_uri.key)
return True
except botocore.errorfactory.ClientError:
return False