diff --git a/model-engine/model_engine_server/infra/gateways/s3_llm_artifact_gateway.py b/model-engine/model_engine_server/infra/gateways/s3_llm_artifact_gateway.py index 6ce80446..12f03d2a 100644 --- a/model-engine/model_engine_server/infra/gateways/s3_llm_artifact_gateway.py +++ b/model-engine/model_engine_server/infra/gateways/s3_llm_artifact_gateway.py @@ -23,11 +23,10 @@ def list_files(self, path: str, **kwargs) -> List[str]: parsed_remote = parse_attachment_url(path) bucket = parsed_remote.bucket key = parsed_remote.key - # From here: https://dev.to/aws-builders/how-to-list-contents-of-s3-bucket-using-boto3-python-47mm - files = [ - bucket_object["Key"] - for bucket_object in s3.list_objects_v2(Bucket=bucket, Prefix=key)["Contents"] - ] + + # Using resource's bucket object to get its objects with specific prefix + s3_bucket = s3.Bucket(bucket) + files = [obj.key for obj in s3_bucket.objects.filter(Prefix=key)] return files def get_model_weights_urls(self, owner: str, model_name: str, **kwargs) -> List[str]: