aws / aws/sagemaker-python-sdk

Initialization of default JumpStart SageMaker Session is slow

Đang mở
#4,468 2 bình luận 6 reaction 1 người được giao Được @rsareddy0329 nhận Xem trên GitHub
component: jumpstart type: bug
Ngôn ngữ chính
Python
Star
2.3k
Fork
1.3k
Merge trung bình
1 ngày 22 giờ
Pull request đã merge (30 ngày)
35

Mô tả

Through the following import chain, the `DEFAULT_JUMPSTART_SAGEMAKER_SESSION` constant is initialized:

```
(.venv\Lib\site-packages\sagemaker\jumpstart\constants.py:237)
(.venv\Lib\site-packages\sagemaker\image_uris.py:24)
(.venv\Lib\site-packages\sagemaker\estimator.py:30)
(.venv\Lib\site-packages\sagemaker\__init__.py:18)
```

This involves creating many boto clients (at least 5 by my count), each time trying to find AWS credentials using botocore's `CredentialResolver.load_credentials` which (because I don't have credentials in environment variables, I'm using STS internally) ends up making slow network requests and is generally inefficient (searches through 11 credential providers). In total it is adding 13 seconds to my local startup time.

I'm using my own SageMaker `Session` whenever creating a new `Predictor`, and I don't believe I'm ever using the `DEFAULT_JUMPSTART_SAGEMAKER_SESSION` (if I modify the SDK source to skip its initialization everything still works). Could it be lazily loaded internally?

**System information**
- **SageMaker Python SDK version**: 2.210.0
- **Python version**: 3.11

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.