Amazon SageMaker JumpStart hỗ trợ fine-tuning cho các mô hình trong một model hub riêng tư

by Marc Karp, Benjamin Crabtree, Banu Nagasundaram, and Niris Okram on 26 MAR 2025 in Amazon SageMaker, Amazon SageMaker JumpStart, Announcements Permalink  Comments  Share

Amazon SageMaker JumpStart là một thư viện học máy (ML) cung cấp các mô hình đã được đào tạo trước, các mẫu giải pháp và các thuật toán để giúp các nhà phát triển bắt đầu nhanh chóng với học máy. Trong SageMaker JumpStart, tính năng private model hub cho phép các tổ chức tạo ra kho lưu trữ nội bộ riêng của các mô hình ML, cho phép các nhóm chia sẻ và quản lý các mô hình một cách an toàn trong tổ chức của họ.

Hôm nay, chúng tôi thông báo một tính năng private hub được nâng cấp với một số khả năng mới giúp các tổ chức kiểm soát tốt hơn các tài sản ML của họ. Những cải tiến này bao gồm khả năng fine-tune các mô hình SageMaker JumpStart trực tiếp trong private hub, hỗ trợ thêm và quản lý các mô hình được đào tạo tùy chỉnh, khả năng liên kết sâu cho các notebook liên quan và quản lý phiên bản mô hình được cải thiện. Những tính năng mới này hỗ trợ dòng công việc ML bằng cách kết hợp sự tiện lợi của các giải pháp đã được xây dựng trước với sự linh hoạt của phát triển tùy chỉnh, trong khi vẫn duy trì bảo mật và quản trị cấp doanh nghiệp.

Đối với khách hàng doanh nghiệp, khả năng chọn lọc và fine-tune cả các mô hình đã được xây dựng trước và tùy chỉnh là rất quan trọng để triển khai AI thành công. Việc chọn lọc mô hình cung cấp kiểm soát chất lượng, tuân thủ và bảo mật trong khi ngăn chặn các nỗ lực trùng lặp giữa các nhóm. Khi các doanh nghiệp fine-tune các mô hình đã được chọn lọc, họ có thể đặc thù hóa các giải pháp chung cho nhu cầu cụ thể của ngành và đạt được lợi thế cạnh tranh thông qua hiệu suất tốt hơn trên dữ liệu độc quyền của họ. Tương tự, khả năng fine-tune các mô hình tùy chỉnh cho phép các tổ chức cải thiện liên tục các giải pháp AI của họ, thích ứng với các điều kiện kinh doanh thay đổi và bảo tồn kiến thức của tổ chức, trong khi duy trì hiệu quả chi phí.

Một kịch bản doanh nghiệp phổ biến liên quan đến các nhóm khoa học dữ liệu tập trung phát triển các mô hình nền tảng (FMs), đánh giá hiệu suất so với các FM nguồn mở và lặp lại hiệu suất. Sau khi họ phát triển FM tùy chỉnh của họ, nó có thể phục vụ như là một điểm tham chiếu cho toàn bộ tổ chức, và các bộ phận riêng lẻ—chẳng hạn như pháp lý, tài chính hoặc dịch vụ khách hàng—có thể fine-tune các mô hình này bằng cách sử dụng dữ liệu cụ thể cho bộ phận mà có thể phải tuân thủ các yêu cầu quyền riêng tư hoặc kiểm soát truy cập khác nhau. Cách tiếp cận hub-and-spoke này để phát triển mô hình tối đa hóa hiệu quả tài nguyên trong khi cho phép tối ưu hóa chuyên biệt ở cấp bộ phận. Cách tiếp cận toàn diện này để quản lý mô hình, hiện được hỗ trợ bởi các tính năng private hub được nâng cấp trong SageMaker JumpStart, cho phép các doanh nghiệp cân bằng tiêu chuẩn hóa với tùy chỉnh trong khi duy trì quản trị và kiểm soát thích hợp đối với các tài sản ML của họ.

Tổng quan giải pháp

SageMaker JumpStart đã giới thiệu một số cải tiến mới cho tính năng private model hub của nó, cho phép các quản trị viên kiểm soát và linh hoạt hơn trong việc quản lý các mô hình ML của tổ chức. Những cải tiến này bao gồm:

  • Fine-tuning các mô hình được tham chiếu trong private hub – Quản trị viên bây giờ có thể thêm các mô hình từ danh mục SageMaker JumpStart vào private hub của họ và fine-tune chúng bằng cách sử dụng các công việc đào tạo Amazon SageMaker, mà không cần phải tạo các mô hình từ đầu.
  • Hỗ trợ cho các mô hình tùy chỉnh – Ngoài các mô hình đã được đào tạo trước của SageMaker JumpStart, quản trị viên bây giờ có thể thêm các mô hình tùy chỉnh của riêng họ vào private hub và fine-tune chúng theo nhu cầu.
  • Liên kết sâu cho các notebook – Quản trị viên bây giờ có thể liên kết sâu đến các notebook cụ thể liên quan đến các mô hình trong private hub, giúp người dùng dễ dàng truy cập và làm việc với các mô hình.
  • Cập nhật các mô hình trong private hub – Private hub bây giờ hỗ trợ cập nhật các mô hình theo thời gian khi các phiên bản hoặc lần lặp mới trở nên khả dụng, cho phép các tổ chức luôn cập nhật với những cải tiến mô hình mới nhất.

Những khả năng mới này cho phép khách hàng AWS kiểm soát nhiều hơn cơ sở hạ tầng ML của họ và cho phép triển khai và thử nghiệm mô hình nhanh hơn, trong khi vẫn duy trì các quyền truy cập và quyền phù hợp trong tổ chức của họ.

Trong các phần tiếp theo, chúng tôi cung cấp hướng dẫn về cách sử dụng các tính năng private model hub mới này bằng cách sử dụng Amazon SageMaker SDK và bảng điều khiển Amazon SageMaker Studio.

Để tìm hiểu thêm về cách quản lý các mô hình bằng cách sử dụng private hub, hãy xem Quản lý quyền truy cập mô hình nền tảng Amazon SageMaker JumpStart với private hub.

Yêu cầu đầu vào

Để sử dụng SageMaker Python SDK và chạy mã liên quan đến bài viết này, bạn cần các yêu cầu đầu vào sau:

  • Một tài khoản AWS chứa các tài nguyên AWS của bạn
  • Một vai trò AWS Identity and Access Management (IAM) với quyền truy cập đến các notebook SageMaker Studio
  • SageMaker JumpStart được bật trong một miền SageMaker Studio

Tạo một private hub, chọn lọc các mô hình và cấu hình quyền truy cập

Phần này cung cấp hướng dẫn từng bước cho các quản trị viên để tạo một private hub, chọn lọc các mô hình và cấu hình quyền truy cập cho người dùng của tổ chức.

  1. Vì tính năng đã được tích hợp trong phiên bản mới nhất của SageMaker Python SDK, để sử dụng tính năng quyền truy cập chi tiết mô hình với một private hub, hãy cập nhật lại SageMaker Python SDK:

!pip3 install sagemaker —force-reinstall —quiet

Python

  1. Tiếp theo, nhập các thư viện SageMaker và Boto3:

import boto3 from sagemaker

import Session from sagemaker.session

import Hub

Python

  1. Cấu hình private hub của bạn:

HUB_NAME=”CompanyHub”

HUB_DISPLAY_NAME=”Allowlisted Models”

HUB_DESCRIPTION=”These are allowlisted models taken from the SageMaker Public Hub”

REGION=”<your_region_name>” # ví dụ: “us-west-2”

Python

Trong đoạn mã trên, HUB_NAME chỉ định tên của hub của bạn. HUB_DISPLAY_NAME là tên hiển thị cho hub của bạn sẽ được hiển thị cho người dùng trong trải nghiệm giao diện người dùng. HUB_DESCRIPTION là mô tả cho hub của bạn sẽ được hiển thị cho người dùng.

Sử dụng một khu vực AWS nơi SageMaker JumpStart có sẵn, tính đến tháng 3 năm 2025: us-west-2, us-east-1, us-east-2, eu-west-1, eu-central-1, eu-central-2, eu-north-1, eu-south-2, me-south-1, me-central-1, ap-south-1, ap-south-2, eu-west-3, af-south-1, sa-east-1, ap-east-1, ap-northeast-2, ap-northeast-3, ap-southeast-3, ap-southeast-4, ap-southeast-5, ap-southeast-7, eu-west-2, eu-south-1, ap-northeast-1, us-west-1, ap-southeast-1, ap-southeast-2, ca-central-1, ca-west-1, cn-north-1, cn-northwest-1, il-central-1, mx-central-1, us-gov-east-1, us-gov-west-1.

  1. Cấu hình một client Boto3 cho SageMaker:

sm_client = boto3.client(‘sagemaker’)

session = Session(sagemaker_client=sm_client)

session.get_caller_identity_arn()

Python

  1. Kiểm tra xem các chính sách sau đã được thêm vào vai trò IAM quản trị viên của bạn chưa; nếu chưa, bạn có thể thêm chúng như các chính sách nội tuyến (sử dụng Khu vực được cấu hình trong Bước 3):

{

    “Version”: “2012-10-17”,

    “Statement”: [

        {

            “Action”: [

                “s3:ListBucket”,

                “s3:GetObject”,

                “s3:GetObjectTagging”

            ],

            “Resource”: [

                “arn:aws:s3:::jumpstart-cache-prod-<REGION>”,

                “arn:aws:s3:::jumpstart-cache-prod-<REGION>/*”

            ],

            “Effect”: “Allow”

        }

    ]

}

Code

Ngoài việc thiết lập quyền IAM cho vai trò quản trị viên, bạn cần giảm quyền cho người dùng của mình để họ không thể truy cập vào nội dung công cộng.

  1. Sử dụng chính sách sau để từ chối quyền truy cập vào public hub cho người dùng của bạn. Chúng có thể được thêm như các chính sách nội tuyến trong vai trò IAM của người dùng (sử dụng Khu vực được cấu hình trong Bước 3):

{

    “Version”: “2012-10-17”,

    “Statement”: [

        {

            “Action”: “s3:*”,

            “Effect”: “Deny”,

            “Resource”: [

                “arn:aws:s3:::jumpstart-cache-prod-<REGION>”,

                “arn:aws:s3:::jumpstart-cache-prod-<REGION>/*”

            ],

            “Condition”: {

                “StringNotLike”: {“s3:prefix”: [“*.ipynb”, “*/eula.txt”]}

            }

        },

        {

            “Action”: “sagemaker:*”,

            “Effect”: “Deny”,

            “Resource”: [

                “arn:aws:sagemaker:<REGION>:aws:hub/SageMakerPublicHub”,

                “arn:aws:sagemaker:<REGION>:aws:hub-content/SageMakerPublicHub/*/*”

            ]

        }

    ]

}

Code

Sau khi bạn đã thiết lập cấu hình và quyền private hub, bạn đã sẵn sàng để tạo private hub.

  1. Sử dụng đoạn mã sau để tạo private hub trong tài khoản AWS của bạn ở Khu vực bạn đã chỉ định trước đó:

hub = Hub(hub_name=HUB_NAME, sagemaker_session=session)

try:

  hub.create(

      description=HUB_DESCRIPTION,

      display_name=HUB_DISPLAY_NAME

  )

  print(f”Successfully created Hub with name {HUB_NAME} in {REGION}”)

except Exception as e:

  if “ResourceInUse” in str(e):

    print(f”A hub with the name {HUB_NAME} already exists in your account.”)

  else:

    raise e

Python

  1. Sử dụng describe() để xác minh cấu hình của hub của bạn. Sau khi private hub của bạn đã được thiết lập, bạn có thể thêm một tham chiếu đến các mô hình từ public hub SageMaker JumpStart vào private hub của bạn. Không cần quản lý bất kỳ tài sản mô hình nào bởi khách hàng. Đội ngũ SageMaker sẽ quản lý các bản cập nhật phiên bản hoặc bảo mật. Để biết danh sách các mô hình có sẵn, hãy tham khảo Built-in Algorithms with pre-trained Model Table.
  1. Để tìm kiếm theo chương trình, chạy lệnh sau:

from sagemaker.jumpstart.filters import Or

filter_value = Or(

“framework == meta”,

“framework == deepseek”

)

models = []

next_token = None

while True:

    response = hub.list_sagemaker_public_hub_models(

        filter=filter_value,

        next_token=next_token

    )

    models.extend(response[“hub_content_summaries”])

    next_token = response.get(“next_token”)

    if not next_token:

        break

print(models)

Python

Đối số filter là tùy chọn. Để biết danh sách các bộ lọc bạn có thể áp dụng, hãy tham khảo GitHub repo.

  1. Sử dụng các mô hình đã lấy từ lệnh trước đó để tạo các tham chiếu mô hình cho thư viện riêng của bạn:

for model in models: print(f”Đang thêm {model.get(‘hub_content_name’)} vào Hub”) hub.create_model_reference(model_arn=model.get(“hub_content_arn”), model_name=model.get(“hub_content_name”))

Python

Thư viện riêng của SageMaker JumpStart cung cấp các tính năng hữu ích khác để quản lý và tương tác với các mô hình đã được lựa chọn. Quản trị viên có thể kiểm tra metadata của một mô hình cụ thể bằng cách sử dụng lệnh hub.describe_model(model_name=<model_name>). Để liệt kê các mô hình có sẵn trong thư viện riêng, bạn có thể sử dụng một vòng lặp đơn giản:

response = hub.list_models()

models = response[“hub_content_summaries”]

while response[“next_token”]:

    response = hub.list_models(next_token=response[“next_token”])

    models.extend(response[“hub_content_summaries”])

for model in models:

    print(model.get(‘HubContentArn’))

Python

Nếu bạn cần xóa một tham chiếu mô hình cụ thể khỏi thư viện riêng, hãy sử dụng lệnh sau:

hub.delete_model_reference(“<model_name>”)

Python

Nếu bạn muốn xóa thư viện riêng khỏi tài khoản và Khu vực của bạn, trước tiên bạn cần xóa tất cả các HubContents, sau đó mới xóa thư viện riêng. Hãy sử dụng đoạn mã sau:

for model in models:

    hub.delete_model_reference(model_name=model.get(‘HubContentName’))

hub.delete()

Python

Cải thiện các mô hình được tham chiếu trong thư viện riêng

Phần này hướng dẫn cách tương tác với các mô hình được liệu chọn trong SageMaker JumpStart. Chúng tôi trình bày cách liệt kê các mô hình có sẵn, xác định một mô hình từ thư viện công cộng, và cải thiện mô hình bằng cách sử dụng SageMaker Python SDK cũng như SageMaker Studio UI.

Trải nghiệm người dùng sử dụng SageMaker Python SDK

Để tương tác với các mô hình của bạn bằng SageMaker Python SDK, hãy hoàn thành các bước sau:

  1. Tương tự như quá trình quản trị, bước đầu tiên là cài đặt lại SageMaker Python SDK:

!pip3 install sagemaker —force-reinstall —quiet

Python

  1. Khi tương tác với các hàm của SageMaker SDK, thêm tham chiếu đến hub_arn:

model_id=”meta-vlm-llama-3-2-11b-vision”

model_version=”2.1.8″

hub_arn=”<YourHubARN>”

from sagemaker import hyperparameters

my_hyperparameters = hyperparameters.retrieve_default(

    model_id=model_id, model_version=model_version, hub_arn=hub_arn

)

print(my_hyperparameters)

hyperparameters.validate(

    model_id=model_id, model_version=model_version, hyperparameters=my_hyperparameters, hub_arn=hub_arn

)

Python

  1. Sau đó, bạn có thể bắt đầu một công việc huấn luyện bằng cách chỉ định ID mô hình, phiên bản và tên thư viện:

from sagemaker.jumpstart.estimator import JumpStartEstimator

estimator = JumpStartEstimator(

    model_id=model_id,

    hub_name=hub_arn,

    model_version=model_version,

    environment={“accept_eula”: “false”},  # Hãy thay đổi {“accept_eula”: “true”}

    disable_output_compression=True,

    instance_type=”ml.p4d.24xlarge”,

    hyperparameters=my_hyperparameters,

)

estimator.fit({“training”: train_data_location})

Python

Đối với một mô hình tùy chỉnh, hãy xem các notebook ví dụ trên GitHub.

Trải nghiệm người dùng trong SageMaker Studio

Hãy hoàn thành các bước sau để tương tác với các mô hình được liệu chọn bằng SageMaker Studio:

  1. Trên bảng điều khiển SageMaker Studio, chọn JumpStart trong bảng điều hướng hoặc trong phần Giải pháp tích hợp và tự động.
  2. Chọn một trong các thư viện mô hình mà bạn có quyền truy cập.

Nếu người dùng có quyền truy cập vào nhiều thư viện, bạn sẽ thấy một danh sách các thư viện, như trong ảnh chụp màn hình sau.

Nếu người dùng chỉ có quyền truy cập vào một thư viện, bạn sẽ được chuyển hướng đến danh sách mô hình.

  1. Để cải thiện một mô hình, chọn Train (tùy chọn này sẽ được kích hoạt nếu được hỗ trợ).
  2. Sửa đổi các cấu hình công việc huấn luyện của bạn như dữ liệu huấn luyện, loại phiên bản và các tham số siêu, và chọn Submit.

Liên kết sâu notebook trong thư viện riêng

Bây giờ bạn cũng có thể truy cập vào notebook liên kết với mô hình trong thư viện đã được lựa chọn của bạn.

  1. Chọn mô hình của bạn, sau đó chọn Preview notebooks.
  2. Chọn Open in JupyterLab để bắt đầu quy trình liên kết sâu.
  3. Chọn một không gian JupyterLab đang chạy và chọn Open notebook.

Bạn sẽ cần nâng cấp không gian của mình để sử dụng bản phân phối SageMaker ít nhất phiên bản 2.4.1. Để biết thêm thông tin về cách nâng cấp bản phân phối SageMaker của bạn, hãy xem Cập nhật Ảnh bản phân phối SageMaker.

Điều này sẽ tự động mở notebook đã chọn trong phiên bản JupyterLab của bạn, với HubName riêng của bạn được nhập vào các lớp cần thiết.

Cập nhật các mô hình trong thư viện riêng

Sửa đổi HubContent riêng tồn tại của bạn bằng cách gọi API mới sagemaker:UpdateHubContent. Bây giờ bạn có thể cập nhật phiên bản HubContent hiện có tại chỗ mà không cần xóa và thêm lại. Chúng tôi không hỗ trợ cập nhật HubContentDocument tại thời điểm này vì có thể có những thay đổi không tương thích ngược được giới thiệu mà thay đổi hoàn toàn hiệu suất và cách sử dụng của chính mô hình. Hãy tham khảo tài liệu API công cộng để biết thêm chi tiết.

client.update_hub_content(

    hub_content_name=”my-model”,

    hub_content_version=”1.0.0″,

    hub_content_type=”Model”,

    hub_name=”my-hub”,

    support_status=”DEPRECATED”

)

Code

Bên cạnh đó, bạn có thể sửa đổi ModelReferences của mình bằng cách gọi API mới sagemaker:UpdateHubContentReference. Hãy tham khảo tài liệu API công cộng để biết thêm chi tiết về cách sử dụng.

client.update_hub_content_reference(

    hub_content_name=”your-model”,

    hub_content_type=”ModelReference”,

    hub_name=”my-hub”,

    min_version=”1.2.0″

)

Code

Kết luận

Bài viết này đã trình bày các tính năng mới được nâng cấp cho tính năng thư viện mô hình riêng của SageMaker JumpStart, giúp khách hàng doanh nghiệp có quyền kiểm soát và linh hoạt hơn trong việc quản lý tài sản ML của họ. Các khả năng chính được giới thiệu bao gồm khả năng cải thiện các mô hình SageMaker JumpStart đã được xây dựng trực tiếp trong thư viện riêng, hỗ trợ nhập và cải thiện các mô hình được đào tạo tùy chỉnh, liên kết sâu đến các notebook liên quan để truy cập và hợp tác thuận tiện, và quản lý phiên bản mô hình được cải thiện thông qua các API. Các tính năng này cho phép các doanh nghiệp lựa chọn một kho lưu trữ trung tâm các mô hình ML đáng tin cậy, đồng thời vẫn cung cấp sự linh hoạt cho các nhóm và bộ phận khác nhau để cải thiện và điều chỉnh các mô hình này để phù hợp với nhu cầu cụ thể của họ. Sự tích hợp mượt mà với SageMaker Studio tiếp tục hỗ trợ quy trình phát triển và triển khai mô hình, giúp các doanh nghiệp tăng tốc các sáng kiến ML của họ trong khi vẫn duy trì sự an toàn và kiểm soát thích hợp đối với tài sản ML của họ.

Giờ đây, sau khi bạn đã thấy các tính năng thư viện mô hình riêng được nâng cấp trong Amazon SageMaker JumpStart có thể mang lại cho tổ chức của bạn quyền kiểm soát và linh hoạt hơn trong việc quản lý tài sản học máy của bạn, hãy bắt đầu tận dụng các khả năng này để lựa chọn một kho lưu trữ trung tâm các mô hình đáng tin cậy và tăng tốc các sáng kiến AI của bạn.


Giới thiệu về các tác giả

Marc Karp

Marc Karp là một Kiến trúc sư ML với đội ngũ Amazon SageMaker Service. Ông tập trung vào việc giúp khách hàng thiết kế, triển khai và quản lý các khối tải học máy với quy mô lớn. Trong thời gian rảnh, ông thích du lịch và khám phá những nơi mới.

Niris Okram là một chuyên gia giải pháp nghiên cứu học thuật cao cấp tại AWS. Ông có kinh nghiệm rộng rãi trong việc làm việc với khách hàng công cộng, tư nhân và nghiên cứu trên các lĩnh vực khác nhau liên quan đến đám mây. Ông đam mê thiết kế và xây dựng các hệ thống để tăng tốc sứ mệnh của khách hàng trên đám mây AWS.

Benjamin Crabtree là một kỹ sư phần mềm với các đội ngũ Amazon SageMaker và Bedrock. Ông đam mê việc dân chủ hóa những bước tiến mới và thường xuyên trong AI. Ben đã nhận bằng cử nhân từ Đại học Michigan và hiện đang sống ở Brooklyn, NY.

Banu Nagasundaram lãnh đạo sản phẩm, kỹ thuật và các đối tác chiến lược cho SageMaker JumpStart, thư viện học máy và GenAI của SageMaker. Bà đam mê xây dựng các giải pháp giúp khách hàng tăng tốc hành trình AI của họ và mở khóa giá trị kinh doanh.

Leave a comment